Théorème de Chomsky-Schützenberger (combinatoire)
En informatique théorique, en mathématiques discrètes et en combinatoire, le théorème de Chomsky-Schützenberger est un énoncé sur le nombre de mots de longueur donnée dans un langage engendré par une grammaire algébrique inambiguë. Le théorème montre un lien entre la théorie des langages formels et l'algèbre. Il est nommé d'après Noam Chomsky et Marcel-Paul Schützenberger.
Énoncé
Pour énoncer le théorème, nous avons besoin de quelques notions d'algèbre.
Une série entière sur est une série de la forme
à coefficients dans . La multiplication de deux séries entières et est définie, de manière habituelle, comme la convolution des suites et :
En particulier, on écrit , , etc. En analogie avec les nombres algébriques, une série entière est dite algébrique sur s'il existe des polynômes , , , …, , à coefficients rationnels, tels que
Le théorème s'énonce comme suit.
Théorème de Chomsky-Schützenberger — Soit un langage algébrique sur un alphabet fini admettant une grammaire algébrique inambiguë, et soit le nombre de mots de longueur dans . La série
est une série entière sur qui est algébrique sur .
La série est la série génératrice du nombre de mots du langage . Des preuves de ce théorème sont données dans Kuich & Salomaa (1985) et Panholzer (2005).
Un exemple
Le langage de Lukasiewicz est le langage engendré par la grammaire algébrique inambiguë
Un mot du langage code un arbre binaire, le codage étant obtenu par un parcours préfixe de l'arbre. La série génératrice du nombre de mots de Lukasiewicz vérifie l'équation
Les coefficients sont les nombres de Catalan.
Une application
Par contraposition, le théorème de Chomsky-Schützenberger donne un moyen de prouver qu'un langage est inhéremment ambigu, autre que le lemme d'Ogden :
- Si la série génératrice d'un langage algébrique est transcendante, alors le langage est inhéremment ambigu.
On prouve ainsi que le langage de Goldstine est inhéremment ambigu[1] - [2]. On considère pour cela le complémentaire de ce langage ; il est formé des mots qui se terminent par la lettre , et par les mots de l'ensemble
La série génératrice des mots se terminant par la lettre est . La série génératrice de l'ensemble est
Par conséquent,
Comme est transcendante si et seulement si l'est, il suffit de considérer la dernière. Or, la série
est transcendante, car c'est une série lacunaire.
Notes et références
- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Chomsky–Schützenberger theorem » (voir la liste des auteurs).
- L'exposé suit Flajolet (1987).
- Olivier Carton, Langages formels, calculabilité et complexité, Paris, Vuibert, coll. « Vuibert sup maths », , 256 p. [détail de l’édition] (ISBN 978-2-311-01400-6, présentation en ligne), proposition 2.50.
Bibliographie
- (en) Noam Chomsky et Marcel-Paul Schützenberger, « The algebraic theory of context-free languages », dans P. Braffort et D. Hirschberg (éditeurs), Computer Programming and Formal Systems, North Holland, , p. 118-161
- (en) Werner Kuich et Arto Salomaa, Semirings, Automata, Languages, Springer-Verlag,
- (en) Alois Panholzer, « Gröbner bases and the defining polynomial of a context-free grammar generating function », Journal of Automata, Languages and Combinatorics, vol. 10, , p. 79-97
- (en) Philippe Flajolet, « Analytic models and ambiguity of context-free languages », Theoret. Comput. Sci., vol. 49, , p. 283-309