Скачиваний:
207
Добавлен:
20.05.2014
Размер:
3.02 Mб
Скачать

Предполагается, что “программа” машины Тьюринга составляется из конечного множества команд вида: qiaj→ ql ak dp, , где (и).

Смысл команды следующий: блок управления, находясь в состоянии qi после считывания головкой символа aj из ячейки ленты должен перейти в состояние ql головки, записать в обозреваемую ячейку символ ak и передвинуть на один шаг dp(dp - влево, dп - вправо, dн - остаться неподвижной).

Говорят, что функция f: N0K N0, где N0=N0 является вычислимой по Тьюрингу, если для каждого слова  N0K справедливо утверждение, что при помещении некоторого представления  N0K на ленту(и в предложение начального состояния) машина останавливается в случае считывания с ленты представления функции f().

Замечание:

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

В недетерминированной машине Тьюринга на каждой стадии вычислений существуют альтернативы.

2) на языке соответствий множество команд для рабочей недетерминированной машины Тьюринга есть отображение q=< M1, M2, S> , где

M1= A* Q, M2=A*Q*D, S: A*Q A*Q*D, DomS A*Q

( Если DomS= A*Q, то говорят о всюду определенной машине Тьюринга,

а если DomS A*Q, то о частично определенной машине.)

JmS A*Q*D

При этом : если S=Sf , то машина Тьюринга является детерминированной, не всюду определенной машиной, а в случае S|f (?)–детерминированной всюду определенной машиной.

Формально машина Тьюринга UT есть кортеж <A, Q, Р>, где AQ=Ф и

A={a0 , a1 , a2 … am} –внешний алфавит

Q={q0 , q1 , q2 … qn } –внутренний алфавит

Р- законы взаимодействия алфавитов А и Q.

В случай детерминированной машины Тьюринга ее законы взаимодействия символов Р представляют программу П( рассматривается как упорядоченной множество команд) и в этом случае записывают UT= <A, Q, П >,

где П={ xP: qiaJ qeaKdp}

Как формальная система F.S. машина Тьюринга порождает множество своих конфигураций К (машинных слов вида d1qe 2, где 12A* , qeQ). Исходный объект – начальная конфигурация q012 , правила Р- система команд. Особенность F.S., задающих алгоритм (в нашем случае машину Тьюринга), заключается в том, что в них любому порождаемому объекту (в нашем случае конфигурация машины Тьюринга) применимо одно правило. Именно это свойство обеспечивает детерминированность (однозначность) работы алгоритма.

Пример: Последовательность конфигураций машины Тьюринга <{ | a0 +}, {q1, q2, q3, qz}>, реализующей в унарной системе счисления алгоритм сложения двух натуральных чисел следующий:

A\ Q

q1

q2

q3

|

a0dnq3

|d^ q2

|dnq3

a0

a0dnq1

a0dHq1

|dHq2

+

a0dnq2

+d^ q2

+dnq3

Конфигурация

№1 q1=|||+||||

q1

a0

a0

|

|

|

+

|

|

|

|

a0

a0

q1 a0dnq3

2 q3=|||+||||

k1| k2

a0

a0

a0

|

|

+

|

|

|

|

a0

a0

q3

№9 (3+4+2)

|

q3 |dnq3

|+||||q3

k3| k9

a0

a0

a0

|

|

+

|

|

|

|

a0

a0

q3

№10 ||+||||q2

a0q3 |dHq2

k9| k10

a0

a0

a0

|

|

+

|

|

|

|

a0

a0

q2

№18 (2*(3+4+2))

||+|||||

a0q2 |d^q2

k17| k18

a0

a0

a0

|

|

+

|

|

|

|

|

a0

q2

№19 a0q1 ||+|||||

a0q2 a0dnq2

k18| k19

a0

a0

a0

|

|

+

|

|

|

|

|

q1

№20

?? a0dnq3

k19| k20

a0

a0

a0

a0

|

+

|

|

|

|

|

a0

q3

№55

?? a0dnq1

k54| k55

a0

a0

a0

a0

+

|

|

|

|

|

|

|

a0

№56

?? a0dnq1(??)

k55| k56

a0

a0

a0

a0

??

|

|

|

|

|

|

|

a0

q2

