Skip to main content

Automates finis et application - TD1

Langages et automates finis

Exercie 1

Pour chaque langage ci dessous sur l'alphabet {a,b}\{a,b\} donnez un automate fini déterministe qui l'accepte.

Le nombre de aa est un multiple de 4.

![1.1]

Un nombre pair de aa et impair de bb.

![1.2]

Tout symbole aa est précédé et suivi d'au moins un symbole bb

![1.3]

Exercice 2

Pour chaque langage ci dessous sur l'alphabet binaire {0,1}\{0,1\}, donnez un automate fini déterministe qui l'accepte :

Les entiers pairs

![2.1]

Les entiers multiples de 3

![2.2]

Exercice 3

Pour chaque langage ci-dessous sur l'alphabet {a,b,c}\{a,b,c\}, donnez un automate fini non déterministe qui l'accepte

Les mots qui se terminent par aaaa

![3.1]

Les mots dont la dernière lettre apparait précédemment dans le mot

![3.2]

Les mots dont la dernière lettre n'apparait pas précédemment dans le mot

![3.3]

Exercice 4

Ecrire un algorithme qui indique si un automate fini détermininste et complet A=(Q,Σ,δ,q0,F)A=(Q,\Sigma,\delta,q_0,F) accepte un mot ωΣ\omega \in \Sigma*

Formellement soit ω=ω1,...,ωk\omega = \omega_1 , ... , \omega_k un mot (ωi\omega_i est la ième lettre du mot) et A=(Q,Σ,δ,q0,F)A=(Q,\Sigma,\delta,q_0,F) un automate, on veut décider si ω\omega est accepté par AA. Soit XiX_i l'ensemble des états que l'on peut atteindre en ayant lu ω1,ω2,...,ωi\omega_1,\omega_2,...,\omega_i

X_0 = q_0
pour i de 1 à k
X_i != 0
pour tout p dans X_{i-1}
pour tout q tel que (p,w_i,q) est dans E
X_i=X_i u {q}
pour tout p dans X_k
si p est dans F
retourner Vrai
retourner Faux

Exercice 5

L'idée est de supprimer les deux états initiaux et d'en créer un nouveau qui mêne aux deux anciens 4

Exercice 6

Démonstration par l'exemple 5

Jeu des portes bascules

Les parties gagnantes avec trois billes AAB, ABB, BAB, BBB.

Table de transition de l'automates

AB
000a100r011r
000a100r011r
001a101r011r
010r110r000a
010a110r001a
100r010r111r
100a010r111r
101r011r100a
101a011r100a
110r000a101a
110a000a101a
111r001a110a

2