Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
12-Pitannya_MAPZ_do-ispitu_-2015 (1).doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
5.63 Mб
Скачать

Приклад[ред. • ред. Код]

Розглянемо твердження: "Я голодний". Хоча зміст виразу не змінюється з часом, його істинність може змінитися. Твердження в конкретний момент часу може бути істинним, або хибним, але не одночасно. На противагу нетемпоральним логікам, де значення тверджень не змінюються з часом, в темпоральної логіці значення залежить від того, коли воно перевіряється. Темпоральна логіка дозволяє висловити затвердження типу "Я завжди голодний", "Я іноді голодний" або "Я голодний, поки я не поїм".

Темпоральні логіки часто застосовуються для вираження вимог формальної верифікації. Наприклад, властивості типу "Якщо надійшов запит, то на нього обов'язково прийде відповідь" або "Функція викликається не більше одного разу за обчислення" зручно формулювати за допомогою темпоральої логіки. Для перевірки таких властивостей використовуються різні автомати, наприклад, автомати Бюхи для перевірки властивостей, виражених логікою лінійного часу LTL.

Темпоральні логіки[ред. • ред. Код]

Відомі такі темпоральні логіки:

  • Інтервальна темпоральна логіка

  • μ-числення

    • CTL *

      • Логіка лінійного часу LTL

      • Логіка дерев обчислень CTL

  1. Структури Кріпке. Загальний алгоритм роботи.

Модель Крипке (англ. Kripke structure) — это один из вариантов недетерминированного конечного автомата, который был предложен Солом Крипке. Этот вид НКА применяется при проверке моделeй для представления поведения системы.

Модель Крипке является простой абстрактной машиной, позволяющей описать идеи вычислительной машины без добавления особых сложностей. Модель представляется ориентированным графом, вершины которого описывают достижимые состояния системы, а ребра — переходы из состояния в состояние.

Функция пометок сопоставляет каждой вершине множество свойств, которые выполняются в соответствующем состоянии.

Формальное определение[править | править вики-текст]

Пусть   множество атомарных высказываний (булевых выражений над множеством переменных, констант и предикатных символов). Моделью Крипке[1] назовем четверку   состоящую из:

  • конечного множества состояний  ;

  • множества начальных состояний  ;

  • отношения перехода  , где   такое, что  ;

  • функции пометок  .

Условие накладываемое на отношение R утверждает, что каждое состояние имеет следующее. Если требуется эмулировать взаимную блокировку, в модель Крипке необходимо просто добавить ребро из состояния блокировки в себя.

Функция пометок L для каждого состояния s ∈ S определяет множество L(s) всех атомарных утверждений верных в s.

  1. Model Checking. Алгоритм методу для ltl та ctl.

Современная темпоральная логика линейного времени (LTL, Linear Time Logic) явля­ется наследницей временной логики Tense Logic Артура Прайора. LTL разработана изра­ильским ученым Амиром Пнуэли для спецификации свойств параллельных техничес­ких систем. За разработку этой логики и выделение специального класса программ, реа­гирующих на внешние события (reactive systems) в 1966 г. Амир Пнуэли был награжден премией Тьюринга.

В LTL максимально упрощены все включенные в нее концепции.

Во-первых, в LTL темпоральными операторами расширена простейшая логика выска­зываний, формулы которой строятся из конечного числа атомарных предикатов (утверж­дений) и булевых операций над ними.

Определение 2 (атомарный предикат). Атомарный предикат (атомарное утверж­дение) — это утверждение, которое может принимать истинное или ложное значение, от структуры1 которого мы абстрагируемся.

Во-вторых, в новую логику включено минимальное число темпоральных операторов, которые определяют характеристики истинности высказываний, упорядоченных во вре­мени. Таких операторов только два, U и X. Логика LTL не включает темпоральных операторов прошлого. Основания для этого очевидны: прошлое для технических систем менее важно, чем их будущее поведение, начинающееся с момента их включения, запуска.

В качестве интерпретации формул темпоральной логики рассматривается дискретная во времени бесконечная линейная направленная в будущее последовательность "миров", в каждом из которых существует своя интерпретация атомарных утверждений. Иными сло­вами, формулы LTL принимают истинное или ложное значение на последовательности миров, и в каждом из миров для всех введенных атомарных утверждений определены свои конкретные истинностные значения. Такой взгляд на изменчивость во времени значения истинности атомарных утверждений (атомарных предикатов) имел еще Аристотель, кото­рый говорил, что "утверждения и мнения" могут иметь разные значения истинности в зависимости от моментов, в которые они делаются, отражая изменения в объектах, свой­ства которых они представляют.

Направленность последовательности миров от прошлого к будущему позволяет прово­дить рассуждения об относительном времени, в терминах "до" и "после".

Логика Вычисление дерево (CTL) является ветвление времени логика, это означает, что его модель времени является древовидная структура, в которой будущее не определено; Есть разные пути в будущем, любой из которых может быть фактический путь, который реализуется. Он используется в формальной верификациипрограммных или аппаратных артефактов, как правило, программных приложений, известных как модели шашки, которые определяют, если данное артефакт обладаетбезопасности или живучести свойства. Например, CTL можно указать, что, когда некоторое начальное условие (например, все программные переменные положительны или нет машин на шоссе не оседлать две полосы), то все возможные казни программы избежать некоторых нежелательных состояние (например, деление на ноль или две машины, сталкивающиеся на шоссе). В этом примере, свойство безопасности может быть проверена с помощью модели проверки, который исследует все возможные переходы из состояний, удовлетворяющих программы начального условия и гарантирует, что все такие казни удовлетворяет свойству. Логика Вычисление дерево в классе временных логик, который включает линейную временной логики  (LTL). Хотя есть свойства выражаются только в одной из CTL и LTL, все свойства выражаются либо логики также может быть выражено в CTL *.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]