Title: Specifiche Algebriche Modello Iniziale Versione 1.1
1Specifiche AlgebricheModello InizialeVersione
1.1
- Gianna Reggio
- reggio_at_disi.unige.it
2Modelli Rappresentativi (1)
- Fra tutti i modelli di una specifica ci interessa
individuarne uno che rappresenti, per quanto
possibile, tutta la classe dei modelli. Visto che
siamo focalizzati sulluso della logica, questo
vuol dire un modello che ci dia informazioni
sulla validità delle formule anche negli altri
modelli. - Se possibile, data una specifica SP ci piacerebbe
avere un modello B ? Mod(SP) (B per Best) tale
che - B j implica A j
- per ogni A ? Mod(SP) e per ogni formula j
3Modelli Rappresentativi (2)
- Supponiamo che esista un tale modello B.
- Allora per ogni termine (senza variabili) t si
avrebbe - B Def(t) implica A Def(t)
- B ?Def(t) implica A ?Def(t)
- sicuramente una delle due premesse è vera
- Quindi in tutti i modelli sarebbero definiti
esattamente gli stessi termini. - Se ripetiamo il ragionamento per luguaglianza e
per le applicazioni di predicato, otteniamo che
in tutti i modelli valgono le stesse identità e
che i predicati sono interpretati allo stesso
modo, cioè che tutti i modelli sono
indistinguibili dal punto di vista della logica. - Nomenclatura una specifica i cui modelli sono
tutti isomorfi fra loro si dice monomorfa - Il problema nasce dal fatto che richiedere per
tutte le formule (incluse le negazioni) è troppo
forte.
4Modelli Rappresentativi (3)
- Il problema che è emerso dal lucido precedente è
la negazione. - Escludere le formule che contengono un not non è
però sufficiente, perché problematiche analoghe
nascono dai not nascosti, es. - F ? G ? ?F ? G
- t t ? t e t ? (?Def(t) ? ?Def(t))
- Restringiamo drasticamente il tipo di formule ai
soli atomi positivi, cioè applicazioni di
predicati e uguaglianze esistenziali, che sono
sufficienti per caratterizzare unalgebra.
5Modello Iniziale
- Unalgebra I è iniziale per una specifica Sp se e
solo se - I è un modello di Sp
- I è term-generated
- I soddisfa la proprietà del minimo vero e della
minima definitezza, cioè - I a implica A a
- per ogni A ? Mod(Sp) ed ogni a ? PAtom(S)
- dove PAtom(S) t e t t,t? TS ?
p(t1,,tn) ti? TS - Ma un tale I esiste sempre?
- In generale no. Vedremo dei casi particolari in
cui esiste e si può calcolare
6Esempi di esistenza modello iniziale
- Spec SP2
- Sort tipo
- Opns A, B, C tipo
- Axioms Def(A),Def(B),Def(C)
- A B ? B C
- Gmod(SP2) /iso M,N,P
- M definito da
- tipoM a, b, c
- AM a, BM b, CM c
- N definito da
- tipoN a
- AN BN CN a
- P definito da
- tipoP a, b
- AP a, BP CP b
- M è il modello iniziale
- Spec SP1
- Sort tipo
- Opns A, B tipo
- Axioms
- Def(A)
- Def(B)
- A ? B
- Gmod(SP1) /iso M
- M definito da
- tipoM a, b
- AM a, BM b
- /iso significa tutti i modelli sono isomorfi a
M, cioè differiscono solo per quali elementi sono
usati per rappresentare A e B - M è il modello iniziale
7Esempi di non esistenza modello iniziale
- Spec SP4
- Sort tipo
- Opns A, B, C tipo
- Axioms Def(A), Def(B), Def(C)
- A ? B ? B C
- Gmod(SP4) /iso N,P,M
- N definito da
- tipoN a
- AM BM CM a
- P definito da
- tipoP a, b
- AM a, BM CM b
- M definito da
- tipoM a, b
- AM BM a, CM b
- Non esiste il modello iniziale, poichè A B
A?B non vale in tutti i modelli
- Spec SP3
- Sort tipo
- Opns A, B tipo
- Axioms
- A ? B
- Gmod(SP3) /iso M, N, P
- M definito da
- tipoM a, b
- AM a, BM b
- N definito da
- tipoN a
- AN a, BN indefinito
- P definito da
- tipoP a
- AP indefinito, BP a
- Non esiste il modello iniziale, poichè A non è
definito o indefinito in tutti i modelli
8Congruenze
- Visto che vogliamo costruire un modello
term-generated cerchiamo di costruire i carrier
come quozienti di termini. Siccome poi dobbiamo
dotare i carrier di struttura algebrica per fare
il quoziente non ci basta una qualsiasi relazione
dequivalenza, ed inoltre occorre definire la
verità dei predicati. - Sia S (S,F,P) una segnatura
- (ss?S, pp?P), dove per ogni s s ?
TS(X)s ?TS(X)s e per ogni p p ? TS(X)s, è una
congruenza sulla famiglia TS(X) se - per ogni s ? S, s è simmetrica e transitiva
(ma non necessariamente riflessiva) - per ogni f ? F, ti si ti per i 1,,n e
f(t1,,tn) s f(t1,,tn) implica f(t1,,tn) s
f(t1,,tn) - per ogni p ? P, ti si ti per i 1,,n e
(t1,,tn) ? p implica (t1,,tn) ? p - Questa definizione è un caso particolare di
congruenza su unalgebra A
9Quozienti
- Data una congruenza su TS(X) si definisce
lalgebra TS(X)/ come segue TS(X)/ indicata da
Q in questa slide - per ogni s ? S, sQ t ? TS(X)s/s t s t
- per ogni f ? F, fQ(t1,,tn) f(t1,,tn) se
f(t1,,tn)s f(t1,,tn), indefinita altrimenti - per ogni p ? P, pQ (t1,,tn) (t1,,tn) ?
p - Q è ben definita?
- Sì perché simmetria e transitività permettono di
parlare di classi di equivalenza e la proprietÃ
sulle funzioni e sui predicati garantisce la
correttezza della definizione di fQ e pQ . - Esercizio 40 Provare dettagliatamente che Q è
ben definita.
10Costruzione del modello iniziale (1)
- Data una specifica Sp (S,Ax) si definisce Sp
come segue Sp indicata da ? in questa slide - ? ( ?s ? TSs ? TSs s ? S ,
- ?p ? TSs1 ? ? TSsn p ? P )
- t ? t se e solo se per ogni A ? Mod(Sp)
A t e t - (t1,,tn) ? ?p se e solo se per ogni A ?
Mod(Sp) A p(t1,,tn) - Sp è una congruenza
- Esercizio 41 Verificarlo consiglio usare il
sistema deduttivo.
11Costruzione del modello iniziale (2)
- Prop. Sia I(Sp) TS /Sp
- 1) I(Sp) è ben definita
- 2) Se I(Sp) ? Mod(Sp) allora è il modello
iniziale di Sp - Prova
- 1) è banale
- 2) si basa sul lemma seguente
- Data una valutazione V X? I(Sp), I(Sp) V j se
e solo se I(Sp) V jtx/x x ? X dove tx ?
V(x) - Esercizio 42 Completare la prova con tutti i
dettagli.
12Lalgebra I(Sp) può non essere un modello
- Spec SP4
- Sort tipo
- Opns A, B, C tipo
- Axioms Def(A), Def(B), Def(C)
- A ? B ? B C
- I(SP4) definito da
- tipoI(SP4) a, b,c
- AI(SP4) a
- BI(SP4) b
- CI(SP4) c
- Non è un modello, infatti I(SP4) ? A ? B ? B
C
- Spec SP3
- Sort tipo
- Opns A, B tipo
- Axioms
- A ? B
- I(SP3) definito da
- tipoI(SP3) ?
- AI(SP3) indefinito
- BI(SP3) indefinito
- Non è un modello, infatti I(SP3) A B
13Esercizio 43
- Dire se esiste il modello iniziale delle seguenti
specifiche.
Spec SP5 Sort tipo Opns A, B tipo Axioms
Def(A) ? Def(B)
Spec SP7 Sort tipo Opns A, B, C tipo Preds p
Tipo Axioms p(x)
Spec SP6 Sort tipo Opns A, B, C tipo Axioms
Def(A) ? A B
Spec SP8 Sort tipo Opns A, B, C tipo Preds p,
q Tipo Axioms p(x) ? q(x)
14Esistenza modello iniziale
- Teorema Se Sp (S,AX) è una specifica positiva
condizionale, allora ammette modello iniziale. - Dove una specifica è positiva condizionale se e
solo se è logicamente equivalente (cioè hanno gli
stessi modelli) ad una i cui assiomi sono tutti
positivi condizionali, cioè appartengono a
PCond(S), dove PCond(S) ?i1,,nai ? a ai
?PAtom(S), i 1,,n, a?Atom(S) - Le specifiche p.c. sono particolarmente
interessanti perché corrispondono
metodologicamente a definizioni ricorsive
(induttive) e soprattutto perché esiste un
sistema automatico per costruire I(Sp) (è
semidecidibile se tSp t).
15Sistema di Birkhoff
- Il sistema di Birkhoff è un sistema deduttivo per
la logica equazionale, omogenea e totale. - Sia Sp (S,Ax)
16Sistema di Birkhoff generalizzato (1)
- Vogliamo estendere Birkhoff al caso parziale,
eterogeneo e condizionale - parziale e eterogeneo
- già visto per il primordine
- Condizionale vogliamo che gli assiomi propri ed
eventualmente I passi intermedi della
computazione siano positivi condizionali - Aggiungiamo le seguenti regole
17Sistema di Birkhoff generalizzato (2)
Uguaglianza esistenziale (no riflessività )
- Relazioni tra uguaglianza forte ed esistenziale
- Definitezza delle variabili
18Soundness
- Ma il sistema di Birkhoff generalizzato è sound e
completo rispetto agli atomi positivi ground
(senza variabili)? Se sì lo possiamo usare come
algoritmo di calcolo per Sp. Nella forma data
NON è sound. - Controesempio sia S Sort tipo Opns A,B tipo
- Questinstanziazione della regola della
transitività non è sound - Infatti le premessse valgono in tutte le
S-algebre in cui o A o B è indefinito, ma la
conseguenza non vale certamente in tali algebre - Il problema è dovuto al fatto che le premesse
sono da intendere ? xtipo. A e x e ? xtipo.
x e B, da cui si dovrebbe dedurre correttamente
? xtipo. A e B, che vale anche nellalgebra
vuota (poichè non ci sono valutazioni delle
variabili) - Le soluzioni possibili a questo problema sono
- 1 escludere i modelli con carrier vuoto
- 2 quantificare universalmente le variabili in
maniera esplicita - 3 modificare le regole in modo da non diminuire
mai le variabili tranne che con listanziazione
19Completeness
- Teorema Il sistema di Birkhoff generalizzato è
completo rispetto agli atomi positivi ground
(senza variabili). - In realtà in una forma lievemente diversa è
completo anche per gli assiomi della forma x1
e x1 ? ? xn e xn ? a con a un atomo
positivo. - Per ottenere un sistema completa rispetto a
formule del tipo x1 ex1 ? ?
xn exn ? a c on a un atomo qualunque invece
bisogna lavorare un po. - Sistemi completi per altre classi di formule sono
poco studiati nel contesto delle specifiche
algebriche perché non hanno applicazioni pratiche.