Пояснения: Из начальной конфигурации q1|||+||| сотрем самую левую палочку, машина Тьюринга (далее UT) перейдет в состояние q3 и передвинется по ленте вправо (см. в программе П верхнюю левую ячейку) т.к. реализована команда

|q1a0dnq3. Затем UT перейдет направо через все палочки и знак суммы +(см. в программе П верхнюю и нижнюю правые ячейки) до пустой ячейки a0, поставит в ней палочку и перейдет в состояние q2. Далее UT, выполняя команды среднего столбца программы П перейдет влево, пока не окажется у пустой ячейки a0. Переместившись на один шаг вправо, UT перейдет в начальное состояние q1, завершив тем самым первый цикл работы (число циклов равно трем). После третьего цикла UT, попав в конфигурацию q1+||||||, сотрет знак суммы + и перейдет в заключительное состояние qz (т.е. машина остановится0, а на ленте останется результат вычисления- семь палочек.

Примечания:

  1. Рассмотренная машина Тьюринга существует для любого рекурсивно-перечислимого множество слов (цепочек) М()- слов , порождаемых машиной при ее переходе из начального состояния q1 в заключительное qz, т.е ( q1,)=qz. Однако, это не значит, что для любого такого множества М() может быть решена проблема распознавания.

  2. Для того, чтобы машина Тьюринга существовала для любого рекурсивного автоматно-разрешимого множества слов(нужно не только построить порождающую слова машину (т.е. когда Т()=), но и уметь определить такие , обрабатывая которые она не может перейти в заключительное состояние qz= ( q1,) (т.е. вычисляемое машиной Тьюринга значение функции на этих аргументах не определено). В общем случае эта проблема разрешима. Однако эта проблема оказывается разрешимой для некоторых классов машин Тьюринга – линейно-ограниченных, магазинных и конечных автоматов.

Напоминания:

  1. Множество, характеристическая функция которого есть рекурсивная (вычислимая) функция, называется разрешимым (рекурсивным) .

  2. Множество значений рекурсивной функции называется перечислимым (рекурсивно-перечислимым)

ЛИНЕЙНО-ОГРАНИЧЕННЫЕ АВТОМАТЫ.

(Машина Тьюринга с ограниченной рабочей лентой)

Машина Тьюринга UТ, которой для распознания слова А* длины n (пишут ||=n) необходима внешняя память с числом ячеек не более k,n, где k- число, не зависящее от анализируемой ячейки, называется автоматом с линейно-ограниченной памятью . Эти автоматы распознают контекстные языки.

Работа Л-О. автомата состоит из следующих этапов:

  1. Просматривается слева направо записанное на ленте предложение и первая и последняя его буквы заменяются на нетерминированные символы.

  2. ищет в слове подцепочки, являющиеся правыми частями определяющих его (автомата) работу правила НС-грамматики. Если такая подцепочка найдена, автомат заменяет правую часть соответствующего правила (т.е. найденную подцепочку) на левую часть. При этом в случае, если длина левой части правила меньше длины правой, то в оставшиеся свободные ячейки записывается так называемый «нейтральный» символ, не влияющий на работу Л.О. автомата. Если анализируемая цепочка входит в язык (), то должен найтись такой вариант работы Л.О.-автомата, при котором эта цепочка может быть преобразована в цепочку, состоящую из начального символа грамматики и последовательности нейтральных символов. В этом случае начинается третий этап работы.

  3. Автомат просматривает цепочку до крайнего правого элемента (этот символ будет отмечен) и переходит в заключительное состояние. Если первоначальная цепочка в язык не входит, автомат при ее анализе либо придет в тупиковую конфигурацию, либо перейдет в заключительное состояние в момент, когда управляющая головка будет указывать на некоторый символ цепочки.

Пример: Построить распознающий ЛО-автомат для НС-языка (1)={anbnan}, если 1- грамматика имеет следующие продукции:

JMCM, CMCBM, Cb, MBKB, KBKM, KMBM, bBbb, Ma

Решение:

Рассмотрим работу ЛО-автомата при анализе терминальной цепочки aaabbbaaa, выводимой в данной грамматике следующим образом:

J MCM, MMCBMM, MMMCBMBMM, MMMCBKBMM, MMMCBKMMM, MMMCBBMMM, MMMbBBMMM, MMMbbBMMM, MMMbbbMMM, aMMbbbMMM, aaMbbbMMM, aaabbbMMM, aaabbbaMM, aaabbbaaM, aaabbbaaa.

С учетом того, что вывод предложения a3b3a3(1) возможен в эквивалентной грамматике с продукциями:

JaCa, CaCBa, Cb, aBBa bBbb.

Представим конфигурации ЛО-автомата. в которые он приходит при распознавании следующей цепочки:

a0q1 aaabbbaaa a0| a0D q1aabbbaaa a0 |-- a0Daabbbaaaq1

|-- q2DaabbbaaaA |-- …|-- Daabq2bbaaA |--…|--q2DaabbBaaA|--…

|--Daaq2bbBaaA |--…|-- q2DaabBBaaA |--…|--Daaq2bBBaaA |--…

|-- q2DaaCBBaaA |--…|-- DaaCBq2BaaA |--…|--q2DaaCBaBaA |--…

|-- Daq2aCBaBaA |-- …|--q2DaCнннBaA|--…|--Dq2aCнннBaA …

|--q2DcннннннА|-- q?*|--q2aCннннннa|--…|--q2Jннннннн |--…|-- Jннннннннqz

Примечания: Если анализируемая цепочка не входит в язык (1)={anbnan}, то ЛО-автомат при любом варианте анализа перейдет в тупиковую ситуацию. Например, один из вариантов анализа цепочки abaa следующий:

q1abaa |--…|--q2DbaA |--…|--…Dq2baA |--…|--q2DcaA |--…|--q2aCaa|--q2Jннa |--…

|--Jннq2a –тупик.

Итак, алгоритм распознавания инициальным ЛО – автоматом , здесь q0 – начальное состояние, F – множество заключительных состояний,

цепочек длинызаключается в следующем:

  • Образуется всевозможные конфигурации автомата длиной ℓ+1(ℓ- длина исходной цепочки , к которой добавляется единица – символ состояния qi). Таких конфигураций конечное множество;

  • Образуется из этих конфигураций всевозможные их последовательности без повторения( т.е. каждая конфигурация может входить в кортеж только один раз). Очевидно, что и такое множество наборов также конечно.

  • Выделяется подмножество последовательностей, начинающихся с конфигураций до α и заканчивающихся конфигурациями вида . Если среди этих последовательностей найдется такая, которая определяет возможный вариант работы ЛО – автомата, цепочка допускается (т.е. распознана как элемент языка) автоматом, в противном случае – не допускается.

Теорема. Классы языков, допускаемых ЛО – автоматами, и НС – языков совпадают.

МАГАЗИННЫЕ АВТОМАТЫ( МП – АВТОМАТЫ).

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

а) Магазинная память.

Магазинная (стековая) память является аппаратной реализацией машинного списка – стека. Запись и считывание в ней осуществляется через одну и ту же ячейку – вершину стека. В этом случае говорят, что стек (классический пример его – магазин пистолета) реализует дисциплину LIFO(последним пришел первым ушел) в безадресной памяти. Схематично магазин можно рассматривать как потенциально бесконечную в одну сторону ленту, состоящей из ячеек, пронумерованных последовательно числами натурального ряда N. Лента расположена вертикально так, что первая ячейка оказывается самой верхней для записи считывания символа слова. В каждый момент времени в магазине хранится некоторая цепочка, при чтении которой воспринимается лишь первая буква(эта буква стирается, а остальная часть слова поднимается на одну ячейку). При записи в магазин слова ώ длины m( т.е. | ώ | = m ), цепочка , записанная там, двигается на m ячеек вниз, а в освободившиеся ячейки записываются символы слова ώ.

Работа приведенного стека символически можно записать так:

ВАС→ аВАС→ ВаВАС→ аВАС →ВАС

Замечание. Пустому стеку соответствует пустая цепочка

б) Неформальное определение МП – автоматов.

