Замкнутость регулярных языков относительно различных операций — различия между версиями
MikhailOK (обсуждение | вклад) м (→Основные операции) |
MikhailOK (обсуждение | вклад) м (→Доказательство) |
||
Строка 33: | Строка 33: | ||
<tex>T = \lbrace \langle t_1, t_2 \rangle | t_1 \in T_1, t_2 \in T_2 \rbrace</tex> <br/> | <tex>T = \lbrace \langle t_1, t_2 \rangle | t_1 \in T_1, t_2 \in T_2 \rbrace</tex> <br/> | ||
− | <tex>\delta (\langle q_1,q_2 \rangle, c) = \langle \delta_1 (q_1),\delta_2 (q_2) \rangle</tex> </p> | + | <tex>\delta (\langle q_1,q_2 \rangle, c) = \langle \delta_1 (q_1, c),\delta_2 (q_2, c) \rangle</tex> </p> |
</li> | </li> | ||
<li><p> | <li><p> |
Версия 08:04, 11 октября 2010
Основные операции
Пусть регулярные языки над одним алфавитом . Тогда следующие языки также являются регулярными:
-Доказательство
Свойства 1,2,3 непосредственно следуют из определения регулярных языков.
При доказательстве дальнейших свойств воспользуемся эквивалентностью регулярных и автоматных языков. Пусть языки и распознаются автоматами
и соответственно.
Инвертируем множество допускающих состояний: рассмотрим автомат
. Очевидно, он допускает те и только те слова, которые не допускает автомат .
При таком построении следует помнить, что если в исходном автомате было опущено дьявольское состояние, его нужно явно добавить и сделать допускающим.Следует из пунктов 1 и 4, т.к.
.
Автомат для пересечения языков можно построить явно, используя конструкцию произведения автоматов:
, где
Развернем все переходы назад и поменяем стартовое состояние с терминальными: рассмотрим НКА c -переходами , где ; .
Если в исходном автомате путь по из приводил в терминальное состояние, то в новом автомате существует путь по из этого терминального состояния в (и наоборот). Следовательно, этот автомат распознает в точности развернутые слова языка , и из эквивалентности язык -НКА и ДКА - регулярный.
Прямой и обратный гомоморфизмы
Определение: |
Отображение | , сохраняющее операцию конкатенации , называется гомоморфизмом.
Гомоморфизм однозначно задается значениями на алфавите:
.Определение: |
Образом языка | при гомоморфизме называется язык .
Определение: |
Прообразом языка | при гомоморфизме называется язык .
Утверждение: |
– регулярный , – гомоморфизм. Тогда – регулярный. |
Рассмотрим ДКА, распознающий . Заменим в нем все переходы по символам на переходы по их образам при гомоморфизме. Полученный автомат (с переходами по строкам) распознает в точности и имеет эквивалентный ДКА. |
Утверждение: |
– регулярный , – гомоморфизм. Тогда – регулярный. |
Рассмотрим ДКА, распознающий . Отследим для каждого состояния и символа строку : и положим в новом автомате (на том же множестве состояний). Автомат с построенной таким образом функцией переходов, очевидно, распознает слова языка и только их. |