Documente Academic
Documente Profesional
Documente Cultură
Lucrarea de Curs
la Limbaje Formale si Proiectarea Algoritmilor
A efectuat:
A verificat:
Chiinu 2015
Lucrarea Nr.1
Scopul lucrarii:
1.Pentru gramatica formal G=(VN, VT, P, S) construii 5 iruri care aparin
limbajului L(G) generat de aceast gramatic.
2.Construii arborii de derivare pentru aceste iruri.
3.Construii (desenai) automatul finit echivalent.
Varianta 4.
VN={S, L }, VT={a, b,c,d,e,f,j } ,
P= {
1. S aS
2. S bS
3. S cS
4. S dL
5. L eL
6. L fL
7. L jL
8. L e
9. L f
10.L j
11.S d }
1.
a)SaSabSaabd
b)SbsbdLbdjLbdje
c)ScScbScbaScbadLcbadf
d)SdLdeLdejLdejf
e)SbSbcSbcdLbcdjLbcdje
2.
a)
b)
c)
d)
e)
3.
q0
a
q0
q1
q2
b
c
d
e
f
j
q0 q0 q1q
2
q1q q1q q1q
2
2
2
-
Lucrarea Nr.2
Scopul lucrarii:
1. Este dat automatul finit AF=(Q, , , q0, F). Reprezentai automatul sub form de graf.
2. Este sau nu automatul dat determinist?
3. Dac automatul este nedeterminist, construii automatul finit determinist echivalent.
4. Construii gramatica regulat echivalent cu AFD
5. Inventai un ir peste vocabularul care nu va fi acceptat de ctre AFD. Artai acest lucru
scriind secvena (secvenele) de configuraii respective.
6. Pentru automatul finit AFD=(Q, , , q0, F) construii 5 iruri acceptate de automat. Lungimea
irurilor s nu fie mai mic dect n+2, unde n este numrul de stri din Q.
7. Scriei expresia regulat echivalent.
8. Pentru fiecare ir x scriei secvena de configuraii pentru acceptarea irului, adic (q0, x) (qi1,
x1) (qi2, x2) (qf, ), unde qf F.
9. Petru toate cele 5 iruri obinute construii aplicnd lema de pompare descompunerea x=uvw.
Varianta 4
AF=(Q, , , q0, F), Q = {q0, q1, q2 , q3}, = { a, b, c}, F = { q3}.
(q0, a) = {q1}, (q1, a) = {q2}, (q2, b) = {q2, q3}, (q2, c ) ={q2}, (q3, a) ={q3} .
1.Este data automatul finit AF=(Q, , , q0, F). Reprezentai automatul sub form de graf.
2.Est
e sau nu automatul dat determinist.
3. Dac automatul este nedeterminist, construii automatul finit determinist echivalent.
Q
a
b
c
q0
q1
q1
q2
q2
q2,q3
q2
q2q3
q3
q3,q2
q2
q3
q3
c
q0
q1
q2
q2q3
q3
a
a c b
b
b
a
q0q1q2q2q2q3q2q3q2q3q3
u=aa
v=c
w=bbba
Lucrarea Nr.3
EPS004. S se elimine - produciile.
G = (VN , VT , P, S), VN= {S, L, A, I}, VT = {a,b}
P= {
1. S L
2. L A I
3. L a A
4. L L a A I
5. L L b I
6. A a I b
7. A I
8. I b
9. I }
Algoritmul de eliminare producii
1.Construim N
2.Initial P=P\{A }
Eliminam din P toate -productii
3.Pentru toate productiile A din P si toate combinatiile posibile
4.Repetam pasul 3 cat timp apar productii noi in P.
5.Daca SN(L(b))atunci P=P{ S }
1.Eliminam producii
N={}
N={I}
N={I,A}
N={I,A,L}
N={I,A,L,S}
1.SL
2.LAI
LA
LI
3.LaA
La
4.LLaAI
LaAI
LLaI
LLaA
LaA
LLa
LaI
La
5.LLbI
LLb
LbI
Lb
6.AaIb
Aab
AaI
Lucrarea Nr.4
FNC004. S se reduc la Forma Normal Chomsky gramatica independent de
context
G = (VN , VT , P, S), VN= {S, L, A, I}, VT = {a,b}
P= {
1. S L
2. L A I
3. L a A
4. L L a A
5. L L b I
6. A a I b
7. I b
8. I
}.
Eliminm producii:
1.
N={}
N={I}
2.
SL -redenumire
LAI
LA -redenumire
LaA
LLaA
LLbI
LLb
AaIb
Aab
I b
Eliminam redenumirile
1.Rs={S}
2.SL
LA
RL={L}
RA={A}
RL=RL U RS={L,S}
RA=RA U RL={A,L,S}
SAI
SaA
SLaA
SLbI
SLb
LAI
LaA
LLaA
LLbI
LLb
AaIb
Aab
SaIb
Sab
LaIb
Lab
Ib
Aducem la forma normala Chomsky
SAI
SXA
Xa
SQA
QLX
SLM
MYI
Yb
SLY
LAI
LXA
LQA
LLM
AXC
CIY
AXY
SXC
SXY
LXC
LXY
Ib
Lucrarea Nr.5
REC004. S se elimine recursia stng.
G = (VN , VT , P, S), VN= {S, L, A, I}, VT = {a,b}
P= {
1. S L
2. L A I
3. L a A
4. L L a A I
5. L L b I
6. A a I b
7. A A I
8. I b
9. I a L
}.
Pentru S nu este recursie stanga
Pentru L:
a)LLaAI
b) LAI
a1)LAIX
a2)XaAI
a3)X aAIX
b) LAI
Pentru A:
LLbI
LaA
LaAX
XbI
XbIX
LaA
AaIb
AAI
a1)AaIbY
a2)YI
a3)YIY
b)AaIb
SL
LAIX
LAax
XaAI
XbI
X aAIX
XbIX
LAI
LaA
AaIbY
YI
YIY
AaIb
Lucrarea Nr.6
FNG004. S se reduc la forma normal Greibach gramatica independent de context
G=(VN, VT, P, S,), VN={S, A, B, C}, VT ={a, b},
P={ 1. S B C
2. C B B
3. C a
4. A b
5. B C A
}
1. S B C
2. C B B
3. C a
4. A b
5. B C A
Notam
A0 = S
A1 = A
A2 = B
A3 = C
A0A2A3
A3A2A2
A3a
A1b
A2A3A1
Pentru i=0:
A0A2A3
Pentru i=3:
A3A2A2 -teorema substitutiei
A3a
Pentru i=1:
A1b
Pentru i=2:
A2A3A1
A0A2A3
A3 A3A2A2 recursie stinga
A3a
A3aX
A1b
A2A3A1
A3a
A3aX
XA1A2
XA1A2X
i=3
A3a
A3aX
XbA2
XbA2X
i=2
A2aA1
A2aXA1
i=1
Ab
i=0
A0=aA1A2
A0=aXA1A2
FNG
A3a
A3aX
XbA2
XbA2X
A2aA1
A2aXA1
A0aA1A2
A0aXA1A2
Lucrarea Nr.7
UVWXY004. Este dat gramatica independent de context :
G=(VN, VT, P, S,), VN={S, A, B}, VT ={a, b},
P={ 1. S B S
2. S A S
3. S a
4. A A S
5. A a
6. B S B
7. B b }.
a) Construii un cuvnt arbitrar z, care aparine limbajului L(G), | z | 8;
b) Aplicnd teorema uvwxy construii reprezentarea z= uvwxy.
Z=aaaabaaa
S
B
A
a
S b A Sa
B
a
a
u=aa
v=a
w=abaa
Lucrarea Nr.8
n=4:aabdcccc
(q0,z0,aabdcccc) (q0,az0,abdcccc) (q0,aaz0,bdcccc) (q0,aaaz0,dcccc)
(q1,aaaaz0,cccc) (q1,aaz0,ccc) (q1,aaz0,cc) (q1,az0,c) (q1,z0, )
(q1, ) acceptare.
Lucrarea Nr.9
PRSMP008. Este dat gramatica independent de context :
G=(VN, VT, P, S,), VN ={S, A, F, E}, VT ={a,b,c,d,e},
P={ 1. S A
2. A F
3. A E c F
4. F a
5. F b
6. F d E
7. E A e
S se construiasc matricea relaiilor de preceden i s se analizeze irul
daeecdbe
S
A
F
E
PRIM
A,F,E,a,b
,d
F,E,a,b,d,
A
a,b,d
A,F,E,a,b
,d
ULTIM
A,F,a,b,E
,e
F,a,b,E,e
a,b,E,e
e
EQ = {(Ec),(cF),(dE),(Ae)}
1. (Ec)=>E=c
ULTIM(F)>c=>e>c
2. (cF)=>c=A
c<PRIM(F) =>c<a ,c<b,c<d
3. (dE)=>d=E
d<PRIM (E)=>d<A,d<F,d<E,d<a,d<b,d<d
4. (A,e)=>A=e
ULTIM(A)>e=>F<e,a<,b<e,E<e,e<e
5. $ < PRIM
6. ULTIM(S) > $
Tabelul relatiilor de precedenta
S
A F
a b
}.
S
>
A
=
F
> >
E
=
> >
a
> >
b
> >
c
=
< <
<
d
< < < < <
<
e
>
> >
$
< < < < <
<
($,daeecdbe,$)D($d,aeecdbe,$)D($da,eecdbe,$)R4($dF,eecdbe,$)
R2($dA,eecdbe,$)D($dAe,ecdbe,$)R7($dE,ecdbe,$) R6($F,ecdbe,$)
R2($A,ecdbe,$)D($Ae,cdbe,$)R7($E,cdbe,$)D($Ec,dbe,$)D($Ecd,be,$)
D($Ecdb,e,$)R5($EcdF,e,$)R2($EcdA,e,$)D($EcdAe,$)R7($EcdE,$)
R6($EcF,$)R2($A,$)($S,$)acceptare
Lucrarea Nr.10
LL(1)007.
Este dat gramatica independent de context
G=(VN, VT, P, S,), VN ={S, A, E, R, D, X, Z}, VT ={a,b,c,d},
P={ 1. S A 2. A c E
3. E R d
4. R D X
5. X 6. X b D X
7. D a Z
8. Z 9. Z c R d
S se construiasc tabelul de analiz LL(1) i s se analizeze irul
1.SA X FR(
2.AcE X)
3.ERdS c
4.RDX
A c
5.X E a
6.XbDX
R a
7.DaZX b,
8.Z D A
9.ZcRd
Z c,
FL(
X)
$
$
$
d
d
b,d
b,d
N={X,Z}
a
a
b
V
V
1.SA
2.AcE
3.ERd
4.RDX
5.X
6.XbD
X
7.DaZ
8.Z
9.ZcRd
$
SD()
c
c
a
a
d
b
a
b,d
c
}.
X
D
Z
2
6
7
8