Monoïde syntaxique - Syntactic monoid
En mathématiques et en informatique , le monoïde syntaxique d'un langage formel est le plus petit monoïde qui reconnaît le langage .
Quotient syntaxique
Le monoïde libre sur un ensemble donné est le monoïde dont les éléments sont toutes les chaînes de zéro ou plusieurs éléments de cet ensemble, avec la concaténation de chaînes comme opération monoïde et la chaîne vide comme élément d'identité . Étant donné un sous - ensemble d'un monoïde libre , on peut définir des ensembles constitués d' inverses formels à gauche ou à droite d'éléments dans . Ceux-ci sont appelés quotients , et on peut définir des quotients à droite ou à gauche, selon le côté que l'on concatène. Ainsi, le quotient droit de par un élément de est l'ensemble
De même, le quotient de gauche est
Équivalence syntaxique
Le quotient syntaxique induit une relation d'équivalence sur , appelée relation syntaxique , ou équivalence syntaxique (induite par ).
La bonne équivalence syntaxique est la relation d'équivalence
- .
De même, l' équivalence syntaxique de gauche est
- .
Observez que l' équivalence syntaxique droite est une congruence gauche par rapport à la concaténation de chaînes et vice versa ; c'est-à-dire pour tous .
La congruence syntaxique ou Myhill congruence est définie comme
- .
La définition s'étend à une congruence définie par un sous-ensemble d'un monoïde général . Un ensemble disjonctif est un sous-ensemble tel que la congruence syntaxique définie par est la relation d'égalité.
Appelons la classe d'équivalence de pour la congruence syntaxique. La congruence syntaxique est compatible avec la concaténation dans le monoïde, en ce que l'on a
pour tous . Ainsi, le quotient syntaxique est un morphisme monoïde , et induit un quotient monoïde
- .
Ce monoïde est appelé le monoïde syntaxique de . On peut montrer que c'est le plus petit monoïde qui reconnaît ; c'est-à-dire, reconnaît , et pour chaque monoïde reconnaissant , est un quotient d'un sous- monoïde de . Le monoïde syntaxique de est aussi le monoïde de transition de l' automate minimal de .
Une langue de groupe est une langue pour laquelle le monoïde syntaxique est un groupe .
Théorème de Myhill-Nerode
Le théorème de Myhill-Nerode déclare : une langue est régulière si et seulement si la famille de quotients est finie, ou de manière équivalente, l'équivalence syntaxique gauche a un indice fini (ce qui signifie qu'elle se divise en un nombre fini de classes d'équivalence).
Ce théorème a été prouvé pour la première fois par Anil Nerode ( Nerode 1958 ) et la relation est donc appelée congruence de Nerode par certains auteurs.
Preuve
La preuve de la partie "seulement si" est la suivante. Supposons qu'un automate fini reconnaissant lit l'entrée qui conduit à l'état . Si est une autre chaîne lue par la machine, se terminant également dans le même état , alors clairement on a . Ainsi, le nombre d'éléments dans est au plus égal au nombre d'états de l'automate et est au plus au nombre d'états finaux.
Pour une preuve de la partie "si", supposons que le nombre d'éléments dans est fini. On peut alors construire un automate où est l'ensemble des états, est l'ensemble des états finaux, le langage est l'état initial, et la fonction de transition est donnée par . Clairement, cet automate reconnaît . Ainsi, un langage est reconnaissable si et seulement si l'ensemble est fini. Notez que cette preuve construit aussi l'automate minimal.
Exemples
- Soit la langue sur des mots de même longueur. La congruence syntaxique a deux classes, elle-même et , les mots de longueur impaire. Le monoïde syntaxique est le groupe d'ordre 2 sur .
- Le monoïde bicyclique est le monoïde syntaxique du langage de Dyck (le langage des ensembles équilibrés de parenthèses).
- Le monoïde libre sur (où ) est le monoïde syntaxique de la langue , où est l'inversion du mot .
- Tout monoïde fini est homomorphe au monoïde syntaxique d'un langage non trivial, mais tout monoïde fini n'est pas isomorphe à un monoïde syntaxique.
- Chaque groupe fini est isomorphe au monoïde syntaxique d'un langage non trivial.
- Le langage sur lequel le nombre d'occurrences de et sont congrus modulo est un langage de groupe à monoïde syntaxique .
- Les monoïdes traces sont des exemples de monoïdes syntaxiques.
- Marcel-Paul Schützenberger a caractérisé les langues sans étoiles comme celles avec des monoïdes syntaxiques apériodiques finis.
Les références
- Anderson, James A. (2006). Théorie des automates avec applications modernes . Avec des contributions de Tom Head. Cambridge : Cambridge University Press . ISBN 0-521-61324-8. Zbl 1127.68049 .
- Holcombe, WML (1982). Théorie des automates algébriques . Études de Cambridge en mathématiques avancées. 1 . Presse de l'Université de Cambridge . ISBN 0-521-60492-3. Zbl 0489.68046 .
- Lawson, Mark V. (2004). Automates finis . Chapman et Hall/CRC. ISBN 1-58488-255-7. Zbl 1086.68074 .
- Pin, Jean-Éric (1997). "10. Semi-groupes syntaxiques". Dans Rozenberg, G.; Salomaa, A. (éd.). Manuel de théorie du langage formel (PDF) . 1 . Springer-Verlag . p. 679-746. Zbl 0866.68057 .
- Sakarovitch, Jacques (2009). Éléments de théorie des automates . Traduit du français par Ruben Thomas. Presse de l'Université de Cambridge . ISBN 978-0-521-84425-3. Zbl 1188.68177 .
- Straubing, Howard (1994). Automates finis, logique formelle et complexité des circuits . Progrès en informatique théorique. Bâle : Birkhäuser. ISBN 3-7643-3719-2. Zbl 0816.68086 .