- •4.2. Реализация ограниченно-детерминированных функций конечными автоматами
- •Поскольку функции и определены на конечных множествах, их удобно задавать с помощью таблицы. Пусть , , тогда таблица автомата имеет вид:
- •Продолжение функций и на слова
- •Приведенный автомат
- •2. Если строить автомат, реализующий данную ограниченно-детерминированную функцию, через информационное дерево, то получится автомат, все состояния которого отличимы.
Продолжение функций и на слова
Пусть - алфавит.
Определение. Словом длины , , над алфавитом называется любая конечная последовательность длины элементов множества .
Для обозначения слов используют запись .
Слово, в котором нет ни одной буквы, называют пустым словом и обозначают символом .
Введем ряд обозначений:
- множество всех слов над алфавитом ,
- множество всех слов длины ;
- множество всех непустых слов.
Очевидно, выполнены равенства: ; .
Определение. Произведением двух слов и называется слово .
Утверждение 1. Произведение двух слов ассоциативная операция, т.е. для любых трех слов выполняется равенство: .
Это утверждение относится к разряду очевидных.
Поскольку расстановка скобок в произведении не влияет на результат, то, записывая произведение нескольких слов, скобки опускают. Например, вместо пишут .
Заметим, что произведение слов зависит от порядка сомножителей, т.е. в общем случае .
Определение. Продолжением функций и на слова называются соответственно функции и , определенные индуктивно следующим образом:
;
;
;
;
;
.
Пример 2. Рассмотрим автомат , у которого , , , и функции и заданы таблицей.
|
|||
0 |
0 |
1 |
|
1 |
1 |
0 |
;
.
Приведенный автомат
Определение. Состояния и автомата называются неотличимыми, если для . В противном случае состояния и называются отличимыми.
Введем на множестве состояний автомата бинарное отношение неотличимости ~:
.
Это отношение является отношением эквивалентности. Следовательно, оно порождает разбиение множества на классы эквивалентности. Следуя определению классов эквивалентности, класс эквивалентности произвольного элемента по отношению неотличимости ~ определим как множество . Множество классов эквивалентности по отношению неотличимости обозначим , для его элементов будем использовать обозначение .
Определение. Приведенным автоматом, соответствующим конечному автомату , называется автомат , функция переходов и функция выходов которого определены следующим образом:
; , где .
Докажем корректность этого определения, т.е. его независимость от выбора представителя в классе эквивалентности .
1. Чтобы доказать корректности определения функции , будем рассуждать от противного. Предположим, что найдутся такие и , что . Это означает, что состояния и отличимы, и, значит, , для которого . Но тогда . Следовательно, и отличимы, а это противоречит тому и принадлежат одному и тому же классу эквивалентности .
2. Докажем корректность определения функции . Возьмем и ; и неотличимы, следовательно, . Таким образом, функция определена корректно.
Утверждение 2. Все состояния приведенного автомата попарно отличимы.
Доказательство. Будем рассуждать от противного. Пусть найдутся различные и такие, что . Тогда . Тогда согласно определению функции будем иметь , где , . Отсюда следует, что и, значит, по свойству классов эквивалентности . Получили противоречие. Следовательно, наше предположение о существовании различных неотличимых классов эквивалентности было неверным. ■
Замечания. 1. Автоматы и работают одинаково, т.е. если на вход этих автоматов подавать одну и ту же входную последовательность, то выходные последовательности автоматов будут одинаковыми.