constructions automates

This commit is contained in:
Florent Madelaine 2024-11-04 11:22:47 +01:00
parent cca461b01c
commit b429643633
2 changed files with 72 additions and 2 deletions

View File

@ -9,9 +9,9 @@
Donne une note F.
commence par 30 à 45 minutes de questions.
examen sur la fin de la séance.
cours autorisé (tout documenbt papier).
cours autorisé (tout document papier).
* 4/11 battle avec Luc P.
* 4/11 battle avec Luc P (résolu, erreur edt).
## Calcul de la note pour cette matière.
@ -20,3 +20,19 @@
max (X; 1/3*F + 2/3*X)
'''
## Détails dernières séances.
### séance du 4/11
* révisions automates
* exercices 8, 9, 10
* méthodologie : mots acceptés, mots rejettés,
* présentation automate : description idée états, description idée transition
* test automate : chemin de calcul acceptant pour exemples de mots acceptés, idem rejettant pour mots rejettés.
* méthodologie : si pas idée des états ou des transitions, décrire informellement idée programme python qui lit mots de gauche à droite en se souvenant que d'un nombre fini de lettres.
* digression : non expressabilité a^n.b^n (idée lemme de la pompe)
Après la pause.

View File

@ -0,0 +1,54 @@
# 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.