Vous êtes sur la page 1sur 3

Td sur les langages formels

Exercice 1 :

Soit X = {a,b,c} un alphabet et m abca un mot sur X. donner tous les facteurs, les suffixes, les préfixes
et les sous-mots de m

Facteurs ℇ , a, b, c, ab, bc, ca, abc, bca, abca


Suffixes ℇ , a, ca, bca, abca
Préfixes ℇ , a, ab, abc, abca
Sous-mots ℇ , a, b, c, a, ab, ac, aa, bc, ba, ca, abc, aba, aca,
bca, abca

Exercice 2 :

Soit m = aba. Combien y a-t-il de factorisations de m :

1) En deux facteurs différents de ℇ  ?


2 : ab.a et a.ba

2) En deux facteurs quelconques ?


4 : ℇ .aba, aba.ℇ , a.ba et ab.a

3) En trois facteurs différents de ℇ  ?


1 : a.b.a

4) En trois facteurs quelconques ?


10 : ℇ .a.ba, ℇ .ab.a, ℇ .aba.ℇ , a.b.a, a.ℇ .ba, ab.ℇ .a, aba.ℇ .ℇ , ℇ .ℇ .aba, a.ba.ℇ , ab.a.ℇ

Exercice 3 :

Soit X = {a,b} un alphabet et C le sous-ensemble de mots de X* ayant aba comme facteurs et b3


comme sous-mot.

1) Quelle est la longueur minimale k0 des mots de C ?


5

2) Combien y a-t-il dans C de mots de longueur k 0 ?


3

3) Soit k ≥ 0 un entier. Quel est en fonction de k le nombre de mots de C de longueur inférieure


ou égale à k et n’ayant pas a3 comme sous-mot ?

( k−2 )( k −1 )
–3
2
Exercice 4 :

Soit X = {a, b} un alphabet muni de la relation d’ordre totale ≤ telle que a ≤ b. on énumère les mots
de X* suivant l’ordre hiérarchique : le numéro 1 est le plus petit mot suivant l’ordre hiérarchique
(donc ℇ ), le numéro 2 est le suivant, …

1) Donner les 10 premiers mots


ℇ , a, b, aa, ab, ba, bb, aaa, aab, aba

2) Soit k un entier strictement positif. Donner en fonction de k le nombre de mots de longueur


strictement inférieure à k. en déduire le numéro de a k
2k -1
Le numéro de ak est : 2k

3) Quel est le numéro de m = abaabbbab ?


|m| = 9
Premier mot de longueur 9 = aaaaaaaaa et est position 2 9 (512)
Deuxième mot de longueur 9 = aaaaaaaab et est position 2 9+1 (512+1)

Abaabbbab est position 669

4) Quel est le mot de X* dont le numéro est 300 ?


On sait que les mots de longueur 9 commencent à 512
Ceux de longueur 8 commencent à 256.
Ainsi le numéro 256 est :
Aaaaaaaa
Ainsi on cherche le mot en 300 soit 256 + 44 soit 256 + 32 + 8 + 4 soit : aababbaa

Exercice 5 :

Soient X un alphabet, A et B deux langages sur X*. on note A.B le langage de X* défini par :

A.B = {u.v, u compris dans A /\ v compris dans B}

Pour les questions suivantes on prendra X = {a, b}. Calculez A.B :

1) A = {a, ab, bb} et B = {ℇ , b, aa}


A.B = {a, ab, aaa, ab, abb, abaa, bb, bbb, bbaa}

2) A = ∅ et B = {a, ba, bb}


A.B = ∅

3) A = {ℇ } et B = {b, aba}
A.B = {b, aba} = B

4) A = {aa, ab, ba} et B = x*


A.B = ensemble des mots ayant aa ou ab ou ba comme préfixe
Exercice 6 :

Soient X = {a, b} un alphabet et L un langage sur X*. Déterminer Pref(L) dans chacun des cas suivants :

1) L1 = {anbn, n ≥ 0}
ℇ , ab, aabb, aaabbb, …

2) L2 = {anbm, 0 ≤ n ≤ m}
ℇ , b, ab, bb, abb, bbb, …

3) L3 = {anbm, 0 ≤ m ≤ n}
ℇ , a, ab, aa, aaa, aab, …

4) L4 = {u compris dans X*, |u|a = |u|b}


ℇ , ab, ba, aabb, abab, baba

Vous aimerez peut-être aussi