Структуру магазинного преобразователя составляют:

  1. конечный управляющий автомат

  2. три магазина – входной, внутренний и выходной.

  3. три канала, связывающие управляющий автомат с магазинами.

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

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

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

Примечание. Акцептор ( распознающий МП – автомат) не имеет выходной ленты, а порождающий МП – автомат не имеет входной ленты.

Пусть A,Z,B – алфавит соответственно входного, внутреннего и выходного магазинов, не содержащие пустых букв, тогда функционирование МП – преобразователя можно представить выражениями:

Значения этих функций указывают новое состояние и слова, которые записываются во внутренний и выходной магазины. При этом действия МП – автоматов не определены в случае пустого входного или внутреннего магазинов.

в) Формальное определение МП – акцептора.

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

А – алфавит входных (терминальных) символов;

Q – множество состояний;

Z – конечный алфавит, состоящий из терминальных и нетерминальных символов(при этом

Δ – функция переходов МП – автоматов

, здесь - булеан, т.е. множество подмножеств;

q0 – начальное состояние акцептора, ;

z0 - маркер внутреннего стека, ;

F – множество конечных состояний, .

Конфигурация МП – автомата описывается тройкой , где q – текущее состояние акцептора, α – цепочка непрочитанных терминальных символов на входной ленте, ώ - цепочка символов во внутреннем стеке. Такт работы перехода МП – автомата описывается в виде, если, в приведенном выражении.

Начальная конфигурация МП – автомата определяется, как , а множество его конечных конфигурацийМП – автомат допускает цепочку α символов входной ленты, если, находясь в начальной конфигурации,он может перейти в одну из конечных конфигураций. В противном случае входная цепочка не принимается.

Пример. Последовательность конфигураций МП – автомата принимающего арифметическое выражение, согласно продукциям, представим таблицей:

КОНФИГУРАЦИИ.

Дерево вывода

Состояние q

Входное слово α

Содержимое стека

q1=q0

a(b+c)

z0

q2

a(b+c)

Jz0

q2

a(b+c)

Tz0

q2

a(b+c)

TFz0

q2

a(b+c)

FFz0

q2

a(b+c)

aFz0

q2

(b+c)

Fz0

q2

(b+c)

Fz0

q2

(b+c)

(J)z0

q2

b+c)

