Переходная система
В теоретической информатике переходная система — это концепция, используемая при изучении вычислений . Он используется для описания потенциального поведения дискретных систем . Он состоит из состояний и переходов между состояниями, которые могут быть помечены метками, выбранными из набора; одна и та же метка может появляться более чем на одном переходе. Если набор меток является синглтоном , система по сути не имеет меток, и возможно более простое определение, в котором метки отсутствуют.
Системы переходов математически совпадают с абстрактными системами переписывания (как поясняется далее в этой статье) и ориентированными графами . Они отличаются от автоматов с конечным числом состояний по нескольким причинам:
- Множество состояний не обязательно конечно или даже счетно.
- Множество переходов не обязательно конечно или даже счетно.
- Никакого «начального» или «конечного» состояния не указано.
Системы переходов можно представить в виде ориентированных графов.
Формальное определение
[ редактировать ]Формально переходная система представляет собой пару где представляет собой совокупность состояний и , отношение перехода , является подмножеством . Мы говорим, что происходит переход из состояния заявить если только , и обозначим его .
Помеченная система переходов представляет собой кортеж где представляет собой совокупность состояний, представляет собой набор меток, и , помеченное отношение перехода , является подмножеством . Мы говорим, что происходит переход из состояния заявить с этикеткой если только и обозначим это
Метки могут обозначать разные вещи в зависимости от интересующего языка. Типичное использование меток включает представление ожидаемых входных данных, условий, которые должны быть истинными для запуска перехода, или действий, выполняемых во время перехода. Системы помеченных переходов изначально были представлены как системы поименованных переходов. [1]
Особые случаи
[ редактировать ]- Если для любого данного и , существует только один кортеж в , тогда говорят, что является детерминированным (для ).
- Если для любого данного и , существует хотя бы один кортеж в , тогда говорят, что является исполняемым (для ).
Формулировка коалгебры
[ редактировать ]Формальное определение можно перефразировать следующим образом. Маркированные системы перехода состояний на с этикетками от соответствуют взаимно однозначно функциям , где — (ковариантный) функтор степенного набора . При этой биекции отправляется в , определяемый
- .
Другими словами, помеченная система переходов состояний представляет собой коалгебру функтора .
Связь между маркированной и немаркированной системой переходов
[ редактировать ]Между этими понятиями существует множество связей. Некоторые из них просты, например, наблюдение, что помеченная система переходов, в которой набор меток состоит только из одного элемента, эквивалентна непомеченной системе переходов. Однако не все эти отношения одинаково тривиальны.
Сравнение с абстрактными системами переписывания
[ редактировать ]Как математический объект, немаркированная система переходов идентична (неиндексированной) абстрактной системе переписывания . Если мы рассматриваем отношение перезаписи как индексированный набор отношений, как это делают некоторые авторы, то помеченная система переходов эквивалентна абстрактной системе перезаписи, в которой индексы являются метками. Однако фокус исследования и терминология различны. В системе переходов интерес представляет интерпретация меток как действий, тогда как в абстрактной системе переписывания основное внимание уделяется тому, как объекты могут быть преобразованы (переписаны) в другие. [2]
Расширения
[ редактировать ]При проверке модели иногда определяется система переходов, включающая дополнительную функцию маркировки состояний, в результате чего возникает понятие, охватывающее понятие структуры Крипке . [3]
Языки действий — это расширения систем переходов, добавляющие набор беглых слов F , набор значений V и функцию, которая F × S в V. отображает [4]
См. также
[ редактировать ]- Бинарное отношение
- Тернарное отношение
- Переходный моноид
- Преобразование моноида
- Полугрупповое действие
- Предзаказ моделирования
- Бисимуляция
- Операционная семантика
- Структура Крипке
- Конечный автомат
- Модальное μ-исчисление
Ссылки
[ редактировать ]- ^ Роберт М. Келлер (июль 1976 г.) « Формальная проверка параллельных программ », Сообщения ACM , том. 19 , номер. 7 , стр. 371–384.
- ^ Марк Безем, Дж. В. Клоп, Роэль де Вриер («Тереза»), Системы переписывания терминов , Cambridge University Press, 2003, ISBN 0-521-39115-6 . стр. 7–8.
- ^ Кристель Байер ; Йост-Питер Катоен (2008). Принципы проверки моделей . Массачусетский технологический институт Пресс. п. 20. ISBN 978-0-262-02649-9 .
- ^ Майкл Гельфонд, Владимир Лифшиц (1998) «Языки действий», Linköping Electronic Articles in Computer and Information Science , vol. 3 , номер. 16 .