Automates avanc´es–Master 1 Informatique TD 8 : Transducteurs et p-automates
Exercice 1 Donner un automate qui reconnaˆıt la progression arithm´etique2+3N pour les entiers ´ecrits en base2, puis pour les entiers ´ecrits en base10. Donner un automate qui reconnaˆıt la progression arithm´etique5 + 3Npour les entiers ´ecrits en base2.
Exercice 2 Donner un transducteur qui donne le d´eveloppement binaire den/5 quandnest divisible par5.
Exercice 3 Sur les crit`eres de divisibilit´e.
1. Montrer qu’un entier dont l’´ecriture en base2appartient `a l’ensemble101∗(00)∗1∗01 (chiffres de poids forts `a gauche) est divisible par3.
2. Donner une description rationnelle de l’ensemble des ´ecritures des ´ecritures binaires des entiers divisibles par3.
3. Donner un crit`ere permettant de reconnaˆıtre sur l’´ecriture d’un entier ´ecrit en binaire qu’il est divisible par3.
Exercice 4 D´ecrire l’ensemble des entiers reconnu par le2-automate suivant o`u la fonction de sortie est indiqu´ee par la valeur prise par les ´etats. D´ecrire la suite caract´eristique de cet ensemble en en donnant une substitution et un morphisme lettre-`a-lettre qui l’engendrent.
0 1 0
1 0 1 0,1
0
Figure 1: AutomateA1
1
Exercice 5 Quelle est la relation reconnue par le transducteurT1donn´e ci-dessous?
0 1|0
0|1
Figure 2: TransducteurT1
Exercice 6
1. Donner un transducteurT qui reconnaˆıt la relation de{0,1}∗ dans{0,1}∗ d´efinie par les couples de mots (u, v) qui sont tels que v est obtenu en remplac¸ant dansules 0 par des 1 lorsque le 0 est pr´ec´ed´e d’un1:
| T |={(u, v)|u, v∈ {0,1}∗, vest obtenu en remplac¸ant dansu les 0 par des 1 lorsque le 0 est pr´ec´ed´e d’un1}.
2. Donner un transducteurT qui reconnaˆıt la relation de{0,1}∗ dans{0,1}∗ d´efinie par les couples de mots(u, v)qui sont tels queucommence par1et vest obtenu en remplac¸ant dansules 0 par des 1 :
| T |={(u, v)|u∈ {0,1}∗, u∈1A∗, vest obtenu en remplac¸ant dansules0par des1}.
3. Donner un transducteurT qui reconnaˆıt la relation de{0,1}∗ dans{0,1}∗ qui correspond aux couples de mots(u, v)tels quevest obtenu en remplac¸ant dansules blocs de1par un seul1et les blocs de0par un seul0:
| T |={(u, v)|u, v∈ {0,1}∗, vest obtenu en remplac¸ant dansu les blocs de1par un seul1et les blocs de0par un seul0}.
4. Donner un transducteurT qui reconnaˆıt la relation de{0,1}∗ dans{0,1}∗ d´efinie par les couples de mots(u, v)qui sont tels quevest obtenu en supp- rimant dansuchaque1qui apparaˆıt apr`es un0:
| T |={(u, v)|u, v∈ {0,1}∗, vest obtenu en supprimant dansuchaque1 qui apparaˆıt apr`es un0}.
2
5. Donner un transducteurT qui reconnaˆıt la relation de{0,1}∗ dans{0,1}∗ d´efinie par les couples de mots(u, v)qui sont tels quevest obtenu en supp- rimant dansutous les1:
| T |={(u, v)|u, v∈ {0,1}∗, vest obtenu en supprimant dansules1}.
6. L’op´eration suivante est-elle r´ealisable par transducteur : remplacer toute plage impaire de0 de la forme02n+1 par une plage paire de0de la forme 02nsur l’ensemble des mots de{0,1}∗qui ne contiennent pas11? Si oui, le donner.
Exercice 7 Autour de la num´eration de Fibonacci
1. Repr´esenter les entiers12,17,19et33en base Fibonacci.
2. Quelle est la valeur de l’entierndont la repr´esentation en base de Fibonacci est1010?
3. Donner les 10 premiers termes de la suite de Fibonacci modulo2. Que peut- on en dire? le prouver. Donner un automate qui reconnaˆıt l’ensemble des
´ecritures en base Fibonacci des entiers pairs.
4. Calculer les valeurs de 1000(10)n+ 1 et de1000(10)n00 + 1. Donner un transducteur qui r´ealise la fonction successeur.
3