Transcript
Page 1: PL Suport Examen An2

1. Algebre multisortate

Signaturi multisortate. Multimi si functii multisortate.

• O signatura multisortata este o pereche (S,Σ), unde S 6= ∅ este o multime de sorturi si Σ este o multime de simboluri deoperatii σ : s1s2 . . . sn → s. Daca n = 0, atunci σ :→ s este simbolul unei constante.

Fixam o multime de sorturi S.

• O multime S-sortata este o familie de multimi A = {As}s∈S .• O functie S-sortata f : A → B este o familie de functii f = {fs}s∈S , unde fs : As → Bs, pt. or. s ∈ S. Daca f : A → B si

g : B → C, definim compunerea f ; g : A→ C, (f ; g)s(a) = gs(fs(a)), or. a ∈ As.• O functie S-sortata f : A → B este injectiva, (surjectiva, bijectiva) daca fs este injectiva, (surjectiva, bijectiva), or. s ∈ S.

O functie S-sortata f = {fs}s∈S : A→ B este inversabila daca exista g : B → A astfel ıncat f ; g = 1A si g; f = 1B .

Propozitie 1. O functie S-sortata f : A→ B este inversabila ⇔ este bijectiva.

Algebre multisortate.

• O algebra multisortata de tip (S,Σ) este A = (AS , AΣ) unde AS = {As}s∈S este o multime S-sortata si AΣ = {Aσ}σ∈Σ este

o familie de operatii astfel ıncat

– daca σ : s1 . . . sn → s ın Σ, atunci Aσ : As1 × . . .×Asn → As.– daca σ : → s ın Σ, atunci Aσ ∈ As.

Morfisme de algebre multisortate.

• Un morfism de (S,Σ)-algebre h : A → B este o functie S-sortata h = {hs}s∈S : {As}s∈S → {Bs}s∈S care verifica conditia

de compatibilitate:

– hs(Aσ) = Bσ , or. σ :→ s ∈ Σ,– hs(Aσ(a1, . . . , an)) = Bσ(hs1 (a1), . . . , hsn (an)), or. σ : s1 . . . sn → s ∈ Σ si or. a1 ∈ As1 , . . . , an ∈ Asn .

Propozitie 2. Compunerea a doua Σ-morfisme este un Σ-morfism.

Izomorfisme de algebre multisortate.

• Un Σ-morfism h : A → B se numeste izomorfism daca exista un Σ-morfism g : B → A astfel ıncat h; g = 1A si g;h = 1B .Deoarece g este unic, se noteaza cu h−1.

