Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория формальных языков.Лекция 5.doc
Скачиваний:
8
Добавлен:
11.05.2015
Размер:
237.57 Кб
Скачать

Построение минимального частичного автомата

Пусть имеется некоторая группировка состояний Q1,Q2,…,QS частичного автомата.

Группировку назовём замкнутой, если для любого множества Qv и любого входного сигнала х множество всех состояний, в которые под действием х переходят состояния из множества Qv, целиком содержится в некотором множестве Qw. При этом учитываются лишь те состояния из Qv, для которых следующее состояние определено.

Имея замкнутую группировку Q1,Q2,…,QS из состояний частичного автомата М, можно построить покрывающий его автомат М’ аналогично тому, как это делалось для всюду определённых автоматов на основе классов эквивалентности. Для этого каждой группе совместимости Qv в автомате M’ сопоставляется состояние . Состояние, в которое автомат переходит изпод воздействием сигнала х, определяется группой Qw. Если таких групп несколько, то можно взять любую из них.

Т.к. Qv образует группу совместимости, то подача на вход символа х приводит в каждом состоянии из Qv либо к неопределённому символу на выходе, либо к символу, общему для всей группы Qv. Последний символ и принимают в качестве выходного значения, соответствующего переходу в автомате М’ из состояния под действием входного сигнала х. Если в каждом состоянии из Qv при подаче сигнала х возникает лишь неопределённый символ, то значение выхода автомата М’ может быть назначено произвольно либо может считаться неопределённым.

Справедливо следующее утверждение: автомат М’ покрывает автомат М. Это связано с тем, что всякое состояние покрывается любым состояниемтаким, что.

Действительно, пусть автоматы М и М’ установлены в состояния ии на их вход подаётся последовательность х1,…,хр, применимая к состоянию . Тогда, если при подаче х1 значение выхода автомата М определено, то это же значение будет принимать и выход автомата М’. При этом автоматы перейдут в состояния итакие, что.

Такие рассуждения могут быть продолжены для состояний ,и входного сигнала х2 и т.д.

Таким образом, последовательность х1,…,хр окажется применимой к состоянию , а соответствующая выходная последовательность – совместимой с выходной последовательностью автомата М.

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

Действительно, рассмотрим произвольный автомат М’. Каждому его состоянию сопоставим множество Qv всех покрываемых им состояний автомата М. Множество Qv является группой совместимости, т.к. для любых состояний , любой применимой к ним последовательности, выходные последовательности совместимы. Это следует из того, что они покрываются выходной последовательностью автомата М’, возникающей при подачев состояние. Совокупность всех групп Qv образует группировку. Покажем её замкнутость. Рассмотрим произвольное состояние и входной сигнал х.

Состояние , в которое переходит автомат из состоянияпод действием символа х (если оно определено), покрывается состоянием, в которое сигнал х переводит автомат М’ из состояния. Иначе найдётся входная последовательность, применимая кии приводящая к выходным последовательностямитаким, чтоне покрывает. Тогда тем же свойством будут обладать выходные последовательности, отвечающие входным последовательностям х1,…,хр, поданным в состояния и, а это противоречит тому, чтопокрывает.

Таким образом установлено, что все состояния из Qv под действием х переходят в состояния из множества Qw. Это означает, что группировка замкнута.

Из сказанного следует, что построение покрывающего автомата сводится к нахождению замкнутой группировки, а построение минимального автомата – к построению замкнутой группировки, содержащей минимально возможное число групп совместимости.

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