Локальные автоматы — различия между версиями
| Строка 9: | Строка 9: | ||
}} | }} | ||
| − | [[Файл:Myhill2.png| | + | [[Файл:Myhill2.png|200px|thumb|right|Рисунок 1]] |
| + | [[Файл:Myhill3.png|200px|thumb|right|Рисунок 2]] | ||
Рассмотрим пример (рис. 1). Этот граф может быть использован для распознавания строк над алфавитом <tex>\Sigma = \{a, b\}</tex>. По определению, язык, распознаваемый данным графом, состоит из непустых строк, начинающихся и заканчивающихся на <tex>a</tex>; он имеет вид: <tex>L = (a \Sigma^* \cap \Sigma^* a) \setminus \Sigma^* b^2 \Sigma^*</tex>. | Рассмотрим пример (рис. 1). Этот граф может быть использован для распознавания строк над алфавитом <tex>\Sigma = \{a, b\}</tex>. По определению, язык, распознаваемый данным графом, состоит из непустых строк, начинающихся и заканчивающихся на <tex>a</tex>; он имеет вид: <tex>L = (a \Sigma^* \cap \Sigma^* a) \setminus \Sigma^* b^2 \Sigma^*</tex>. | ||
| Строка 20: | Строка 21: | ||
Язык <tex>L(G)</tex>, распознаваемый графом Майхилла, состоит из всех разрешенных строк из <tex>\Sigma^+</tex>. | Язык <tex>L(G)</tex>, распознаваемый графом Майхилла, состоит из всех разрешенных строк из <tex>\Sigma^+</tex>. | ||
| − | |||
Рассмотрим детерменированный конечный автомат, представленный на рисунке 2. | Рассмотрим детерменированный конечный автомат, представленный на рисунке 2. | ||
Не сложно проверить, что он распознает тот же язык, что и граф на рисунке 1. | Не сложно проверить, что он распознает тот же язык, что и граф на рисунке 1. | ||
Версия 18:28, 2 января 2015
| Определение: |
| Граф Майхилла (над алфавитом ) (англ. Myhill graph) — ориентированный граф, удовлетворяющий свойствам:
1. Для каждой упорядоченной пары вершин и существует только одно ребро из в . 2. Некоторые вершины обозначены начальными, а некоторые — конечными. Ребро может одновременно быть начальным и конечным. 3. Вершины обозначены различными символами из конечного алфавита , то есть мы можем обращаться к вершине по ее символу. |
Рассмотрим пример (рис. 1). Этот граф может быть использован для распознавания строк над алфавитом . По определению, язык, распознаваемый данным графом, состоит из непустых строк, начинающихся и заканчивающихся на ; он имеет вид: .
Пусть — граф Майхилла над алфавитом .
Символ назовем разрешенным, если им помечена вершина, являющая одновременно начальной и конечной.
Не пустая строка из длиной не менее двух символов, называется разрешенной, если символом отмечена стартовая вершина, а символом — конечная, и для всех в существует ребро .
Язык , распознаваемый графом Майхилла, состоит из всех разрешенных строк из .
Рассмотрим детерменированный конечный автомат, представленный на рисунке 2. Не сложно проверить, что он распознает тот же язык, что и граф на рисунке 1.
Покажем, графы Майхилла могут быть представлены в виде автоматов. Пусть — ДКА.
| Определение: |
| Автомат называется локальным (англ. local automation), если для любого из множество содержит не более одного элемента. |
| Определение: |
| Автомат называется стандартным локальным автоматом (англ. standard loal automation), если в нем нет перехода в начальное состояние. |
Таким образом, автомат является локальным, если для каждого из нет переходов, отмеченных , или если все они ведут в одно состояние.
Покажем, что граф Майхилла может быть преобразован в стандартный локальный автомат таким образом, что распознаваемый им язык не изменится.