J)z0

q2

b+c)

J+T)z0

q2

b+c)

T+T)z0

q2

b+c)

F+T)z0

q2

b+c)

b+T)z0

q2

+c)

+T)z0

q2

c)

T)z0

q2

c)

F)z0

q2

c)

c)z0

q2

)

)z0

q2

а0

z0

q3=q2

а0

Пояснение. Рассматриваемый недетерминированный МП – автомат эмулирует вывод с помощью операций со стеком следующим образом: при каждом переходе автомата из стека извлекается символ, определяющий следующее действие автомата. Если извлеченный символ нетерминальный, то вместо него в стек заключится правая часть продукции, соответствующей этому символу. Если извлеченный из†стека символ – терминальный, то он используется в качестве входного символа и, следовательно, определяет переход автомата.

Теорема. Классы КС – языков и языков, допускаемых МП – автоматами, совпадают.

КОНЕЧНЫЕ АВТОМАТЫ

ОСНОВНЫЕ ПОНЯТИЯ.

В настоящее время математической моделью устройств преобразования дискретной информации с конечной памятью часто является конечный автомат. Этот автомат является частным случаем машины Тьюринга, если ее команды имеют вид qjai  qlbk (т.е. смещение головки в правой части команды отсутствует, что можно интерпретировать как движение головки относительно ленты только в одном направлении).

В дальнейшем, формальным определением конечного автомата будет картеж четырех компонент U = <A, Q, B, S>, где А – конечный (А = m) входной алфавит, Q – конечное множество (Q = m) внутренних состояний (интерпретируется как память), В – Конечный (В = k) выходной алфавит, S – законы взаимодействия символов A, Q, B, т.е. S: QA  QB (Dom S  QA, QA  n*m; Im S  QB).

Замечание: В дальнейшем < QA, QB, S> будем рассматривать как соответствие элементов множеств QA и QB, которое может быть как четким, так и нечетким.

Так, например, конечный автомат называется вероятностным, если S – Случайное соответствие переходов и выходов. Автомат называется нечетким, если S: QA  QB есть нечеткое подмножество множества QAQB.

ОБЩАЯ БЛОК-СХЕМА КОНЕЧНОГО АВТОМАТА.

Схему конечного автомата удобно представлять в виде комбинационной схемы, реализующей характеристические функции перехода и выхода , и памяти, сохраняющей на один такт предыдущее состояние автомата:

Здесь aA, bB, qQ – символы алфавитов в соответствующем временном такте t=1,2,3,…

КЛАССИФИКАЦИЯ КОНЕЧНЫХ АВТОМАТОВ.

