# 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 $\mathbb {N}$ est une série de la forme
    $f=f(x)=\sum _{k=0}^{\infty }a_{k}x^{k}=a_{0}+a_{1}x^{1}+a_{2}x^{2}+a_{3}x^{3}+\cdots$
à coefficients $a_{k}$ dans $\mathbb {N}$. La multiplication de deux séries entières $f$ et $g$ est définie, de manière habituelle, comme la convolution des suites $a_{n}$ et $b_{n}$ :
    $f(x)\cdot g(x)=\sum _{k=0}^{\infty }{\Bigl\sum _{i=0}^{k}a_{i}b_{k-i}{\Bigr )}x^{k}.$
En particulier, on écrit $f^{2}=f(x)\cdot f(x)$, $f^{3}=f(x)\cdot f(x)\cdot f(x)$, etc. En analogie avec les nombres algébriques, une série entière $f(x)$ est dite algébrique sur $\mathbb {Q} (x)$ s'il existe des polynômes $p_{0}(x)$, $p_{1}(x)$, $p_{2}(x)$, …, $p_{n}(x)$, à coefficients rationnels, tels que
    $p_{0}(x)+p_{1}(x)\cdot f+p_{2}(x)\cdot f^{2}+\cdots +p_{n}(x)\cdot f^{n}=0.$
Le théorème s'énonce comme suit.
Théorème de Chomsky-Schützenberger — Soit $L$ un langage algébrique sur un alphabet fini $A$ admettant une grammaire algébrique inambiguë, et soit $a_{k}:=|L\cap A^{k}|$ le nombre de mots de longueur $k$ dans $L$. La série
    $f_{L}(x)=\sum _{k=0}^{\infty }a_{k}x^{k}$
est une série entière sur $\mathbb {N}$ qui est algébrique sur $\mathbb {Q} (x)$.
La série $f_{L}(x)$ est la série génératrice du nombre de mots du langage $L$. 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ë
    $S\to aSS|b$
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 $y=f(x)$ du nombre de mots de Lukasiewicz vérifie l'équation
    $y=xy^{2}+x$
Les coefficients $a_{n}$ 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 $f_{L}(x)$ d'un langage algébrique $L$ est transcendante, alors le langage $L$ est inhéremment ambigu.
On prouve ainsi que le langage de Goldstine $G$ est inhéremment ambigu$^,$. On considère pour cela le complémentaire de ce langage ; il est formé des mots qui se terminent par la lettre $a$, et par les mots de l'ensemble
    $F=\{\varepsilon ,ab,aba^{2}b,aba^{2}ba^{3}b,\ldots \}.$
La série génératrice des mots se terminant par la lettre $a$ est $x/(1-2x)$. La série génératrice de l'ensemble $F$ est
    $f_{F}(x)=1+x^{2}+x^{5}+x^{9}+\cdots =\sum _{n\geq 1}x^{n(n+1)/2-1}.$
Par conséquent,
    $f_{G}(x)={\frac {1-x}{1-2x}}-f_{F}(x).$
Comme $f_{G}(x)$ est transcendante si et seulement si $f_{F}(x)$ l'est, il suffit de considérer la dernière. Or, la série
    $f_{F}(x)/x=\sum _{n\geq 1}x^{n(n+1)/2}$
est transcendante, car c'est une série lacunaire.