Наименьший моноид, распознающий формальный язык
В математике и информатике синтаксический моноид формального языка — это наименьший моноид , распознающий язык .
Синтаксический коэффициент
Свободный моноид на заданном множестве — это моноид, элементами которого являются все строки из нуля или более элементов из этого множества, с конкатенацией строк в качестве операции моноида и пустой строкой в качестве элемента идентичности . Для подмножества свободного моноида можно определить множества, которые состоят из формальных левых или правых обратных элементов из . Они называются частными , и можно определить правые или левые частные в зависимости от того, с какой стороны выполняется конкатенация. Таким образом, правое частное по элементу из — это множество
Аналогично, левое частное равно
Синтаксическая эквивалентность
Синтаксическое отношение [ требуется разъяснение ] индуцирует отношение эквивалентности на , называемое синтаксическим отношением или синтаксической эквивалентностью (индуцированной ).
Правильная синтаксическая эквивалентность — это отношение эквивалентности
- .
Аналогично, левая синтаксическая эквивалентность :
- .
Обратите внимание, что правая синтаксическая эквивалентность является левой конгруэнтностью относительно конкатенации строк и наоборот, т. е. для всех .
Синтаксическая конгруэнтность или конгруэнтность Майхилла [1] определяется как [2]
- .
Определение распространяется на конгруэнтность, определяемую подмножеством общего моноида . Дизъюнктивное множество — это подмножество , такое, что синтаксическая конгруэнтность, определяемая отношением, является отношением равенства. [3]
Назовем класс эквивалентности для синтаксической конгруэнтности. Синтаксическая конгруэнтность совместима с конкатенацией в моноиде, в том смысле, что есть
для всех . Таким образом, синтаксический фактор является моноидным морфизмом и индуцирует фактор-моноид
- .
Этот моноид называется синтаксическим моноидом . Можно показать, что это наименьший моноид , который распознаёт ; то есть распознаёт , и для каждого моноида, распознающего , является частным подмоноида . Синтаксический моноид также является моноидом перехода минимального автомата . [1] [2] [4]
Групповой язык — это язык, для которого синтаксический моноид является группой . [5]
Теорема Майхилла–Нерода
Теорема Майхилла –Нерода утверждает: язык является регулярным тогда и только тогда, когда семейство факторов конечно, или, что эквивалентно, левая синтаксическая эквивалентность имеет конечный индекс (то есть она разбивается на конечное число классов эквивалентности). [6]
Эта теорема была впервые доказана Анилом Неродом (Nerode 1958), и поэтому некоторые авторы называют это отношение конгруэнтностью Нерода . [7] [8]
Доказательство
Доказательство части «только если» следующее. Предположим, что конечный автомат, распознающий чтение входных данных , что приводит к состоянию . Если — другая строка, прочитанная автоматом, также завершающаяся в том же состоянии , то, очевидно, имеем . Таким образом, число элементов в не более чем равно числу состояний автомата и не более чем числу конечных состояний.
Для доказательства части "if" предположим, что число элементов в конечно. Тогда можно построить автомат, где — множество состояний, — множество конечных состояний, язык — начальное состояние, а функция перехода задается как . Очевидно, этот автомат распознает .
Таким образом, язык узнаваем тогда и только тогда, когда множество конечно. Обратите внимание, что это доказательство также строит минимальный автомат.
Примеры
- Пусть будет языком над словами четной длины. Синтаксическая конгруэнтность имеет два класса, себя и , слова нечетной длины. Синтаксический моноид — это группа порядка 2 на . [9]
- Для языка минимальный автомат имеет 4 состояния, а синтаксический моноид имеет 15 элементов. [10]
- Бициклический моноид — это синтаксический моноид языка Дика (языка сбалансированных наборов скобок).
- Свободный моноид на (где ) является синтаксическим моноидом языка , где — перестановка слова . (Для , можно использовать язык квадратных степеней буквы.)
- Каждый нетривиальный конечный моноид гомоморфен [ требуется пояснение ] синтаксическому моноиду некоторого нетривиального языка, [11] но не каждый конечный моноид изоморфен синтаксическому моноиду. [12]
- Каждая конечная группа изоморфна синтаксическому моноиду некоторого регулярного языка. [11]
- Язык , в котором число вхождений и сравнимо по модулю, является групповым языком с синтаксическим моноидом . [5]
- Примерами синтаксических моноидов являются трассовые моноиды .
- Марсель-Пауль Шютценбергер [13] охарактеризовал языки без звезд как языки с конечными апериодическими синтаксическими моноидами. [14]
Ссылки
- ^ ab Holcombe (1982) стр.160
- ^ ab Lawson (2004) стр.210
- ^ Лоусон (2004) стр.232
- ^ Штраубинг (1994) стр.55
- ^ ab Sakarovitch (2009) стр.342
- ^ Нерод, Анил (1958), «Преобразования линейных автоматов», Труды Американского математического общества , 9 (4): 541–544, doi : 10.1090/S0002-9939-1958-0135681-9 , JSTOR 2033204
- ^ Бжозовский, Януш; Шикула, Марек; Йе, Юлий (2018), «Синтаксическая сложность регулярных идеалов», Теория вычислительных систем , 62 (5): 1175–1202, doi : 10.1007/s00224-017-9803-8, hdl : 10012/12499 , S2CID 2238325
- ^ Crochemore, Maxime и др. (2009), «От конгруэнтности Нерода к суффиксным автоматам с несовпадениями», Теоретическая информатика , 410 (37): 3471–3480, doi : 10.1016/j.tcs.2009.03.011 , S2CID 14277204
- ^ Штраубинг (1994) стр.54
- ^ Лоусон (2004) стр.211-212
- ^ ab McNaughton, Robert; Papert, Seymour (1971). Counter-free Automata . Исследовательская монография. Том 65. С приложением Уильяма Хеннемана. MIT Press. стр. 48. ISBN 0-262-13076-9. Збл 0232.94024.
- ^ Лоусон (2004) стр.233
- ^ Марсель-Пауль Шютценбергер (1965). «О конечных моноидах, имеющих только тривиальные подгруппы» (PDF) . Информация и вычисления . 8 (2): 190–194. doi : 10.1016/s0019-9958(65)90108-7 .
- ^ Штраубинг (1994) стр.60
- Андерсон, Джеймс А. (2006). Теория автоматов с современными приложениями . С участием Тома Хэда. Кембридж: Cambridge University Press . ISBN 0-521-61324-8. Збл 1127.68049.
- Холкомб, В. М. Л. (1982). Алгебраическая теория автоматов . Кембриджские исследования по высшей математике. Том 1. Cambridge University Press . ISBN 0-521-60492-3. Збл 0489.68046.
- Лоусон, Марк В. (2004). Конечные автоматы . Чепмен и Холл/CRC. ISBN 1-58488-255-7. Збл 1086.68074.
- Pin, Jean-Éric (1997). "10. Синтаксические полугруппы". В Rozenberg, G.; Salomaa, A. (ред.). Handbook of Formal Language Theory (PDF) . Том 1. Springer-Verlag . С. 679–746. Zbl 0866.68057.
- Сакарович, Жак (2009). Элементы теории автоматов . Перевод с французского Рубена Томаса. Cambridge University Press . ISBN 978-0-521-84425-3. Збл 1188.68177.
- Straubing, Howard (1994). Конечные автоматы, формальная логика и сложность схем . Прогресс в теоретической информатике. Базель: Birkhäuser. ISBN 3-7643-3719-2. Збл 0816.68086.