De l'automate à l'expression
Exercice · niveau 2 · informatique (MP2I/MPI), chapitre 29 — Langages réguliers et automates finis
Énoncé
Soit l'automate sur à deux états et , initial et acceptant , avec , , , . Éliminer l'état pour obtenir une expression régulière. Pourquoi serait-elle fausse ?
Corrigé
Le langage est celui des mots ayant un nombre pair de a.
L'élimination. On retire l'état . Les chemins de vers qui passaient par se résument en une seule transition portant , soit . Il reste la boucle sur , déjà présente. En additionnant les deux :
Pourquoi est fausse. Elle oublie que l'on peut lire des b entre les deux a — c'est exactement ce que dénote l'étoile dans la formule d'élimination, et c'est la partie qu'on oublie. Le plus court témoin est aba : il a deux a, donc il est dans le langage, et il n'est pas dénoté par .
Vérification. Les deux expressions ont été évaluées par dérivées sur les mots de longueur au plus : coïncide exactement avec « nombre pair de a », et diverge dès aba.
La règle à retenir. Dans , l'étoile centrale n'est jamais décorative : elle recueille tout ce que l'état éliminé pouvait faire sur lui-même. L'oublier est la faute unique de cet algorithme.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.