# Quelques constructions autour des automates. Nous avons vu le modèle des automates finis. Nous explorons ici trois techniques. ## Complétez l'automate. Un automate est incomplet si il peut arriver qu'au cours d'un calcul on ne sache pas quoi faire. Ceci correspond dans la table de transition à une case sans prochain état pour une lettre donnée. Pour le compléter, on ajoute un état poubelle à notre automate. Cet état est un puits dans lequel on reste coincé (toutes transitions sortante reste dans cet été poubelle); et, toute transition manquante devient une transition vers cet état poubelle. ## Déterminisation * Exemple d-un automate non déterministe à 3 état qui calcule les mots qui commencent et terminent par a et ont au moins deux lettres. * Calcul sous forme d'un arbre pour aaa, et aaab * Table de transition * digression parralèlisme (multi coeurs) * digression préemption plusieurs processus (commande top) * digression problème mémoire partagée etc * retour exemple automate. Super-état. Déterminisation. ### Méthode. * On part de l'état initial, on note les états accessibles depuis cet état. * Si un état n'existe pas, on ajoute le super étart correspondant. * Un super-état est acceptant ssi il contient un état acceptant. * On arrête la construction quand on ne recontre pas de nouvel état. ### Exercice. On déterminise l'automate non déterministe à 5 états qui acceptent les mots (y compris d'une lettre) qui commencent et terminent par la même lettre. Donnée du problème : Dessin au tableau 1. Donnez table de transition 2. Pourquoi l'automate n'est pas déterministe 3. Déterminisez l'automate avec la méthode vue en cours. Correction. | | a | b | c | |:--|:--|:--|:--| | 0 (initial) | 1,OK | 2,OK | 3,OK | | 1 | 1,OK | 1 | 1 | | 2 | 2 | 2,OK | 2 | | 3 | 3 | 3 | 3,OK | | OK (acceptant)| | | | ## Équivalence.