Регион (проверка модели)
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
В проверке моделей , области информатики , область представляет собой выпуклый многогранник в для какого-то измерения , а точнее, зону , удовлетворяющую некоторому свойству минимальности. Раздел регионов .
Набор зон зависит от набора ограничений вида , , и , с и некоторые переменные и константа. Области определены так, что если два вектора и принадлежат одному и тому же региону, то они удовлетворяют одним и тем же ограничениям . Более того, когда эти векторы рассматриваются как кортеж часов , оба вектора имеют одинаковый набор возможных вариантов будущего. Интуитивно это означает, что любая временная формула пропозициональной темпоральной логики , или синхронизированный автомат , или сигнальный автомат, использующий только ограничения не может различить оба вектора.
Набор регионов позволяет создать автомат регионов , представляющий собой ориентированный граф , в котором каждый узел является регионом, а каждое ребро убедиться, что возможное будущее . Взяв произведение автомата этой области и автомата с таймером который принимает язык создает конечный автомат или автомат Бюхи , который принимает несинхронизированное . В частности, это позволяет уменьшить проблему пустоты для к проблеме пустоты для конечного автомата или автомата Бюхи. Этот метод используется, например, в программном обеспечении UPPAAL . [ 1 ]
Определение
[ редактировать ]Позволять набор часов . Для каждого позволять . Интуитивно это число представляет собой верхнюю границу значений, до которых часы можно сравнить. Определение региона по часам использует эти цифры х. Теперь даны три эквивалентных определения.
Учитывая назначение часов , обозначает регион, в котором принадлежит. Множество регионов обозначается .
Эквивалентность назначения часов
[ редактировать ]Первое определение позволяет легко проверить, принадлежат ли два назначения одному и тому же региону.
Регион можно определить как класс эквивалентности для некоторого отношения эквивалентности. Два задания на часы и эквивалентны, если они удовлетворяют следующим ограничениям: [ 2 ] : 202
- если только , для каждого и целое число, а ~ является одним из следующих отношений = , < или ≤ .
- если только , для каждого , , , являющийся дробной частью реального , а ~ является одним из следующих отношений = , < или ≤ .
Первый вид ограничений гарантирует, что и удовлетворяет тем же ограничениям. Действительно, если и , то только второе присваивание удовлетворяет . С другой стороны, если и , оба присваивания удовлетворяют одному и тому же набору ограничений, поскольку ограничения используют только целочисленные константы.
Второй вид ограничений гарантирует, что будущие два назначения будут удовлетворять одним и тем же ограничениям. Например, пусть и . Тогда ограничение в конечном итоге удовлетворен будущим без сброса часов, но не в будущем без сброса часов.
Явное определение региона
[ редактировать ]Хотя предыдущее определение позволяет проверить, принадлежат ли два назначения одному и тому же региону, оно не позволяет легко представить регион как структуру данных. Третье определение, приведенное ниже, позволяет дать каноническую кодировку региона.
Регион можно явно определить как зону , используя набор уравнений и неравенств, удовлетворяющих следующим ограничениям:
- для каждого , содержит либо:
- для некоторого целого числа
- для некоторого целого числа ,
- ,
- при этом для каждой пары часов , где содержит ограничения вида и , затем содержит (не)равенство вида с быть либо = , < или ≤ .
С тех пор, как и фиксированы, последнее ограничение эквивалентно .
Это определение позволяет кодировать регион как структуру данных. Достаточно для каждых часов указать, к какому интервалу они принадлежат, и вспомнить порядок дробной части часов, принадлежащих открытому интервалу длины 1. Отсюда следует, что размер этой структуры равен с количество часов.
Временная бисимуляция
[ редактировать ]Дадим теперь третье определение регионов. Хотя это определение более абстрактно, оно также является причиной использования регионов при проверке модели. Интуитивно это определение гласит, что два назначения часов принадлежат одной и той же области, если различия между ними таковы, что ни один синхронизированный автомат не может их заметить. Учитывая любой пробег начиная с назначения часов , для любого другого задания в этом же регионе есть пробег , проходя через одни и те же места, читая одни и те же буквы, с той лишь разницей, что время ожидания между двумя последовательными переходами может быть разным, и, следовательно, последовательные изменения часов различны.
Теперь дано формальное определение. Учитывая набор часов , два задания, два задания на часы и принадлежит одной и той же области, если для каждого таймерного автомата в котором охранники никогда не сверяют часы до числа, большего, чем , учитывая любое местоположение из существует синхронизированная бисимуляция между расширенными состояниями и . Точнее, эта бисимуляция сохраняет буквы и местоположения, но не точное назначение часов. [ 1 ] : 7
Работа по регионам
[ редактировать ]Некоторые операции теперь определены над регионами: сброс некоторых часов и пропуск времени.
Сброс часов
[ редактировать ]Учитывая регион определяется набором (в) уравнений и набор часов , регион, аналогичный в котором часы перезапускаются теперь определены. Этот регион обозначается , он определяется следующими ограничениями:
- каждое ограничение не содержит часов ,
- ограничения для .
Набор заданий, определенный это именно набор заданий для .
Время-преемник
[ редактировать ]Учитывая регион области, в которые можно попасть без перестановки часов, называются временными преемниками . Теперь даны два эквивалентных определения.
Определение
[ редактировать ]Регион часов является временным преемником другого региона часов если для каждого задания , существует некоторое положительное реальное такой, что .
Обратите внимание, что это не означает, что . Например, регион определяется набором ограничений имеет преемника по времени определяется набором ограничений . Действительно, для каждого , достаточно взять . Однако не существует реального такой, что или даже такое, что ; действительно, определяет треугольник, в то время как определяет сегмент.
Вычислимое определение
[ редактировать ]Второе определение, данное сейчас, позволяет явно вычислить набор временных преемников региона, заданный его набором ограничений.
Учитывая регион определяется как набор ограничений , давайте определим его набор временных преемников. Для этого необходимы следующие переменные. Позволять набор ограничений формы . Позволять набор часов такой, что содержит ограничение . Позволять набор часов такие, что не существует ограничений вида в .
Если пусто, является своим преемником по времени. Если , затем является единственным временным преемником . В противном случае существует наименьший преемник по времени не равен . Наименьший преемник по времени, если непусто, содержит:
- ограничения
- ,
- , и
- для каждого такой, что не принадлежит , ограничение .
Если пусто, наименьший временной преемник определяется следующими ограничениями:
- ограничения не пользуясь часами ,
- ограничение , для каждого ограничения в , с .
Характеристики
[ редактировать ]Есть максимум регионы, где это количество часов. [ 2 ] : 203
Регион-автомат
[ редактировать ]Учитывая временной автомат , его региональный автомат является конечным автоматом или автоматом Бюхи , который принимает несинхронизированный . Этот автомат похож на , где часы заменены регионом. Интуитивно, региональный автомат представляется как продукт и графа региона. Этот граф региона определяется первым.
Граф регионов
[ редактировать ]Граф регионов представляет собой корневой ориентированный граф, который моделирует набор возможных значений часов во время выполнения таймерного автоамтона. Оно определяется следующим образом:
- его узлы являются регионами,
- его корень - начальная область , определяемый набором ограничений ,
- множество ребер , для преемник времени .
Регион-автомат
[ редактировать ]Позволять автомат с таймером . За каждые часы , позволять самое большое число такая, что существует защита вида в . Районный автомат , обозначенный является конечным автоматом или автоматом Бюхи, который по существу является произведением и графа региона, определенного выше. То есть каждое состояние автомата региона представляет собой пару, содержащую местоположение и регион. Поскольку назначение двух тактовых импульсов, принадлежащих одному и тому же региону, удовлетворяет одному и тому же охраннику, каждый регион содержит достаточно информации, чтобы решить, какие переходы можно предпринять.
Формально регион-автомат определяется следующим образом:
- его алфавит ,
- его набор состояний ,
- его набор состояний с начальный регион,
- его набор принимающих состояний равен ,
- его переходное отношение содержит , для , такой, что и является временным преемником .
Учитывая любой пробег из , последовательность обозначается , это пробег и принимает тогда и только тогда, когда принимает [ 2 ] : 207 . Отсюда следует, что . В частности, принимает синхронизированное слово тогда и только тогда, когда принимает слово. Кроме того, приемочный пробег может быть вычислено из принимающей серии .
Ссылки
[ редактировать ]- ^ Перейти обратно: а б Бенгтссон, Йохан; Йи, Ван Л (2004). «Автоматы с таймером: семантика, алгоритмы и инструменты» . Лекции по параллелизму и сетям Петри . Конспекты лекций по информатике. Том. 3098. стр. 87–124. дои : 10.1007/978-3-540-27755-2_3 . ISBN 978-3-540-22261-3 .
- ^ Перейти обратно: а б с Алур, Раджив; Дилл, Дэвид Л. (25 апреля 1994 г.). «Теория синхронизированных автоматов» (PDF) . Теоретическая информатика . 126 (2): 183–235. дои : 10.1016/0304-3975(94)90010-8 .