Introduzione alla logica fuzzy Francesco Paoli Dispense per gli studenti January 26, 2005 1 Perché più di due valori di verità? Abbiamo visto nella prima parte del corso che la logica classica è bivalente: ha solo due valori di verità, il vero e il falso. Vi sono però situazioni in cui l’uso di una logica con più di due valori di verità - tre, più di tre o addirittura un numero in…nito - sembra risultare più appropriato. Vediamo qui quattro esempi. Due sono di tipo …loso…co, due di tipo pratico; due di essi motivano l’uso di una logica a tre valori di verità, altri due motivano una logica ad in…niti valori. 1) Gli enunciati relativi a fatti del passato sono o veri (ad es. "Dante nacque a Firenze") o falsi (ad es. "Dante nacque a Napoli"). Che dire tuttavia di enunciati relativi a fatti che potrebbero veri…carsi nel futuro, ad es. "L’Inter vincerà il campionato 2006-2007"? Ci possono essere buone ragioni per sostenere che essi, al momento attuale, non sono né veri né falsi, ma solo possibili. Il logico polacco Jan ×ukasiewicz suggerì dunque una logica proposizionale che, oltre ai valori vero (1) e falso (0), conteneva un terzo valore di verità, 21 , da interpretarsi appunto come "possibile". Tale logica è espressa nel linguaggio $1 . I suoi connettivi si comportano esattamente come quelli classici quando gli input sono classici, cioè appartengono a f0; 1g. Cosa succede quando almeno un input ha valore 12 ? Si considerino i seguenti enunciati: 1) 2) 3) 4) 5) L’Inter non vincerà nel 2006-2007 Dante nacque a Firenze e l’Inter vincerà nel 2006-2007 Dante nacque a Napoli e l’Inter vincerà nel 2006-2007 Dante nacque a Firenze o l’Inter vincerà nel 2006-2007 Dante nacque a Napoli o l’Inter vincerà nel 2006-2007 Intuitivamente, 1) sembra possibile; 2) sembra possibile; 3) sembra falso; 4) sembra vero; 5) sembra possibile. Inoltre, una congiunzione o disgiunzione di enunciati possibili sembra possibile. Le tavole dei connettivi :; ^; _ sono quindi 1 le seguenti: : 0 1 ^ 0 1 2 1 2 1 2 1 0 1 0 0 0 0 1 2 0 1 2 1 2 1 0 _ 0 0 0 1 2 1 2 1 2 1 1 1 1 2 1 2 1 2 1 1 1 1 1 Riguardo all’implicazione, ×ukasiewicz mantiene gli assunti classici secondo cui un enunciato falso implica tutto e un enunciato vero è implicato da tutto. Ritiene inoltre possibile (a seconda del veri…carsi o meno dell’evento futuro in questione) che un enunciato vero ne implichi uno possibile e che un enunciato possibile ne implichi uno falso. In…ne (e questa è l’assunzione più controversa) ritiene che tutti gli enunciati possibili si implichino tra loro. Abbiamo quindi la seguente tavola: ! 0 12 1 0 1 1 1 1 1 1 1 2 2 1 0 12 1 2) Supponiamo di aver messo a punto un programma per computer che ha la funzione di rispondere "sì"-"no" a certe nostre domande o input. Interpretiamo i tre valori di verità come segue: 1: il programma termina dando come output la risposta "sì"; 0: il programma termina dando come output la risposta "no"; 1 2: il programma entra in loop o esaurisce le risorse computazionali. Alcune nostre domande potranno corrispondere a enunciati composti mediante i connettivi logici; che output darà allora il programma? Si può prevedere che il suo comportamento per i connettivi :; ^; _ sia esattamente quello determinato dalle tavole di ×ukasiewicz. Per l’implicazione vale lo stesso discorso, tranne che per il caso 12 ! 12 , nel quale è ragionevole stipulare che il programma non termini. Queste tavole di verità sono state proposte dal logico americano Kleene e corrispondono alla cosiddetta "logica forte di Kleene". 3) Si considerino le seguenti due a¤ermazioni: 1) Una persona con 0 capelli è calva; 2) Se una persona con n capelli è calva, allora una persona con n+1 capelli è calva. La prima a¤ermazione è vera senza ombra di dubbio. Anche la seconda sembra vera: un solo capello di di¤erenza non è abbastanza per distinguere un calvo da un non calvo. Tuttavia, applicando un numero su¢ ciente di volte la regola classicamente valida del modus ponens: A; A ! B ) B 2 otteniamo la paradossale conclusione che una persona con un milione di capelli è calva! Come risolvere il paradosso? Nelle situazioni come questa, nelle quali sono in gioco concetti vaghi, la logica classica sembra poco appropriata: vorremmo poter dire che enunciati quali "Una persona di 35 anni è giovane" non sono né veri né falsi, ma una via di mezzo. Vorremmo anche poter dire che "Una persona di 35 anni è giovane" è più vero di "Una persona di 36 anni è giovane", ragion per cui ambiremmo a disporre di uno stock su¢ cientemente ampio di valori di verità intermedi tra il vero e il falso. Jan ×ukasiewicz suggerì di considerare una logica il cui insieme di valori di verità è l’intervallo reale chiuso [0; 1]: 0 rappresenta il falso assoluto, 1 rappresenta il vero assoluto, i valori tra essi compresi rappresentano "gradi intermedi di verità". Come si computano i connettivi? La congiunzione e la disgiunzione sono facili: corrispondono rispettivamente alle funzioni minimo e massimo. La negazione e l’implicazione sono valutate nel modo seguente: v(:A) = 1 v(A); v(A ! B) = min(1; 1 v(A) + v(B)). Con l’aiuto di tale logica, possiamo risolvere il paradosso del calvo. Alla premessa 1) assegniamo il valore 1; alle premesse della forma 2) assegniamo un grado di verità appena un po’minore, diciamo 0.999. Si vede allora facilmente che il modus ponens è una regola "quasi ma non del tutto a¢ dabile": ciascuna applicazione del modus ponens porta a una conclusione che è "un attimino più falsa" della premessa di forma non implicativa, sino a che - per graduale accumulazione di piccolissimi errori - si arriva a una conclusione totalmente falsa. La logica di ×ukasiewicz è la più nota logica fuzzy (laddove una logica proposizionale è fuzzy, o sfumata, quando il suo insieme di valori di verità è l’intervallo [0; 1] e i connettivi obbediscono a particolari condizioni). 4) Un sistema automatico di frenata per un veicolo è un sistema di controllo che - nel caso più semplice - ha due input (la velocità del veicolo, esprimibile in km/h, e la distanza, p. es. da uno stop o da un possibile punto di impatto, esprimibile in m) e un output (la pressione sui freni, esprimibile in termini di percentuale della capacità totale di frenata). Supponiamo di voler costruire un sistema esperto che imiti il più accuratamente possibile il comportamento di frenata di un operatore umano; è possibile farlo usando una logica fuzzy. La prima cosa da fare è identi…care e denominare i range relativi al primo input, la velocità del veicolo: ad es. "fermo" (0-10 km/h), "lento" (5-50 km/h), "abbastanza veloce" (40-85 km/h), "veloce" (80-130 km/h). Poi occorre identi…care e denominare i range relativi al secondo input, la distanza: ad es. "vicinissimo" (0-5 m), "vicino" (1-10 m), "piuttosto vicino" (4-20 m), "piuttosto lontano" (16-40 m), "molto lontano" (35-70 m). In…ne, si identi…cano e denominano i range relativi all’output, la pressione esercitata sui freni: ad es. "nessuna" (0-1%), "leggera" (1-30%), "media" (25-75%), "inchioda" (65-100%). Il secondo passo consiste nel de…nire delle funzioni dagli intervalli sopra considerati all’intervallo reale chiuso [0; 1] in modo da assegnare dei gradi di 3 verità a ciascun possibile enunciato relativo alla velocità, alla distanza o alla pressione sui freni: ad esempio, l’enunciato (A) Il veicolo sta andando ’abbastanza veloce’ sarà assolutamente falso, cioè avrà grado di verità 0, se la velocità del veicolo cade al di fuori dell’intervallo 40-85 km/h, cioè se il veicolo va a meno di 40 km/h o a più di 85 km/h; sarà assolutamente vero, cioè avrà grado di verità 1, se la velocità del veicolo cade all’interno di un’area "centrale" di tale intervallo; nella fascia che si trova all’interno dell’intervallo ma al di fuori di tale area, avrà gradi di verità intermedi. Come terzo passo, occorre de…nire delle regole che ci consentono di trasformare gli input nell’output. Le regole potranno avere la forma seguente: (R) Se stai andando ’lento’ e sei ’piuttosto vicino’ al punto di arresto, allora la pressione dei freni è ’leggera’. Se la logica del sistema fosse classica, una regola del genere verrebbe attivata se entrambe le condizioni descritte nell’antecedente si veri…cano e non verrebbe attivata se almeno una delle due non si veri…ca. Poiché la logica del sistema è fuzzy, una regola può essere attivata parzialmente in funzione dei gradi di verità assegnati agli enunciati corrispondenti. Può inoltre accadere che valori identici dei due input attivino più regole diverse: poiché ad esempio una velocità di 45 km/h appartiene sia al range "lento" che al range "abbastanza veloce", una velocità di 45 km/h e una distanza di 12 m potranno attivare sia (R) che (R’) Se stai andando ’abbastanza veloce’e sei ’piuttosto vicino’ al punto di arresto, allora la pressione dei freni è ’inchioda’. Come si determinano, in…ne, gli output? Occorre "defuzzi…care" gli output fuzzy delle diverse regole attivate, in modo da avere un output esatto, ovverosia una percentuale della capacità totale di frenata. Esistono diversi metodi, più o meno complessi, per farlo. 2 Le MV algebre Nel paragrafo precedente abbiamo visto che, nella logica di ×ukasiewicz ad in…niti valori, le funzioni sull’intervallo reale chiuso [0; 1] corrispondenti alla negazione e all’implicazione sono, rispettivamente, :x = 1 x; x ! y = min(1; 1 x + y). Si tratta di scelte intuitivamente plausibili: ad esempio, la negazione di un enunciato assolutamente vero è assolutamente falsa e viceversa, un enunciato è tanto più falso quanto più la sua negazione è vera, ecc. Si noti inoltre che la funzione di implicazione è esprimibile come combinazione delle due funzioni 4 di negazione e di somma troncata: infatti x ! y esprime la stessa funzione di :x y, dove x y = min(1; x + y). Come si può veri…care, la somma troncata è un’operazione associativa e commutativa, ma non idempotente; inoltre è tale che, per ogni a 2 [0; 1], a 1 = 1 e a :a = 1. Exercise 1 Veri…care: (i) che [0; 1] è chiuso rispetto a :; ; (ii) che le proprietà appena elencate valgono. Alla …ne degli anni ’50, il matematico C.C. Chang si propose di identi…care una classe di strutture algebriche che generalizzano opportunamente le proprietà dell’algebra MV[0;1] = h[0; 1] ; ; :; 0i (dove gli apici sono omessi per brevità) che, come abbiamo appena visto, rappresenta il sistema dei valori di verità della logica di ×ukasiewicz a in…niti valori. Chang arrivò così al concetto di MV algebra (abbr. di many-valued algebra). De…nition 2 Una MV algebra è un’algebra A = hA; ; :; 0i di tipo h2; 1; 0i che soddisfa le seguenti equazioni: MV1 x (y z) MV2 x y y MV3 x 0 x MV4 ::x MV5 x :0 MV6 :(:x (x y) z x x :0 y) y :(:y x) x Exercise 3 Far vedere che ogni MV algebra soddisfa x :x 1. Vediamo alcuni esempi. Abbiamo già visto l’esempio dell’algebra MV[0;1] , che d’ora in avanti chiameremo anche MV algebra standard. Per ogni intero n 2, l’insieme n 2 1 ; :::; ;1 0; n 1 n 1 è un sottouniverso di MV[0;1] , ossia l’universo di una sottalgebra di MV[0;1] , che è a sua volta un’MV algebra. Inoltre, se B = hL;0 ; u; ti è un’algebra di Boole e 0 designa l’elemento minimo di B, abbiamo che hL; t;0 ; 0i è un’MV algebra. Modulo la relazione di equivalenza per termini, possiamo dunque considerare le algebre di Boole come casi particolari di MV algebre. 5 Exercise 4 Veri…care che le algebre di Boole soddisfano gli assiomi delle MV algebre. Come ultimo esempio, si consideri l’insieme f0; 1; 2; 3; :::; 1 3; 1 2; 1 1; 1g e de…niamo su di esso le operazioni di negazione e somma troncata come segue (n; m 2 N ): :n = 1 n; :(1 n) = n; n m = n + m; (1 n) (1 m) = 1; 1 + n m se n m; n (1 m) = 1, altrimenti. La struttura che ne risulta è un’MV algebra, chiamata MV algebra di Chang. Exercise 5 Dimostrare che l’MV algebra di Chang soddisfa gli assiomi MV2MV6. Ci faranno comodo alcune utili abbreviazioni. 1 Notation 6 x y :(:x :0; :y); xuy x (:x y); xty x (:x y). Exercise 7 (i) Riscrivere gli assiomi MV5 e MV6 usando le abbreviazioni appena introdotte; (ii) far vedere che per ogni MV algebra A e per ogni a; b 2 A, a t b = :(:a u :b) e a u b = :(:a t :b); (iii) a quale funzione corrisponde in MV[0;1] ?; (iv) far vedere che l’operazione è associativa e commutativa, ha 1 come elemento neutro ed è tale che a 0 = 0 per ogni a 2 A; (v) far vedere che per ogni MV algebra A e per ogni a 2 A, a :a = 0. Introduciamo adesso una relazione d’ordine parziale nelle MV algebre. De…nition 8 Sia A = hA; ; :; 0i un’MV algebra e siano a; b 2 A. De…niamo a b sse 1 = :a b Lemma 9 Sia A = hA; ; :; 0i un’MV algebra. Le seguenti condizioni sono equivalenti per a; b 2 A: (i) a b; (ii) a :b = 0; (iii) esiste un c 2 A t.c. a c = b. 6 Proof. (i) ) (ii). Se 1 = :a b, allora 0 = :1 = :(:a b) = :(:a ::b) = a :b. (ii) ) (iii). Se a :b = 0, allora b (:b a) = b (a :b) = b 0 = b. Ma per MV6 b (:b a) = a (:a b); quindi a (:a b) = b e dunque basta prendere c = :a b. (iii)) (i). Se c è tale che a c = b, allora 1 = 1 c = :a a c = :a b. Lemma 10 Sia A = hA; ; :; 0i un’MV algebra. Allora hA; i è un ordine reticolare, laddove inf fa; bg = a u b e sup fa; bg = a t b. In tale ordine, 0 è il massimo e 1 il minimo. Proof. è ri‡essiva per l’Esercizio 3, e transitiva per il Lemma 9(iii). Facciamo vedere che è antisimmetrica. Supponiamo a b; b a. Allora a :b = 0 = b :a. Ragionando come nel Lemma 9, a (:a b) = b e quindi a = a 0 = a (:a b) = b. Dunque è una relazione di ordine parziale. Facciamo ora vedere che sup fa; bg = a t b. Dobbiamo mostrare che: (i) a a t b; (ii) b a t b; (iii) se a; b c allora a t b c. (i) Occorre mostrare che 1 = :a a (:a b), il che vale per MV5 e l’Esercizio 3. (ii) Occorre mostrare che 1 = :b a (:a b). Ma :a b = :(a :b), da cui la conclusione segue per l’Esercizio 3. (iii) Occorre far vedere che a (:a b) c, ovvero 1 = (:a (a :b)) c. Poiché b c, per la dim. del Lemma 9(iii) b (:b c) = c, quindi, applicando più volte tale ipotesi e MV6: (:a (a :b)) c = (:a (a :b)) = (:b (b :a)) = (:(b :a) b) = (:(b :a) b) = (:(b :a) b) Poiché però a c, si ha 1 = :a (:(b :a) b) 1 = 1. b (:b c) b (:b c) b :a (:b :a b (:b :a c c e dunque per MV5 (:a (a c) c) :b)) c= Exercise 11 Completare la precedente dimostrazione facendo vedere che inf fa; bg = a u b, che 0 a e che a 1. Si noti che in MV[0;1] l’ordine de…nito in De…nizione 8 coincide con l’usuale ordine sui reali. Infatti, per a; b 2 [0; 1] si ha 1 = :a b sse 1 = min(1; 1 a + b) sse 1 1 a + b sse a b. MV[0;1] costituisce un primo signi…cativo esempio di MV algebra linearmente ordinata, ossia un’MV algebra dove l’ordine così de…nito, che da qui in avanti chiameremo ordine indotto, è un ordine lineare. Enunciamo senza dimostrarle alcune importanti proprietà delle MV algebre. Lemma 12 Sia A = hA; ; :; 0i un’MV algebra e siano a; b; c 2 A. (i) Se a b, allora :b :a, a c b c e a c b c; (ii) a b c sse a :b c. 7 Lemma 13 Sia A = hA; ; :; 0i un’MV algebra e siano a; b 2 A. (i) (a :b) u (b :a) = 0; (ii) distribuisce su u; t; (iii) distribuisce su u; t; (iv) u distribuisce su t; (v) t distribuisce su u. In virtù del Lemma 13 possiamo dire che, se A = hA; ; :; 0i è un’MV algebra, allora hA; u; ti è un reticolo distributivo. 3 3.1 Congruenze, ideali, omomor…smi Gli ideali di un’MV algebra Le nozioni di congruenza su un’MV algebra e di omomor…smo tra MV algebre sono esattamente quelle dettate dalla teoria dell’algebra universale. Infatti: De…nition 14 Sia A = hA; ; :; 0i un’MV algebra e sia di equivalenza su A. si dice una congruenza su A sse: A2 una relazione per ogni a; b 2 A, se a b allora :a :b; per ogni a; b; c; d 2 A, se a b e c d allora (a c) (b d). La classe di congruenza di a 2 A modulo sarà denotata con a= . L’insieme di tutte le classi di congruenza sarà denotato con A= . Per esempio, la relazione di identità , che sussiste unicamente tra ciascun elemento a e se stesso, è una congruenza su ogni MV algebra, così come lo è la relazione universale !, che sussiste tra ogni coppia di elementi a e b. Si prenda adesso l’MV algebra C di Fig. 1, dove il comportamento della negazione è …ssato dal nome degli elementi e quello della somma troncata dalla seguente tavola: 0 a b :a :b 1 0 0 a b :a :b 1 a a :b :a 1 :b 1 b b :a b :a 1 1 :a :a 1 :a 1 1 1 :b :b :b 1 1 :b 1 1 1 1 1 1 1 1 allora la relazione di equivalenza le cui classi di equivalenza sono f0; b; :b; 1g e fa; :ag non è una congruenza: infatti a :a; b :b ma non vale (a b) (:a :b) perché a b = :a, :a :b = 1 e :a; 1 sono in diverse classi di equivalenza. Invece la relazione di equivalenza le cui classi di equivalenza sono f0; a; :bg e f1; b; :ag è una congruenza. Exercise 15 (i) Veri…care quest’ultima a¤ ermazione. (ii) Dire perché la relazione di equivalenza le cui classi di equivalenza sono f0g ; f1g ; fa; bg ; f:a; :bg non è una congruenza sulla MV algebra dell’esempio precedente. 8 De…nition 16 Siano A = A; A ; :A ; 0A e B = B; B ; :B ; 0B due MV algebre e sia f : A ! B una funzione. f si dice un omomor…smo da A a B sse: per ogni a; b 2 A, f (a A b) = f (a) B f (b); per ogni a 2 A, f (:A a) = :B f (a); f (0A ) = 0B . Se f è iniettiva, si dice un’immersione di A in B; se f è suriettiva, si dice un omomor…smo da A su B; se f è biiettiva, si dice un isomor…smo tra A e B (e A e B si dicono isomor…). In…ne, l’insieme Kr(f ) = x 2 A : f (x) = 0B si dice nucleo di f . Si considerino l’MV algebra C di Fig. 1 e l’algebra di Boole D di Fig. 2 (dove il comportamento di si può desumere direttamente dal diagramma di Hasse perché tale operazione coincide con t). La funzione f : C ! D così de…nita: f (0C ) = f (a) = f (:b) = 0D , f (1C ) = f (b) = f (:a) = 1D è un omomor…smo da C a D ma non è da C su D. La funzione g : C ! D così de…nita: g(0C ) = 0D , g(a) = g(b) = c, g(:a) = g(:b) = :c, g(1C ) = 1D è suriettiva ma non è un omomor…smo perché g(a C b) = g(:a) = :c 6= c = c D c = g(a) D g(b): Exercise 17 (i) Veri…care che la f sopra de…nita è un omomor…smo. (ii) Dare un esempio di omomor…smo da C su D. Lemma 18 Siano A = A; A ; :A ; 0A e B = B; B ; :B ; 0B due MV algebre e sia f un omomor…smo da A a B. Allora, per ogni a; b 2 A, f (a) B f (b) sse a A :A b 2 Kr(f ). Proof. In virtù del Lemma 9 f (a) B f (b) sse f (a) B :B f (b) = 0B . Tuttavia, f (a) B :B f (b) = f (a A :A b), quindi f (a) B f (b) sse a A :A b 2 Kr(f ). Le nozioni di omomor…smo e congruenza sono importanti ma non molto maneggevoli; sarebbe utile disporre di surrogati di questi concetti. Ci interessa quindi isolare, tra tutti i sottoinsiemi dell’universo di un’MV algebra, quelli che corrispondono a nuclei di omomor…smi. Vedremo che tali sottoinsiemi stanno in corrispondenza biunivoca con le congruenze sull’MV algebra medesima. De…nition 19 Sia A = hA; ; :; 0i un’MV algebra e sia J ideale di A sse soddisfa le seguenti condizioni: J1 0 2 J; J2 se a; b 2 J, allora a J3 se a 2 J e b b 2 J; a, allora b 2 J. 9 A. J si dice un In ogni MV algebra, f0g è un ideale: per J1, si tratta chiaramente del più piccolo ideale. Per J3, anche l’intero universo A dell’algebra è un ideale: si tratta chiaramente del più grande ideale. Si prenda l’MV algebra C di Fig. 1. Il sottoinsieme fb; 0g di C è un esempio di ideale di C in quanto si vede facilmente che soddisfa J1-J3. Invece fa; 0g non è un ideale: a a = :b 2 = fa; 0g. Exercise 20 (i) Veri…care che il nucleo dell’omomor…smo f de…nito sopra è un ideale dell’MV algebra C. (ii) Dimostrare che l’unico ideale di C che contiene sia a che :a è l’universo C dell’algebra. (iii) Determinare gli ideali dell’MV algebra di Chang. Si noti che, per J3, l’unico ideale di un’MV algebra A = hA; ; :; 0i che contiene 1 è l’universo A. Vediamo adesso alcune importanti classi di ideali. De…nition 21 Sia A = hA; ; :; 0i un’MV algebra e sia ? 6= H A. L’ideale generato da H è il più piccolo ideale di A che contiene H, e si simbolizza con (H]. Se H è il singoletto fag, anziché (fag] scriviamo (a] e lo chiamiamo l’ideale principale generato da a. De…nition 22 Sia A = hA; ; :; 0i un’MV algebra. Un ideale J di A si dice proprio sse J 6= A; si dice massimale sse è proprio e non è contenuto in nessun altro ideale proprio, ossia se J I e I è un ideale, allora I = A; in…ne, si dice primo sse è proprio e soddisfa la condizione per ogni a; b 2 A, o a :b 2 J oppure b :a 2 J. Si prenda l’MV algebra C di Fig. 1. Si vede facilmente che (a] = f0; a; :bg. Come abbiamo già visto, infatti, tale insieme è un ideale e contiene a; dunque, si tratta solo di far vedere che è il più piccolo tra quelli che contengono a. Ma per J1 ogni ideale che contiene a deve contenere 0, e per J2 dev’essere chiuso rispetto alla somma troncata e quindi deve contenere a a = :b. Tale ideale è massimale: infatti se ci aggiungiamo b, allora apparterrà all’ideale anche b :b = 1, e non abbiamo più un ideale proprio. Analogamente, se ci aggiungiamo :a, allora apparterrà all’ideale anche a :a = 1, e non abbiamo più un ideale proprio. Si tratta inoltre di un ideale primo. Exercise 23 Veri…care che f0; a; :bg è primo. Diamo adesso una caratterizzazione degli ideali generati e degli ideali massimali. Lemma 24 Sia A = hA; ; :; 0i un’MV algebra e sia ? 6= H (H] = fx 2 A : 9a1 ; :::; an 2 H(x a1 ::: an )g. A. Allora Proof. Sia J = fx 2 A : 9a1 ; :::; an 2 H(x a1 ::: an )g. Mostriamo dapprima che J è un ideale. Poiché H è non vuoto, allora contiene almeno un elemento, chiamiamolo c. Poiché 0 c, 0 2 J. Dunque J1 è soddisfatta. Siano 10 adesso a; b 2 J; allora esistono a1 ; :::; an ; b1 ; :::; bm 2 H tali che a a1 ::: an e b b1 ::: bm . Per il Lemma 12 a b a1 ::: an b1 ::: bm e dunque a b 2 J, il che veri…ca J2. La veri…ca di J3 è banale; si ha dunque che J è un ideale, il quale chiaramente contiene H. Rimane da far vedere che se I è un ideale di A e H I, allora J I. Sia dunque a 2 J. Allora esistono a1 ; :::; an 2 H tali che a a1 ::: an . Ma poiché H I, a1 ; :::; an 2 I, e siccome I è un ideale, per J2 contiene a1 ::: an e per J3 contiene a. Notation 25 Abbreviamo x ::: x con nx. | {z } n volte Lemma 26 Sia A = hA; ; :; 0i un’MV algebra. Un ideale proprio J di A è massimale sse, per ogni a 2 A, vale la seguente equivalenza: a 2 = J sse :na 2 J per qualche n 1. Proof. Da sinistra a destra, supponiamo J massimale. Allora, se a 2 = J, signi…ca che aggiungendo a a J si ottiene tutto A, da cui 1 2 (J [ fag]. Per il Lemma 24 esiste un b 2 J tale che 1 = na b, ossia :na b e quindi per J3 :na 2 J. Per l’altro verso dell’equivalenza, supponiamo per assurdo che :na 2 J per qualche n 1 ma che a 2 J. Allora, per J2 vale ma 2 J per ogni m 1, e dunque in particolare na 2 J. Ancora per J2, 1 = na :na 2 J, il che contraddice il fatto che J è proprio. Da destra a sinistra, supponiamo che valga l’equivalenza contenuta nell’enunciato e supponiamo che K sia un ideale di A tale che J K. Allora esiste un c 2 K che non è elemento di J; per l’equivalenza, :nc 2 J per qualche n 1. Pertanto 1 = nc :nc 2 K e dunque K = A. Enunciamo senza dimostrazione il seguente lemma, che ci farà comodo più avanti: Lemma 27 Ogni ideale massimale di un’MV algebra è primo. 3.2 La corrispondenza tra ideali e congruenze Vogliamo adesso dimostrare che esiste una corrispondenza biunivoca tra l’insieme degli ideali di un’MV algebra e l’insieme delle congruenze sulla medesima MV algebra. Sfrutteremo un risultato di teoria degli insiemi secondo cui due insiemi A e B sono in corrispondenza biunivoca se e solo se esistono due funzioni f : A ! B e g : B ! A che sono l’una l’inversa dell’altra, ossia: per ogni a 2 A, g(f (a)) = a e per ogni b 2 B, g(f (b)) = b. Per prima cosa, quindi, associamo a ciascun ideale una relazione binaria e dimostriamo che si tratta di una congruenza. De…nition 28 Sia A = hA; ; :; 0i un’MV algebra. Se J è un ideale di A, la relazione binaria J A2 è de…nita come segue per ogni a; b 2 A: a J b sse a :b 2 J e b 11 :a 2 J. Facciamo alcuni esempi. In ogni MV algebra f0g = , la relazione di identità. Infatti per de…nizione a f0g b sse a :b = 0 e b :a = 0, il che per il Lemma 9 signi…ca a beb a, il che per la ri‡essività e l’antisimmetria equivale a a = b. Inoltre, in ogni MV algebra A = !, la relazione universale. Infatti per de…nizione a A b sse a :b 2 A e b :a 2 A, ma essendo tali condizioni banalmente soddisfatte a A b vale sempre. Exercise 29 Nell’MV algebra C di Fig. 1, determinare f0;a;:bg De…nition 30 Sia A = hA; ; :; 0i un’MV algebra. Se A, il sottoinsieme J A è de…nito come segue: è una congruenza su e f0;bg . J = 0= = fx 2 A : x 0g . Facciamo alcuni esempi. In ogni MV algebra J = f0g. Infatti per de…nizione J = fx 2 A : x 0g = f0g. Inoltre, in ogni MV algebra J ! = A. Infatti per de…nizione J ! = fx 2 A : x!0g = A. Exercise 31 Siano e , rispettivamente, le congruenze determinate nell’Esercizio 29. Veri…care che J = f0; a; :bg e J = f0; bg. Possiamo adesso dimostrare il nostro teorema sulla corrispondenza biunivoca tra ideali e congruenze. Theorem 32 Sia A = hA; ; :; 0i un’MV algebra. (i) Se J è un ideale di A, J è una congruenza su A; (ii) Se è una congruenza su A, J è un ideale di J A; (iii) J = J; (iv) J = . Proof. (i) Limitiamoci a mostrare che J è un’equivalenza. La ri‡essività segue dall’Esercizio 7(v). e da J1. La simmetria è un’ovvia conseguenza della de…nizione. Per veri…care la transitività, supponiamo a J b e b J c, ossia a :b; b :a; b :c; c :b 2 J. Per J1, (a :b) (b :c) 2 J. Tuttavia, per un agevole lemma sulle MV algebre abbiamo che a :c (a :b) (b :c) da cui, per J3, otteniamo a :c 2 J. In maniera del tutto simile si fa vedere che c :a 2 J. Di conseguenza, a J c. (ii) Poiché è ri‡essiva, 0 0 e quindi 0 2 J , il che veri…ca J1. Per J2, supponiamo a; b 2 J , ossia a 0 e b 0. Abbiamo allora (a b) (0 0), ossia (a b) 0, vale a dire a b 2 J . Rimane solo da controllare J3. Assumiamo dunque a 2 J , cioè a 0, e b a, cioè 1 = :b a. Dalla prima ipotesi otteniamo (:b a) (:b 0) = :b, che in virtù della seconda ipotesi ci dà 1 :b. Quindi 0 = :1 ::b = b, ossia b 2 J . n o J (iii) Sviluppiamo le de…nizioni. Abbiamo che J = x 2 A : x J0 e J quindi, poiché a J b sse a :b 2 J e b :a 2 J, J = fx 2 A : x 1 2 J e 0 :x 2 Jg. Tuttavia, sappiamo (Esercizio 7) che per ogni a 2 A si ha a 1 = a e 0 a = 0. J Quindi J = fx 2 A : x 2 Jg = J. (iv) Sviluppiamo le de…nizioni. Abbiamo che a J b sse a :b 2 J e b :a 2 J , e quindi, poiché J = 0= , a J b sse (a :b) 0 e (b :a) 0. Dunque, se 12 a J b, allora b ((a :b) b) e a ((b :a) a). Tuttavia, per MV6, (a :b) b = (b :a) a, da cui a b. Viceversa, se a b, allora (a :b) (b :b) = 0 e (b :a) (a :a) = 0, dunque a J b. In conclusione, a b se e solo se a J b. Exercise 33 Completare la dimostrazione del teorema precedente, mostrando che a J b implica :a J :b e che a J b e c J d implicano (a c) J (b d) (quest’ultima veri…ca è piuttosto complessa: auguri!). In realtà, potremmo dare del Teorema 32 un’enunciazione più forte. Infatti, le congruenze su un’algebra formano sempre un reticolo in cui il meet tra due congruenze e è la loro intersezione insiemistica \ , mentre il join tra due congruenze e è la più piccola congruenza sull’algebra che contiene la loro unione insiemistica [ . Anche gli ideali di un’MV algebra formano un reticolo in cui il meet tra due ideali J e I è la loro intersezione insiemistica J \ I, mentre il join tra due ideali J e I è (J [ I]. Si dimostra che le funzioni del Teorema 32 inducono, in ogni MV algebra, un isomor…smo tra il reticolo delle congruenze e quello degli ideali. Si può anche dimostrare che tali reticoli sono distributivi. 4 Prodotti e quozienti Abbiamo visto nella De…nizione 2 che la classe delle MV algebre può essere de…nita mediante equazioni. Ne segue, tramite un noto teorema di algebra universale (il Teorema di Birkho¤), che tale classe è chiusa rispetto a due importanti costruzioni: i prodotti diretti e i quozienti. Della prima costruzione considereremo solo il caso più semplice, con due soli fattori. De…nition 34 Siano A = A; A ; :A ; 0A e B = B; B ; :B ; 0B due MV algebre. Il prodotto diretto (binario) di A e B è l’MV algebra A B = A B; A B ; :A B ; 0A B , dove: A B ha; bi hc; di = a A :A B ha; bi = :A a; :B b ; 0A B = 0A ; 0B . c; b B d ; De…nition 35 Sia A = A; A ; :A ; 0A un’MV algebra e sia su A. Il quoziente di A modulo è l’MV algebra A= = A= ; dove: a= A= b= = a A una congruenza ; :A= ; 0A= , A= b= ; :A= (a= ) = :A a = ; 0A= = 0A = . Facciamo qualche esempio di queste due costruzioni, partendo dal prodotto. Si considerino le seguenti tre MV algebre: 13 l’MV algebra C di Fig. 1; l’algebra di Boole Bf0;1g , considerata come MV algebra; l’MV algebra MV3 ; corrispondente alla logica di Lukasiewicz a tre valori citata all’inizio. L’universo di tale algebra è quindi 0; 12 ; 1 , la negazione obbedisce alla tavola già citata a p. 2 e la somma troncata obbedisce alla seguente tavola: 0 12 1 0 0 12 1 1 1 1 1 2 2 1 1 1 1 Si formi il prodotto diretto Bf0;1g MV3 , seguendo le istruzioni della De…nizione 34. Omettendo gli apici per brevità, l’universo di Bf0;1g MV3 contiene quindi le coppie h0; 0i ; 0; 12 ; h0; 1i ; h1; 0i ; 1; 12 ; h1; 1i. Le operazioni di negazione e somma troncata si comportano nel modo seguente: : h0; 0i 0; 12 h0; 1i h1; 0i 1; 12 h1; 1i h1; 1i 1; 12 h1; 0i h0; 1i 0; 12 h0; 0i h0; 0i h0; 0i 0; 12 h0; 1i h1; 0i 1; 12 h1; 1i h0; 0i 0; 12 h0; 1i h1; 0i 1; 12 h1; 1i 0; 12 0; 12 h0; 1i h0; 1i 1; 12 h1; 1i h1; 1i h0; 1i h1; 0i h0; 1i h0; 1i h0; 1i h1; 1i h1; 1i h1; 1i h1; 0i 1; 12 h1; 1i h1; 0i 1; 12 h1; 1i 1; 12 1; 12 h1; 1i h1; 1i 1; 12 h1; 1i h1; 1i h1; 1i h1; 1i h1; 1i h1; 1i h1; 1i h1; 1i h1; 1i Si vede allora chiaramente che C è isomorfa a Bf0;1g MV3 . L’isomor…smo è dato dalla funzione f così de…nita: f (0) = h0; 0i, f (a) = 0; 12 , f (b) = h1; 0i, f (:a) = 1; 12 , f (:b) = h0; 1i, f (1) = h1; 1i. Per un esempio di quoziente, consideriamo ancora l’MV algebra C di Fig. 1, e siano e le due congruenze non banali su C, così determinate mediante le loro classi di equivalenza: = ff0; a; :bg ; f1; :a; bgg ; = ff0; bg ; fa; :ag ; f1; :bgg . Si vede allora chiaramente che C= è isomorfa a Bf0;1g , laddove l’isomor…smo è dato da f (0) = f0; a; :bg e f (1) = f1; :a; bg. Che possiamo dire, invece, di C= ? Le seguente funzione f è un isomor…smo tra l’MV algebra MV3 di Fig. 2 e C= : f (0) = f0; bg, f ( 12 ) = fa; :ag e f (1) = f1; :bg. Exercise 36 Veri…care in dettaglio che tale funzione f è un isomor…smo. Mostriamo adesso che gli ideali di un’MV algebra sono esattamente i nuclei di omomor…smi e che gli ideali primi sono esattamente quelli che generano congruenze le quali danno luogo ad algebre quoziente linearmente ordinate. 14 Theorem 37 Sia A = A; A ; :A ; 0A un’MV algebra. (i) Ogni nucleo di un omomor…smo con dominio A è un ideale di A; (ii) ogni ideale di A è nucleo di un omomor…smo con dominio A. Proof. (i) Sia f un omomor…smo da A = A; A ; :A ; 0A a B = A; B ; :B ; 0B . Veri…chiamo che Kr(f ) soddisfa J1-J3. Quanto a J1, 0A appartiene a Kr(f ) per le de…nizioni di omomor…smo e di nucleo. Quanto a J2, supponiamo a; b 2 Kr(f ), ossia f (a) = f (b) = 0B . Ma allora f (a A b) = f (a) B f (b) = 0B B 0B = 0B , da cui a A b 2 Kr(f ). Quanto a J3, supponiamo a 2 Kr(f ), ossia f (a) = 0B , e b a, ossia 1A = :A a A b. Then 0B = :B f (1A ) = B A A B : f (: a b), ossia 0 = :B :B f (a) B f (b) = f (a) B f (b). Poiché però B f (a) = 0 , si ha che anche f (b) = 0B , ovvero b 2 Kr(f ). (ii) Facciamo vedere che, se J è un ideale di A, allora J = Kr('J ), dove 'J : A ! A= J è così de…nito per ogni a 2 A: 'J (a) = a= J n o n Infatti Kr('J ) = a 2 A : 'J (a) = 0= J = a 2 A : a= Ossia, Kr('J ) = J J J = 0= . Per il Teorema 32, quindi, Kr('J ) = J. J o n = a2A:a Exercise 38 Completare la dimostrazione del lemma precedente, veri…cando che 'J è un omomor…smo suriettivo. Theorem 39 Sia A = A; A ; :A ; 0A un’MV algebra, e sia J un suo ideale. Allora J è primo sse l’MV algebra quoziente A= J è linearmente ordinata. Proof. Per il Lemma 18, , se f è un omomor…smo da A ad un’altra MV algebra B, per ogni a; b 2 A si ha che f (a) B f (b) sse a A :A b 2 Kr(f ). Ciò signi…ca che Kr(f ) è primo sse per ogni a; b 2 A a A :A b 2 Kr(f ) o b A :A a 2 Kr(f ), sse per ogni a; b 2 A f (a) B f (b) o f (b) B f (a). In altre parole, Kr(f ) è primo sse il rango di f , f (A), è totalmente ordinato. Sia adesso f = 'J (cfr.Teorema 37). 'J è suriettivo, per cui 'J (A) = A= J . Inoltre, per ilTeorema 37, Kr('J ) = J, da cui J = Kr('J ) è primo sse 'J (A) = A= J è totalmente ordinata. 5 MV algebre semplici e semisemplici L’MV algebra standard MV[0;1] ha un’interessante proprietà: non esistono altre congruenze su MV[0;1] tranne l’identità e la relazione universale !. In virtù del Teorema 32, ciò signi…ca che non esistono altri ideali di MV[0;1] tranne f0g e tutto l’intervallo [0; 1]. Infatti, se un ideale J contenesse un numero r 6= 0, allora in virtù di J2 dovrebbe contenere nr per ogni numero naturale n 1; ma poiché l’intervallo reale unitario è archimedeo, deve esistere un m 1 tale che mr = 1, da cui 1 2 J e quindi J = [0; 1]. Generalizziamo adesso questa considerazione nella seguente de…nizione. 15 J o 0 . De…nition 40 Un’MV algebra A si dice semplice sse i suoi unici ideali sono f0g e tutto A. Si noti che la de…nizione precedente si può riformulare dicendo che un’MV algebra è semplice sse f0g è un ideale massimale. Si noti anche che l’MV algebra C di Fig. 1 non è semplice, perché possiede gli ideali non banali f0; a; :bg e f0; bg. Diamo adesso una caratterizzazione delle MV algebre semplici. De…nition 41 Un’MV algebra A si dice archimedea sse per ogni a 2 A; a 6= 0; esiste un n 1 tale che na = 1. In altri termini, un’MV algebra è archimedea se ogni suo elemento diverso da zero, sommato a se stesso un numero su¢ ciente di volte, arriva "sul tetto" dell’algebra, cioè a 1. Theorem 42 Sia A = hA; ; :; 0i un’MV algebra, e sia J un suo ideale. Allora J è massimale sse l’MV algebra quoziente A= J è archimedea. Proof. Da sinistra verso destra, supponiamo J massimale e sia a= J 6= 0= J , ovvero, alla luce del Teorema 32(iii), a 2 = J. Quindi, per il Lemma 26, per qualche n 1 vale :na 2 J, da cui 0= J = (:na)= J = :n(a= J ). Ma allora 1= J = n(a= J ), ovvero A= J è archimedea. Da destra verso sinistra, supponiamo che A= J sia archimedea e che J I. Dobbiamo dimostrare che I = A. Ma, se J I, esiste un a tale che a 2 I ma a2 = J, ovvero a= J 6= 0= J . Poiché A= J è archimedea, per qualche n 1 si ha 1= J = n(a= J ) e, siccome J I, anche 1= I = n(a= I ). Ma a 2 I, da cui per J2 anche na 2 I, ovvero n(a= I ) = 0= I . Dunque 0= I = 1= I , cioè 0 I 1, cioè 0 = 0 :1 2 I e 1 = 1 :0 2 I. Quindi I = A. Corollary 43 Sia A = hA; ; :; 0i un’MV algebra. Allora: (i) A è semplice sse è archimedea; (ii) se è semplice, allora è linearmente ordinata. Proof. (i) Nel Teorema 42, sia J = f0g. Dunque A è semplice, cioè f0g è massimale, sse A= f0g è archimedea. Ma abbiamo visto che f0g non è altro che l’identità, per cui A= f0g coincide con A stessa. Dunque A è semplice sse è archimedea. (ii) Se A è semplice, f0g è massimale. Per il Lemma 27, f0g è primo, da cui per il Teorema 39 A= f0g , che coincide con A stessa, è linearmente ordinata. Si noti tuttavia che il viceversa del punto (ii) del Lemma precedente non vale: esistono MV algebre linearmente ordinate che non sono semplici. L’MV algebra di Chang, per esempio, è linearmente ordinata ma non è archimedea (quindi non è semplice): per esempio, sommando 1 a se stesso quante volte vogliamo non possiamo mai arrivare al "tetto", cioè 1. Enunciamo ora, senza dimostrarlo, un importante teorema. Theorem 44 (Teorema di Hölder-Chang). Un’MV algebra è semplice sse è isomorfa a una sottalgebra di MV[0;1] . 16 Nel linguaggio dell’algebra universale, un’algebra si dice semisemplice quando l’intersezione di tutte le sue congruenze massimali è l’identità. In virtù del Teorema 32, possiamo riformulare questa de…nizione nel modo seguente: De…nition 45 Un’MV algebra A si dice semisemplice sse l’intersezione di tutti i suoi ideali massimali è f0g. Si noti che ogni MV algebra semplice è semisemplice: infatti, in un’MV algebra semplice f0g è massimale ed è l’unico ideale proprio, ossia è l’unico ideale massimale. Ci sono però algebre semisemplici che non sono semplici: l’MV algebra C di Fig. 1, come abbiamo osservato non è semplice, però è semisemplice: i suoi due unici ideali massimali sono f0; a; :bg e f0; bg, e infatti f0; a; :bg \ f0; bg = f0g. L’MV algebra di Chang, invece, non è neanche semisemplice: il suo unico ideale massimale è f0; 1; 2; 3; :::g, che è diverso da f0g. Le MV algebre semisemplici hanno un’importante proprietà: sono isomorfe ad MV algebre di sottoinsiemi fuzzy, un concetto che andiamo adesso a de…nire. De…nition 46 Sia X un insieme. Un sottoinsieme fuzzy di X è una funzione f : X ! [0; 1]. Intuitivamente, un sottoinsieme fuzzy f di un certo insieme X è una funzione che a ciascun elemento a 2 X associa il suo "grado di appartenenza" all’insieme determinato da f : 1 se a vi "appartiene pienamente", 0 se a non vi appartiene per niente, un numero compreso tra 0 e 1 se a vi appartiene …no a un certo punto (si pensi al paradosso del calvo). De…nition 47 Sia X un insieme. Un’MV algebra di sottoinsiemi fuzzy di X è un’algebra F = F; F ; :F ; 0F , dove: F è un insieme di sottoinsiemi fuzzy di X; per ogni a 2 X, (f F g)(a) = f (a) MV[0;1] g(a); per ogni a 2 X, (:F f )(a) = :MV[0;1] f (a); per ogni a 2 X, 0F (a) = 0MV[0;1] . Exercise 48 Veri…care che ogni MV algebra di sottoinsiemi fuzzy è e¤ ettivamente un’MV algebra. Siamo ora pronti per dimostrare il risultato cui accennavamo poc’anzi. Theorem 49 Ogni MV algebra semisemplice A = hA; ; :; 0i è isomorfa a un’algebra di sottoinsiemi fuzzy di un qualche insieme X. Proof. Sia A = hA; ; :; 0i un’MV algebra semisemplice, e sia fMi gi2I la famiglia degli ideali massimali di A. Poiché A è semisemplice, \ fMi gi2I = f0g. Inoltre, per il Teorema 42 e il Corollario 43, per ogni j 2 I abbiamo che A= Mj è semplice e quindi, per il Teorema di Hölder-Chang, esiste un isomor…smo fj : A= Mj ! Bj , dove Bj è una sottalgebra di MV[0;1] . Costruiamo adesso la nostra MV algebra di funzioni come segue: 17 come insieme X prendiamo l’insieme fMi gi2I ; come insieme F di sottoinsiemi fuzzy di fMi gi2I , prendiamo l’insieme di tutte le funzioni faga2A , dove ciascuna funzione a : fMi gi2I ! [0; 1] è de…nita come segue per ogni j 2 I: a(Mj ) = fj (a= Mj ). De…niamo adesso una funzione h : A ! F nel modo seguente: h(a) = a. Questa funzione dà l’isomor…smo desiderato. Infatti, come si può veri…care, essa è un omomor…smo. Inoltre, per come è stato de…nito F , è suriettiva. Resta quindi da dimostrare che è iniettiva. Supponiamo dunque che, per c; d 2 A, sia h(c) = h(d), ossia c = d. Poiché due funzioni sono uguali quando danno lo stesso output per un medesimo argomento, abbiamo che per ogni k 2 I, c(Mk ) = d(Mk ), ossia fk (c= Mk ) = fk (d= Mk ). Ma poiché le funzioni fj sono per ipotesi biiettive, abbiamo che per ogni k 2 I, c= Mk = d= Mk , ossia c :d 2 Mk e d :c 2 Mk . Ma allora c :d; d :c 2 \ fMi gi2I = f0g. Dunque, per il Lemma 9 c d e d c, da cui per antisimmetria c = d. Exercise 50 Completare la dimostrazione del teorema precedente, veri…cando che h è un omomor…smo. 6 Completezza standard Per …nire, accenniamo senza dimostrarlo (tutte le dimostrazioni esistenti di questo teorema, infatti, sono lunghe e complesse) al più importante risultato della teoria delle MV algebre: il teorema di completezza di Chang. Consideriamo le equazioni che si possono scrivere nel linguaggio delle MV algebre, ossia usando i simboli di operazione ; :; 0. Un’MV algebra A = A; A ; :A ; 0A soddisfa un’equazione si¤atta quando, interpretando ciascun simbolo di operazione mediante la corrispondente operazione di A (ovvero mediante A , ecc.) ed assegnando a piacere a ciascuna variabile valori in A, entrambi i membri dell’equazione ottengono come interpretazione lo stesso elemento di A. Ebbene, si può dimostrare che un’equazione è soddisfatta in tutte le MV algebre se e solo se è soddisfatta nell’MV algebra MV[0;1] sull’intervallo [0; 1] (da sinistra a destra è banale: se un’equazione vale in tutte le MV algebre, in particolare vale in MV[0;1] ; da destra a sinistra la dimostrazione è invece molto complessa). Usando il linguaggio della prima parte del corso, possiamo riformulare questo risultato dicendo che MV[0;1] è funzionalmente libera nella classe di tutte le MV algebre. Anche se qui non abbiamo un calcolo logico, il nome "teorema di completezza" non è in contrasto con la terminologia usata in "Introduzione alla logica proposizionale". Infatti le interpretazioni delle equazioni del linguaggio delle MV algebre a cui abbiamo appena accennato sono un po’come valutazioni delle formule di un linguaggio proposizionale. Il teorema di completezza di Chang ci dice che la nozione di MV algebra è una buona generalizzazione delle 18 proprietà del sistema di operazioni di ×ukasiewicz sull’intervallo reale chiuso unitario. 19