Vous êtes sur la page 1sur 12

De AFN à AFD

• Théorème: Pour tout AFN il existe un AFD équivalent.


• Preuve par construction
• Soit N = (Q, Σ, δ, q0, F) un AFN / L(N) = A
• Construire l’AFD M = (Q’, Σ, δ’, q0’, F’) / L(M) = A

• Prenons deux cas de figures:


1. N ne contient aucune transition avec ε (cas simple)

2. N contient au moins une transition ε

Dr. Ali Choumane 39


De AFN à AFD
• Si N ne contient aucune transition avec ε
1. Q’ = P(Q)

2. ∀ 𝑅 ∈ 𝑄′ , 𝑎 ∈ 𝛴 alors 𝛿 ′ 𝑅, 𝑎 = {𝑞 ∈ 𝑄 / 𝑞 ∈ 𝛿 𝑟, 𝑎 ∀ 𝑟 ∈ 𝑅}

Autrement dit: 𝛿 ′ 𝑅, 𝑎 = ‫𝑟 𝛿 𝑅∈𝑟ڂ‬, 𝑎


3. q0’ = {q0}

4. 𝐹 ′ = 𝑅 ∈ 𝑄′ / 𝑅 contient au moins un état final de 𝑁

Dr. Ali Choumane 40


De AFN à AFD – Présence de transitions ε
• Si N contient au moins une transition ε
• Soit E(R) = {q / q peut être atteint à partir d’un état dans R en effectuant 0 ou
plusieurs transitions ε}

• Dans l’automate
• E({q2}) = {q2, q3}
• E({q1, q2}) = {q1,q2, q3}
• …

Dr. Ali Choumane 41


De AFN à AFD – Présence de transitions ε

• Il suffit maintenant de modifier :


1. La fonction de transition 𝛿 ′ de M pour devenir:

∀ 𝑅 ∈ 𝑄′ , 𝑎 ∈ 𝛴 alors 𝛿 ′ 𝑅, 𝑎 = {𝑞 ∈ 𝑄 / 𝑞 ∈ 𝑬(𝛿 𝑟, 𝑎 ) ∀ 𝑟 ∈ 𝑅}
Autrement dit: 𝛿 ′ 𝑅, 𝑎 = ‫𝑟 𝛿(𝑬 𝑅∈𝑟ڂ‬, 𝑎 )

2. L’ état initial q0’ = E({q0})

Dr. Ali Choumane 42


De AFN à AFD
• Corollaire: Un langage est régulier si et seulement si il existe un
automate fini non déterministe qui le reconnaît.

• Les AFN donnent une autre façon de caractériser les langages


réguliers

Dr. Ali Choumane 43


De AFN à AFD - Exercice
• Soit N = ({1,2,3}, {a,b}, δ, 1, {1}), un AFN représenté par le
diagramme suivant:
• Convertir l’AFN N en un AFD équivalent.
• Soit M = (Q’, {a,b}, δ’, q0’, F’) l’AFD demandé.
1. Q’ = P(Q)= {Ø, {1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}}

2. q0’ = E({1}) = {1,3}

3. F’ = {{1},{1,2},{1,3},{1,2,3}}

Dr. Ali Choumane 44


De AFN à AFD - Exercice
4. Et finalement 𝛿 ′ 𝑅, 𝑎 = ‫𝑟 𝛿(𝑬 𝑅∈𝑟ڂ‬, 𝑎 )

𝛿’ a b
Ø Ø Ø
{1} Ø E(𝛿 1, 𝑏 )=E({2}) = {2}
{2} E({2,3}) = {2,3} {3}
{3} E({1}) = {1,3} Ø
{1,2} 𝑬(𝛿 1, 𝑎 U𝑬(𝛿 2, 𝑎 ={2,3} {2,3}
{1,3} {1,3} {2}
{2,3} {1,2,3} {3}
{1,2,3} {1,2,3} {2,3}
Dr. Ali Choumane 45
De AFN à AFD - Exercice
• D’où l’AFD M :
X X

• Après simplification on obtient:

Dr. Ali Choumane 46


La classe des langages réguliers est fermée par
l’opération de concaténation
• Idée de preuve selon les AFN. Soit A1 et A2 deux langages réguliers, alors:
• N1 = (Q1, Σ, δ1, q1, F1) un AFN / L(N1) = A1 et N2 = (Q2, Σ, δ2, q2, F2) un AFN / L(N2) = A2
• Construire N = (Q, Σ, δ, q0, F) / L(N) = A1 o A2

Dr. Ali Choumane 47


La classe des langages réguliers est fermée par
l’opération de concaténation
• Les éléments de N sont :
1. Q = Q1 U Q2

2. q0 = q1, l’état initial de N1

3. F = F2, l’ensemble des états finaux de N2

4. ∀𝑞 ∈ 𝑄 𝑒𝑡 𝑎 ∈ Σ𝜀

𝛿1 𝑞, 𝑎 𝑠𝑖 𝑞 ∈ 𝑄1 𝑒𝑡 𝑞 ∉ 𝐹1
𝛿1 𝑞, 𝑎 𝑠𝑖 𝑞 ∈ 𝐹1 𝑒𝑡 𝑎 ≠ 𝜀
𝛿 𝑞, 𝑎 =
𝛿1 𝑞, 𝑎 ∪ 𝑞2 𝑠𝑖 𝑞 ∈ 𝐹1 𝑒𝑡 𝑎 = 𝜀
𝛿2 𝑞, 𝑎 𝑠𝑖 𝑞 ∈ 𝑄2

Dr. Ali Choumane 48


La classe des langages réguliers est fermée par
l’opération de l’étoile
• Idée de preuve selon les AFN. Soit A1 un langage régulier, alors:
• N1 = (Q1, Σ, δ1, q1, F1) un AFN / L(N1) = A1
• Construire N = (Q, Σ, δ, q0, F) / L(N) = A1*

Dr. Ali Choumane 49


La classe des langages réguliers est fermée par
l’opération de l’étoile
• Les éléments de N sont :
1. Q = {q0} U Q1

2. L’état initial q0 est un nouvel état

3. F = {q0} U F1

4. ∀𝑞 ∈ 𝑄 𝑒𝑡 𝑎 ∈ Σ𝜀
𝛿1 𝑞, 𝑎 𝑠𝑖 𝑞 ∈ 𝑄1 𝑒𝑡 𝑞 ∉ 𝐹1
𝛿1 𝑞, 𝑎 𝑠𝑖 𝑞 ∈ 𝐹1 𝑒𝑡 𝑎 ≠ 𝜀
𝛿 𝑞, 𝑎 = 𝛿1 𝑞, 𝑎 ∪ 𝑞1 𝑠𝑖 𝑞 ∈ 𝐹1 𝑒𝑡 𝑎 = 𝜀
{𝑞1 } 𝑠𝑖 𝑞 = 𝑞0 𝑒𝑡 𝑎 = 𝜀
𝜙 𝑠𝑖 𝑞 = 𝑞0 𝑒𝑡 𝑎 ≠ 𝜀

Dr. Ali Choumane 50

Vous aimerez peut-être aussi