Sunteți pe pagina 1din 7

Ministerul Educaţiei, Culturii și Cercetării al Republicii Moldova

Universitatea Tehnică a Moldovei

Facultatea Calculatoare, Informatică şi Microelectronică

Departamentul Ingineria Software și Automatică

RAPORT
Lucrare de laborator nr.1
Disciplina: Limbaje formale și automate
Tema: Gramatici formale

A elaborat:

A verificat: L. Duca

Chişinău 2019

1. Sarcina lucrarii:
1.
a) De creat o gramatica de tip 3, unde VN = 3, VT = 3.
b) Mulțimea de producții P = 12.
c) De construit 5 cuvinte acceptate, lungimea cărora va fi VN+2.
d) Pentru fiecare cuvânt de construit arborele de derivare.

2. Pentru gramatica dată, de reprezentat automatu finit, in toate formele de reprezentare.


3. Pentru gramatica de tipu (2) si tipu (1) de scris cîte 5 producții.

2. Conținutul:

1. a) Crearea gramaticii de tip 3:


2.
VN = {S, W, N};
VT = {a, o, s};

Restricții:
S aW S, W, N ∈ VN
W a a, o, s ∈ VT

b) Mulțimea de producții:
P={
1) S → aW 5) S → S 9) N → aW
2) S → sW 6) W → sS 10) N → sN
3) S → oS 7) W → oN 11) N → a
4) S → oN 8) W → s 12) N → s };

c) Cuvintele obținute și arborele de derivare pentru fiecare cuvînt:


3 3 1 7 12
1. S→oS→ooS→ooaW→ooaoN→ooaos
Figura 1- Arbore de derivare pentru cuvântul ooaos
4 10 9 6 5
2. S→oN→osN→osaW→osasS→osass

Figura 2- Arbore de derivare pentru cuvântul osass

1 6 3 4 11
3. S→aW→asS→asoS→asooN→asooa

Figura 3- Arbore de derivare pentru cuvântul asooa


2 6 1 7 12
4. S→sW→ssS→ssaW→ssaoN→ssaos
Figura 4- Arbore de derivare pentru cuvântul ssaos
3 1 6 4 11
5. S→oS→oaW→oasS→oasoW→ossoa

Figura 5- Arbore de derivare pentru cuvântul oasoa

Pentru crearea cuvintelor s-a folosit combinațiile din mulțimea de producții P, începînd cu
simbolul inițial, și finisînd cu simbolul terminal (ultima muchie trebuie sa fie incidenta simbolului
terminal).
Arborele de derivare s-a obținut din simbolurile neterminale care se modifică pe parcursul formării
cuvîntului resprectiv, și simbolurile terminale din fața simbolului neterminal ce se modifică.

2. Metode de reprezentare a automatului finit:


a) Reprezentare prin graf:
Figura 6- Reprezentarea automatului finit prin graf

Pentru această reprezentarea s-a folosit un graf conex orientat, ca axiomă (simbol inițial) s-a
folosit litera S din mulțimea simbolurilor terminale, si litera X care este simbolul terminal , respectiv s-a
notat muchiile cu litere din multimea simbolurilor terminale.
b) Reprezetare prin tabel:
Tabelul 1-Reprezentarea automatului finit prin tabel
𝑉𝑡 a o s
𝑽𝒏
S W S,N X

W - N S,X

N W - N,X
X - - -

Pentru această reprezentare s-a folosit un tabel cu 3 coloane si 4 linii, liniile indică nodul de la care
se pornește, și coloanele indică spre ce nod se deplasează cu simbolul situat pe muchia adiacentă nodului
de la care se pornește.

c) Metoda analitica de reprezentare:


AF = {Q, Ʃ, q0, F, δ};
Q = {VN + X} = {S, W, N, X};
Ʃ = {VT} = {a, o, s};
q0 = R (simbol initial);
F = {E} (multimea starilor finale)
δ(S, a) = W δ(S, s) = X δ(N, a) = W
δ(S, s) = W δ(W, s) = S δ(N, s) = N
δ(S, o) = S δ(W, o) = N δ(N, a) = X
δ(S, o) = N δ(W, s) = X δ(N, s) = X

3. a) Crearea gramaticii de tip (2):


VN = {A, N, D};
VT = {p, q, n};
α ∈ (VN ⋃ VT)
A→α

Mulțimea de producții:
P = { 1) A → pqNDn
2) N → NDnpqA
3) D → npNDp
4) N → nnAA
5) D → qND }

b) Crearea gramaticii de tip (1):


VN = {Q, N, P};
VT = {a, b, c};
α1Nα2→ α1β1α2
α1β1α2 ∈ (VN ⋃ VT)*
N ∈ VN

Mulțimea de producții:
P = { 1) aQb → acQNNb
2) bWa → bQccaa
3) cPc → cbQNc
4) cQb → caPPcbb
5) bNc → bbcaNPc }
Concluzii:
În urma elaborării acestei lucrări de laborator am făcut cunoștință cu astfel de termeni ca VN -
(Vocabularul neterminal (litere mari)), VT (Vocavular terminal (litere mici, simboluri)), ce este axiomă.
Am studiat și respectiv am creat o gramatică de tip 3, apoi mulțimea de producții, dupa carea am construit
5 cuvinte lungimea cărora nu este mai mica ca VN+2 și arborele de derivare fiecarui cuvînt. Am
reprezentat automatu finit print toate 3 forme de reprezentare. În procesul elaborarării acestei lucrări de
laborator nu am întîlnit dificultăți, datorită faptului ca tema a fost explicată bine și cu exemple.