Sunteți pe pagina 1din 2

IFT-2002 Informatique Thorique

Devoir 1
remettre le 11 octobre 2015, midi
Question 1.
Construisez des automates finis qui acceptent les langages suivants. Les automates peuvent tre
non-dterministes si cela vous simplifie la tche. Par contre, vous ne pouvez pas utiliser des transitions
tiquetes par un mot (voir p. 38 dans les anciennes notes de cours), par une expression rgulire ou
par le mot vide .
Lensemble des mots sur lalphabet {0, 1} o tous les 0 (sil y en a) apparaissent par groupe
de trois. Notons que des groupes successifs de 0 sont possibles (cest dire des blocs de 0 de
longueur 6, 9, 12, etc.) Ainsi 110001110000001 est un mot qui appartient au langage parce quil
contient un bloc de trois 0 et ensuite deux blocs conscutifs de trois 0. Par contre 10011000 et
10001100000 ne font pas partie du langage.
Lensemble des mots sur lalphabet {a, b} qui contiennent exactement une occurrence de aa
cest dire exactement un a qui est suivi immdiatement dun a. Par exemple ni baabaabbb ni
bbaaab nappartiennent au langage mais bbababaabba appartient au langage.
Question 2. Donnez des expressions rgulires qui reprsentent les deux langages de la question 1.
Question 3. Construisez un automate dterministe qui accepte le mme langage que lautomate nondterministe ci-dessous. Vous pouvez omettre ltat poubelle si a vous permet davoir un automate
plus lisible.
b
a, b

a
b

Question 4.
Soit K le langage des mots de {a, b} dont au moins le tiers des lettres sont des a. En dautres mots
K = {w {a, b} : (nb. de a dans w) |w|/3}.
Par exemple, ababbabb et bbaaabbb font partie de K parce que ces mots sont de longueur 8 mais ont
chacun 3 a. linverse aabbbbb et babbabb nen font pas partie puisquils sont de longueur 7 mais
nont que 2 a.
Montrez que K nest pas rgulier.

Question 5.
Soit L un langage quelconque sur lalphabet {a, b}. Soit K le langage suivant: K = {v : va L}.
En dautres termes, un mot v appartient K sil a la proprit quen rajoutant un a la fin de v on
obtient un mot de L.
Montrez que si L est rgulier alors K aussi est rgulier.
Attention ne pas confondre K avec L {a}. Par exemple, si L est reprsent par lexpression
rgulire (ba) alors K est reprsent par (ba) b alors que L {a} est reprsent par (ba) a.
Comme dmarche, je conseille de montrer comment on peut modifier un automate qui reconnat
L pour obtenir un automate qui reconnat K. Je ne demande pas une preuve formelle mais votre
construction doit tre claire. Un exemple peut aussi tre utile.
Question 6.

Soit lalphabet de 8 symboles

0
0
0

 
,

0
0
1

 
,

0
1
0


,...,

1
1
1


. Un mot w de longueur n

peut-tre vu la fois comme une suite de n colonnes de 3 bits ou comme 3 ranges de n bits qui
peuvent tre interprtes comme 3 entiers aw , bw , cw crits en reprsentation binaire. Montrez que le
langage L des w tels que aw + bw = cw est un langage rgulier.
   
0
1
0
1
1
Par exemple, on aura 0
L puisque dans ce cas on a aw = 2, bw = 3 et cw = 5.
1

Note: il est mon avis plus facile de montrer que Lr est rgulier et de faire ensuite appel au
thorme vu en classe.
Question 7.
Donnez une expression rgulire qui reprsente le langage accept par lautomate ci-dessous.
Donnez les tapes intermdiaires (cest pour votre bien et celui de mon correcteur).
a, b
1

Question 8. (facultative)
Soit L, K {a, b} deux langages rguliers. Montrez que le langage suivant est galement rgulier.
H = {c1 d1 c2 d2 . . . cn dn : n N ci , di {a, b} c1 . . . cn L d1 . . . dn K}.
En dautres termes, H contient les mots w de longueur paire qui ont la proprit suivante: le mot
form par les lettres en position impaire appartient L et celui form par les lettres en position paire
appartient K.(Les bonnes ides qui ne marchent pas tout fait seront rcompenses!)

S-ar putea să vă placă și