Приведем классификацию конечных автоматов по видам законов взаимодействия символов алфавитов A, Q, B, и по мощности последних.

  1. В том случае, если S = Г, т.е. U=<A,Q,B,Г>, будем говорить о полном (всюду определенном) недетерминированном (в частности вероятностном, нечетком) автомате. При этом Dom Г = QA, QA = n*m; Im Г  QB.

  2. Если закон сопоставления элементов множеств QA и QB является однозначным (т.е. является функцией отклика Sf), то будем говорить о частном (не всюду определенном) детерминированном) автомате U=<A,Q,B,Sf>. В этом случае: Sf: QA  QB, или Sf = <,>, где : QA  Q, : QA  B. Dom Sf  QA,  im qiaj   1, qiQ, ajA. Итак, U=<A,Q,B,,> есть модель частичного по переходам и выходам детерминированного конечного автомата, в котором - функция переходов (часто будем писать (qiaj) = ql, где qi,ql Q), а  - функция выходов (будем писать (qiaj) = bp, bp  B).

Замечание:

  1. говоря, что автомат является частичным детерминированным по переходам если: :QAQ, Dom SfQQA; :QAB, Dom Sfb=QA;

  2. говорят, что автомат является частичным детерминированным по выходам, если: :QAQ, Dom SfQ=QA; :QAB, Dom SfbQA;

  3. Автомат называется асинхронным, если в нем для любых qiQ и aA (qi, aiaj)=ql. (nj есть такой автомат, который изменяет свое состояние при изменении входной буквы).

  4. Всюду определенный детерминированный по переходам и выходам синхронный автомат (т.е. (qiaj)= ((qi),aj), A*,(в частности =aj, aj,…aj)) <A,Q,B, ,> называется автоматом первого рода (автоматом Мили). Его функционирование часто записывают системой уравнений (рекуррентных соотношений) t= 1,2,3,... bpB

Примечание:

  1. функционирование автомата 2-го рода описывается системой рекуррентных соотношений t= 1,2,3,...

  2. для каждого автомата 2-го рода существует эквивалентный ему абстрактный автомат 1-го рода, функция выходов которого получается подстановкой функции переходов автомата 2-го рода в его сдвинутую функцию выходов, т.е.

  3. конечный автомат называется автоматом Мура, если его функция выходов :QB зависит только от состояний, т.е. для любых ( - функция отметок, т.к. она каждому состоянию однозначно ставит в соответствие отметку – выход В). Очевидно, что автомат Мура является частным случаем автомата 2-го рода: t= 1,2,3,...

  1. Конечный автомат называется функциональным (настроенным), если в Q выделено одно начальное состояние q0. В этом случае такой автомат записывают в виде <U, q0>, или U =<A, Q, B, q0, S>

  2. Автомат Мили, выход которого зависит от внутреннего состояния (т.е. ), называется комбинационным (тривиальным, примитивным). В этом случае говорят, что множествоQ есть множество эквивалентных состояний (все внутренние состояния эквивалентны).

