Доказательство. Пусть языки U1и U2 распознаются автоматами
Пусть языки U1и U2 распознаются автоматами
Â1 = (A, Q1, j1, q0, D1) и Â2 = (A, Q2, j2, q1, D2).
Построим конечный автомат Á, который функционирует из своего начального состояния так же, как и два параллельно работающих автомата Â1 и Â2.
Определим автомат Á как (A, Q1 Q2, j, (q0, q1), D), где Dобозначает множество состояний, которое будет выбираться так, чтобы обеспечить распознавание множеств U1È U2, U1Ç U2, и U1\ U2.
Состояния Á - это пары (qi, qj), где qi ÎQ1 и qj ÎQ2. Начальным состоянием Á является состояние (q0, q1). Функция перехода j представляет собой пару функций (j1, j2), каждая из которых определяет значение соответствующей компоненты состояния Á. То есть, если в момент времени t автомат находится в состоянии (q¢(t), q²(t)), то значение состояния Á в момент t+1 равно (j1(x(t), q¢(t)), j2(x(t), q²(t))).
Тогда автомат Áиз начального состояния (q0, q1) распознает множество U1 È U2, если в качестве множества распознающих состояний Dвыбрано множество
D1 Q2 È Q1 D2.
Действительно, при переработке произвольного входного слова из начального состояния (q0, q1) компоненты состояния автомата Á изменяются так же, как состояния автоматов Â1 и Â2, когда эти автоматы перерабатывают из состояний q0 и q1 соответственно.
Поэтому Á заканчивает переработку в состоянии из D тогда и только тогда, когда автомат Â1 заканчивает переработку в состоянии из D1 или Â2 заканчивает переработку этого же слова в состоянии из D2.
То есть U1 È U2 Áзаканчивает переработку этого слова в состоянии из множества D1 Q2 È Q1 D2.
Аналогично можно показать, что если в качестве множества распознающих состояний взять D1 D2, то автомат Á из начального состояния (q0, q1) распознает U1Ç U2.
Множество U1\ U2 распознается конечным автоматом Á, для которого D = D1 (Q2 \ D2).
Если множество слов U распознается автоматом
 = (A, Q, j, q0, D), то A* \ U распознается автоматом
(A, Q, j, q0, Q \ D).
Дата добавления: 2015-09-18; просмотров: 588;