Ce problème aborde la théorie des automates finis, un classique des concours de la filière MPI. L’objectif est d’évaluer la rigueur dans la manipulation formelle des automates, la maîtrise des algorithmes fondamentaux (déterminisation, minéralisation/complémentarité) et la capacité à raisonner sur des structures de transition.
Il est attendu du candidat une rédaction soignée, utilisant un vocabulaire rigoureux et une notation mathématique irréprochable.
Donner la définition formelle de l’ensemble des ε-transitions et calculer ε-retour(1), l’ensemble des états accessibles depuis l’état 1 en empruntant uniquement des ε-transitions.
Corrigé :
Soit A=(Q,Σ,δ,q0,F) un AFN-ε. Pour tout sous-ensemble d’états S⊆Q, la fermeture par ε-transitions, notée ε-retour(S), est le plus petit sous-ensemble de Q tel que :
S⊆ε-retour(S)
Si q∈ε-retour(S) et q′∈δ(q,ε), alors q′∈ε-retour(S).
Pour l’état 1 :
L’état 1 est inclus trivialement : 1∈ε-retour({1}).
D’après la table, δ(1,ε)={3}, donc 3∈ε-retour({1}).
Appliquer l’algorithme de construction par sous-ensembles (algorithme de Rabin-Scott) pour éliminer les ε-transitions et déterminiser l’automate A. On notera les états de l’automate déterministe D sous forme d’ensembles d’états de A.
Corrigé :
L’état initial de l’automate déterminisé D est I0=ε-retour({q0})=ε-retour({1})={1,3}.
Construisons la table de transition de D par exploration successive :
Caractériser le langage L(A) reconnu par l’automate.
Corrigé :
En observant l’automate initial ou déterminisé, traçons les chemins menant à l’état acceptant 4 :
Depuis l’état 1, on peut aller en 3 via ε, puis lire a pour aller en 2, puis b pour aller en 4. Cela donne le mot ab.
En bouclant sur 3 via b (b∗), ou en passant par 1a{1,2}…
Plus formellement, l’examen des transitions montre que le langage accepté est constitué des mots de la forme :
L(A)=b∗a(ab)+∪…Analyse critique : La déterminisation d’un AFN-ε à n états peut théoriquement produire un automate à 2n états. Ici, l’ensemble des parties de Q est de cardinal 24=16, mais l’algorithme par sous-ensembles n’a généré que 7 états accessibles ({1,3},{1,2,3},{3},{2},{3,4},{4},∅). C’est un phénomène classique : l’explosion combinatoire est rarement atteinte sur les cas pratiques issus de problèmes d’ingénierie.
Points de vigilance : Ne jamais oublier de calculer la fermeture par ε-transitions lors de l’initialisation et après chaque transition dans l’algorithme de Rabin-Scott.
Erreur fréquente : Oublier d’ajouter l’état puits ∅ lorsqu’un symbole n’a aucune transition sortante dans un automate que l’on souhaite rendre complet.