Documente Academic
Documente Profesional
Documente Cultură
1
Secventele de caractere u = matematica, v = abcd, w = ε sunt cuvinte peste
acest alfabet (in sensul definitiei date). Sa remarcam ca unele dintre aceste cu-
vinte, spre exemplu v = abcd sau w = ε, nu reprezinta cuvinte ale vocabularului
limbii romane.
Multimea cuvintelor limbii romane uzuale este stict inclusa in multimea A∗ ,
a tuturor cuvintelor peste A. Aceste consideratii justifica definitia matematica a
notiunii de limbaj, ce va fi data in capitolul urmator.
2. Alfabetul B = {0, 1, 2, 3, ..., 9} al cifrelor permite scrierea zecimala a
numerelor naturale. Observam si in acest caz ca nu toate cuvintele peste B
sunt numere naturale: 01234 ∈ B ∗ dar 01234 ∈ / N. Astfel, multimea N este
strict inclusa in B ∗ .
3. Alfabetul binar C = {0, 1} este util pentru scrierea secventelor (sirurilor)
de biti ale limbajului cod masina. Multimea cuvintelor peste C este infinita,
C ∗ = { 0, 1, 00, 01, 10, 11, 001, 011, ...}.
4. Multimea valorilor sistemului de codificare ASCII este un alfabet.
5. Lanturile de nucleotide ale ADN-ului, care stocheaza informatia biologica,
se pot scrie folosind alfabetul {A, C, G, T }.
6. Sa consideram alfabetul D = {a}. Multimea tuturor cuvintelor peste D
este D∗ = {ε, a, aa, aaa, aaaa, .....}.
7. Daca alfabetul A = ∅ (multimea vida) atunci A∗ = {ε}.
Definiţie 6. Fie A un alfabet. Spunem ca doua cuvinte u, v ∈ A∗ sunt egale si
scriem u = v daca:
i) u = ε si v = ε sau
ii) in cazul in care x = ε, adica v = uy, u se numeste prefix sau factor la stanga
al lui v
iii) in situatia in care y = ε, adica v = xu, u se numeste sufix sau factor la
dreapta al lui v
2
ii) fiecarei perechi (u, ε) ∈ A∗ × A∗ cuvantul u · ε = u ∈ A∗
iii) fiecarei perechi (ε, v) ∈ A∗ × A∗ cuvantul ε · v = v ∈ A∗
se numeste operatia de concatenare a cuvintelor pe multimea A∗ .
3
1.2 Proprietatea de universalitate a monoidului liber
Teoremă 15. Fie A un alfabet si i : A → A∗ incluziunea canonica. Atunci,
oricare ar fi un monoid (M, ∗) si o functie f : A → M, exista un morfism de
monoizi f : (A∗ , ·) → (M, ∗) unic determinat, astfel incat urmatoarea diagrama
este comutativa, ceea ce inseamna f = f ◦ i.
Proof. Definim aplicatia f astfel: pentru orice u ∈ A∗ , u = a1 a2 ...am 6= ε,
def
m ∈ N ∗ , definim f (u) = f (a1 · a2 · ... · am ) = f (a1 ) ∗ f (a2 ) ∗ ... ∗ f (am ) , iar
daca u = ε, f (ε) = eM .
In mod evident, avem f (a) = f (a) , pentru orice a ∈ A.
prin urmare f ◦ i = f.
iii) Pentru a dovedi unicitatea consideram un alt morfism g : (A∗ , ·) → (M, ∗),
care face diagrama urmatoare comutativa:
Prin urmare f = g ◦ i si sa aratam ca g = f . Egalitatea f ◦ i = g ◦ i
antreneaza f (a) = g (a) , pentru orice a ∈ A. Daca u = a1 · a2 · ... · am ∈ A∗
este arbitrar ales avem:
deci g = f .
Definiţie 16. Un monoid abstract (M, ∗) se numeste liber daca exista un alfabet
A astfel incat monoidul (A∗ , ·) este izomorf cu (M, ∗)
Exemplu 17. Monoidul (N, +) este un monoid liber generat de submultimea
A = 1.
Definiţie 18. Fie (M, ∗) un monoid si B ⊆ M. Cel mai mic (in sensul incluzi-
unii) submonoid al lui M, care include submultimea B se numeste submonoidul
generat de B. In aceasta situatie, spunem ca B este un sistem de generatori
pentru submonoidul generat.
4
Teoremă 19. Fie A un alfabet si S un submonoid al lui (A∗ , ·), avand sistemul
minimal de generatori B. Atunci S este liber daca si numai daca egalitatea
x1 x2 ...xm = y1 y2 ...yn , m, n ∈ N, xi , yj ∈ B
i) limbajul L = {00, 01, 10, 11}, definit peste alfabetul A = {0, 1} poate fi definit
ca fiind limbajul cuvintelor peste alfabetul A = {0, 1} formate din doua
simboluri;
ii) limbajul M = {0, 01, 011, 0111, ...} poate fi descris ca fiind limbajul cuvin-
telor peste A = {0, 1} care contin exact un 0, iar acesta este primul simbol.
iii toate cuvintele din vocabularul limbii romane formeaza limbajul numit limba
romana.
5
3. generate de o gramatica
i) L1 M1 ⊆ L2 M2 ;
ii) LM1 ⊆ LM2 ;
iii) L{ε} = {ε}L = L;
iv) ∅L = L∅ = ∅.
L · (L1 ∪ L2 ) = L · L1 ∪ L · L2
(L1 ∪ L2 ) · L = L1 · L ∪ L2 · L.
Observaţie 25. Tripletul (P (A∗ ) , ∪.·) este un semiinel, acesta fiind motivul
pentru care, uneori, vom nota operatia de reuniune ∪, cu +.
Definiţie 26. Fie L ⊆ A∗ un limbaj peste alfabetul A. Definim inductiv puterea
acestui limbaj astfel:
i) L0 = {ε};
6
ii) Ln = Ln−1 · L, pentru orice n ∈ N ∗ .
In acest caz L∗ este multimea tuturor cuvintelor peste A, L∗ = {a, b}∗ , ceea ce
justifica si notatia {a, b}∗ .