Замечание. Минимальный комбинационный автомат, т.е. если , называют автоматом без памяти. Этот автомат записывают кортежом вида <A, B, >. Поскольку в процессе функционирования состояние такого автомата изменяться не может, что выходной символ зависит только от входного символа в данном такте (т.е. и не зависит от ранее поступивших символов.

  1. Автомат Мили называется автономным автоматом (автоматом без входов), если . Очевидно, что все входные слова в этом случае имеют вид.

  2. Автономный автомат Мура <Q,B, , > называют генератором.

  3. Автомат Мили называют логическим автоматом, если и. Очевидно, что для детерминированного логического комбинационного автомата:

  1. функция переходов  выращена, а его поведение однозначно определяется функцией выходов  с одним аргументом, т.е. ;

  2. функция выходов есть системаk - логических функций от m переменных (i-ая функция определяет значение i-ой компоненты в выходном векторе автомата).

  1. Автомат Мили, в котором , называется акцептором (автоматом без выходов). Его запись <A,Q, >. В частности автомат Мура можно рассматривать как автомат без выходов, поскольку его состояния отмечаются различным образом, т.е. <A, ,>, (где  - функция отметок ).

  2. Автомат Мили, в котором , называется автоматом без памяти (комбинационный автомат).

  3. Конечный инициальный автомат называют:

  1. преобразователем (трансформером), если он преобразует входные слова, т.е. A*B*;

  2. распознавателем (акцептором), если он распознает (принимает) входные слова , где, А – множество заключительных состояний;

  3. генератором, если он порождает слова в алфавите В (это т.н. автомат без входа).

ПРИМЕРЫ КОНЕЧНЫХ АВТОМАТОВ.

    1. - детерминированный, инициальный, логический, всюду определенный, преобразователь А*  В* (автомат Мили)

    2. - недетерминированный по переходам, детерминированный по выходам, инициальный, частично определенный преобразователь.

<{a1,a2},{q0,qz},{b1,b2},q,,>-детерминированный по переходам ,недетерминированный по выходам инициативный преобразователь - определенный.

QXA  Q

QXA  B

    1. <{a1,a2},{q0,qz},{b1,b2},q,>-недетерминированный , вехде определенный преобразователь.

QXA 1 Q

QXA 2 B

    1. <{a},{q1,q2,q3},{b1,b2},,>-автономный автомат Мили(генератор)

    2. <{a1,a2},{q1,q2,q3},{b1,b2},,>-автомат Мура

логический автомат Мили без выходов(акцептор)<{a,1},{q0,q1},>

    1. комбинационный автомат ,эквивалентный автомат без памяти

Алгоритм преобразования недетерминированного конечного автомата к детерминированному виду.

Шаги алгоритма преобразования недетерминированного автомата <A,Q,P,> в эквивалентный детерминированный акцептор < A,Q|, q0, > следующие:

  1. Q|=B(Q)-,| Q||=2n-1,B(Q)-булеан

  2. (qi,a)=qj,i=1,m, j=1,k

  3. q0=q0|

  4. Множество конечных состояний детерминированного автомата строится из всех состояний , имеющих […,fi,…], где fi конечное состояние детерминированного акцептора.

  5. Из построенного акцептора удаляют все недостижимые состояния . Доказано ,что рассматриваемый алгоритм строит детерминированный акцептор, эквивалентный заданному недетерминированному распознавателю.

Пример

Заданный автомат является недетерминированным внутренними состояниями. Поэтому | Q||=2n-1 =15

  1. B(Q)\={q1}U{q2}U{q3}U{q3}U{q4}U{q1,q2}U{q1,q3}U{q1,q4}U{q2,q3}U{q2,q3}U{q2,q4}U{q3,q4}U{q1,q2,q3}U{q1,q2,q4}U{q1,q3,q4}U{q2,q3,q4}U{q1,q2,q3,q4}.

  2. Cтроим ф-ию переходов:

(q1,a2)=q3,

(q3,a1)=q2,

(q2,a2=(q3,q4),

({q1,q3},a1)=q3, ({q1,q2},a2)=(q3,q4)

({q1,q4},a2)=q3

({q1,q4},a2)=q3

({q2,q3},a1)=q2

({q2,q3},a2)=(q3,q4)

({q2,q4},a2)=(q3,q4)

({q3,q4},a1)=q2

({q1,q2,q3},a10=q2

({q1,q2,q3},a2)={q3,q4}

({q1,q2,q4},a2)=(q3,q4)

({q1,q3,q4},a2)=q3

({q1,q3,q4},a1)=q2

({q2,q3q4},a1)=q2

({q2,q3,q4},a2)=(q3,q4)

({q1,q2,q3,q4},a1)=q2

({q1,q2,q3,q4},a2)=(q3,q4)

  1. Аналогичное состояние эквивалентного акцептора q0|=q1

  2. Множество конечных состояний F эквивалентного автомата F={qz,(q1,qz),(q2,qz),(q3,qz),(q,q2,qz),(q1,q3,qz),(q2,q3,qz),(q1,q2,q3,qz)

  3. Удаляем недостижимые вершины графа, недостижимыми вершинами являются, те состояния которых при каком-то А невозможен переход из q0,построенного детерминированного автомата следующим :(q1,q2),(q1,q3),(q1,q4),q4,(q1,q2,q3),(q1,q2,q4),(q2,q3,q3),(q1,q3,q4),(q1,q2,q3,q4),(q2,q3), (q2,q4).

Исходный акцептор

<{a1,a2},{q1,q2,q(3,q4)=qz}/q1=q0,> имеет следующий граф переходов:

Этот распознаватель является не всюду определенным.

Соседние файлы в папке Лекции Маркина