Skip to main content

Automates finis et application - TD6

Merci à Aurélien et Fabien pour la prise de note durant les séances de questions réponses.

Pour transformer un automate fini déterministe et complet en automate minimal équivalent :

  1. éliminer les états inaccessibles
  2. fusionner les états qui acceptent le même langage

On obtient finalement le plus petit automate déterministe et complet qui accepte le même langage que l'automate de départ.

Exercice 1 : Calcul d'automate minimal

Automate
1

Calcul de la partie accessible

ItérationAcc
0{q0}\{q_0\}
1{q0,q1,q5}\{q_0, q_1, q_5\}
2{q0,q1,q5,q2,q6}\{q_0, q_1, q_5, q_2, q_6\}
3{q0,q1,q5,q2,q6,q4}\{q_0, q_1, q_5, q_2, q_6, q_4\}
4{q0,q1,q5,q2,q6,q4,q7}\{q_0, q_1, q_5, q_2, q_6, q_4, q_7\}

q3q_3 est un état inacessible.

Calcul des classes d'équivalence Q\equiv_Q

On considère au départ que tous les états sont équivalents, puis on enlève ceux qui ne le sont pas. On commence par retirer les couples contenant un état final et un état non-final

q0q_0
q1q_1x
q2q_2
q4q_4x
q5q_5xxx
q6q_6xxxx
q7q_7xxxxx
q0q_0q1q_1q2q_2q4q_4q5q_5q6q_6q7q_7

On fait ensuite la deuxième étape (pour chaque couple, s'il existe une transition vers un couple non-équivalent, on a trouvé un couple non-équivalent).

q0q_0
q1q_1
q2q_2
q4q_4x
q5q_5
q6q_6
q7q_7x
q0q_0q1q_1q2q_2q4q_4q5q_5q6q_6q7q_7

Autre présentation/méthode pour trouver les états équivalents :

diagram

Dessin de l'automate minimal

Automate 1
final

Exercice 2 : Calcul de l'automate minimal

Automate
2

Calcul de la partie accessible

ItérationAcc
0{q0}\{q_0\}
1{q0,q1,q4}\{q_0, q_1, q_4\}
2{q0,q1,q4,q5,q2}\{q_0, q_1, q_4, q_5, q_2\}
3{q0,q1,q4,q5,q2,q3,q6}\{q_0, q_1, q_4, q_5, q_2, q_3, q_6\}
4{q0,q1,q4,q5,q2,q3,q6,q7}\{q_0, q_1, q_4, q_5, q_2, q_3, q_6, q_7\}

Calcul des classes d'équivalence Q\equiv_Q

On commence par retirer les couples contenant un état final et un état non-final

q0q_0
q1q_1x
q2q_2
q3q_3xx
q4q_4xxx
q5q_5xxxx
q6q_6xxxxx
q7q_7x
q0q_0q1q_1q2q_2q3q_3q4q_4q5q_5q6q_6q7q_7

On fait ensuite la deuxième étape (pour chaque couple, s'il existe une transition vers un couple non-équivalent, on a trouvé un couple non-équivalent).

q0q_0
q1q_1
q2q_2
q3q_3x
q4q_4xx
q5q_5xxx
q6q_6x
q7q_7x
q0q_0q1q_1q2q_2q3q_3q4q_4q5q_5q6q_6q7q_7