TD3 Théorie Des Langages
TD3 Théorie Des Langages
TD3 Théorie Des Langages
Exercice 3.1 Modélisez chacun des langages suivants, tous définis sur = {a,b}, sous la
forme d’un automate non déterministe, puis déterminez l’automate déterministe équivalent :
Le langage des mots dont l’avant-dernier symbole est a : {w.a.w’ | w *, w’ 1}.
Le langage des mots dont l’avant-avant-dernier symbole est a: {w.a.w’|w*, w’ 2}.
Le langage des mots contenant le facteur aa ou (non exclusif) le facteur bb :
{ w.aa.w’ | w,w’ *} {w.bb.w’ | w,w’ *}.
Exercice 3.2. A l’aide d’un automate non déterministe avec -transitions, modélisez le
langage défini sur = {I, V, X, L, C, D, M} contenant tous les nombres romains compris
entre I (1) et CMXCIX (999) ainsi que . Déterminez l’-fermeture de l’état initial de votre
automate.
Exercice 3.3. Pour chacun des trois -AEFND suivants, dont on donne soit le diagramme de
transition soit la table de transition, déterminez l’AEFD équivalent :
a b
q0 { q1 }
q1 { q2 , q3} { q2}
q2 { q1 , q3}
q3 { q2 }
a b
q0 { q1 } { q2 }
q1 { q1 , q2} { q2}
q2 { q3}
q3 { q0 } { q1}
a b c d a b c d
q0 {q1, q2} { q3} { q1 } { q2 } q0 { q1 , q2} { q3} { q1 , q3} { q2 }
q1 {q0} { q1 , q3} { q1 } { q2 } q1 { q0} { q1 , q3} { q1} { q1 , q2}
q2 {q1} { q3} { q0 , q3} { q0 } q2 { q1 , q3} { q3} { q0 , q3} { q0}
q3 {q2} { q1 } { q0} { q0 , q2} q3 { q2 } { q0 , q1} { q0} { q0 , q2}
A1 A2
1) Y a-t-il des états non accessibles dans cet automate ? Si oui, enlever ces états.
2) Même question pour les états non co-accessibles.
3) Déterminiser l’automate obtenu après l’élimination de ces états.
Exercice 3.7 Donner un automate non déterministe puis un automate déterministe pour les
langages suivants :
L1 = {a, b, c}*{a}{a, b, c}*{b} {c}{a, b}*.
L2 = {a, b}*a{a, b}*.