GIOVANNI FUSCHINO
COMPLETEZZA E RAGIONAMENTO PER DEFAULT
La completezza logica si esprime nel modo seguente: M£α⇔M¢α che si legge:
1
“da M segue logicamente (£)
Se
M
α se e solo se (⇔) da M si può dedurre (¢) α”.
è una teoria, un insieme di asserzioni, allora dire ciò significa dire che
“ogni modello di M
è un modello di α”
(M£α), cioè ogni volta che si crea una
situazione per cui è vera M allora è vera anche α [SEMANTICA].
Invece
M¢α
significa che si può dedurre
α
da
M
nel senso che esiste una
dimostrazione che conduce da M ad α [SINTASSI]. Ricapitolando:
⇔
M£α
ogni modello di M è un modello di α
M¢α
si può dedurre α da M
[SEMANTICA]
[SINTASSI]
Questi due concetti sono diversi fra loro.
1
Per M si intende un MODELLO di una teoria matematica.
Ogni teoria matematica è fondata su un insieme di assiomi che stabiliscono delle relazioni tra un
dato numero di enti primitivi. Per esempio, nella geometria del piano gli enti primitivi fondamentali
sono il punto e la retta che sono definiti implicitamente da un gruppo di postulati.
Lo sviluppo di una teoria è logicamente corretto solo se è fondato sulle proprietà formali e non
dipende da alcuna rappresentazione intuitiva di tali enti. La distinzione tra enti primitivi e
rappresentazione concreta di tali enti fu introdotta per la prima volta nelle dimostrazioni
dell’esistenza e della legittimità delle geometrie non euclidee e fu successivamente generalizzata a
ogni tipo di teoria matematica con l’introduzione del concetto di MODELLO.
Un MODELLO di una teoria matematica formalizzata è un insieme M di elementi (ad esempio di
figure geometriche) associati agli enti primitivi della teoria in modo che ai postulati della teoria
corrispondano relazioni soddisfatte dagli elementi di M.
Per esempio, l’insieme formato da dalle nozioni intuitive di punto e di retta del piano costituisce un
modello della geometria euclidea piana. La costruzione di opportuni modelli di una data teoria
consente di studiare la sua struttura logica.
Si può dimostrare che una teoria è non contraddittoria se possiede almeno un MODELLO.
1
M£α
significa che ogni volta che sono vere tutte le asserzioni contenute in
M (per M si intende una teoria o un insieme di teorie o un insieme di asserzioni)
allora è vera anche α.
Poi vi è una sintassi, ovvero un concetto di deduzione che afferma che in maniera
meccanica (ovvero mediante un numero finito di passi) è possibile produrre la
formula α (di solito mediante il MP).
Nulla dice a priori che
M£α
sia collegata a
M¢α
(anche se intuitivamente il
collegamento sembra molto naturale).
E infatti basta mettere una nozione di dimostrazione tale che invece di usare il MP si
usa una regola non-standard e le due nozioni non sono più collegate.
Il teorema di completezza (valido solo per la logica del primo ordine) afferma invece
che
M£α
e
M¢α coincidono e cioè che:
£=¢
Invece per la logica del secondo ordine vale il teorema di incompletezza secondo cui
£≠¢
ovvero conseguenza logica e deduzione non coincidono.
Il teorema di incompletezza dice che se M è una teoria “non banale” (cioè almeno a
livello della logica del secondo ordine o della teoria dei numeri interi) allora M non
è completa cioè esiste almeno un α tale che M
¢ α (da M non si può dedurre
α) e tale che da M ¢ ¬α (da M non si può dedurre non α).
In poche parole, esiste sempre un’asserzione che non può né essere provata né
confutata da M.
2
Questo è un insuccesso della logica in quanto con il teorema di incompletezza si
afferma che non è possibile trovare una teoria in grado di descrivere completamente
una situazione (come i numeri interi, i numeri reali, la geometria o qualunque altro
ente matematico significativo) in quanto verrà fuori sempre un’asserzione che non
può essere né provata né confutata da questa teoria.
I logici matematici per tradizione si sono occupati della logica come formalizzazione
del ragionamento matematico e non del ragionamento comune.
Il ragionamento matematico ha a che fare con la precisione, con la certezza, con la
sicurezza ecc…
L’intelligenza artificiale, invece, oltre a rapportarsi alla logica (classica), ha anche a
che fare con altri problemi, più tipici, come il problema della completezza.
Ad esempio, un robot che si muove in una stanza, anche se non riesce a dedurre se
una cosa che sta davanti a lui è una sedia o un tavolo, deve poter decidere comunque,
e quindi deve avere una situazione di completezza.
Un altro esempio può chiarire meglio questo concetto: un essere umano (o un robot)
non sa se è giusto (se si può dimostrare che è giusto) prendere un treno o non è giusto
prendere un treno, ma deve poter decidere comunque. Nel ragionamento comune cioè
non si accetta l’incompletezza. E infatti la completezza è un requisito essenziale della
decisione.
Ad esempio si potrebbe creare una situazione in cui è possibile (non è possibile)
dimostrare sia l’asserzione “oggi l’aereo parte” sia l’asserzione “oggi l’aereo non
parte” ma bisogna comunque decidere. E allora?
Nell’intelligenza artificiale bisogna sempre decidere, anche in mancanza di
informazioni (e infatti gli uomini decidono sempre). E quindi bisogna ricorrere al
ragionamento per default, che fa sì che tutte le teorie siano complete.
Deve cioè esistere una regola di default, in cui anche nel caso in cui non esistano
elementi per prendere una decisione, si possa comunque decidere
(perché,
ad
esempio, α è più probabile di non α).
Questa regola di default è di solito un algoritmo che afferma come ci si deve
comportare dicendo che
α (non α) è un teorema.
Nella logica matematica classica più informazioni si hanno, più cose si riescono a
dimostrare, non si cambia mai idea. Se è stato dimostrato un teorema non si dirà mai
(se si hanno nuove informazioni) che quel teorema è sbagliato.
La logica (la matematica) classica è monotona e cumulativa, un teorema, una volta
dimostrato, è stato dimostrato per sempre.
3
Le logiche di default sono invece non-monotone. Si può decidere che “Tizio è una
persona onesta” ed essere convinti di questo. Se si hanno nuove informazioni, si può
invece decidere che “Tizio non è una persona onesta”. Se si hanno ulteriori
informazioni, si può ancora cambiare idea.
Il ragionamento non è stabile, nel senso che si può cambiare continuamente opinione
circa una situazione, quando le informazioni cambiano, senza che le informazioni
siano sbagliate. Semplicemente, nuove informazioni consentono di cambiare
opinione.
Il ragionamento per default comporta numerosi problemi. Cosa succede, ad esempio,
quando una prova combacia con le premesse di due regole di default con conclusioni
contrastanti?
Sembra che si debbano esprimere delle priorità tra le regole in modo che una regola
abbia la precedenza. Una forma comunemente usata di priorità è quella della
preferenza alla specificità in cui una regola di un caso specifico ha la precedenza su
quella di un caso generale. Ad esempio, “le macchine a tre ruote hanno tre ruote” ha
la precedenza su “le macchine hanno quattro ruote”.
Un altro problema è che a volte si può giungere a diverse conclusioni sulla base di
una credenza che viene poi ritrattata. Come si può tener conto delle conclusioni che
devono essere ritrattate? Sembra ragionevole pensare che debbano essere trattenute le
conclusioni che hanno più giustificazioni (di cui solo una piccola parte è stata
ritrattata), mentre quelle senza alcuna giustificazione rimanente dovrebbero essere
abbandonate.
Ancora: come si possono usare le credenze che hanno stati di default per prendere
decisioni? Questa è probabilmente la questione più difficile per il ragionamento di
default. Le decisioni spesso comportano delle contropartite, quindi è necessario
confrontare la forza della credenza che proviene da azioni differenti.
Nei casi in cui gli stessi tipi di decisioni vengano prese ripetutamente, è possibile
interpretare le regole di default come enunciati di “probabilità di soglia”.
Ad esempio, la regola di default “i freni dell’auto sono sempre funzionanti” in realtà
significa “la probabilità che i freni dell’auto funzionino, data nessun altra
informazione, è sufficientemente alta che la decisione ottimale per il guidatore è
quella di guidare senza controllarli”. Quando cambia il contesto della decisione, ad
esempio quando si sta guidando su un camion stracarico lungo una ripida strada di
montagna, la regola di default diventa improvvisamente inadeguata, anche se non c’è
alcuna prova che suggerisca che i freni non funzionino.
4
Se, come sembra, il ragionamento per default è non-monotono, è ragionevole pensare
che (come le altre forme di ragionamento non-monotono) manchi di tre importanti
proprietà che invece sono tipiche della logica classica e cioè:
1) località: nei sistemi logici classici, una volta che si è dimostrata una regola nella
forma α→β si può concludere β data prova di α, senza doversi preoccupare di
nessun’altra regola; nei sistemi di default si dovrebbe tener conto di tutte le prove
disponibili;
2) distacco: una volta che si è trovata una dimostrazione logica per una proposizione
β, nella logica classica tale proposizione può essere usata indipendentemente da
come è stata derivata, ossia può essere distaccata dalla propria giustificazione; nel
ragionamento di default sembra che la sorgente di prova per una credenza sia
importante per i ragionamenti successivi;
3) vero-funzionalità: nella logica classica la verità delle formule complesse può
essere calcolata a partire dalla verità dei componenti, mentre nel ragionamento per
default questo non dovrebbe valere, a meno di forti assunzioni di indipendenza.
Vi sono stati diversi tentativi di far derivare il ragionamento di default da un sistema
probabilistico, usando l’idea che una regola di default è praticamente una probabilità
condizionata di 1-ε, ma questa ipotesi è stata oggetto di numerose critiche, in quanto
troppo semplicistica e non abbastanza rappresentativa di questa forma di
ragionamento2.
2
Secondo R. Reiter, ideatore della logica di default, questa forma di ragionamento non ha nulla a
che fare con la probabilità. La logica di default permette invece di asserire qualcosa che non si può
derivare, ma per la quale non si ha nemmeno un’informazione contraria. In parole povere, in
assenza di ogni informazione contraria (default), cioè che non valga non-A, si asserisce A. E ciò
ovviamente implica la non monotonia. Si veda in merito:
R. REITER: A logic for default reasoning, in Artificial Intelligence, 13 (1-2) [1980], pp.81-132.
5