• Aucun résultat trouvé

1 Grammaires algébriques (non contextuelles)

N/A
N/A
Protected

Academic year: 2022

Partager "1 Grammaires algébriques (non contextuelles)"

Copied!
2
0
0

Texte intégral

(1)

Langages formels, calculabilité et complexité ENS Paris – A1S1 2019-2020

17 octobre 2019 NathanGrosshans

TD 4 – Grammaires algébriques

1 Grammaires algébriques (non contextuelles)

On rappelle qu’étant donné un mot w ∈ Σ, on définit le mot renversé de w, noté wR, comme étantwR =εsiw=εet wR=an· · ·a1 siw=a1· · ·an pour n∈N>0.

Exercice 1.Donner une grammaire algébrique pour chacun des langages suivants (sans trop justifier).

1. {w∈ {a, b}|w=wR} (langage des palindromes sur{a, b}).

2. {w∈ {a, b}|w6=wR} (langage des non palindromes sur {a, b}).

3. {w∈ {(,),0,1, . . . ,9,∗,+}|w correspond à une expression arithmétique surNvalide}. 4. {aibjck|i6=j∨j6=k}.

5. {w∈ {a, b}| |w|a≥ |w|b}.

6. {an0ban1b· · ·ankb|k∈N∧∃j∈N, nj 6=j}. 7. {ww0 ∈ {a, b} | |w|=|w0| ∧w6=w0}.

Exercice 2.Trouver une grammaire algébrique non ambiguë pour le langage

{w∈ {(,),0,1, . . . ,9,∗,+} |wcorrespond à une expression arithmétique sur Nvalide} telle que dans chaque arbre de dérivation (« parse tree »),∗ a priorité sur+.

Exercice 3.Soit G = ({S},{(,)}, R, S) etG0 = ({B, R},{(,)}, R0, B) des grammaires algébriques où R contient les règles

S→SS |(S)|ε etR0 contient les règles

B →(RB |ε R→)|(RR .

Montrer que G etG0 engendrent le même langage, mais que l’une est ambiguë et pas l’autre.

2 Langages algébriques (non contextuels) et langages rationnels

Étant donné une grammaire algébrique G = (V,Σ, R, S), on dit qu’elle est linéaire droite lorsque dans toute règleX→udeR, soitu∈Σ, soitu=u0Y avecu0 ∈Σ (le corps de chaque règle contient au plus une variable tout à droite).

Exercice 4.Montrer qu’un langage est rationnel si et seulement s’il est engendré par une grammaire linéaire droite.

Exercice 5.Soit la grammaire algébrique G = ({S},{a, b, c}, R, S) où R contient les règles S → aSSb|c. Montrer que tout langage rationnel inclus dans L(G) est fini.

3 Forme normale de Chomsky

On rappelle qu’une grammaire algébrique G = (V,Σ, R, S) est en forme normale de Chomsky (FNC) quand toutes les règles de R sont de la forme :

A→BC ou A→a ou S→ε 1

(2)

avec A∈V,B, C ∈V \ {S}eta∈Σ.

Exercice 6.Proposer une grammaire algébrique en FNC équivalente à la grammaire algébrique G= ({B, C, S},{a, b}, R, S) où R contient les règles :

S →CSC|aB C →B|S B →b|ε.

Exercice 7.Proposer un algorithme en temps polynomial (en la taille cumulée du mot et de la grammaire) qui reconnaît si un mot appartient au langage engendré par une grammaire algébrique en FNC.

2

Références

Documents relatifs

Proposer un algorithme en temps polynomial (en la taille cumulée du mot et de la grammaire) qui reconnaît si un mot appartient au langage engendré par une grammaire algébrique en

De toute manière il semble que l'algèbre de Mohammed-ben-Mousa soit restée inconnue en Occident pendant les xn e et xm e siècles, et que cet au- teur ne fut alors célèbre en

Ci-dessous nous étudions les ©-langages algébriques, c'est-à-dire les langages de la forme L™{G,f) = L <ù (GJ)vL(G,f) formés des mots finis et infinis engendrés par une

Notre travail s'organise ainsi : après avoir rappelé quelques définitions et propriétés élémentaires sur les mots infinis (section I) et sur les grammaires algébriques

Une grammaire algébrique (resp. simple) avec axiome est la donnée y, S, a) d'une grammaire algébrique (resp. Deux grammaires sont équivalentes si elles engendrent le même langage.

Admettons que l'écriture basée sur des signes conventionnels soit moins simple à acquérir - ce qui n'est pas sûr - , admettons que la grammaire com- plique

avait une profondo exp(lrionce en la mat.èro. Il faut blan connallro los règles pour dcrire. Voilà donc qui nous met en digne compagnie. avec Pascel ot Racine qui

Que beaucoup croient que la science est la mère des techniques ou que les techniques dépassent la science , que la grammaire guide la rhétorique ou que la