• Aucun résultat trouvé

4 Algorithme de Brzozowski

N/A
N/A
Protected

Academic year: 2022

Partager "4 Algorithme de Brzozowski"

Copied!
2
0
0

Texte intégral

(1)

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

10 octobre 2019 NathanGrosshans

TD 3 – Rationalité, minimisation et monoïdes

1 Rationalité

Exercice 1.Les langages suivants sont-ils rationnels ? Justifier.

1. {anbn|n∈N}.

2. {ambn|n≡m (modd)}pour un d∈N>0 donné.

3. {ap |ppremier}.

4. {aP(n) |n∈N} pour P un polynôme à coefficients dans N.

5. {w∈ {a, b, c} |(|w|a= 0)⇒(|w|b = 0)}. 6. {w∈ {a, b}| |w|a<|w|b}.

7. {w∈ {a, b}|7 divise |w|a,3 divise |w|b}. 8. {w∈ {(,)}|w est bien parenthésé}.

2 Non équivalence des lemmes de pompage

Soit les trois versions qui suivent du lemme de pompage.

1. Soit Lun langage rationnel sur un alphabet Σ. Alors

∃n∈N>0,∀u∈L:|u| ≥n⇒ ∃v, t, w∈Σ u=vtw |t|>0 ∀m∈N vtmw∈L . 2. Soit Lun langage rationnel sur un alphabet Σ. Alors

∃n∈N>0,∀rus∈L:|u| ≥n⇒ ∃v, t, w∈Σ u=vtw |t|>0 ∀m∈N rvtmws∈L. 3. Soit Lun langage rationnel sur un alphabet Σ. Alors

∃n∈N>0,∀ru1· · ·uns∈L:

(∀i,|ui| ≥1)⇒ ∃1≤i < j ≤n ∀m∈N ru1· · ·ui(ui+1· · ·uj)muj+1· · ·uns∈L . Exercice 2.Montrer que L={w∈ {a, b} | |w|a=|w|b} vérifie le lemme 1 mais pas le lemme 2.

Exercice 3.Montrer que L={(ab)n(cd)n|n∈N} ∪ L(Σ(aa+bb+cc+dd+ac+bd)Σ) vérifie le lemme 2 mais pas le lemme 3.

3 Quotients, théorème de Myhill-Nerode

Soit Σun alphabet. Étant donné un langageL surΣ etu∈Σ on définit :

— lequotient à gauche deLparu, notéu−1L, comme étant le langage surΣtel queu−1L={w∈ Σ|uw∈L};

— le quotient à droite deL paru, notéLu−1, comme étant le langage sur Σtel que Lu−1 ={w∈ Σ|wu∈L}.

Exercice 4.Montrer qu’un langageLsur un alphabetΣest rationnel si et seulement s’il a un nombre fini de quotients à gauche, c’est-à-dire que {u−1L|u∈Σ} est fini.

Exercice 5.Montrer que pour tout langage rationnelLsur un alphabetΣ, tout AFD le reconnaissant contient au moins

{u−1L|u∈Σ}

états, que ce minorant est atteint et que tous les AFD avec ce nombre minimal d’états sont équivalents à « renommage » des états près (ce qui nous autorise à parler de « l’automate minimal de L»).

1

(2)

4 Algorithme de Brzozowski

Soit Σun alphabet.

Étant donné un mot w∈ Σ, on définit le mot renversé de w, notéwR, comme étant wR =ε si w=εetwR=an· · ·a1 siw=a1· · ·an pour n∈N>0.

Étant donné un langageLsurΣ, lerenversé deL, notéLR, est simplement le langageLR ={wR| w∈L}.

Pour tout AFD A= (Q,Σ, δ, q0, F), on définit l’AFN AR = (Q,Σ, δR, F,{q0}) où δR:Q×Σ → P(Q) est telle que δR(q, a) = {p ∈ Q | δ(p, a) = q} pour tous q ∈ Q et a ∈ Σ. (Précisons que, dans cette section, nous autoriserons les AFN à avoir un ensemble non vide d’états initiaux au lieu d’uniquement un seul et que nous les interdirons d’avoir des ε-transitions).

On dira enfin qu’un AFD estémondé lorsque chacun de ses états est accessible depuis l’état initial.

