Sunteți pe pagina 1din 6

Proprietăţi de închidere

Proprietăţile de închidere ale limbajelor bazate pe reţele Petri pot fi investigate luând
în considerare anumite legi de compunere (reuniune, intersecţie, înlănţuire, concurenţă
şi substituţie) şi anumite operaţii (inversarea unei propoziţii, definirea complementului
limbajului, inlănţuirea indefinită). Acest mod de investigare prezintă două avantaje:
 contribuie la creşterea gradului de înţelegere a proprietătilor şi limitelor limbajelor
bazate pe reţele Petri, privite din punctul de vedere al limbajelor;
 reflectă modul în care sistemele complexe sunt proiectate şi construite prin
compunerea unor sisteme de dimensiuni mai mici.

În studiul majorităţii proprietăţilor de închidere se pune problema compunerii


limbajelor bazate pe reţele Petri. În acest scop sunt luate în considerare două limbaje L 1 şi L2,
generate de reţelele Petri etichetate în forma standard, γ1=(N1,σ1,M01,F1) şi γ2=(N2, σ2,M02,F2),

(L1 = L(γ1) şi L2 = L(γ2)).


ps 1 ∈ P1 şi ps 2 ∈ P2 sunt locatiile de start ale celor doua reţele, iar
F1={ps1,pf1} sau {pf1} şi F2={ps2,pf2} sau {pf2} reprezintă seturile stărilor finale
corespunzătoare. Pe baza celor două reţele Petri etichetate se arată cum se poate construi o
nouă reţea Petri etichetată, γ'=(N', σ',M',F'), al cărei limbaj L(γ') este rezultatul compunerii
limbajelor L1 şi L2, în conformitate cu legea precizată.

Concatenarea
În cazul înlanţuirii, două subsisteme sunt compuse secvenţial. Execuţia care rezultă
este rezultatul concatenării unei execuţii din limbajul generat de prima reţea Petri, cu o
execuţie din limbajul corespunzător celei de-a doua reţele. Formal, concatenarea celor două
limbaje poate fi exprimată prin:

L1 L2 = {x1 x2 │ x 1 ∈ L1 şi x 2 ∈ L2 }
Se poate demonstra că dacă L1 şi L2 sunt limbaje bazate pe reţele Petri, atunci şi L1L2
este un limbaj bazat pe reţele Petri.

Exemplul 1
Se consideră doua reţele Petri N1 şi N2 reprezentate împreună cu limbajele pe care le
realizează, în figura a şi respectiv b. În figura c este reprezentată concatenarea celor două
limbaje L1 şi L2.
b
a b
a a b pf
2

ps pf ps
1 1 1
c b
L(N1) = a bn + c L(N2) = a(an bn+1 + b)
a) b)

b
a b
a pf1=ps a b pf2=pf
2 ’
ps

c b
L(N’) = (a bn + c) a(an bn+1 + b)
c)
a
b
c b c
a

pf ps pf
ps 2 a b 2
1
1 c
L1 = an(b + c)
L2 = c(am bm+1)c
a) b)

a b
ps a pf
1 1 c
c

c
c

ps’ pf’
b
b
a
ps c a c pf
c) b
2 2

Figura 4.7
Reuniunea
Dacă două subsisteme sunt compuse prin reuniune, unul şi numai unul dintre cele
două subsisteme va fi executat. Reuniunea este definită prin:

L1  L2 = {x L1 L2 = {x│ x ∈ L1 sau x ∈ L 2 }

Dacă L1 şi L2 sunt limbaje bazate pe reţele Petri, atunci L 1L2 este un limbaj bazat pe
reţele Petri.
În figura este reprezentată reuniunea a două limbaje L1, L2 bazate pe reţele Petri,
obţinându-se limbajul L’.
b
pS1 pf1
a d
c
L1 = a ( b +c ) d
a)

c b
a
pS2
pf2
a b
a
b) L2 = aam(cnabn) b

a d

c
ps’ pf’

a b
a b
c)
a a
L’ = L1 L2 = a ( b + c ) d + aam(cnabn) b

Figura 3
Intersecţia
Intersecţia a două limbaje bazate pe reţele Petri este definită prin:

L1  L2 = {x│ x 1 ∈ L1 şi x 2 ∈ L2 }
Dacă L1 şi L2 sunt limbaje bazate pe reţele Petri, atunci L1  L2 este un limbaj bazat pe
reţele Petri.

c d

ps1 pf
a b c 1
a) L1 = a ( cn b dm ) c, m= <
n/2

c d

pS pf
2 a b c 2
b) L2 = a ( cn b d2n )

ps’ c b d pf’
a c

c)

L’ = L1 L2 = (a(cn b dm)c) (a(cn b d2n)c)


L’ = a(cn b dm)c

Figura 4

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