Автоматы с eps-переходами. Eps-замыкание — различия между версиями
Leugenea (обсуждение | вклад) м (→Совпадение множеств языков, допускаемых eps-НКА и ДКА) |
(→Эквивалентность автоматов с переходами по строкам и НКА. Eps-замыкание) |
||
Строка 28: | Строка 28: | ||
#:Пусть в <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>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,c)=w</tex>. Заметим, что если полученный автомат <tex>A_3</tex> допускает <tex>x</tex>, то он допускает <tex>x</tex> не совершая <tex>\varepsilon</tex>-переходов. | + | #:Во всех случаях, когда <tex>{\delta(u,\varepsilon)=v}, {\delta(v,c)=w}</tex>, добавим переход <tex>\delta(u,c)=w</tex>. Заметим, что если полученный автомат <tex>A_3</tex> допускает <tex>x</tex>, то он допускает <tex>x</tex>, не совершая <tex>\varepsilon</tex>-переходов. |
#Устранение <tex>\varepsilon</tex>-переходов | #Устранение <tex>\varepsilon</tex>-переходов | ||
#:Из предыдущего замечания следует, что если теперь устранить <tex>\varepsilon</tex>-переходы, то допускаемый язык не изменится. Уберем из <tex>A_3</tex> все <tex>\varepsilon</tex>-переходы. | #:Из предыдущего замечания следует, что если теперь устранить <tex>\varepsilon</tex>-переходы, то допускаемый язык не изменится. Уберем из <tex>A_3</tex> все <tex>\varepsilon</tex>-переходы. |
Версия 17:04, 17 января 2012
Автоматы с eps-переходами
Конечный автомат с
-переходами — конечный автомат, в котором есть возможность совершать переходы по .Определение: |
НКА, за исключением . | -НКА — это набор , где все компоненты имеют тот же смысл, что и для
Эквивалентность автоматов с переходами по строкам и НКА. Eps-замыкание
Рассмотрим автомат, в котором переходы осуществляются по строкам. Это переходы вида
, где — строки.Теорема: | ||
Автоматы с переходами по строкам эквивалентны недетерминированным конечным автоматам. | ||
Доказательство: | ||
Рассмотрим два случая:
Ход построения -замыкания:
| ||
Совпадение множеств языков, допускаемых eps-НКА и ДКА
Утверждение: |
Множество языков, допускаемых автоматами с детерминированными конечными автоматами. -переходами, совпадает с множеством языков, допускаемых |
. По только что доказанной теореме, ДКА НКА НКА -НКА . Значит, ДКА -НКА . |