Проверка моделей

Проверка моделей

Проверка моделей (проверка на модели, англ. model checking) — метод автоматической формальной верификации параллельных систем с конечным числом состояний. Позволяет проверить удовлетворяет ли заданная модель системы формальным спецификациям.

В качестве модели обычно используется так называемая модель Крипке, которая формально задаётся следующим образом: M = \left(S, S_0, R, L\right) , где S — множество состояний, S_0 — множество начальных состояний, R \subseteq S \times S — отношение переходов, L: S \rightarrow 2^{AP} — функция разметки.

Обычно спецификации задаются на языке формальной логики. Для спецификации аппаратного и программного обеспечения, как правило, применяют темпоральную логику — специальный язык, позволяющий описывать поведение системы во времени.

Важным вопросом спецификации является полнота. Метод проверки на модели позволяет убедиться, что модель проектируемой системы соответствует заданной спецификации, однако определить, охватывает ли заданная спецификация все свойства, которым должна удовлетворять система, невозможно.

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

Инструменты

  • BLAST — статический анализатор Си программ
  • CADP (Construction and Analysis of Distributed Processes) — инструмент проектирования протоколов и распределенных систем
  • CHESS — инструмент для тестирования многопоточных .Net (управляемых) и Win32, 64 программ
  • ISP — верификатор кода MPI программ
  • Java Pathfinder — свободный инструмент для проверки многопоточных Java программ
  • MoonWalker — свободный инструмент для проверки .Net программ
  • MRMC (Markov Reward Model Checker)
  • NuSMV — символьный модел чекер
  • PRISM — вероятностный, символический модел чекер
  • Rabbit — модел чекер для систем реального времени
  • SPIN — модел чекер общего назначения для верификации корректности распределенных программ
  • Vereofy — модел чекер программ компонентных систем
  • μCRL2 — свободный инструмент, основан на ACP
  • UPPAAL — инструментарий для моделирования, верификации и валидации систем реального времени моделируемых как сети временных автоматов

Литература

  • Кларк Э. М., Грамберг О., Пелед Д. Верификация моделей программ. Model Checking. М.: МЦНМО. 2002.
  • Карпов Ю. Г. Model Checking. Верификация параллельных и распределенных программных систем. СПб.: БХВ-Петербург. 2009.

Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "Проверка моделей" в других словарях:

  • Проверка — Проверка: Тестирование Инвентаризация Допинг контроль Проверка подлинности Служебная проверка Проверка орфографии Проверка на дорогах Камеральная налоговая проверка Выездная налоговая проверка Проверка статистических гипотез Проверка моделей… …   Википедия

  • Проверка органолептическая — Органолептическая проверка проверка, выполняемая экспертом без использования средств измерений... Источник: Исследование недостатков легковых автомобилей отечественных моделей, находящихся в эксплуатации. Методическое руководство для экспертов и… …   Официальная терминология

  • Сифакис, Иосиф — Иосиф Сифакис Ιωσήφ Σηφάκης …   Википедия

  • Эмерсон, Эрнест Аллен — Эрнест Аллен Эмерсон Ernest Allen Emerson Дата рождения: 2 июня 1954(1954 06 02) (58 лет) Место рождения: Даллас[1] …   Википедия

  • Эмерсон, Аллен — Эрнест Аллен Эмерсон Ernest Allen Emerson Дата рождения: Место рождения …   Википедия

  • Эмерсон, Аллан — Эрнест Аллен Эмерсон Ernest Allen Emerson Дата рождения: Место рождения …   Википедия

  • Кларк, Эдмунд Мельсон — Эдмунд Мельсон Кларк младший Edmund Melson Clarke, Jr …   Википедия

  • Верификация — Позитивизм …   Википедия

  • Верифицируемость — В различных сферах деятельности человека под верификацией могут подразумеваться немного различные вещи. Например: Верификация (от лат. verus  истинный, facere  делать)  это подтверждение соответствия конечного продукта предопределённым эталонным… …   Википедия

  • Доказуемость — В различных сферах деятельности человека под верификацией могут подразумеваться немного различные вещи. Например: Верификация (от лат. verus  истинный, facere  делать)  это подтверждение соответствия конечного продукта предопределённым эталонным… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»