Главная » Просмотр файлов » Определения по курсу Верификация моделей программ

Определения по курсу Верификация моделей программ (1161286), страница 2

Файл №1161286 Определения по курсу Верификация моделей программ (Вся решённая практика за семестр) 2 страницаОпределения по курсу Верификация моделей программ (1161286) страница 22019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

– множество значений переменных. Собственно, это и есть подстановка.

Эффект –

Графы программ (статическая семантика)

, где:

  • – множество точек, исходные (начальные) точки

  • – множество действий

  • – отношение переходов, – это фактически страж оператора

  • – функция эффекта

  • – начальное условие

Нотация: означает

Принцип получения TS из PG

  • Состояние: точка l + значение данных

  • Начальное состояние: начальная точка + все значения данных, удовлетворяющие .

  • Атомарные высказывания в TS

    • находимся в точке программы

    • значение переменной x принадлежит некоторому множеству , и это множество является подмножеством множеств значений этой переменной

  • Если истинно в , то строим отношение переходов как

Система переходов графов программ TS(PG) над переменными описывается сигнатурой

, где:

  • (состояние: точка l + значение данных )

  • (множество начальных состояний системы переходов описывается как множество состояний, в которых точка программы принадлежит начальным точкам, а на подстановках выполняется начальное условие графа программы)

  • (объединение множества точек программы и всевозможных булевых высказываний над переменными программы)

  • (состояния размечаются высказыванием о точке программы, в которой мы находимся и всеми высказываниями из множества всевозможных высказываний, которые верны в этой подстановке)

  • задается правилом: если истинно в (в графе программы есть дуга из в со стражем и действием и в некоторой подстановке выполняется страж ), то строим отношение переходов как

Чередование (интерливинг)

  • Обоснование

Эффект от параллельного выполнение независимых действий α и равен эффекту от их последовательного выполнения в произвольном порядке

  • Символьная запись

    • – бинарный оператор чередования

    • + – оператор недетерминированного выполнения

    • ; – оператор последовательного выполнения

Чередование систем переходов

Пусть – две системы переходов

Определим их чередование как , а отношение перехода определяется правилами:

и

Чередование графов программ

Пусть

Граф определим как

Где отношение перехода определяется правилами

и

И эффект , если

Параллелизм и рандеву

  • распределённые программы выполняются параллельно

  • в распределённой программе нет разделяемых переменных

Передача сообщений в распределённых программах

  • синхронная передача сообщений (рандеву, без буферизации)

  • асинхронная передача сообщений (с буферизацией)

Синхронный обмен сообщениями

  • Процессы вместе выполняют синхронизированные действия

  • Взаимодействие процессов - одновременно

Рандеву систем переходов

  • – набор синхронизированных действий.

    • действия из H должны быть синхронизированы

    • действия не из H независимы и могут чередоваться

Тогда , где

  • определяется как:

    • интерливинг для : и (в случае интерливинга мы добавляем новые переходы в произвольном порядке, см. рисунок ниже)

    • рандеву для : (а вот это – ключевой момент определения: переход из пары состояний происходит только в том случае, когда оба процесса должны что-то делать одновременно – например, прием-передачу информации в синхронном режиме)

Синхронный параллелизм

  • Тогда

  • определяется как: (тот же комментарий, что и для определения рандеву систем переходов, для случая рандеву)

Promela

Ключевые моменты

  • У моделей – конечное число состояний (потенциально бесконечные элементы моделей в Promela ограничены).

    • Гарантирует разрешимость верификации

    • Не гарантирует конечное число вычислений

  • Асинхронное выполнение процессов

    • Нет глобальных часов

    • По умолчанию отсутствует синхронизация разных процессов

  • Недетерминированный поток управления

    • Абстракция от деталей реализации

  • Понятие выполнимости оператора

    • С любым оператором связаны понятия предусловия и эффекта

    • Оператор выполняется (производя эффект)только если выполнено предусловие, в противном случае он заблокирован

    • Пример: q?m – если канал не пуст, получаем из него сообщение, иначе ждем.

    • Присваивания и printf выполняются всегда. Остальное выполняется, если его значение не 0.

  • Три типа объектов

    • Процессы

    • Глобальные и локальные объекты данных

    • Каналы сообщений

Число состояний модели конечно, так как

  • Число активных процессов конечно (256)

  • У каждого процесса – ограниченное число операторов

  • Диапазон типов данных ограничен

  • Размер всех каналов сообщений ограничен

Недетерминизм

Выполнимость операторов: псевдооператоры

  • skip – всегда выполним, без эффекта, эквивалент выражения (1)

  • true = skip

  • run – 0, если при создании процесса превышен лимит, _pid (ид. процесса) в противном случае

  • assert – всегда выполним, не влияет на состояние системы, SPIN сообщает об ошибке, если выражение в assert = 0

Каналы сообщений

  • Используются для передачи сообщений между процессами

  • Бывают двух типов: буферизованные (асинхронные) и небуферизованные (синхронные, рандеву)

Inline определения

  • Среднее между макросом и процедурой

  • Именованный фрагмент кода с параметрами

  • Не функция – не возвращает значения

Все варианты оператора IF должны быть описаны явно, иначе процесс блокируется.

eval(x) – отображает значение x на константу

Alternating Bit Protocol (ABP)

  • Два процесса, отправитель и получатель

  • К каждому процессу добавляется один бит

  • Получатель сообщает о доставке сообщения, возвращая бит отправителю

  • Если отправителю убедился в доставке сообщения, он посылает новое, изменяя значение бита

  • Если значение бита не изменилось, получатель считает, что идет повтор от сообщения

Характеристики

Тип файла
Документ
Размер
557,94 Kb
Тип материала
Высшее учебное заведение

Список файлов лабораторной работы

Вся решённая практика за семестр
mc01
mc05
Task_5
model_assert.pml
pan.b
pan.c
pan.exe
pan.h
pan.m
pan.t
spec1.ltl
spec2.ltl
spec3.ltl
spec4.ltl
spec5.ltl
task5.pml
task5_check_1.pml
task5_check_2.pml
task5_check_3.pml
task5_check_4.pml
task5_check_5.pml
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7021
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее