Langages ambigus et s´eries alg´ebriques
Simon Forest
Dans l’article “Analytic models and ambiguity of context-free languages”,
Philippe Flajolet met en avant des m´ethodes afin de d´eterminer si des languages
issus de grammaire sans contexte (ou Context-Free Grammar) sont ambigus.
Ces m´ethodes sont toutes bas´ees sur le th´eor`eme de Chomsky-Schutzenberger,
qui stipule que la fonction g´en´eratrice d’un langage non ambigu est alg´ebrique.
Ainsi, par contrapos´ee, pour montrer l’ambiguit´e intrins`eque d’un langage, il
suffit de montrer que sa s´erie g´en´eratrice n’est pas alg´ebrique. Ce document est
un r´esum´e de l’article de Flajolet.
1 Introduction
Une sp´ecification sans contexte d’un langage Lest dite ambigue s’il existe
un mot wLtel qu’il existe plusieurs fa¸cons de produire w`a partir de la
sp´ecification.
Exemple 1. si L={ambncp|n=mou n=p}, alors une sp´ecification sans
contexte de L est
LXC +AY
XaXb +
YbY c +
AaA +
CcC +
On voit que cette sp´ecification est ambigue pour le mot w=abc.
On dit alors qu’un langage est essentiellement ambigu lorsqu’il ne poss`ede
pas de sp´ecification sans contexte non ambigue.
Il est difficile de montrer qu’un langage est ambigu directement : montrer une
propri´et´e pour toutes les sp´ecifications possibles n’est pas facile. On montre donc
l’ambiguit´e d’un langage indirectement en utilisant le th´eor`eme de Chomsky et
de Schutzenberger :
efinition 1. Soit l=Plnzn. On dit que lest alg´ebrique sur un corps Ks’il
existe P(z, y)K[X, Y ]0tel que P(z, l(z)) = 0. Sinon, on dit qu’elle est
transcendante.
Th´eor`eme 1. (Chomsky-Schutzenberger) Soit l la s´erie g´en´eratrice d’un lan-
gage L. Alors si L est non ambigu, l est alg´ebrique sur Q.
Par contrapos´ee, on a alors :
1
Th´eor`eme 2. Soit l la s´erie g´en´eratrice d’un langage L. Alors si l est trans-
cendante, L est essentiellement ambigu.
Donc pour montrer qu’un langage est essentiellement ambigu, il suffit de
montrer que sa s´erie g´en´eratrice est transcendante. Pour cela, on dispose de
plusieurs crit`eres que l’on va exposer avec des exemples.
2 Valeur d’une s´erie alg´ebrique
On a d´ej`a une premi`ere propri´et´e sur les s´eries alg´ebriques :
Th´eor`eme 3. Si l(z)est une s´erie alg´ebrique et ωest un nombre alg´ebrique,
alors l(ω)est alg´ebrique.
Exemple 2. Soit Ole langage
O={w∈ {x, ¯x, y, ¯y}||w|x=|w|¯xou |w|y=|w|¯y}
On a O=O1O2avec
O1={w∈ {x, ¯x, y, ¯y} | |w|x=|w|¯x}
et
O2={w∈ {x, ¯x, y, ¯y}||w|x=|w|¯x}
On note I=O1O2. On a alors O(z) = O1(z) + O2(z)I(z). On trouve
facilement une grammaire sans contexte non ambigue pour O1:
O1AX
A(x+y)A+
XxAX ¯xA + ¯xAXxA +
De mˆeme pour O2. Ainsi, O1, O2sont alg´ebriques. Pour montrer que O(z)est
transcendante, il suffit de montrer que I(z)est transcendante. On remarque
alors que
I2n=
n
X
k=0 2n
2k2k
k2n2k
nk=2n
nn
X
k=0 n
k2
D’apr`es l’identit´e de Vandermonde, I2n=n
2n2. On peut alors voir I(z)comme
´etant une int´egrale de Wallis
I(z) = 2
πZπ
2
0
(1 16z2sin2(θ))1
2
qui poss`ede des valeurs transcendantes en des points alg´ebriques (par exemple :
Th. Shneider, Einf¨uhrung in die transzendenten Zahlen). Donc I(z)est trans-
cendante, donc Oest essentiellement ambigu.
2
3 Singularit´es d’une s´erie alg´ebrique
Voici une seconde propri´et´e sur les singularit´es des s´eries alg´ebriques :
Th´eor`eme 4. Soit l(z)une s´erie alg´ebrique sur Q. Alors l(z)a un nombre fini
de singularit´es qui sont des nombres alg´ebriques. De plus, si PK[X, Y ]tel
que P(z, l(z)) = 0, alors si zest une singularit´e de l(z), il v´erifie au moins une
des propri´et´es suivantes :
Si R(X, Y ) := resultanty[P(X, Y ),P (X,Y )
Y ], alors R(z, Y )=0
Pd(z)=0o`u Pdest le polynˆome qui est le cœfficient du monˆome de plus
haut degr´e dans P(X, Y )K[X][Y]
Ainsi, on obtient un deuxi`eme crit`ere pour tester l’ambiguit´e d’un langage :
Si l(z) v´erifie l’une des deux propri´et´es suivantes, alors Lest essentiellement
ambigu :
l(z) a un nombre infini de singularit´es
une singularit´e de l(z) n’est pas alg´ebrique
une singularit´e de l(z) n’annule pas R(y) ni Pd
Exemple 3. Soit Sle langage S={anbv1anv2|n1; v1, v2∈ {a, b}?}.Speut
se d´ecomposer de fa¸con non ambigue :
S=X
n1
anbRnan{a, b}?
avec
Rn= ((+a+· · · +an1)b)?
Mais ce n’est pas une grammaire pour autant vu que la somme est infinie. Ce-
pendant, cela nous permet d’exprimer S(z):
S(z) = z
12z
+
X
n=0
z2nRn(z)
avec
Rn(z) = 1
1z(1 + z+· · · +zn1)=1z
12z+zn+1
Donc on a
S(z) = z
12zX
n1
z2n
Pn(z)
o`u Pn(z) = 1 2z+zn+1. Avec une analyse de fonction classique, on remarque
que Pna une unique racine sur ]1
2; 1[ que l’on note xn. La suite des xnest
strictement d´ecroissante.
Ainsi, on en d´eduit que S(z)a une infinit´e de singularit´es sur le disque
D(0,3
4). Donc S(z)n’est pas alg´ebrique et Sest essentiellement ambigu.
4 Asymptotique pr`es d’une singularit´e
On dispose d’une propri´et´e sur l’asymptotique d’une s´erie alg´ebrique pr`es
d’une singularit´e :
3
Th´eor`eme 5. Soit l(z)une s´erie alg´ebrique et αune singularit´e de l(z). Au
voisinage de α, on a un d´eveloppement :
l(z) = X
k≥−m
ak(1 z
α)kr
avec mN,rQ+,(ak)knombres alg´ebriques. En particulier, au voisinage
d’une singularit´e, l(z)admet un ´equivalent de la forme : l(z)ω(1 z
α)u,
avec uQ+
Exemple 4. Soit K={n1. . . nk|∃j, nj+1 6=nj}o`u n=anb. On a Kc=
K1K2avec K1={a, b}?aet K2={n1. . . nk|∀j, nj=nj+1}. Donc
K(z) = 1
12z1
12zX
k1,n0
zk(n+1)
On a donc que K(z)est transcendante si D(z) = Pk1,n1zkn est transcen-
dentale. Or
D(z) = X
m1
d(m)zm
o`u d(m)est le nombre de diviseurs de m.D(z)admet alors une singularit´e en
1. On peut alors montrer `a l’aide d’une transform´ee de Mellin que
D(z)z1(1 z)1log( 1
1z)
ce qui ne peut pas ˆetre l’´equivalent d’une s´erie alg´ebrique pr`es d’une singularit´e
`a cause du facteur log.
5 Asymptotique des cœfficients
On a une propri´et´e sur l’asymptotique des cœfficients d’une s´erie alg´ebrique :
Th´eor`eme 6. Si l(z)est alg´ebrique, alors on a l’asymptotique suivante pour
les cœfficients de la s´erie :
ln=βnns
Γ(s+ 1)
m
X
i=0
Ciωn
i+O(βnt)
avec sQ− {−1,2, . . .},t < s,βun nombre alg´ebrique positif, Ci, ωi
alg´ebriques et |ωi|= 1.
En particulier, si lnγβnnr, alors si βn’est pas alg´ebrique, r /Q, ou
Γ(r+ 1)γest transcendant, alors l(z)est transcendante.
Exemple 5. Soit Ω = {w∈ {a, b, c}?| |w|a6=|w|bou |w|b6=|w|c}. On a alors
c={w∈ {a, b, c}?| |w|a=|w|b=|w|c}.
La s´erie g´en´eratrice I(z)de cest alors
I(z) = X
n3n
n, n, nz3n
En utilisant la formule de Stirling, on obtient l’´equivalent I3n33n3
2πn . Le fac-
teur en n1´etant exclu pour une s´erie alg´ebrique, I(z)est ainsi transcendante,
donc Ω(z) = 1
13zI(z)aussi. Donc le langage est transcendant.
4
6´
Equation sur les cœfficients
Les cœfficients d’une s´erie alg´ebrique doivent v´erifier une formule de r´ecurrence :
Th´eor`eme 7. Si l(z)est une s´erie alg´ebrique, alors il existe des polynˆomes
q0, . . . , qmtels que, pour nn0, on a Pm
j=0 qj(n)Lnj= 0.
En particulier, si l(z) = Pnaφ(n)zφ(n)avec aφ(n)6= 0 alors si φ(n+ 1)
φ(n)+, la s´erie est transcendante.
Exemple 6. Soit G6=={n1. . . np|∃j, nj6=j}. On a
Gc
6==G1G2
avec
G1={a, b}?a
et
G2={n1. . . np|∀j, nj=j}
On a G2(z) = Pn1z(n+3)n
2donc pour φ(n) = (n+3)n
2,G2(z) = Pnzφ(n)et
φ(n+ 1) φ(n)→ ∞ donc, d’apr`es le th´eor`eme, la s´erie est transcendante.
Ainsi G6==1
12zz
12zG2(z)est transcendante et donc le langage G6=est
essentiellement ambigu.
7 Conclusion
Ainsi, dans cet article, Flajolet donne des m´ethodes pour montrer le ca-
ract`ere essentiellement ambigu de langages issus d’une grammaire sans contexte.
Ces m´ethodes rendent la d´emonstration beaucoup plus simple qu’une approche
brutale. Ces m´ethodes sont toutes bas´ees sur la contrapos´ee du th´eor`eme de
Chomsky-Schutzenberger qui stipule qu’un langage issu d’une grammaire sans
contexte non ambigue a une s´erie g´en´eratrice alg´ebrique. On cherche alors `a
montrer qu’une s´erie g´en´eratrice est transcendante. Flajolet donne des m´ethodes
g´en´eriques mais on peut en fait utiliser toute technique qui montre qu’une s´erie
est transcendante.
Plusieurs questions restent cependant ouvertes. Par exemple, on ne sait
pas exactement quelle est la classe de s´eries dans laquelle tombent les s´eries
g´en´eratrices de langages ambigus, `a part que c’est une sous-classe des s´eries
transcendantes. Aussi, on peut se demander quels peuvent ˆetre les cœfficients
d’une s´erie g´en´eratrice associ´ee `a un langage essentiellement ambigu. Par exemple,
existe-t-il Lessentiellement ambigu tel que lnexp(cn) pour un certain c? On
peut aussi chercher `a caract´eriser une classe encore plus pr´ecise : la classe des
langages infiniment ambigus (langages tels que pour toute grammaire, on peut
toujours trouver des mots qui ont plus de Nd´ecompositions, pour tout N).
5
1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !