Изменения

Перейти к: навигация, поиск

Автоматы с eps-переходами. Eps-замыкание

1651 байт добавлено, 00:16, 7 апреля 2016
Нет описания правки
Конечный автомат с <tex>\varepsilon</tex>-переходами {{---}} конечный автомат, в котором есть возможность совершать переходы по <tex>\varepsilon</tex>.
{{Определение
|definition='''<tex>\varepsilon</tex>-НКА ''' или '''НКА с <tex>\varepsilon</tex>-переходами'''(англ. ''<tex>A\varepsilon</tex> -moves'') {{---}} это набор <tex>A={\langle\Sigma,Q,s,T,\delta\rangle}</tex>, где все компоненты имеют тот же смысл, что и для [[Недетерминированные конечные автоматы|НКА]], за исключением <tex>\delta : Q\times (\Sigma\cup\{\varepsilon\}) \to 2^Q</tex>.
}}
|proof=
Рассмотрим два случая:
* <tex>\left | \alpha \right | \ge geqslant 1</tex>*:Заменим переходы по таким строкам на последовательности переходов по символам. А именно, пусть <tex>\alpha=a_1a_2...\ldots a_n</tex>, где <tex>a_1,a_2,...\ldots ,a_n</tex> {{---}} символы. Заменим переход <tex>\langle p,\alpha\beta\rangle\vdash\langle q,\beta\rangle</tex> на переходы <tex>{\langle p,\alpha\beta\rangle\vdash\langle t_1, a_1^{-1}\alpha\beta\rangle},{\langle t_1,a_1^{-1}\alpha\beta\rangle\vdash\langle t_2,(a_1a_2)^{-1}\alpha\beta\rangle},...\ldots ,{\langle t_{n-1}, a_n\beta\rangle\vdash\langle q, \beta\rangle}.</tex>
* <tex>\left | \alpha \right | = 0 \Rightarrow \alpha = \varepsilon</tex>
*:Рассматриваем '''автомат <tex>A</tex> с <tex>\varepsilon</tex>-переходами.''' Для доказательства его эквивалентности НКА построим его <tex>\varepsilon</tex>-замыкание.
*:{{Определение
|definition=
'''<tex>\varepsilon</tex>-замыкание''' ('англ. ''<tex>\varepsilon</tex>-closure''') {{---}} построение по автомату с <tex>\varepsilon</tex>-переходами эквивалентного ему автомата без <tex>\varepsilon</tex>-переходов.
}}
Ход построения <tex>\varepsilon</tex>-замыкания:
}}
== Применение ==
Эпсилон-замыкание и эквивалентность множества языков, допускаемых ДКА, НКА и <tex>\varepsilon</tex>-НКА, доказанная через него выше, открывают нам новые возможности. НКА с <tex>\varepsilon</tex>-переходами в некоторых случаях строятся проще, чем просто НКА и тем более ДКА для тех же языков. При помощи алгоритма <tex>\varepsilon</tex>-замыкания мы умеем легко приводить одно к другому и далее к третьему. Также свойства, доказанные выше, являются важной составляющей доказательства [[Теорема Клини (совпадение классов автоматных и регулярных языков)| теоремы Клини]].
 
==См. также==
*[[Недетерминированные конечные автоматы]]
*[http://en.wikipedia.org/wiki/Nondeterministic_finite_automaton| Wikipedia — Nondeterministic finite automaton]
*[[Теорема Клини (совпадение классов автоматных и регулярных языков)]]
 
==Источники==
*[http://en.wikipedia.org/wiki/Nondeterministic_finite_automaton_with_%CE%B5-moves| Wikipedia — Nondeterministic finite automaton with epsilon-moves]
[[Категория: Теория формальных языков]]
[[Категория: Автоматы и регулярные языки]]
48
правок

Навигация