Exercice 6.Soit Lun langage surΣetAun AFD émondé le reconnaissant. Montrer que ARest un AFN reconnaissantLR.

Pour tout AFN B = (Q,Σ, δ, S, F), on notera BD l’AFD obtenu de B par la construction par sous-ensembles, c’est-à-dire la version émondée de l’AFD(P(Q),Σ, δ0, S,{P ⊆Q|P ∩F 6=∅}), où δ0 est telle queδ0(P, a) =S

q∈Pδ(q, a)pour tous P ⊆Q eta∈Σ.

Exercice 7.Soit L un langage sur Σ et A = (Q,Σ, δ, q0, F) un AFD émondé le reconnaissant.

Considérons l’AFD (AR)D = (Q0,Σ, δ0, q00, F0), qui reconnaît LR. Montrer que pour tous u, v ∈ Σ, Lu−1 =Lv−1 implique que δˆ0(q00, uR) = ˆδ0(q00, vR).

Exercice 8.En déduire que pour tout langage L sur Σ et AFD émondé A le reconnaissant, (AR)D est l’automate minimal reconnaissant LR.

Exercice 9.Proposer un algorithme de minimisation se basant sur le résultat précédent et en discuter la complexité.

5 Reconnaissance par monoïdes

Unmonoïdeest la donnée(M, ?)d’un ensembleM et d’une loi de composition interne?:M×M → M tels que

— ? est associative :∀x, y, z∈M,(x ? y)? z =x ?(y ? z);

— ? a un élément neutre :∃e∈M,∀m∈M, e ? m=m ? e=m.

Il est classique de montrer que cet élément neutre est unique, et on le notera donc1(M,?).

SiΣest un alphabet, l’ensemble de tous les motsΣ muni de la concaténation·forme un monoïde (Σ,·) dont l’élément neutre est le mot vide, appelé le monoïde libre engendré parΣ.

Étant donné deux monoïdes (M, ?) et(N,⊥), un morphisme de(M, ?) dans(N,⊥) est une appli- cationϕ:M →N telle que :

— ∀m1, m2 ∈M, ϕ(m1)⊥ϕ(m2) =ϕ(m1? m2);

— ϕ(1(M,?)) = 1(N,⊥).

Si Σest un alphabet, on dira qu’un monoïde(M, ?)reconnaît un langage Lsur Σsi et seulement s’il existe un morphisme ϕ: Σ → M de (Σ,·) dans (M, ?) tel que L = ϕ−1(P) pour un certain P ⊆M.

Exercice 10. Montrer que si un langage est reconnu par un monoïde fini, alors il est rationnel.

Exercice 11. Montrer que si un langage est rationnel, alors il est reconnu par un monoïde fini.

Exercice 12. Montrer, en utilisant ce résultat, que le langage {w ∈ {a, b} | |w|a =|w|b} n’est pas rationnel. Donner un monoïde permettant de le reconnaître.

2

Références

Documents relatifs

testable, relais important au niveau suisse, Lausanne peut même profiter de la proximité de Genève pour être plus que cela, ce d'autant qu'elle tend à s'impliquer de plus en

1- Relie le pronom personnel à la bonne forme du verbe avoir.. Écris 3 phrases en utilisant toutes

Remarque: L'enjeu de cette leçon est d'orthographier correctement le verbe avoir, mais aussi de reconnaître le verbe avoir dans des phrases dictées.. En revanche, il n'est pas

Exemple : Vous avez besoin d’une clé.. = Une clé vous

Il pioche alors une carte correspondant à la couleur de la case sur laquelle il s'est posé, et répond à la question.. Lorsqu'un joueur s'arrête sur

Nous avons un exemple clair d’une régression ontologique inacceptable si elle nous oblige à postuler une infinité de choses d’un type dont nous savons qu’il n’y a qu’un

Série 2 : avoir les larmes aux yeux, avoir des sueurs froides, avoir le cœur serré, avoir la gorge sèche, avoir l’estomac noué, avoir la mort dans l’âme, avoir

Lis cet extrait de “Sur l’eau” et relève dans le tableau suivant les manifestations psychiques de la peur et les manifestations physiques de la peur.. Manifestations