c
Éditions H&K Publié dans les Annales des Concours 3/13
I. Automates et langages
1L(f1)est l’ensemble des mots qui contiennent exactement deux fois la lettre a.
Ce langage est décrit par l’expression rationnelle b⋆ab⋆ab⋆. L’automate ci-dessous
reconnaît L(f1).
a a
bbb
2Les mots de L(f2)ne peuvent contenir que 0 ou 1 fois la lettre a. Plus précisément,
L(f2) = {bn|n>0et nimpair} ∪ {bpabq|p, q >0et p+qpair}
Montrons que L(f2) = (bb)⋆(bab +a+b)(bb)⋆. Soit u∈L(f2).
•Si u=bnavec n>0et nimpair, alors il existe un entier k>0tel que
n= 2k+ 1, de sorte que u= (bb)kbε qui est de la forme voulue.
•Si u=bpabqavec p, q >0et p+qpair, raisonnons selon la parité de pet q
(qui ont forcément la même parité, car leur somme est paire).
◦Si pet qsont tous les deux pairs, alors il existe ket ℓpositifs tels que
p= 2ket q= 2ℓ. Dans ce cas, uest de la forme (bb)ka(bb)ℓ.
◦Si pet qsont tous les deux impairs, alors il existe ket ℓpositifs tels que
p= 2k+ 1 et q= 2ℓ+ 1. Dans ce cas, uest de la forme (bb)kbab(bb)ℓ.
Dans tous les cas, uest de la forme décrite par (bb)⋆(bab +a+b)(bb)⋆, ce qui prouve
que L(f2)⊆(bb)⋆(bab +a+b)(bb)⋆.
Réciproquement, soit uun mot appartenant au langage dénoté par l’expression
rationnelle (bb)⋆(bab +a+b)(bb)⋆. Trois cas sont à distinguer (où k, ℓ >0) :
•Si u= (bb)kb(bb)ℓ, alors u=b2k+2ℓ+1 . Or 2k+2ℓ+1 est impair donc u∈L(f2).
•Si u= (bb)ka(bb)ℓ, alors u=b2kab2ℓ. Or 2k+ 2ℓest pair donc u∈L(f2).
•Si u= (bb)kbab(bb)ℓavec k, ℓ >0, alors u=b2k+1 ab2ℓ+1. Or 2k+ 1 + 2ℓ+ 1 est
pair donc u∈L(f2).
En conclusion,
Le langage L(f2)est représenté par l’expression
rationnelle α(bab +a+b)βavec α= (bb)⋆=β.
3Un automate non déterministe qui reconnaît bab +a+best donné ci-dessous.
a
b
b
a
b
Téléchargé gratuitement sur www.Doc-Solus.fr .