2. Model Checking. Вериф. парал. и распределенных программных систем. Карпов (2010) (1185529), страница 72
Текст из файла (страница 72)
Метод проверки моделей, основанный на символьных алгоритмах, стал сегодня стандартным этапом технологии рвзрабогки микропроцессоров и астроенных сиошм во многих фирмах, Существуют гешке свободно распространяемые вернфикаторы, работающие на основе симжшьной верификации (например, БМУ и ХнЗМУ, разработанные в Университете Карнеги-Меллона). Символьные алгоритмы верификации являются, однако, только одним нз подходов к решению проблемы "взрыва числа состояний". Дзугнми подходами являются компознциональная верификация, редукция частичных порядков, верификация "на лету" и др.
Хозя ни одна из разработанных техник не являе еще Ислп для л в нач доктс В 1% киев Гог Т Брайз (Е. А1 лмлш лроее 10.' !0.1. Я:/ а),' б) 102. б: т( а)1 6). в)1 103.! юе Ш 10.11. Замечания змпотемы о сот, па~х вл- ияюы и угим, зриткрет. ормс юких й ве- мфистью юлен- тем- 3 исзстве злгоакнх зрит- либо щия- сего:тро".Тра(паоиа).
и из яхофряд" ~к нс является универсально применимой, на осимы шпкдой да нихмостроелм дн' струмемгвльные системы верификации. г Использование бинарных решмоших диаграмм в верификации, в частности, для повышения зффехтившкти алгоритмов моде) сйесЫпй, было предлшкаио в начале 90-х годов прошлого века в работе [14). Этой проблеме посвящена докгорскш диссерпщня Мак-Миллана [112) н его монография [113). В 1998 г.
ассоциация АСМ наградияа специаяьной премией имени Каиновы киса за лучшую работу в области теории н практики (АСМ Капейв)дз Амагд йг Танну апд Ргаы)се) группу исследователей, в которую вошли Рзндел БРайант [Ванда) Е.Вгуши), Эдмуш! Кларк [Едшипд М.СЬи)ю), Аллен Эмерсон (Е. Айеп Ешегзоп) н Капнет МвюМиллан [Кеппен 1.. МсМ!Ввп), "зо нюбретениг кмп нелюде "спнеальлод лроееркк модели" — мевюда формазьиоб проверки проевшее снсмгм". 10.12. Задачи к главе 10 10Л. Пусть Я (а, Ь. с, И» — мншкество, н у': 2з -.+ 2з, такой опаршюр нв Я: У(Х) = Хьз(о,с». в) Проверьте, является лн у' монотонным. б) Постройте наибольшую и наименьшую неподвнзшые точки оператора.
102. Пусзь 8 (а,Ь,с,Ф,е» вЂ” мншкество, н т: 2 -ь2 оператор на Я: т(2)=багз(а,сл». а) Проверьте, явяяегся ли т монотонным. б) Постройге наибольшую н наименьшую иеподвшкные точки т . в) Постройте решетку неподшокных точек оператора т . 10.2. Пу Г =(Б,П) — р,р ф: 8 (Р,е,г.з» . 6 = ((р,з),(г,р),(з,а),(9,я),(в,е),(г, р),(р,9)» Главе Ю Пуста т: 2а -.+ 2я такой оператор: т(д) =дгтд','гие д' — ' состояния, достияшмые из пэстояний Д за один шаг. а) Проверьте, является ли т монотонным, б) Постройте наибольшую н наименьшую неподеияшые эцчки т . в) Постройте решетку неподвюкных точек оператора т .
1йлй Пусть задано мншкеошо 3 (а, Ь, с, 4 е) н переходы Ь = ((аа), (аЬ), (Ь,а), (с,а), (с,Я, (Ас), (И,е), (ее)) . Пусть оператор т: 2 -ь 2 на множестве всех лодмнекеств 3 определен так; т(Д)=(е) иЕХ(Д), где ЕХ(Д) — множество таких элементов 3, нз которых эа один шаг мшуг быль достнгнутм элементы нз Д. Постройте все неподвнвшые точки оператора т н проверьте, образуют ли они решетку. 19.5.
Пусть 3 (а, Ь, с, 4 е) — множество состояний, на котором определена функцзш переходов Ь:3-ь3:Ь(а) = Ь; Ь(Ь) с;Ь(с) =от Ь(л') = а. Пусть У': 2 -+ 2 такой оператор: г (Д) = (а, с, И) гз Ь(Д), где Ь(Д) = и» 99(я) . а) Проверьте, являсюя ли у' монотонным. б) Постройте наибольшую н наименьшую неподвшкнме точки у' . в) Постройте реимтку неподвижных точек у'.
19.6. Определите на множесше 3= (а, Ь,с,И) такое отношение переходов 5 ~ эх 3, чтобы монотонный оператор т(Д) =(Ь) гтб(Д), где Ь(Д) = ия,рб(х), имел бы четыре невшвнжные точки: (Ь),(а,а),(6,3),(а,б,с) . Заметьте, что наименьшая неподвижная точка этого оператора не И, а его наибольшая неподвшкная точка — не 3. Постройте решетку неподвижных точек этого опервторв. 19,7. На произвольно выбранной структуре Кринке задайте множество состояний Ф. Найдите множество М таких сосюяний, нз которых существует такой путь, на каждом рясетоянии четной длины которого мы попаааем в состояния из Ф.
19.9. По аналогии с доказательством теоремы Тарского для наименьшей неподвюкной точки, дайте доказательство аагорипяа построения наибольшей неподвижной точки. 19.9. илй иийь Опер 1есЦ она с ция а 19.19 даны а)! б) мо~ в) тор г)1 ны~ д)( аеа Ю 10.9. По аншюгии с построением булевой формулы переходов ллв оператора ями (сн, раздел104) постройте булевы формулы для операторов ймй и ии1есй. ь дос.
Оператор Ьмй имеет следующую семашнку: при выполнении оператора госй(Ь) непрерывно проверяеюя, будет ли переменная Ь равна О. Как только она става равной О, значение т устанавливается в 1 (это, фактически, операция гезоаиг~-ля!систем команд некоторых процессоров). Оператор пнйай(Ь) устанавливает значение своего параметра в О. рсде1усть х). з сопрет е со- ц 10.10. Пусть на множестве подмножеств множества Я = )1, 2, 3, 4, 5, б) заданы операторы: ,/! (Д) = Д1(1,3,5); ~з(Д) (2 4 6)1й!' Уз(Д)" (1,2,3,5) гз(ДО(2,4,5)); ,У4(Д) (1,2,3,5) н(Дгэ(2,4,5)), а) Какие из этих операторов монозонныу б) Постройте наибольшую и наименьшую неподвижную точки кшкдого монотонного оператора.
в) Постройте решетку неподвижных точек кшкдого монотонного опер~- тора. г) Имеет ли оператор у' неподвижные точкИ Постройш все неподап!киме точки опсркюра л) Обраауют ли они решеткуу гл Ка си Исса осно> обыч ные > сааза нссп знач> ченн> но "к пенн> такю виты> прот> ны ю тнчн> патов ные с носта В до> основ >соева ГЛАВА 11 Количественный анализ систем Исследования н разработки в области верификации программ и аппаратурм в основном связаны с проверкой качественньш свойств зтцх снесем, При этом обычно игнорируются количественные аспекты поведения системы, смпанные с оценками вероятности наступления некоторых событий нлн оцешшми, свюаннымн с реальным временем.
В то же время для многих систем вероятностный анализ весьма вюкен: для протоколов передачи данных, например, значительно более вюкнв оценка вероягносш доспшкн сообщения в ограниченном нпгерввле времени, чем зияние о том, что сообщение будет доотвала. но "когда-нибудь в будущем" (что может быть определено проверкой выполнения темпораяыюй формулы Ргесегге). Для оценки производительности таких систем необходим анализ вероятностных моделей. Кроме того, алгоритмы многих современных протоколов (например, ЕбзегаеЬ схема отката в протоколах 802.11 н В!неТоой, динамическая маршрутизацив н др.) основанм нв процедурах рвндомизации.
шхшоляющих нарушить симметршо идентичных шппвных процессов, например, для того, чтобы избежщь повторения патовой снзувции при захвате ресурса. Позтому количественные вврвпностные оценки часто важны прн анализе систем — их функциональной корректности, качества сервиса, лронзводительвюти. В дополнение к анализу, который проводит обычная система верифнкацмн, основанная на методе шоЖ сйес)злб, не так давно был разработан метод еерояявкюшной проверки модели, с помощью которого моюю вычислить веро.
ятиость выполнения логического свойспм системы, заданного темпоральной формулой, а также анализировать свойства, связанные с дмскретным временем. Глава 11 Квш 11.1. Вероятностный метод гподе! с)2есЫпя Прбстейшую модель системы для выполнения вероятностной верификации мвкно пострвпь как расширение обычной дискретной Марковской цепи, т. е. системы переходов, кшвдый переход которой иэ любого состоянию снабжен вероятностью акгивиэации этою перехода. В марковских цепях вероятностный выбор перехода в слелукпьие сасговние полностью определяется тем, в каком текушем составным нвкодитоя система, л не нсюрией ае, прелыдущего поведения. Помеченная вероятностная структура — это пкгерка М (о,эа,Р,АР.ь), гле: ° 8 — конечное мнвкество (саспяеийу ' ге а о' начальное состояние( ° Р: бхай -+)О,1) —. вероятностная матрица, тшшя, что (тя и о): Е ~Р(я,й) =1, т. е. сумма вервпностей переходов иэ любою состояния э в другие состояния равна 1; ° АР— конечное множество атомарных предикатов; е Е:Я-+2"~ — функция пометок, ставяшая в соответствие явждому соспшнию мнвкество атомарных преднкатов (юторме истинны в эюм сосгоянин).
Элемвггы матрицы Р определяют аервгпккти переходов иэ одного состояния в другое. Выбор возможною перехода здесь осуществляетсв иакпючительно иа основе вероятвютного распределения Р. Этот вервпностный выбор не стражшт недстерминированиости окружения данного процесса, он описывает вероятностный выбор, юпорый делает сам процесс, находясь в мышам состоянии.
В частности, вероятностный выбор отличен от недвтер. мнннэм, возникаюшего как следствие асинхронного функционирования паршшельных процессов. Помеченная вероятностнав структура в литературе также называется поыеченной Марковской цепью с дискретным временем ((АЬе!ед 01эсгеш Т1ше Малют Сйаш). Мы будем нвэмвать эту модель просто вервпностной структурой. Прм~ На р~ М~ г ства ходв рехоэ прим пе тйй эм1 ив а рс ~ме1пю фк 1ии пн, аб- эы- ~сион ,ь в гср- Вероятностный метод воле! сйесквй — это совокупность методов и алгоритмов оценки верокгности того, что некоторм формуяв темноь ральной логики выполняется на вычислениях вероятностной струк- туры.
Нрныер ээ.~ Нв рис, 11.1, а предеваелен пример вероятностной структуры Ф1 СтРУюу1ю М, имеет юпъ состояний, помеченных атомарными преднкатами иэ миома. став АР= (р, р1. Начальное состояние этой структуры эе. С каждмм вере- ходом из конкрепюго состояния свяэмю аероятносгь акпюиэацнн этого пе. рекода. Вероятностюп матрипа Р представлена на рис. 11.1, о, В метрнце приведены только переходм с ненулевыми вероятностами. рне. ВВ1.'а) прюеер вереяпюспюй струюуры; еэ ее веРоаикмтиаю йатрввй ' ' ' Раева 11 а Р П Р, (о Веро аисте след» аналь Пуси В д Су1(з Кшкш тия сь незвш ваех е нечны рис П.е. е»еррммент развертки вычисаспнй струкгурм Мь нз сасюяния ее и алан вз шсшнврав Анализ свойств вероятностных структур оашвн с расаматрением их вычиалений. Вычисление в вераатностиой структуре М вЂ” это любая бесконечная последовательность сасгояний к = зся,зз ..., таких, что для кюкдой соседней пары (э„е,,) состояний последовательности к вероятность соответствующего перехода ненулевая: Р(з,, я„,) > О.
Мншкество всех нспустых конечных префиксов вычисления л обозначим Ргьу (к). Кюкдый швг любого вычисления вероятностной струкеуры имеет некоторую вероятность его выполнения, задаваемую вероятностной матрицей этой структуры. Обозначим Райе(М) множество всех вычислений структуры М, а множество всех конечных префиксов вычислений структуры М обозначим Ради»и (М). При анаяюе вероятностных структур нузаю рассматривать ввроятности мншксетв бесконечных вычислений. Поэтому здесь следует тщишльно определюь, как подсчитать вероятностную меру множеспм вычислений. Анш ах го собь КОта А~ жест ТА. ~ ра Ре «тжчастееииый анализ систем и 11 Анализ вероятностных систем обычно основывается на тгсиоматике сигмаалгсбры Колмогорова, которая формально описывает понятия элементарного события, события и вероятности собьпий. Пусть й — множество элементов, которые называется "элемент(мыми собьпиями".