Контексты и синтаксические моноиды
Контексты
Правый контекст
Определение: |
Правым контекстом (англ. right context) | слова в языке называется множество .
Лемма: |
Язык — регулярный множество его правых контекстов конечно. |
Доказательство: |
|
Левый контекст
Определение: |
Левым контекстом (англ. left context) | слова в языке называется множество .
Лемма: |
Язык — регулярный множество его левых контекстов конечно. |
Доказательство: |
Поскольку множество регулярных языков замкнуто относительно операции разворота, то из того, что | и аналогичного утверждения о правых контекстах получаем требуемое.
Двухсторонний контекст
Определение: |
Двухсторонним контекстом (англ. two-sided context) | слова в языке называется множество .
Заметим, что
состоит из всех пар строк, которые при конкатенации дают слово из языка.Лемма: |
Язык — регулярный множество его двухсторонних контекстов конечно. |
Доказательство: |
|
Синтаксический моноид
Определения
Определение: |
Синтаксическим моноидом (англ. syntactic monoid) | языка называется множество, состоящее из его классов эквивалентности , с введённым на нём операцией конкатенации , где . Нейтральным элементом в нём является .
Определение: |
Групповой язык (англ. group language) — это язык, синтаксический моноид которого является группой. |
Свойства
Синтаксический моноид
определён для любого , однако некоторые свойства языка можно определить по структуре его синтаксического моноида. Размер синтаксического моноида является мерой структурной сложности языка.Теорема: |
Язык — регулярный его синтаксический моноид конечен. |
Доказательство: |
Размер синтаксического моноида Язык языка равен количеству его различных двухсторонних контекстов . Применяя лемму, доказанную ранее, получаем: — регулярный множество его двухсторонних контекстов конечно его синтаксический моноид конечен. |
Лемма: |
Пусть язык ДКА . Тогда размер его синтаксического моноида не превосходит . распознается |
Доказательство: |
Введём на |
Пусть ДКА. Каждое слово порождает отображение , определённое следующим образом: .
—Определение: |
Моноидом переходов (англ. transition monoid) | называется множество отображений с операцией композиции. . Нейтральным элементом в данном моноиде является отображение .
Теорема: |
Пусть ДКА, задающий язык . Тогда и изоморфны. — минимальный |
Доказательство: |
Покажем, что .
|
Примеры
1. Рассмотрим язык
.— это множество всех пар , таких что . Значит, состоит из двух элементов: множества слов чётной длины и множества слов нечётной длины. Нейтральным элементом в данном моноиде является множество слов чётной длины. Оба элемента являются обратными самим себе, значит является группой, следовательно — групповой язык.
2. Язык над алфавитом задан регулярным выражением . Его синтаксический моноид содержит три элемента:
— нейтральный элемент. Включает в себя только пустую строку.
содержит все строки, распознаваемые регулярным выражением . .
содержит все строки, принадлежащие языку, то есть, распознаваемые регулярным выражением . .
Заметим, что
и не имеют обратных элементов в данном моноиде, так как нейтральный элемент содержит только пустую строку, а её невозможно получить из непустой с помощью конкатенации. Следовательно не является групповым языком.
3. Язык задан над алфавитом . Балансом слова назовём число, равное разности между количеством нулей и единиц, встречающихся в данном слове. Если слово принадлежит языку , то . Но может принимать любое целое значение, при том, что имеет непустой двухсторонний контекст. Значит, синтаксический моноид имеет бесконечное количество элементов, что значит, что данный язык не является регулярным.
Ссылки
- Howard Straubing Finite automata, formal logic, and circuit complexity, 1994. ISBN 3-7643-3719-2. — C. 53.
- James A. Anderson Automata theory with modern applications, 2006. ISBN 0-521-61324-8. — С. 72.
- Syntactic monoid - Wikipedia