Théorème de Chomsky-Schützenberger (combinatoire)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
 Ne pas confondre avec le théorème de Chomsky-Schützenberger sur la représentation des langages algébriques.

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é[modifier | modifier le code]

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[modifier | modifier le code]

Le langage de Lukasiewicz est le langage engendré par la grammaire algébrique

Un mot du langage code un arbre binaire, le codage étant obtenu par un parcours préfixe de l'arbre. La grammaire est inambiguë. 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[modifier | modifier le code]

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]. 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[modifier | modifier le code]

  1. L'exposé suit Flajolet (1987).

Bibliographie[modifier | modifier le code]

  • (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