• Doua Σ-algebre A si B sunt izomorfe (A ' B) daca exista un izomorfism f : A → B.

Propozitie 3. Fie h : A → B un Σ-morfism. Atunci h este izomorfism ⇔ este functie S-sortata bijectiva.

Propozitie 4. Compunerea a doua izomorfisme f : A → B si g : B → C este un izomorfism. Mai mult, (f ; g)−1 = g−1; f−1.

Parti stabile si subalgebre. Fixam (S,Σ) o signatura multisortata si A = (AS , AΣ) o (S,Σ)-algebra.

• O submultime BS a lui AS se numeste parte stabila a lui AS daca Aσ ∈ Bs, or. σ :→ s din Σ si Aσ(b1, . . . , bn) ∈ Bs, or.σ : s1 . . . sn → s din Σ si or. b1 ∈ Bs1 , . . . , bn ∈ Bsn .

• O (S,Σ)-algebra B = (BS , BΣ) este subalgebra a lui A = (AS , AΣ) daca BS ⊆ AS , Bσ = Aσ , or. σ :→ s din Σ, si

Bσ(b1, . . . , bn) = Aσ(b1, . . . , bn), or. σ : s1 . . . sn → s din Σ si or. b1 ∈ Bs1 , . . . , bn ∈ Bsn .• Subalgebra generata de X ın A este cea mai mica subalgebra B = (BS , BΣ) a lui A astfel ıncat X ⊆ BS . Notam B cu

X = (XS , XΣ). X este multime de generatori pentru A = (AS , AΣ) daca X ⊆ AS si X = A.

• Constructia subalgebrei generate:

– X0 := X,

– Xm+1s := Xm

s ∪ {Aσ | σ :→ s ∈ Σ} ∪ {Aσ(a1, . . . , an) | σ : s1 . . . sn → s ∈ Σ, a1 ∈ Xms1, . . . , an ∈ Xm

sn}.

Propozitie 5. Subalgebra generata de X ın A este X = (XS , XΣ), unde

(1) XS =⋃m∈NX

m,

(2) Xσ := Aσ, or. σ :→ s din Σ,

(3) Xσ(a1, . . . , an) := Aσ(a1, . . . , an), or. σ : s1 . . . sn → s din Σ si or. a1 ∈ Xs1 , . . . , an ∈ Xsn .

• Imaginea inversa a unei functii h : A → B este h−1 : P(B) → P(A), h−1(Y ) := {a ∈ A | h(a) ∈ Y }. Fie h : A → B unΣ-morfism. Daca C = (CS , CΣ) este o subalgebra a lui A, atunci definim Σ-algebra h(C) = (h(C)S , h(C)Σ):

– h(C)S := h(CS)

– h(C)σ := hs(Cσ), or. σ :→ s din Σ,– h(C)σ(hs1 (c1), . . . , hsn (cn)) := hs(Cσ(c1, . . . , cn)), or. σ : s1 . . . sn → s ∈ Σ si c1 ∈ Cs1 , . . . , cn ∈ Csn .

Propozitie 6. Fie h : A → B un Σ-morfism.

(1) Daca C este subalgebra a lui A, atunci h(C) este subalgebra a lui B.(2) Daca D este subalgebra a lui B, atunci h−1(D) este subalgebra a lui A.

(3) h(X ) = h(X ), pentru X ⊆ AS ,

(4) h−1(Y) ⊆ h−1(Y), pentru Y ⊆ BS .

Page 2: PL Suport Examen An2

2

Termeni. Algebre de termeni.

• O multime de variabile este o multime S-sortata X = {Xs}s∈S astfel ıncat Xs ∩ Xs′ = ∅, or. s, s′ ∈ S, s 6= s′, Xs ∩{σ}σ:s1...sn→s∈Σ = ∅ si Xs ∩ {σ}σ:→s∈Σ = ∅.

• Multimea S-sortata a termenilor cu variabile din X, TΣ(X), este cea mai mica multime de siruri finite peste alfabetulL =

⋃s∈S Xs ∪

⋃w,s Σw,s ∪ {(, )} ∪ {, } care verifica:

– X ⊆ TΣ(X),

– daca σ :→ s ın Σ, atunci σ ∈ TΣ(X)s,

– daca σ : s1 . . . sn → s ın Σ si ti ∈ TΣ(X)si , or. 1 ≤ i ≤ n, atunci σ(t1, . . . , tn) ∈ TΣ(X)s.• Inductia pe termeni: Fie P o proprietate astfel ıncat:

– pasul initial: P(x) = true, or. x ∈ X, si P(σ) = true, or. σ :→ s.

– pasul de inductie: pt. or. σ : s1 . . . sn → s si or. t1 ∈ TΣ(X)s1 , . . . , tn ∈ TΣ(X)sn , daca P(t1) = . . . = P(tn) = true,atunci P(σ(t1, . . . , tn)) = true.

Atunci P(t) = true, oricare t ∈ TΣ(X).

• Multimea S-sortata a termenilor TΣ(X) este o (S,Σ)-algebra, numita algebra termenilor cu variabile din X, cu operatiiledefinite astfel: pt. or. σ :→ s din Σ, operatia corespunzatoare este Tσ := σ ∈ TΣ(X)s si pt. or. σ : s1 . . . sn → s din

Σ, operatia corespunzatoare este Tσ : TΣ(X)s1...sn → TΣ(X)s, Tσ(t1, . . . , tn) := σ(t1, . . . , tn), or. t1 ∈ TΣ(X)s1 , . . . , tn ∈TΣ(X)sn . TΣ algebra termenilor fara variabile (X = ∅).

Algebra initiala.

• O (S,Σ)-algebra I este initiala ıntr-o clasa de (S,Σ)-algebre K daca pentru orice B ∈ K, exista un unic (S,Σ)-morfismf : I → B.

Propozitie 7.

(1) Daca I este initiala ın K si A ∈ K astfel ıncat A ' I, atunci A este initiala ın K.

(2) Daca A1 si A2 sunt initiale ın K, atunci A1 ' A2.

Teorema 1. Pentru orice (S,Σ)-algebra B, exista un unic morfism f : TΣ → B.

Corolar 1. TΣ este (S,Σ)-algebra initiala.

Tipuri abstracte de date.

• Un tip abstract de date este o clasa C de (S,Σ)-algebre cu proprietatea ca oricare doua (S,Σ)-algebre din C sunt izomorfe.

• I(S,Σ) = {I | I (S,Σ)-algebra initiala} este un tip abstract de date.

Algebre libere.

• O (S,Σ)-algebra A = (AS , AΣ) este liber generata de X daca X ⊆ AS si pt. orice (S,Σ)-algebra B = (BS , BΣ) si orice functie

S-sortata f : X → BS , exista un unic (S,Σ)-morfism f : A → B a.ı. f �X= f.

Teorema 2. Daca A si B sunt liber generate de X, atunci A ' B.

Teorema 3. Fie B = (BS , BΣ) o (S,Σ)-algebra. Orice functie S-sortata e : X → BS se extinde unic la un (S,Σ)-morfism e :TΣ(X)→ B.

Corolar 2. TΣ(X) este (S,Σ)-algebra liber generata de X.

Propozitie 8. Fie h : A → B un (S,Σ)-morfism surjectiv si X o multime de variabile. Pentru orice (S,Σ)-morfism f : TΣ(X)→ B,

exista un (S,Σ)-morfism g : TΣ(X)→ A astfel ıncat g;h = f .

Propozitie 9. Fie B o (S,Σ)-algebra si X o multime de variabile. Daca f : TΣ(X) → B si g : TΣ(X) → B sunt morfisme, atunci

g = f ⇔ g �X= f �X .

Propozitie 10. Daca X ' Y , atunci TΣ(X) ' TΣ(Y ).

Algoritmul de unificare.

• O substitutie a variabilelor din X cu termeni din TΣ(Y ) este o functie S-sortata τ : X → TΣ(Y ).

• Un unificator pentru U este o substitutie ν : X → TΣ(X) a.ı. ν(ti) = ν(t′i), or. i = 1, . . . , n.

• Un unificator ν pentru U este un cel mai general unificator daca pentru orice alt unificator ν′ pentru U , exista o substitutieµ astfel ıncat ν′ = ν;µ.

Lista solutie Lista de rezolvat

S R

Initial ∅ t1·= t′1, . . . , tn

·= t′n

SCOATE S R′, t·= t

S R′

DESCOMPUNE S R′, f(t1, . . . , tn)·= f(t′1, . . . , t

′n)

S R′, t1·= t′1, . . . tn

·= t′n

REZOLVA S R′, x·= t sau t

·= x, x nu apare ın t

x·= t, S[x← t] R′[x← t]

Final S ∅

Page 3: PL Suport Examen An2

3

Congruente.

• O relatie S-sortata ≡= {≡s}s∈S ⊆ AS × AS este o congruenta daca ≡s⊆ As × As este echivalenta, or. s ∈ S, si ≡ estecompatibila cu operatiile: pt. or. σ : s1 . . . sn → s si or. ai, bi ∈ Asi , i = 1, . . . , n, ai ≡si bi, or. i = 1, . . . , n ⇒Aσ(a1, . . . , an) ≡s Aσ(b1, . . . , bn).

• Fie A o (S,Σ)-algebra si ≡ o congruenta pe A. Definim:

– [a]≡s := {a′ ∈ As | a ≡s a′} (clasa de echivalenta a lui a) si As/≡s := {[a]≡s | a ∈ As}, or. s ∈ S.

– algebra cat a lui A prin congruenta ≡ notata A/≡: A/≡ := {As/≡s} cu operatiile: (A/≡)σ := [Aσ ]≡s , or. σ :→ s, si(A/≡)σ([a1]≡s1

, . . . , [an]≡sn) := [Aσ(a1, . . . , an)]≡s , or. σ : s1 . . . sn → s si a1 ∈ As1 , . . . , an ∈ Asn .

– [·]≡ : A → A/≡, a 7→ [a]≡s , or. a ∈ As, morfism surjectiv. Avem [a]≡s = [b]≡s ⇔ a ≡s b⇔ (a, b) ∈≡s.• Daca f : A → B un morfism de (S,Σ)-algebre, nucleul lui f este Ker(f) = {Ker(fs)}s∈S , unde Ker(fs) := {(a, a′) ∈As ×As | fs(a) = fs(a′)}, or. s ∈ S.

Propozitie 11.

(1) Ker(f) este o congruenta pe A.

(2) Daca ≡ este o congruenta pe A, atunci Ker([·]≡) =≡.

Teorema 4 (Proprietatea de universalitate a algebrei cat). Pentru orice (S,Σ)-algebra B si pentru orice morfism h : A → B a.ı.

≡⊆ Ker(h), exista un unic morfism h : A/≡ → B a.i. [·]≡;h = h.

Propozitie 12. Fie K o clasa de (S,Σ)-algebre. Daca ≡K:=⋂{Ker(h) | h : TΣ → B ∈ K morfism}, atunci urmatoarele proprietati

sunt adevarate:

(1) ≡K este congruenta pe TΣ,

(2) pt. or. B ∈ K, exista un unic morfism h : TΣ/≡K → B.

Ecuatii. Relatia de satisfacere.

• O (S,Σ)-ecuatie (∀X)t·=s t′ este formata dintr-o multime de variabile X si doi termeni t, t′ ∈ TΣ(X)s.

• O (S,Σ)-algebra A = (AS , AΣ) satisface o ecuatie (∀X)t·=s t′

– daca pentru orice functie S-sortata e : X → AS , es(t) = es(t′).– daca pentru orice morfism f : TΣ(X)→ A, fs(t) = fs(t′).

• O (S,Σ)-ecuatie conditionata (∀X)t·=s t′ if H este formata dintr-o multime de variabile X, doi termeni de acelasi sort

t, t′ ∈ TΣ(X)s si o multime H de ecuatii u·=s′ v, cu u, v ∈ TΣ(X)s′ .

• O (S,Σ)-algebra A = (AS , AΣ) satisface o ecuatie conditionata (∀X)t·=s t′ if H

– daca pentru orice functie S-sortata e : X → AS , es′ (u) = es′ (v), or. u·=s′ v ∈ H ⇒ es(t) = es(t′).

– daca pentru orice morfism f : TΣ(X)→ A, fs′ (u) = fs′ (v), or. u·=s′ v ∈ H ⇒ fs(t) = fs(t′).

Γ-algebre.

• Daca Γ este o multime de ecuatii conditionate, o (S,Σ)-algebra A este o Γ-algebra daca A |= γ, or. γ ∈ Γ. Notam cuAlg(S,Σ,Γ) clasa tuturor Γ-algebrelor.

Teorema 5. Fie A si B doua (S,Σ)-algebre a.ı. A ' B si γ := (∀X)t·=s t′ if H. Atunci A |= γ ⇔ B |= γ.

• O ecuatie conditionata θ este consecinta semantica a lui Γ daca A |= Γ implica A |= θ, pentru orice (S,Σ)-algebra A.• O congruenta ≡ pe A este ınchisa la substitutie daca

CS(Γ,A)or. (∀X)t

·=s t′ if H ∈ Γ, or. e : X → AS

es′ (u) ≡s′ es′ (v), or. u·=s′ v ∈ H ⇒ es(t) ≡s es(t′).

Propozitie 13. Daca ≡ este o congruenta pe A ınchisa la substitutie, atunci A/≡ |= Γ.

• Pentru Γ si A = (AS , AΣ), definim ≡Γ,A :=⋂{Ker(h) | h : A → B, B |= Γ}. Daca A = TΣ(X), notam ≡Γ,TΣ(X) cu ≡Γ.

Avem t ≡Γs t′ ⇔ Γ |= (∀X)t

·=s t′.

Propozitie 14. ≡Γ,A este o congruenta pe A ınchisa la substitutie.

Propozitie 15. ≡Γ,A este cea mai mica congruenta pe A ınchisa la substitutie.

Teorema 6. TΣ/≡Γ,TΣeste Γ-algebra initiala.

Specificatii algebrice.

• O specificatie algebrica este un triplet (S,Σ,Γ), unde (S,Σ) este o signatura multisortata si Γ este o multime de ecuatii

conditionate. Specificatia (S,Σ,Γ) defineste clasa modelelor Alg(S,Σ,Γ).• Doua specificatii (S,Σ,Γ1) si (S,Σ,Γ2) sunt echivalente daca definesc aceeasi clasa de modele.

• O specificatie (S,Σ,Γ) este adecvata pentru A daca A este Γ-algebra initiala, i.e. A ∈ I(S,Σ,Γ).

2. Logica ecuationala

Deductie ecuationala - cazul neconditionat.

• E multime de ecuatii neconditionate

Page 4: PL Suport Examen An2

4

R(∀X)t

·=s t

S(∀X)t1

·=s t2

(∀X)t2·=s t1

T(∀X)t1

·=s t2, (∀X)t2

·=s t3

(∀X)t1·=s t3

CΣ(∀X)t1

·=s1 t

′1, . . . , (∀X)tn

·=sn t′n

(∀X)σ(t1, . . . , tn)·=s σ(t′1, . . . , t

′n)

, unde σ : s1 . . . sn → s ∈ Σ

SubE (∀X)θ(t)·=s θ(t′)

, (∀Y )t·=s t′ ∈ E si θ : Y → TΣ(X)

• Ecuatia ε := (∀X)t·=s t′ se deduce din E daca ex. o secventa ε1, . . . , εn a.ı. εn = ε si pt. or. 1 ≤ i ≤ n:

– εi ∈ E sau

– εi se obtine din ε1, . . . , εi−1 aplicand una din reg. R, S, T, CΣ, SubE .

Deductie ecuationala - cazul conditionat.

• Γ multime de ecuatii conditionate

R(∀X)t

·=s t

S(∀X)t1

·=s t2

(∀X)t2·=s t1

T(∀X)t1

·=s t2, (∀X)t2

·=s t3

(∀X)t1·=s t3

CΣ(∀X)t1

·=s1 t

′1, . . . , (∀X)tn

·=sn t′n

(∀X)σ(t1, . . . , tn)·=s σ(t′1, . . . , t

′n)

, unde σ : s1 . . . sn → s ∈ Σ

SubΓ(∀X)θ(u1)

·=s1 θ(v1), . . . , (∀X)θ(un)

·=sn θ(vn)

(∀X)θ(t)·=s θ(t′)

, unde (∀Y )t·=s t′ if {u1

·=s1 v1, . . . , un

·=sn vn} ∈ Γ, θ : Y → TΣ(X).

• Ecuatia ε := (∀X)t·=s t′ se deduce din Γ daca ex. o secventa ε1, . . . , εn a.ı. εn = ε si pt. or. 1 ≤ i ≤ n:

– εi ∈ Γ sau

– εi se obtine din ε1, . . . , εi−1 aplicand una din reg. R, S, T, CΣ, SubΓ.

Corectitudinea logicii ecuationale.

• O regula de deductieε1, . . . , εn

εeste corecta daca Γ |= ε1, . . . ,Γ |= εn ⇒ Γ |= ε.

Propozitie 16. Regulile de deductie R, S, T, CΣ, SubΓ sunt corecte.

Teorema 7 (Corectitudinea deductiei). Γ ` (∀X)t·=s t′ ⇒ Γ |= (∀X)t

·=s t′.

Completitudinea logicii ecuationale.

• O relatie binara∼⊆ TΣ(X)×TΣ(X) este ınchisa la regula Reg(∀X)t1

·=s1 t

′1, . . . , (∀X)tn

·=sn t′n

(∀X)t·=s t′

daca t1 ∼s1 t′1, . . . , tn ∼sn

t′n ⇒ t ∼s t′.

Propozitie 17. Sunt echivalente:

(1) ∼ este congruenta pe TΣ(X),

(2) ∼ este ınchisa la R, S, T, CΣ.

Propozitie 18. Sunt echivalente:

(1) ∼ verifica CS(Γ, TΣ(X)) (i.e. ınchisa la substitutie),(2) ∼ este ınchisa la SubΓ.

• Definim t ∼Γs t′ ⇔ Γ ` (∀X)t

·=s t′, or. s ∈ S.

Propozitie 19. ∼Γ este o congruenta pe TΣ(X) ınchisa la substitutie.

Teorema 8 (Completitudinea deductiei). Γ |= (∀X)t·=s t′ ⇒ Γ ` (∀X)t

·=s t′.

Teorema de completitudine.

• Echivalenta sintactica: t ∼Γs t′ ⇔ Γ ` (∀X)t

·=s t′.

• Echivalenta semantica: t ≡Γs t′ ⇔ Γ |= (∀X)t

·=s t′.

• Corectitudinea deductiei: ∼Γ⊆≡Γ.

• Completitudinea deductiei: ≡Γ⊆∼Γ.

Teorema 9 (Teorema de completitudine). Γ |= (∀X)t·=s t′ ⇔ Γ ` (∀X)t

·=s t′ (≡Γ=∼Γ)

Page 5: PL Suport Examen An2

5

3. Rescrierea termenilor

Contexte.

• nry(t) = numarul de aparitii ale lui y ın t

• Fie z a.ı. z /∈ X. Un termen c ∈ TΣ(X ∪ {z}) se numeste context daca nrz(c) = 1.• Daca t0 ∈ TΣ(X) si t0 are acelasi sort cu z, definim substitutia {z ← t0} : X ∪ {z} → TΣ(X), prin {z ← t0}(x) ={

t0, daca x = zx, altfel

. Pentru un context c ∈ TΣ(X ∪ {z}), notam c[z ← t0] := {z ← t0}(c).

Sistem de rescriere.

• O regula de rescriere l→s r (peste Y ) este formata din l, r ∈ TΣ(Y )s astfel ıncat l nu este variabila si V ar(r) ⊆ V ar(l) = Y .

• Un sistem de rescriere (TRS) este o multime finita de reguli de rescriere.• Daca R este un sistem de rescriere, pentru t, t′ ∈ TΣ(X)s definim relatia t→R t′ astfel:

t→R t′ ⇔ t este c[z ← θs(l)] si

t′ este c[z ← θs(r)], unde

c ∈ TΣ(X ∪ {z}) context,

l→s r ∈ R cu V ar(l) = Y ,

θ : Y → TΣ(X) substitutie

• Daca E este o multime de ecuatii astfel ıncat, pt. or. (∀Y )l·=s r ∈ E, l /∈ Y (nu este variabila) si V ar(r) ⊆ V ar(l) = Y ,

definim sistemul de rescriere determinat de E RE := {l →s r | (∀Y )l·=s r ∈ E}. Notam relatia de rescriere generata de

RE prin →E := →RE.

Logica ecuationala si rescrierea termenilor.

• E multime de ecuatii neconditionate: SRE (∀X)c[z ← θ(t)]·=s′ c[z ← θ(t′)]

, unde

(∀Y )t·=s t′ ∈ E, θ : Y → TΣ(X), c ∈ TΣ(X ∪ {z})s′ , z /∈ X, nrz(c) = 1.

• Γ multime de ecuatii conditionate: SRΓ(∀X)θ(u1)

·=s1 θ(v1), . . . , (∀X)θ(un)

·=sn θ(vn)

(∀X)c[z ← θ(t)]·=s′ c[z ← θ(t′)]

, unde

(∀Y )t·=s t′ if {u1

·=s1 v1, . . . , un

·=sn vn} ∈ Γ, θ : Y → TΣ(X), c ∈ TΣ(X ∪ {z})s′ , z /∈ X, nrz(c) = 1.

Propozitie 20. SRΓ este regula de deductie corecta.

Teorema 10. Sunt echivalente:

(1) Γ `R,S,T,CΣ,SubΓ(∀X)t

·=s t′,

(2) Γ `R,S,T,SRΓ(∀X)t

·=s t′.

Teorema 11. E ` (∀X)t·=s t′ ⇔ t

∗↔E t′.

Sisteme de rescriere abstracte.

• Un sistem de rescriere abstract este o pereche (T,→) unde T este o multime si →⊆ T × T .

• t ∈ T este reductibil daca exista t′ ∈ T a.ı. t→ t′.• t ∈ T este ın forma normala (ireductibil) daca nu este reductibil.

• t0 este o forma normala a lui t daca t∗→ t0 si t0 este ın forma normala.

• t1 si t2 se intalnesc (t1 ↓ t2) daca exista t ∈ T a.ı. t1∗→ t

∗← t2.• (T,→) se numeste

– noetherian: daca nu exista reduceri infinite t0 → t1 → t2 → . . ..

– confluent: t1∗← t

∗→ t2 ⇒ t1 ↓ t2.

– local confluent: t1 ← t→ t2 ⇒ t1 ↓ t2.

– Church-Rosser: t1∗↔ t2 ⇒ t1 ↓ t2.

– normalizat: orice element are o forma normala.– complet (convergent, canonic): confluent si noetherian.

Propozitie 21. Fie (T,→) sistem de rescriere. Daca t ↓ t′, atunci t∗↔ t′.

Propozitie 22. Daca (T,→) este un sistem de rescriere noetherian, atunci orice element are o forma normala.

Propozitie 23. Daca (T,→) este un sistem de rescriere complet, atunci orice element are o unica forma normala.

Propozitie 24. Un sistem de rescriere este confluent ddaca este Church-Rosser.

Propozitie 25. Daca (T,→) este un sistem de rescriere confluent, atunci este local confluent.

Propozitie 26. Daca (T,→) este un sistem de rescriere noetherian si local confluent, atunci este confluent.

Propozitie 27. Fie (T,→) sistem de rescriere complet. Atunci t∗↔ t′ ⇔ fn(t) = fn(t′).

Corolar 3. Daca sistemul de rescriere (TΣ(X), RE) este complet, atunci E ` (∀X)t·=s t′ ⇔ t

∗↔E t′ ⇔ fn(t) = fn(t’).

Page 6: PL Suport Examen An2

6

Terminarea sistemelor de rescriere. Fie (S,Σ) o signatura, Y multime de variabile si R un TRS.

Propozitie 28 (*). Sunt echivalente:

(1) R este noetherian,(2) oricarui termen t ıi poate fi asociat un numar natural µ(t) ∈ N astfel ıncat t→R t′ implica µ(t) > µ(t′).

• Ordine de reducere: t > t′ ddaca µ(t) > µ(t′)• Arborele de reducere al termenului t este definit astfel:

– radacina arborelui are eticheta t,

– descendentii nodului cu eticheta u sunt etichetati cu termenii u′ care verifica u→R u′.Daca R se termina, atunci µ(t) := ınaltimea arborelui de reducere asociat lui t.

Confluenta si perechi critice. Fie (S,Σ) o signatura, Y multime de variabile si R un TRS.

• Fie l1 → r1, l2 → r2 ∈ R astfel ıncat:

(1) V ar(l1) ∩ V ar(l2) = ∅,(2) exista t un subtermen al lui l1 care nu este variabila

(l1 = c[z ← t], unde nrz(c) = 1, t nu este variabila)

(3) exista θ c.g.u pentru t si l2 (i.e. θ(t) = θ(l2)).Perechea (θ(r1), θ(c)[z ← θ(r2)]) se numeste pereche critica.

θ(l1)

θ(r1) θ(c)[z ← θ(r2)]R R

Teorema 12 (Teorema Perechilor Critice ∗). Daca R este noetherian, atunci sunt echivalente:

(1) R este confluent,

(2) t1 ↓R t2 pentru orice pereche critica (t1, t2).

Algoritmul Knuth-Bendix.

• INTRARE: R un sistem de rescriere (TRS) noetherian.

• INITIALIZARE: T := R si > ordine de reducere pentru T

• Se executa urmatorii pasi, cat timp este posibil:(1) CP := CP(T) = {(t1, t2) | (t1, t2) pereche critica ın T}(2) Daca t1 ↓ t2, oricare (t1, t2) ∈ CP , atunci STOP (T completarea lui R).(3) Daca (t1, t2) ∈ CP , t1 6↓ t2 atunci:

– daca fn(t1) > fn(t2) atunci T := T ∪ {fn(t1)→ fn(t2)},– daca fn(t2) > fn(t1) atunci T := T ∪ {fn(t2)→ fn(t1)},– altfel, STOP (completare esuata).

• IESIRE: T completarea lui R sau esec.

4. Programare logica

• (S,Σ) signatura multisortata, Γ multime de ecuatii conditionate, G o multime de ecuatii de forma (∀X)t·=s t′, t, t′ ∈ TΣ(X).

• Problema programarii logice ecuationale: Γ |= (∃X)G.

• Γ |= (∃X)G: or. A a.ı. A |= Γ, A |= (∃X)G.

• A |= (∃X)G: exista un morfim h : TΣ(X)→ A a.ı. hs(t) = hs(t′), or. (∀X)t·=s t′ ∈ G.

Teorema 13 (Teoremele lui Herbrand). Fie G o multime de ecuatii de forma (∀X)t·=s t′, t, t′ ∈ TΣ(X). Sunt echivalente:

(1) Γ |= (∃X)G,(2) TΣ,Γ |= (∃X)G,

(3) exista un morfism ψ : TΣ(X)→ TΣ a.ı. Γ |= (∀∅)ψ(G).


Top Related