Изменения

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

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

131 байт добавлено, 07:33, 8 октября 2010
м
Нет описания правки
}}
==Эквивалентность автоматов с переходами по строкам и НКА. Eps-замыкание.==
Рассмотрим автомат, в котором переходы осуществляются по строкам. Это переходы вида <tex><\langle p,\alpha\beta>\rangle\vdash<\langle q,\beta>\rangle</tex>, где <tex>\alpha,\beta</tex> --- строки.
{{Утверждение
|id=th1
Рассмотрим два случая:
* <tex>\left | \alpha \right | \ge 1</tex>
*:Заменим переходы по таким строкам на последовательности переходов по символам. А именно, пусть <tex>\alpha=a_1a_2...a_n</tex>, где <tex>a_1,a_2,...,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},...,{<\langle t_{n-1}, a_n>\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>-замыкание.
#:Пусть в <tex>A_1</tex> есть <tex>\varepsilon</tex>-переход из состояния <tex>u</tex> в состояние <tex>v</tex>, причем <tex>v</tex> - допускающее. Тогда, если текущее состояние <tex>u</tex> и строка закончилась, то ее можно допустить. Во всех таких случаях сделаем <tex>u</tex> допускающим. Получим автомат <tex>A_2</tex>, обладающий тем же свойством, что и <tex>A_1</tex>, а также не совершающий <tex>\varepsilon</tex>-переходов в качестве последнего перехода.
#Добавление ребер
#:Во всех случаях, когда <tex>{\delta(u,\varepsilon)=v}, {\delta(v,c)=w}</tex> , добавим переход <tex>\delta(u,v)=c</tex>. Заметим, что если полученный автомат <tex>A_3</tex> допускает <tex>x</tex>, то он допускает <tex>x</tex> не совершая <tex>\varepsilon</tex>-переходов.
#Устранение <tex>\varepsilon</tex>-переходов
#:Из предыдущего замечания следует, что если теперь устранить <tex>\varepsilon</tex>-переходы, то допускаемый язык не изменится. Уберем из <tex>A_3</tex> все <tex>\varepsilon</tex>-переходы.
57
правок

Навигация