You are on page 1of 55

UNIVERSITÀ DEGLI STUDI DI BOLOGNA

FACOLTÀ DI LETTERE E FILOSOFIA

Corso di Laurea in Filosofia

Tesi di Laurea in Filosofia della Scienza

MONOTONICITÀ E
LOGICA DI DEFAULT

Relatore Presentata Da
Prof. Giorgio Sandri Antonio De Negri

A.A. 2005/2006
Sessione I
Indice

Introduzione

1. Il ragionamento di default
2. La logica come forma di rappresentazione della conoscenza
2.1 La logica del primo ordine
2.1.1 Linguaggi del primo ordine
2.1.2 Introduzione della non monotonicità nella Logica del Primo Ordine
2.2 La logica di default
2.2.1 Introduzione
2.2.2 Formalizzazione della logica di default
2.2.3 Proprietà delle teorie di default
2.3 I default normali
2.4 I default semi-normali

3. Criteri di accettazione dei default


3.1 Le espressioni generiche
3.2 L’insieme delle alternative
3.3 L’utilizzo delle espressioni generiche nel ragionamento di default
3.3.1 Rilevanza e specificità tra le proprietà
3.3.2 L’approccio scettico e l’approccio fiducioso
3.4 L’abduzione nel ragionamento di default

4. La logica di default come strumento di computazione


4.1 Struttura del programma DeReS
4.1.1 Default Reasoning Module
4.1.2 Prover Module
4.1.3 Interfaccia Utente
4.2 Esperimenti con la logica di default

Conclusioni

Bibliografia
Introduzione

Questa tesi vuole sviluppare la discussione intorno al ragionamento di default,


alla sua formalizzazione ed al suo utilizzo computativo. Lo svolgimento sarà così
articolato in quattro fondamentali sezioni:
1. Presentazione del ragionamento di default.
2. Formalizzazione del ragionamento di default.
3. Proprietà del ragionamento di default.
4. Strumenti computazionali per il ragionamento di default.
La prima parte si occupa di mostrare a livello intuitivo cosa significhi ragionare per
default, pensare per default e di conseguenza esprimere tale elaborazione attraverso un
sistema idoneo. Ragionare per default non significa altro che trarre delle conclusioni
quando il soggetto ha solo una cognizione parziale dello stato del mondo. Bisognerà
analizzare dunque quando e come tale capacità inferenziale sia passibile di refutazione o
di difesa e di come possa essere sfruttata per ottenere delle conclusioni valide.
La seconda sezione si occupa di sostanziare l’intuitiva descrizione con l’aspetto
formale derivato dalla trasposizione dal linguaggio naturale a quello della logica del
primo ordine. Vedremo come la logica del primo ordine ha tutti i requisiti per essere un
veicolo idoneo per la rappresentazione delle conoscenze e come tale anche per
rappresentare il ragionamento di default. Grazie all’apporto della formalizzazione
avremo delle strutture che ci garantiranno la non ambiguità e la correttezza nella
valutazione delle proprietà del ragionamento. Non solo è necessario dunque passare
dalla discussione al piano formale, ma necessario quanto più vogliamo raggiungere uno
stato di universalità nella rappresentazione delle conoscenze.
La terza sezione ritorna a valutare il vero e proprio ragionamento di default,
nell’ottica di dettarne i criteri necessari affinché la scelta dei termini che ne
costituiscono l’ossatura siano adeguati. Si comincerà infatti mostrando come sia
possibile tale ragionamento e come esso sia di fatto il ragionamento standard utilizzato
comunemente. Tale proprietà deriverebbe infatti dalla capacità di soddisfare, stando alle
conoscenze del soggetto, un maggior numero di fattispecie riguardo alle altre
conoscenze possedute dallo stesso soggetto. Significa, ad esempio, che la maggior parte
delle persone ritiene gli uccelli in grado di volare piuttosto che in grado di guidare un
camion. Avremo così le distinzioni tra rilevanza e specificità per il ragionamento di
default che ci permetteranno di ordinare gerarchicamente la qualità di ciò che
predichiamo e di come lo predichiamo in una proposizione. Analizzeremo infine la
capacità abduttiva del ragionamento di default, ovvero la proprietà di assorbire nuove
informazioni, rivedendo la struttura delle conoscenze, per rispondere a quei casi che
costituiscono un’evidenza non spiegata dalla teoria che possediamo.
La quarta sezione sarà invece dedicata agli strumenti computazionali per il
ragionamento di default. Saranno cioè messi in campo dei sistemi in grado di fornire
una risposta tangibile riguardo alla qualità sia della formalizzazione che della capacità
d’analisi del ragionamento di default. In particolare presenteremo DeReS, acronimo per
Default Reasoning System, un programma sviluppato dal dipartimento di Computer
Science dell’Università del Kentuchy. Con DeReS vedremo infatti come sarà possibile
mettere alla prova e valutare lo spazio problemico per le teorie di default e la validità
che esse hanno nella soluzione di problemi reali.
La tesi vuole dunque essere una presentazione, forse un’introduzione ai problemi
cognitivi che riguardano il ragionamento di senso comune. Tuttavia l’indagine si
presuppone di seguire non la via psicologica ma quella filosofica. Non vogliamo sapere
infatti quale sia il motivo o il processo mentale che portano a questo tipo di
ragionamento. Vogliamo piuttosto valutarlo in quanto ragionamento, una volta
appuratane l’esistenza. Vogliamo conoscerne le proprietà, i limiti e le capacità di
rappresentare non solo la conoscenza presente ma quella passata e quella futura.
Vogliamo cioè un modello di razionalità in scala, in grado di essere analizzato con degli
strumenti idonei che permettano sviscerarne il senso. La ragione filosofica è quella di
indagare criticamente non più la realtà ma il pensiero stesso nella sua correlazione con il
mondo. Ottenere infatti un modello di ragionamento non ambiguo e deterministico è il
passo necessario per costituire una comunità d’intenti che sia in grado di dialogare in
modo uniforme. Solo così infatti è pensabile un progresso in termini qualitativi e
quantitativi del grado di conoscenza della realtà, altrimenti ogni asserzione seppur
valida tenderà a costituire un modello a parte ed a frammentarsi come sezione in
un’enorme complessità, essendo nulla più che un’ennesima arida enunciazione.
1. Il ragionamento di default

Definire il ragionamento di default è un’impresa non banale. Significa infatti


tentare di comprendere lo sforzo di un soggetto, posto nella condizione d’incertezza o
non completezza delle informazioni, di trarre delle inferenze valide riguardo alla
situazione. E’ evidente come tale circostanza sia un problema correlato strettamente al
ragionamento di senso comune, ovvero quel ragionamento che si trova a fare i conti con
una realtà estremamente complessa e mutevole, all’interno della quale il soggetto deve
prendere delle decisioni che siano possibilmente corrette. Le conoscenze possedute dal
soggetto costituiscono il suo stock d’informazione sulla realtà, e sono quelle nozioni che
“permettono di muoversi nello spazio, formulare e realizzare progetti, prevedere
l’effetto di eventi ed azioni nella vita quotidiana” 1 . Tale massa di conoscenze è spesso
confusa, incoerente, inattendibile eppure fondamentale, perchè rende la persona in
grado di scegliere tra le possibilità che la situazione contingente presenta. Infatti, ciò
che si sottintende, in una decisione, è di attenuare il rischio derivato dalla non
completezza delle informazioni, ovvero di spostare le proprie considerazioni da un
livello di massima incertezza o equiprobabilità verso un livello di seppur minima
certezza. Il fatto che le conoscenze possedute dal soggetto siano poi estremamente
aleatorie e disomogenee determina che il ragionamento di senso comune sia un
ragionamento non monotòno perchè “ciò che può essere concluso da un certo numero di
informazioni non è detto sia inferibile all’aumentare delle informazioni stesse” 2 .
Pensiamo ad esempio al fatto che Tweety sia un uccello e che non vi sia alcun motivo
per ritenere che Tweety non voli, il senso comune ci porta a concludere che Tweety
vola. Ma se scoprissimo che Tweety è certo un uccello ma allo stesso tempo uno struzzo
allora esisterebbe un’evidenza contraria al fatto che Tweety possa volare. Questo perchè
nel ragionamento comune “le cose che tutti conoscono non hanno la necessità di essere
leggi universalmente valide” 3 sebbene il ragionamento comune sia valido in quanto “le
cose che sono considerate generalmente vere sono per la maggior parte assolutamente
vere” 4 . Abbiamo cioè la necessità di misurarci con la nozione di revisione delle nostre

1
M. Benzi, Il Ragionamento Incerto – Probabilità e logica in intelligenza artificiale, pg. 154, Milano:
Angeli, 1997.
2
P. Besnard, An Introduction to Default Logic, pg. 4, Springer-Verlag, 1988.
3
Ibid, pg. 2.
4
Ibid, pg. 3.
conclusioni; esse possono essere falsificate e potremmo essere costretti a ritrattarle.
Ecco perchè il ragionamento di default è un ragionamento in condizioni di incertezza di
tipo non-monotono.
“Il ragionamento di default è dunque in sé un tentativo che permette di ottenere
conclusioni affidabili sebbene suscettibili di revoca” 5 . Esso non introduce alcun grado
di certezza, alcun tipo di probabilità; esso ha soltanto i due canonici valori di verità della
logica classica. Pertanto le inferenze che sono derivabili da questo tipo di ragionamento
saranno perentorie, rispettivamente vere oppure false. Pensando all’esempio di Tweety,
nel primo caso non vi era alcun genere di evidenza che potesse indurre a ritenere che
Tweety in quanto uccello non fosse in grado di volare; il ragionamento di default
asserisce che se è possibile derivare una conclusione allora quella conclusione deve
essere presa come vera. A differenza di ciò che riteneva McCarthy[1959], il
ragionamento di default vuole esprimersi attraverso enunciati ordinari della logica
matematica perchè traendo una conclusione suppone che essa sia assolutamente vera nel
momento in cui è inferita. Nel caso in cui si dovesse verificare che la conclusione è
inattendibile basterebbe combiarne il valore di verità, ma fino a quel momento essa deve
venir considerata come accettabile e corretta senza gradi, quindi vera.
D’altro canto in questo modo, il ragionamento di default permette di stabilire
una base di informazioni che rappresenta in maniera coerente le nostre conoscenze.
Saranno espunte le ambiguità derivate dalla contraddizione tra due asserti con valori di
verità opposti e saranno mantenute tutte quelle che riescono ad ampliare le conoscenze
in modo non contraddittorio rispetto alle credenze cui assolutamente non siamo disposti
a rinunciare. Altri tipi di ragionamento di senso comune invece, tendono a mantenere
ogni conoscenza, magari sotto la condizione di attenuarne il valore di affidabilità,
contribuendo così a conservare latenti le eventuali contraddizioni insite nella base di
conoscenze. Ecco perchè l’Intelligenza Artificiale ha trovato e trova nel ragionamento
di default un tipo di ragionamento completo, cioè una descrizione esaustiva, sebbene
anche non dettagliata, di quel processo che porta un soggetto a trarre una conclusione.
Questo perchè evidentemente l’IA non può permettersi sistemi che presentino la benché
minima ambiguità e perchè anche nell’evoluzione di un sistema di rappresentazione

5
G. Fisher-Servi, Quando l’eccezione è la regola, le logiche non monotone, pag. 109, Milano:
McGrawHill, 1990.
delle conoscenze, quindi dell’eventuale falsificazione di alcuni asserti, essa necessita di
stabilire perentoriamente la verità o la falsità delle premesse del ragionamento. Infatti
premesse con gradi di attendibilità costituirebbero una mole di dati ingombrante e, con
riferimento ad una situazione reale, troppo complessa per venire elaborata da una
macchina che si propone di essere concisa quanto attendibile 6 .
Nelle sezioni seguenti mostreremo come il ragionamento di default sia
esprimibile formalmente attraverso una logica di default che a sua volta si appoggia
sulla logica del primo ordine; di come goda di particolari proprietà che lo rendono un
ragionamento semi-monotonico e infine di come esistano particolari schemi d’inferenza
detti default normali estremamente utili per intraprendere la formalizzazione del
ragionamento ed ottenere una rappresentazione logica funzionale, elegante ed
economicamente soddisfacente.

2. La logica come forma di rappresentazione della conoscenza

Il ragionamento di default ha delle caratteristiche estremamente interessanti a


livello intuitivo, tali da farci presumere che, vista la semplicità e l’immediatezza
dell’approccio sia possibile tradurre questo tipo di processo in maniera formale
attraverso un sistema di rappresentazione della conoscenza. Rappresentare dunque
“componenti dell’informazione che saranno usati in un successivo processo di
ragionamento” 7 . Per ottenere questo risultato abbiamo la necessità di creare un sistema
che ci permetta di realizzare un’interazione dinamica tra le parti costituenti
l’informazione. Una rappresentazione statica infatti, è in grado di rappresentare
esclusivamente conoscenze statiche, risultato assolutamente difforme dalle necessità
evolutive di un processo di ragionamento argomentativo che riutilizza conoscenze
passate e ne aggiunge di nuove.
Il ragionamento di default dicotomizza le conoscenze in vere e false allo stesso
modo di come avviene nella logica del primo ordine; la logica dunque costituisce un
approccio al problema della rappresentazione della conoscenza perchè riguarda il
linguaggio, il mezzo di esprimere informazioni e valutazioni sulle proposizioni. Essa è
quindi un sistema di conoscenza, poiché come tale possiede sia i mezzi che le capacità
6
Cfr. W. S. Jiang, Commonsense reasoning in Prolog, ACM, 1987.
7
P. Besnard, An Introduction to Default Logic, pg. 4, Springer-Verlag, 1988.
per comunicare informazioni. Inoltre essa fornisce dei criteri per stabilire se un
ragionamento sia assurdo, contraddittorio oppure coerente ed inferibile. Presumiamo
dunque che queste qualità siano sufficienti per ottenere ciò che desideriamo: tradurre un
ragionamento comune in modo formale; ed in particolare riteniamo che la Logica dei
Predicati sia in grado di fornire tutti gli strumenti necessari atti a compiere questa
operazione. L’apparente discrasia parrebbe derivare dal fatto che tale logica è di per sé
monotona, mentre il ragionamento di default è decisamente non monotono per le
considerazioni che abbiamo tratto prima. Ma , come afferma Fisher-Servi, “costruire un
sistema logico in grado di affrontare i problemi posti dalla non monotonia non significa
né cambiare linguaggio, né alterare le procedure logiche basilari; richiede piuttosto la
definizione di nuovi concetti di inferenza, che usino come unico ausilio l’armamentario
logico standard. [...] ciò significa come, nel formalizzare i principi di prima categoria,
un soggetto possa legittimamente conseguire delle conclusioni sotto l’ipotesi che il
contesto attuale rappresenti il contesto completo per compiere delle inferenze” 8 . Ecco
dunque che, reinterpretando in forma nuova la logica dei predicati siamo in grado di
ottenere la formalizzazione del nostro tipo di ragionamento in una logica di default.
Abbiamo infatti sia risolto il problema della monotonicità che il problema dell’assenza
di informazioni complete riguardo il nostro processo di ragionamento. Si tratta dunque
di costringere le procedure della logica del primo ordine ad operare in un contesto più
ampio dove non vi sono più le garanzie di validità per le inferenze tratte, ma al
contempo dove si presume che ciò sia conosciuto ed accettato dal fruitore di tale
sistema. Otteniamo il risultato sperato di avere un sistema formale in un ambito di
applicazione non formale o parzialmente formale come quello argomentativo comune.
Inoltre, scegliere come sistema di rappresentazione della conoscenza il linguaggio
logico ci permette di sfruttare le peculiari caratteristiche di capacità espressiva e di
semplicità, dove la seconda proprietà è piuttosto evidente in quanto la logica necessita
solo di una base canonica di 3 simboli da cui è in grado di derivare gli altri 9 . Il

8
G. Fischer-Servi, Quando l’eccezione è la regola, le logiche non monotone, pag. 109, Milano:
McGrawHill, 1990.
9
Come nota giustamente G. Lolli nella sua Introduzione alla logica formale la base canonica è costituita
dai tre simboli booleani di negazione, congiunzione e disgiunzione in quanto è così esteticamente
migliore e più fruibile. Infatti sia la congiunzione che la disgiunzione possono essere espresse per mezzo
dei due restanti connettivi.
linguaggio naturale, specialmente quello italiano, conta più di trenta simboli sotto forma
di lettere, spazi, interpunzioni e simboli speciali.
La logica formale è in sé costituita da due parti, rispettivamente la parte
sintattica e la parte semantica. La prima sezione descrive la logica come un sistema di
simboli, dove il linguaggio logico è un sottoinsieme dei termini generati da un alfabeto
secondo un preciso schema di costruzione. La seconda sezione riguarda invece i modelli
che sono inferibili da una teoria assiomatica(un insieme di formule dette assiomi) 10 .
A sua volta due almeno sono le proprietà che appartengono alla logica formale e
per le quali abbiamo interesse: esse sono la coerenza e la completezza semantica. La
coerenza o completezza presuppone che ogni formula ottenuta applicando le regole di
inferenza sugli assiomi della teoria sia vera in tutti i modelli della teoria stessa. Ciò
significa che la teoria per essere valida non deve poter dare adito a contraddizioni
reciprocamente tra le inferenze che vengono tratte dagli assiomi della teoria. Se così
fosse essa sarebbe assurda ed inutile ed evidentemente non avrebbe alcuna ragion
pratica di essere utilizzata nel formalizzare il ragionamento di default. “La completezza
semantica presuppone che in una teoria i teoremi inferibili siano esattamente le formule
vere in ogni suo modello” 11 .

2.1 La logica del primo ordine

Volendo costituire un sistema di rappresentazione della conoscenza ed avendo


scelto di utilizzare la Logica del Primo Ordine dobbiamo per ottenere un sistema
formale, formalizzarne le parti costituenti, ovvero il linguaggio e la capacità di dare
valutazioni e trarre conclusioni. Esistono differenti linguaggi per esprimere la logica del
primo ordine, ma sostanzialmente tutti utilizzano lo stesso metodo di costruzione del
linguaggio e gli stessi simboli speciali. E’ necessario ricostruire dalle sue basi la logica
del primo ordine per poterne usufruire nella fondazione della nostra logica di default.

10
Cfr. D. Palladino, Corso di logica – Introduzione elementare al calcolo dei predicati, cap. 5, Roma:
Carrocci, 2003.
11
G. Lolli, Introduzione alla logica formale, pg. 106, Bologna: Il Mulino, 1991.
2.1.1 Linguaggi del primo ordine

In un sistema formale come quello logico è necessario cominciare colla


definizione degli elementi primi che ne costituiscono l’ossatura, come per qualunque
linguaggio essi sono l’insieme di simboli che ne permettono la scrittura e la lettura. Il
nostro sistema sarà tanto migliore quanto meno spazio lascerà all’interpretazione ed
all’ambiguità della scelta che potrebbe derivare dal presentarsi di più possibilità
interpretative.

Def. 1.1 Un alfabeto di riferimento per un linguaggio del primo ordine consiste di

i. ¬ ∧ ∨ ⇒ ⇔ ∀ ∃ , ( ) (simboli logici)
ii. x0,x1 x2... (variabili individuali)
0 1 0 1
iii. f ,f ,f ,f
0 0 1 1
... (simboli funzionali)
0 1 0 1
iv. P , P , P , P ...
0 0 1 1
(simboli predicativi)

Il numero in apice di un simbolo funzionale o predicativo indica l’arità del simbolo


stesso; funzioni con arità zero sono dette costanti individuali, e sono anche denotate con
ci , predicati con arità zero sono detti costanti proposizionali. Nel caso in cui non si
presentasse ambiguità è possibile omettere gli apici rispettivamente per i simboli
funzionali e predicativi.

Def. 1.2 Le parole di un linguaggio sono una sequenza finita di simboli ottenute
concatenando simboli e sequenze di simboli. L’operazione di concatenazione sarà
indicata scrivendo semplicemente i simboli l’uno di seguito all’altro, da sinistra verso
destra, come nelle scritture indoeuropee. Tra le parole, quelle che consideriamo ben
formate, si dividono in due categorie, quella dei termini, corrispondenti ai nomi, e
quella delle formule,corrispondenti alle frasi.

Def. 1.3 L’insieme dei termini è il più piccolo insieme con le seguenti proprietà:
i. Ogni parola costituita da una sola variabile è un termine.
ii. Ogni parola costituita da una sola costante è un termine.
n
iii. Se f i
è un simbolo funzionale ad n-argomenti e t1,...,tn sono termini allora
n
anche f i
( t1,...,tn) è un termine.

n n
Def. 1.4 Una formula atomica è una parola della forma P i
( t1,...,tn) dove P i
è un

simbolo predicativo ad n-argomenti e t1,...,tn sono termini. L’insieme delle formule è il


più piccolo insieme di parole con le seguenti proprietà:
i. Le formule atomiche sono formule.
ii. Se A è una formula, anche (¬Α) è una formula.
iii. Se A e B sono formule, anche (A ∧ B), (A ∨ B), (A ⇒ B) sono formule.
iv. Se A è una formula ed x è una variabile, anche (∀x A) e (∃x A) sono formule.

Def. 1.5 Una formula A è un enunciato se non contiene variabili libere. 12

Def. 1.6 Data una formula A tali che le sue variabili libere siano A={ x1,...,xn , y },

l’enunciato definito secondo Skolem di f A, x1,..., xn


è:

∀ x1,...,xn [ ∃y A(x1,...,xn) ⇔ A(x1,...,xn, f (x1,...,xn)].


A, x 1 ,..., x n

Le sentenze definite secondo Skolem sono utilizzate per fornire un significato ad ogni
frase che possa essere espressa con una formula. Il processo di sostituzione di una
formula non universale con una formula universale è detto skolemizzazione 13 .

La relativa parte semantica per i linguaggi del primo ordine riguarda i modelli
che possono essere costruiti al fine di ottenere un’interpretazione dei simboli del
linguaggio. Infatti, abbiamo la necessità non solo di poter rappresentare le nostre
conoscenze, ma allo stesso tempo di valutare queste conoscenze. Tali regole vengono

12
G. Lolli, Introduzione alla logica formale, pg. 38, Bologna: Il Mulino, 1991.
13
Abbiamo qui utilizzato una definizione per quanto riguarda gli enunciati di Skolem, consci del fatto che
nei testi di logica tale definizione è in realtà un teorema del quale andrebbe presentata una formale
dimostrazione. Tuttavia per semplicità e concordemente con Besnard[1988] abbiamo optato per una
soluzione più semplice e rapida.
quindi fornite con lo scopo di stabilire se un particolare costrutto riflette correttamente il
significato di una formula del linguaggio.

Def. 1.7 L’insieme dei valori di verità per la logica del primo ordine è un insieme
costituito da due elementi V={v, f} dove v sta per vero ed f per falso.

Def. 1.8 Un’interpretazione del primo ordine ϕ è costituita da un insieme non vuoto
ω, detto universo di ϕ, assieme ad una funzione che assegni ad ogni simbolo funzionale

f una funzione del tipo f : ωn→ω ed ad ogni simbolo predicativo P una relazione

del tipo P : ωn→ {t, f}. 14

Un’interpretazione ϕ sarà dunque un modello di enunciati del primo ordine A, se


l’interpretazione è vera per tutti i casi in cui A è vera.

Def. 1.9 Un enunciato è valido se è vero in tutte le interpretazioni del primo ordine ed è
soddisfacibile se è vero in almeno una delle interpretazioni del primo ordine.

Def. 1.10 Un enunciato A è una conseguenza o un teorema di un insieme F di enunciati


se esiste una sequenza di formule finita del tipo A0,...,An tali che:
i. An è A.
ii. Per ogni i, Ai soddisfa almeno una delle seguenti condizioni:
1. Ai è un enunciato di F.
2. Ai è concluso tramite uno dei modi di derivazione del linguaggio del primo
ordine.
3. Ai è concluso tramite generalizzazione da Aj dove j < i.
4. Ai è concluso tramite applicazione del modus ponens da Ak e Aj dove j < i e
k < i.
Quando un enunciato A è conseguenza di una teoria T, ogni sequenza del tipo sopra è
chiamata prova di A secondo T e si dice che A è derivabile da T. Tale rappresentazione

14
Tale funzione è altamente non iniettiva ma è suriettiva, quindi non è in alcun modo invertibile come è
facilmente apprezzabile a livello intuitivo.
può essere scritta come A ∈ Th(T) dove Th(T) ed è detta chiusura deduttiva di T oppure
può essere scritta come T A.

Th. 1.1 (Deduzione per la logica del primo ordine)


Per ogni teoria T e per tutti gli enunciati A e B:
T ∪ {Α} B se e solo se T A⇒Β. 15

Th. 1.2 (Correttezza per la logica del primo ordine)


Se un enunciato A è conseguenza di una teoria T allora A è vero in tutti i modelli di T. 16

Th. 1.3 (Completezza per la logica del primo ordine)


Se un enunciato A è vero in tutti i modelli di T allora A è una conseguenza di T. 17

2.1.2 Introduzione della non monotonicità nella Logica del Primo Ordine

La logica del Primo Ordine fu originariamente pensata e costruita per


formalizzare la nozione di “prova matematica”. Non deve perciò stupire che certi aspetti
del ragionamento umano non cadano entro le competenze di questo tipo di logica, e che
sia necessario estendere le attribuzioni e le proprietà al fine di ottenere una migliore
rappresentazione formale del ragionamento di senso comune. Queste mancanze sono
state la motivazione per la quale si sono costruite le cosiddette logiche non classiche; in
particolare, le logiche non monotòniche furono introdotte (Reiter[1980]) quando
apparve evidente che il ragionamento di default violava una proprietà fondamentale
della logica del primo ordine detta monotonia.

Th. 1.4 (Monotonicità per la logica del Primo Ordine)


Date due teorie assiomatiche T ed S,
se T ⊆ S allora Th(T) ⊆ Th(S). 18

15
P. Besnard, An Introduction to Default Logic, pg. 25, Springer-Verlag, 1988.
16
Ibid, pg. 26.
17
Ibid, pg. 26.
18
Ibid, pg. 27.
In altre parole questo teorema garantisce che, aggiungendo nuovi assiomi ad una teoria
già precostituita tutti i teoremi che compongono la teoria stessa saranno preservati. Allo
stesso tempo, ogni teorema della teoria iniziale sarà un teorema della teoria allargata.

Ex. 1.1 Consideriamo le seguenti informazioni riguardo gli uccelli, poste in forma di
una teoria assiomatica T:

Uccello(Tweety)
Struzzo(Clyde)
∀x Struzzo(x) ⇒ Ucello(x) ∧ ¬Vola(x)

E’ generalmente accettato che: “dato un qualunque uccello, si ritiene che esso sia in
grado di volare, a meno che non si abbia qualche evidenza contraria”, ciò significa
dunque che avendo un uccello e non avendo evidenza contraria al fatto che possa volare
dobbiamo concludere che l’uccello effettivamente vola. Quindi formalmente:

Dato T Ucello(x), se T ¬Vola(x) allora T Vola(x)

dove x è una variabile che sta per qualunque termine e denota la relazione di
conseguenza formale. Siamo particolarmente interessati al caso in cui ci sia un uccello
per il quale sia impossibile determinare l’ incapacità di volare, sebbene, di fatto,
concludiamo che l’uccello non possa volare. Formalmente:

T Ucello(Tweety)
T ¬Vola(Tweety)
T ∪ {¬Vola(Tweety)} ⊥

ed applicando la regola sopra otteniamo T Vola(x) totalmente differente dalla


relazione della logica del primo ordine, infatti poiché essa è monotonica avremmo
che: se T Vola(Tweety) allora T ∪ {¬Vola(Tweety)} Vola(Tweety) e per il
teorema di deduzione logica T ∪ {¬Vola(Tweety)} ⊥ , ma questo contraddice
l’assunzione che sia possibile il caso in cui Tweety non possa volare. Come si può
vedere l’assenza di certe informazioni (Tweety non può volare) è stata ricompresa nella
teoria al fine di ottenere una conclusione (Tweety vola); questo è un esempio di
ragionamento di default, e nella formalizzazione abbiamo l’evidenza di come esso sia
assolutamente non monotònico. Per introdurre la non monotonicità nell’ambito della
logica del primo ordine dobbiamo dunque estenderne le proprietà che essa possiede
mantenendo intatte quelle caratteristiche come la semplicità e l’affidabilità che ne hanno
determinato la scelta. Bisogna perciò che la relazione di conseguenza non monotonica
preservi la relazione di deduzione della logica del primo ordine ricomprendendola nel
suo insieme di regole.
L’utilizzo di logiche non monotòniche come modello per i ragionamenti di
default è stato criticato sotto vari aspetti. Innanzitutto per una ragione tecnica, in
particolare da Kramosil[1975] in quanto egli considera le logiche non monotòniche
“inconsistenti o attualmente monotoniche” 19 ; secondariamente per una ragione di
irriducibilità del ragionamento di default ad una formalizzazione logica. Tuttavia è
evidente che la prima istanza sia scorretta come mostra l’esempio sopra, infatti abbiamo
ottenuto un ampliamento conservativo della logica del primo ordine, superando il
concetto di monotònicità. Ciò non ha destabilizzato la nostra capacità di trarre inferenze
secondo i modelli fornitici dal quel tipo di logica, anzi piuttosto l’ha fortificata, nella
misura in cui ha reso la nostra formalizzazione ancor più compatibile con una
rappresentazione delle conoscenze. Allo stesso tempo è evidente come non ci sia la
pretesa di formalizzare in modo esaustivo un tipo di ragionamento comune ma
esclusivamente di interpretare il funzionamento di questo processo, come processo
conoscitivo, attraverso una formalizzazione. Infatti possiamo considerare che, proprio
perché è un processo conoscitivo, consta di una relazione con il linguaggio e deve poter
essere espresso attraverso tale linguaggio altresì non potremmo considerarlo come
razionale. Infine l’utilizzo di un modello logico ci permette di cogliere meglio lo
svolgimento dello stesso ragionamento, individuandone proprietà e metodi d’azione.

19
I. Kramosil, A Note on Deduction Rules with Negative Premises, pg. 53, IJCAI 1975.
2.2 La logica di default

2.2.1 Introduzione

Come suggerito dal nome, la logica di default [Reiter 1980] intende sviluppare
un sistema di rappresentazione formale del ragionamento di default. Per questo fine essa
introduce un tipo di regole di inferenza non monotònica dette default, del genere:

UCCELLO( x) : VOLA( x)
VOLA( x)

che deve essere interpretata come: “se x è un uccello e non esiste evidenza contraria al
fatto che x voli allora concludi che x vola”. Applicando questo default alla teoria T
presa in esempio sopra, abbiamo la possibilità di concludere che Vola(Tweety) e dagli
assiomi dedurre che ¬Vola(Clyde); ma introducendo Vola(Clyde) andremmo a
compromettere la coerenza della teoria e l’applicazione del default sarebbe bloccata.
Tuttavia, considerare la coerenza come rispetto per gli assiomi della teoria in esame, si
dimostra in alcune situazioni insufficiente per conservare la globale coerenza della
teoria.

Ex. 1.2 Consideriamo perciò il fatto che ogni tifoso sia contento quando il suo giocatore
favorito ottenga una brillante prestazione e sia infelice quando viene sconfitto;
rappresentando questa credenza con un default otteniamo:

SCONFIGGE(x, y) ∧ TIFA(z, y) : SCONTENTO(x)


SCONTENTO(x)

allo stesso modo sembra naturale usare un default del tipo:

SCONFIGGE(y, z) ∧ SCOMMETTE(x, y) : FELICE(x)


FELICE(x)
al fine di esprimere che uno scommettitore è felice se la sua scommessa ha un buon
esito, ovvero se risulta vincente; è inoltre evidente come il fatto di essere felice sia un
sentimento opposto a quello di infelicità dunque:

∀x ¬ FELICE(x) ⇔ SCONTENTO(x)

Sapendo che John è un tifoso di Becker che tuttavia ha scommesso contro lo stesso
Becker in favore della vittoria del suo avversario Lendl otteniamo che:

TIFA(John, Becker ) ∧ SCOMMETTE( John, Lendl) ∧ SCONFIGGE( Lendl, Becker) : ?


?

Cosa possiamo concludere riguardo alla felicità di John? Se utilizzassimo il primo


default, dovremmo concludere che John è infelice perchè il suo beniamino è stato
sconfitto, tuttavia scegliendo il secondo default dovremmo concludere che John è felice
poiché ha vinto la sua scommessa. Non possiamo nemmeno concludere che John sia
contemporaneamente felice ed infelice perchè è uno stato non concepibile partendo
dall’assunzione di incompatibilità tra i due sentimenti formulati sopra. Questo è il
motivo per il quale non è sufficiente considerare la coerenza dei default con gli assiomi.
Sia FELICE(John) che SCONTENTO(John) sono infatti coerenti con le premesse dei
default: ∀x ¬ FELICE(x) ⇔ SCONTENTO(x), SCONFIGGE(Lendl, Becker) e
TIFA(John, Becker) ∧ SCOMMETTE(John, Lendl). Pertanto non è possibile
concludere nulla riguardo allo stato di John, bisogna perciò considerare rispettivamente
che: applicando dei default ad una stessa teoria possiamo ottenere delle conclusioni
incompatibili, e che, cosa maggiormente interessante, i default possono essere costruiti
sulla base di altri default in un processo iterativo.

Nell’esempio precedente abbiamo utilizzato, nella nostra deduzione per default,


solamente delle costanti individuali, al posto di variabili. Tuttavia un’applicazione dei
default può essere resa anche attraverso i predicati in cui compaiono delle variabili
libere, assomigliando così alla deduzione della logica del primo ordine. Entrambe infatti
esprimono una relazione tra le proposizioni. Il significato della rappresentazione logica
resta inalterato anche se visto in questo modo, attraverso la skolemizzazione,
l’applicazione dei default conserva una struttura omogenea.

Ex. 1.3 Una proposizione del tipo “Tutti gli uomini amano una donna” può assumere
due significati:
i. Esiste una donna che è amata da tutti gli uomini.
ii. Per ogni uomo, esiste una donna che è amata da quell’uomo.
Usando la skolemizzazione, questi due significati sono suscettibili di rappresentazione
attraverso l’utilizzo di un default:

UOMO(x) : AMA(x, Aguilera)


,
AMA(x, Aguilera)

UOMO(x) : AMA(x, amata(x)) 20


.
AMA(x, amata(x))

Abbiamo così evidentemente eliminato l’ambiguità che sarebbe sorta preponendo al


predicato “Ama” un quantificatore esistenziale. Notiamo inoltre che, applicando un
default si devono stabilire delle precondizioni, dei preconcetti, ovvero si deve fondare
un sistema omogeneo di credenze non reciprocamente incompatibili. Le conclusioni alle
quali perverremo non saranno quindi contraddittorie rispetto alle precondizioni. E’
evidente come ciò distingua un buon ragionamento da un cattivo ragionamento ed allo
stesso modo una buona rappresentazione logica da una peggiore. Pertanto dovremo:
i. Rifiutare due credenze se esse si giustificano reciprocamente ma non sono
giustificate in altre modo.
ii. Ogni insieme di credenze per essere ammissibile non deve essere contraddittorio
rispetto agli assiomi della teoria
iii. Un insieme di credenze deve essere deduttivamente chiuso.

20
Il primo ed il secondo default rappresentano rispettivamente la prima e la seconda proposizione,
disambiguate con l’uso del procedimento di skolemizzazione.
2.2.2 Formalizzazione della logica di default

Consideriamo che ogni linguaggio del primo ordine è un linguaggio adatto a


sviluppare la logica di default; pertanto assumeremo di tale linguaggio i termini, le
formule e le proprietà che abbiamo sopra enumerato.

Def. 1.11 Un default δ è ogni schema del tipo

A : B1 ,..., Bn
C
dove:
i. A, B1,...,Bn, C sono proposizioni.
ii. A è chiamato prerequisito del default δ.
iii. B1,...,Bn è chiamato giustificazione del default δ.
B

iv. C è chiamato conseguenza del default δ.

Def. 1.12 Sia Δ un insieme di default, definiamo:


i. PRE(Δ) l’insieme dei prerequisiti dei default di Δ.
ii. GIU(Δ) l’insieme delle giustificazioni dei default di Δ.
iii. CONS(Δ) l’insieme delle conseguenze dei default di Δ.

Nella sezione precedente avevamo introdotto i default come regole il cui proposito fosse
quello di estendere la sottostante teoria incompleta del primo ordine; essi permettono
infatti di coadiuvare e completare la teoria iniziale con alcune proposizioni che possono
essere ritenute plausibili.

Def. 1.13 Una teoria di default è una coppia ordinata del tipo (A, Δ) dove A è un
insieme di proposizioni universali e Δ è un insieme di default tale che ogni elemento di
CONS(Δ) sia una proposizione universale.

Vista la definizione di teoria di default possiamo perciò sostenere che gli elementi A
della teoria siano ciò che chiamiamo assiomi di una teoria. L’insieme delle proposizioni
A rappresenta le nostre conoscenze mentre l’insieme dei default Δ rappresenta la nostre
potenziali credenze.

Def. 1.14 Dati due insiemi di proposizioni T ed S ed un default del tipo

A : B1 ,..., Bn
δ= ,
C

con la dicitura δ applicato a T rispetto ad S, denotato δ∇ ST , intendiamo che:

se A ∈ T e ¬B1,...,Bn ∉ S allora C ∈ S.
B

Si intende che S corrisponda agli assiomi di T con l’aggiunta delle conseguenze derivate
dall’applicazione dei default. Ritornando alla definizione di default data ad inizio
capitolo abbiamo la necessità di sostituire la rappresentazione delle giustificazioni come
sequenza di proposizioni con un’unica proposizione. Tale sostituzione è permessa dal
teorema seguente.

Th. 1.5 Per ogni default del tipo:

A : B1 ,..., Bn
dove n > 0
C

esiste una proposizione F tale che date due teorie assiomatiche T ed S dove S è
deduttivamente chiusa,
A: F A : B1 ,..., Bn
∇ sT se ∇ sT
C C

Def. 1.15 Data una teoria di default ς = (A, Δ), se S è un insieme di proposizioni, allora
Λ s (S) è il più piccolo insieme che soddisfa:

i. A ⊆ Λ ς (S)

ii. Th( Λ ς (S)) = Λ ς (S)


iii. se δ ∈ Δ allora δ ∇ s Λς (S)

Informalmente Λ ς (S) è il più piccolo insieme di credenze che possiamo avere riguardo

ad S, dove quest’ultima indica quali siano le giustificazioni ammissibili per le nostre


credenze.

Ex. 1.4 Sia Δ costituito dai due seguenti default:

SCONFIGGE(Lendl, Becker) ∧ TIFA(John, Becker) : SCONTENTO(John)


SCONTENTO(John)

SCONFIGGE(Lendl, Becker) ∧ SCOMMETTE(John, Lendl) : FELICE(John)


FELICE(John)
e sia A costituita dai seguenti assiomi:

i. SCONFIGGE(Lendl, Becker)
ii. TIFA(John, Becker) ∧ SCOMMETTE(John, Lendl)
iii. ∀x ¬ FELICE(John) ⇔ SCONTENTO(John)

Qui Λ ς (A) rappresenta la chiusura deduttiva della teoria assiomatica costituita dagli

assiomi A assieme alle conclusioni dei default tratti, rispettivamente FELICE(John) e


SCONTENTO(John), i quali sono evidentemente incoerenti. Gli insiemi delle formule
che risultano applicando i default dovrebbero essere “stabili” a differenza di come
mostra questo caso; un naturale criterio di stabilità è fornito dalla nozione di punto fisso.
“I punti fissi aggiungono ai dati della base, tutti gli enunciati possibili in accordo sia con
la chiusura deduttiva, sia con i default previsti dalla stessa base; nel contempo si
controlla che non si aggiungano delle assunzioni tra di loro incoerenti” 21 .

Def. 1.16 Un insieme di proposizioni E è un’estensione per una teoria di default ς = (A,
Δ) se E è un punto fisso dell’operatore Λ ς .

21
Gisèle Fischer Servi, Quando l’eccezione è la regola, le logiche non monotone, pag. 189, Milano:
McGrawHill, 2001.
Ex. 1.5 Sia Δ costituito dai due seguenti default:

Amico(Alan, Bob) ∧ Amico(Bob, Chris) : Amico(Alan, Chris)


,
Amico(Alan, Chris)
Amico(Alan, Chris) ∧ Amico(Chris, Dan) : Amico(Alan, Dan)
Amico(Alan, Dan)

e sia A costituito dai seguenti assiomi:

i. AMICO(Alan, Bob)
ii. AMICO(Bob, Chris)
iii. AMICO(Chris, Dan)
iv. ¬AMICO(Bob, Dan)
v. AMICO(Alan, Chris) ⇒ ¬AMICO(Alan, Dan)

Allora S = Th(A ∪ { AMICO(Alan, Chris) }) è un’estensione della teoria (A, Δ).

2.2.3 Proprietà delle Teorie di Default

Elenchiamo, nell’ambito della formalizzazione della logica di default le


proprietà principali delle quali gode questa logica.

Th. 1.6 Sia E un’insieme di proposizioni ed ς = (A,Δ) una teoria di default. Sia inoltre
i. E0 = A.
A : B1,..., Bn
ii. Ei+1 = Th(Ei) ∪ { C / ∈ Δ dove A ∈ Ei e ¬Βi ∉ Ε, per ogni
C
i={1,…,n }.

allora E è un’estensione della teoria ς = (A, Δ) se e solo se E = U i =0
Ei . 22

22
P. Besnard, An Introduction to Default Logic, pg. 44, Springer-Verlag, 1988.
Questo teorema semplifica la comprensione intuitiva di cosa sia un’estensione, poiché
fornisce una metodologia per costruire le estensioni stesse di una teoria di default.

Th. 1.7 Una teoria di default ς = (A, Δ) ha un’estensione incoerente se e solo se


l’insieme delle proposizioni di A è incoerente. Se si verifica che la teoria abbia
un’estensione incoerente allora la teoria stessa non avrà altre estensioni. 23

Th. 1.8 Sia E è un’estensione della teoria ς = (A, Δ). Se S ⊆ E allora E è anche
un’estensione della teoria di default υ = (A ∪ S, Δ). 24

Questo teorema può essere interpretato asserendo che gli assiomi di una teoria di default
godono di una sorta di proprietà d’assorbimento rispetto alle conclusioni che
l’estensione genera. Infatti il teorema garantisce che quando una conclusione tratta da
un default viene confermata, tutto l’insieme delle credenze che dipendono da quella
conclusione possono essere mantenute; “se qualcosa di previsto accade allora si
dovranno presumere tutte le conseguenze previste in relazione all’accadimento
dell’evento, seppur al momento non confermate” 25 .

2.3 I default normali

Per il teorema citato sopra, se un teoria di default ha un’estensione incoerente


allora essa non avrà altre estensioni. Ma determinare la classe delle teorie di default che
posseggono un’estensione è essenziale poiché le teorie senza estensibili rappresentano
la peggior forma di incoerenza: il concetto di conseguenza non è definibile per queste
teorie. Questo è il motivo per il quale è necessario formalizzare dei default che non
corrano tale rischio. Si deve a Reiter[1980] tale merito con l’introduzione nel linguaggio
dei cosiddetti default normali.

23
Ibid, pg. 46.
24
Ibid, pg. 47.
25
Ibid, pg. 4.
A: B
Def. 1.17 Un default si dice normale se è della forma . Pertanto una teoria di
B
default (A, Δ) si dirà normale se tutti i default Δ che la compongono sono normali. 26

Il risultato fondamentale di questa introduzione consiste nel fatto che ogni estensione di
una teoria di default normale non deve essere ridotta o diminuita quando sono aggiunti
alla teoria nuovi default. Questa proprietà è detta di semi-mononicità.

Ex. 1.6 La teoria di default definita da A = { AMICO (Alan, Bob), AMICO(Bob, Chris),
AMICO(Chris, Dan), ¬AMICO(Bob, Dan)} e

AMICO(Alan, Bob) ∧ AMICO(Bob, Chris) : AMICO(Alan, Chris)


Δ={ },
AMICO(Alan, Chris)

ha un’unica estensione E = Th( A ∪ {AMICO(Alan, Chris)}). Aggiungendo un default


normale:

Amico(Alan, Chris) ∧ Amico(Chris, Dan) : Amico(Alan, Dan)


δ= ,
Amico(Alan, Dan)

otteniamo un’unica estensione E’ contenente E ovvero E’1= Th( A ∪ {AMICO(Alan,


Chris), AMICO(Alan, Dan)}).

Th. 1.9 Ogni teoria di default normale ha almeno un’estensione. 27

Questo è proprio il risultato che ci premeva ottenere. Ora possiamo estendere in maniera
indefinita la nostra teoria a seconda di come la situazione che analizziamo si evolve.
Sappiamo infatti che se una teoria di default ha più estensioni esse sono tra loro

26
Fischer-Servi, in Quando l’eccezione è la regola, le logiche non monotone, afferma che per default
normali si possano intendere anche quelli i cui letterali che costituiscono l’insieme delle giustificazioni
possano essere plurime. Significa che possono essere del tipo B1,...,Bn . In realtà Reiter non fa menzione
di tale possibilità, anche perché è possibile dimostrare che esiste sempre una proposizione equivalente
all’insieme delle proposizioni che costituiscono le giustificazioni.
27
P. Besnard, An Introduction to Default Logic, pg. 44, Springer-Verlag, 1988.
incompatibili ed è proprio ciò che abbiamo reputato essere il requisito fondamentale di
questo tipo di rappresentazione. I default, dicevamo, hanno a che fare con il vero ed il
falso e non con la probabilità. Ecco perchè se vi sono due possibili estensioni esse
debbono essere necessariamente incompatibili, una vera e l’altra falsa rispetto ad una
particolare situazione. Abbiamo ottenuto cioè la capacità di descrivere l’evoluzione di
un ragionamento di senso comune. Non solo infatti siamo in grado di rappresentarlo
formalmente ma altresì possiamo determinare se la progressione logica del pensiero sia
coerente con le assunzioni iniziali, se cioè stiamo procedendo correttamente,
preservando le nostre credenze.

Ex. 1.7 Ritornando all’esempio del tifoso nonché scommettitore John, immaginiamo
che mentre sta tornando a casa qualcuno gli offra una bicicletta, e ciò come capita
normalmente, lo renda felice. Pertanto la teoria di default (A, Δ) verrebbe arricchita in
tale modo:
∃xREGALA( x, John, Bicicletta) : FELICE ( John)
i. Α Δ viene aggiunto
FELICE ( John)
ii. Ad A viene aggiunta la proposizione ∃x REGALA(x,John,Bicicletta)

Le due estensioni della teoria, una derivata dall’aggiunta della conclusione


FELICE(John) e l’altra derivata dall’aggiunta della conclusione SCONTENTO(John),
restano entrambe valide, tuttavia la prima, rispetto a questa situazione, ci mette in grado
di trarre un’inferenza.

Def. 1.18 Sia ς = (A, Δ) una teoria di default normale e sia A una proposizione. Una
sequenza finita del tipo Δ0,Δ1,...,Δn è detta prova di default di A rispetto alla teoria ς =
(A, Δ) se:
i. A ∪ CONS(Δ0) A
ii. A ∪ CONS(Δι) F per tutti gli F ∈ PRE(Δi-1)
iii. Δn = ∅

iv. U i =0
CONS(Δι) è coerente rispetto ad A
Abbiamo ora una precisa definizione di conseguenza attraverso quella di prova di
default; è necessario dunque indagare le proprietà delle prove di default per determinare
la natura e il senso dello stesso ragionamento non monotònico. Infatti, studiando
l’influenza dell’azione di aggiornamento e aggiunta di nuovi assiomi e conclusioni,
saremo in grado di comprendere come la logica di default riesca a sostenere il peso di
rivedere le conoscenze.

Def. 1.19 Se un enunciato A ha una prova per default PA=Δ0,...,Δn con rispetto ad una
teoria di default normale (A, Δ) allora il supporto di PA è:
n
DS ( PA ) = Ui = 0 Δ i .

Questa definizione è estremamente importante, bisogna pertanto darne alcune


spiegazioni. Innanzitutto il supporto di una prova è semplicemente l’insieme di tutti i
default che sono utilizzati dalla prova stessa. Secondariamente, tali default formano la
base per almeno un’estensione.

Th. 1.10 Sia (A, Δ) una teoria di default normale e sia A un enunciato, allora A ammette
una prova di default rispetto alla teoria (A, Δ) se e solo se A è un’estensione della teoria
stessa. 28

Questo teorema, che possiamo chiamare di semi-completezza, è il primo passo verso


un’adeguata strutturazione del rapporto tra una teoria formale riguardo alle prove, ciò
che può essere provato in logica di default ed un’insieme di nozioni intuitive riguardo al
concetto di conseguenza, ammissibili sotto il concetto di estensione. Da un altro punto
di vista esso implica l’esistenza di un’equivalenza tra la specificazione di una prova di
default e la caratterizzazione sintattica di conseguenza di una teoria di default.

2.4 I default semi-normali

Abbiamo ritenuto importante menzionare questo tipo particolare di strutture di


default, anche se non in modo formale, perché in una certa misura esse costituiscono il

28
Ibid, pg. 66.
completamento della visione che ci eravamo proposti di fornire, ovvero di utilizzare la
logica come strumento di formalizzazione per il ragionamento di default. Esistono
pertanto dei tipi particolari di default cosiddetti da Reiter semi-normali per la loro
caratteristica di non rispettare i criteri sintattici di quelli normali, ma di adeguarsi
completamente alle proprietà che essi posseggono. La differenza consiste
essenzialmente nella possibilità di introdurre dei connettivi, particolarmente delle
negazioni, nella seconda parte dello schema di default, ovvero nel gruppo delle
giustificazioni. L’utilità è quella di modellare in maniera più efficace alcune istanze del
ragionamento di default che sarebbero altresì rappresentabili tramite i costrutti normali,
ma che per essere formalizzate richiederebbero un maggior numero di tali costrutti.
Entra perciò in gioco una sorta di principio economico per la teoria dove, seppure viene
aggiunto un grado di complessità esso è compensato da un grado di soddisfazione per
l’utilizzatore della teoria maggiore del costo per l’inserimento. Inoltre a tale principio se
ne potrebbe affiancare uno di natura estetica che vede nei default semi-normali uno
schema elegante di formalizzazione di diverse istanze del ragionamento comune.

Ex. 1.8 Consideriamo il caso in cui un ragazzo di nome Ed voglia fare una crociera
assieme a dei suoi amici, Alan e Bob; supponiamo inoltre che abbia una madre
apprensiva contraria al viaggio in quanto non ritiene che gli amici del figlio siano una
compagnia sicura. Aggiungiamo infine che il padre di Ed rassicuri la moglie riferendo
che uno tra i due compagni di viaggio abbia un patentino di primo soccorso,
convincendola così a lasciar partire il figlio; tale ragionamento può essere formalizzato
con i seguenti assiomi:

i. COMPAGNIA( Ed , Al ) ∧ COMPAGNIA( Ed , Bob)


ii. PATENTINO( Al ) ∨ PATENTINO( Ed )
iii. ∀xCOMPAGNIA( Ed , x) ∧ SICURO( Ed , x) ⇒ PERMESSO( Mamma)

presi assieme con il default riguardante Al:

COMPAGNIA( Ed , Al ) ∧ PATENTINO( Al ) : SICURO( Ed , Al )


SICURO( Ed , Al )
ed al default riguardante Bob:

COMPAGNIA( Ed , Bob) ∧ PATENTINO( Bob) : SICURO( Ed , Bob)


.
SICURO( Ed , Bob)

Esso non permette di trarre la conclusione per cui la madre di Ed concede il suo
permesso. Se tuttavia proviamo a riformalizzare questo ragionamento escludendo di
menzionarne i prerequisiti ed introducendo un’implicazione nelle giustificazioni
otteniamo che:

: COMPAGNIA( Ed , Al ) ∧ PATENTINO( Al ) ⇒ SICURO( Ed , Al )


COMPAGNIA( Ed , Al ) ∧ PATENTINO( Al ) ⇒ SICURO( Ed , Al )

: COMPAGNIA( Ed , Bob) ∧ PATENTINO( Bob) ⇒ SICURO( Ed , Bob)


,
COMPAGNIA( Ed , bob) ∧ PATENTINO( Bob) ⇒ SICURO( Ed , Bob)

rendono possibile la derivazione della conclusione per cui la madre di Ed concede il


permesso. Tali default devono essere interpretati come una credenza di chi trae il
ragionamento il quale da sempre ritiene che “se Ed è in compagnia di Al ed Al ha il
patentino di primo soccorso allora Ed è al sicuro con Al”, e in una qualche misura attiva
tale conoscenza nel momento in cui le variabili di questo schema di default sono
chiamate in causa. Nella prima formalizzazione avevamo infatti la necessità di avere
delle premesse per poter intraprendere la deduzione dello schema, quasi come se la
nostra prospettiva si creasse nel momento stesso in cui il ragionamento si svolge e non
fossero date invece come convinzioni aprioristiche. Inoltre l’introduzione nel secondo
schema dell’implicazione ci permette di trarre l’inferenza desiderata, ovvero che la
madre di Ed dà il proprio consenso al viaggio; questo è un esempio di default non-
normale, nello specifico di default semi-normale.
Un’altra interessante applicazione dei default semi-normali è la capacità di
formalizzare tassonomie e gerarchie dove compaiono delle eccezioni. Quando un
insieme di regole sono strutturate in maniera gerarchica e come tali vengono
organizzate, rappresentarle attraverso default semi normali non solo è economicamente
vantaggioso ma esteticamente piacevole e chiaro. Pensiamo ad esempio all’esempio di
Touretzsky[1984] riguardo agli elefanti:
i. Gli elefanti sono grigi, ma gli elefanti reali non sono grigi
ii. Gli elefanti del circo sono elefanti reali
tali asserzioni non debbono tuttavia essere considerate assolute cioè non revocabili, esse
come tutte le conoscenze del ragionamento comune sono soggette ad eccezione ed a
revisione. Esse possono essere formalizzate come segue attraverso dei default semi-
normali:

ELEFANTE ( x) : ¬ELEFANTE − REALE ( x) ∧ GRIGIO( x)


,
GRIGIO( x)
ELEFANTE − CIRCO( x) : ELEFANTE − REALE ( x)
,
ELEFANTE − REALE ( x)

con l’aggiunta dei due seguenti assiomi:

∀xELEFANTE − REALE( x) ⇒ ELEFANTE( x)


∀xELEFANTE − CIRCO( x) ⇒ ELEFANTE( x) .

Questa formalizzazione è sicuramente soddisfacente ed elegante, allo stesso tempo al


sorgere di possibili revisioni si mostra anche duttile; pensiamo infatti che un esperto di
elefanti ci porti a conoscenza del fatto che gli elefanti indiani siano bianchi e non grigi.
Ma al contempo essi sono evidentemente elefanti esattamente come quelli reali e come
quelli genericamente detti tali; in questo casa basta riscrivere il primo default
aggiungendo negativamente tra le giustificazioni la possibilità che un elefante indiano
sia grigio. Abbiamo cioè escluso una classe di possibilità agendo per negazione,
abbiamo espresso una conoscenza restringendo il campo di applicazione e perciò
fortificandola, questo è possibile grazie all’uso d default semi-normali:
ELEFANTE( x) : ¬ELEFANTE − INDIANO( x) ∧ ¬ELEFANTE − REALE ( x) ∧ GRIGIO( x)
GRIGIO( x)

La praticità di questi default è evidente nella rappresentazione di strutture organizzate


gerarchicamente, come possono essere intere basi di dati o strutture ordinate di
informazioni. Tuttavia nel momento in cui si dovessero presentare delle strutture
complesse sarebbe meglio ricorrere a delle proprietà esclusive in grado di delineare la
caratteristica unica che identifica il soggetto della nostra regola, riducendo l’oggetto
della formalizzazione ad un caso specifico tra tutti i casi asseribili, rendendolo perciò
individuabile in maniera non equivoca. Ad esempio:

ELEFANTE ( x) : ¬CASO1( x)
,
GRIGIO( x)
ELEFANTE − REALE ( x) : ¬CASO2( x)
CASO1( x)

dove in modo intuitivo possiamo considerare i casi proposti come inibitori degli altri
casi nel momento in cui possono essere derivati di default. Possiamo infatti tradurre il
“CASO1” con la proprietà di non essere grigio, mentre il “CASO2” con la proprietà di
essere un elefante reale e così via. Attraverso questa sistemazione possiamo sviluppare
un sistema gerarchico di regole di default, soggette alla possibilità di essere vagliate fino
al ritrovamento del caso desiderato; presupponendo infatti che i casi enumerati siano
tutti e soli i casi possibili, non solo la soluzione alla nostra interrogazione esiste, ma
verrà ritrovata in un tempo finito.

3. Criteri di accettazione dei default

Il ragionamento di default, per essere realmente un modello del ragionamento di


senso comune, necessita non solo di saper trarre delle conclusioni appropriate tramite le
sue regole, ma dev’essere in grado di trarre quanto più possibile le “giuste
conclusioni” 29 attraverso la sua struttura. Come visto sopra basta pensare all’esempio
dell’uccello Tweety che per default inferiamo essere in grado di volare. Ma a nessun
verrebbe in mente di sostenere che Tweety essendo un uccello per default sia laureato o
possa guidare un’automobile; queste sarebbero evidentemente delle stranezze o meglio
delle assurdità. Ciò che vogliamo indagare quindi è il senso intuitivo per cui queste
ultime proposizioni sarebbero considerate come stravaganti, quale il motivo logico e
quale il criterio per stabilirne l’affidabilità. In questo modo avremo anche un criterio di
selezione per tutte le sentenze generiche come “tutti gli uccelli volano” che
costituiscono una parte essenziale del nostro modo di ragionare, potremo determinare
quali possano diventare delle assunzioni per default e quali invece non possano esserlo.
Abbiamo infatti finora discusso esclusivamente di come il ragionamento di
default possa essere formalizzato attraverso un impianto logico, non ci siamo soffermati
invece su ciò che rende tale impianto possibile. L’interrogazione sorgerebbe spontanea
nel momento in cui si volesse presumere di formalizzare un ragionamento senza
conoscerne quelle regole prime che di fatto ne determinano la capacità comunicativa. Il
proposito è dunque quello di sviscerare tali caratteri iniziando dai costituenti degli
schemi di default, che sono le espressioni generiche, per passare alla valutazione di
attendibilità per gli schemi stessi di default ed infine per la teoria che essi determinano.

3.1 Le espressioni generiche 30

Una componente fondamentale della nostra conoscenza riguardo alla realtà è


espressa attraverso enunciati del tipo:
i. I cani sono mammiferi.
ii. Gli uccelli volano.
iii. I Francesi mangiano carne di cavallo.
iv. I Bulgari sono celebri sollevatori di pesi

29
Trad. mia da A. Cohen, “Default Reasoning and Generics”, Computational Intelligence, V.13, N. 4,
Blackwell Publisher, 1997.
30
Esistono diversi modi di intendere le espressioni generiche. Per diversi logici esse sono esclusivamente
quelle determinate dalla presenza di quantificatori universali, in quanto essi ritengono che le espressioni
comunemente dette generiche non siano altre che il frutto di un’elaborazione mentale che coglierebbe la
molteplicità collettiva nell’unità dell’espressione. Tuttavia, poiché il senso della nostra dissertazione si
lega la ragionamento di senso comune preferiamo mantenere l’accezione “normale” per le espressioni
generiche.
che sono definite come generiche; tale definizione implica evidentemente il fatto che
esse siano usate come generalizzazioni di conoscenze proprie del soggetto. Ma
evidentemente esse hanno un corrispondente grado di attendibilità che varia in base alla
proposizione stessa: la prima è ad esempio sempre vera, la seconda nella maggior parte
dei casi è vera, la terza è sicuramente soddisfatta da un buon numero di francesi,
l’ultima infine da un esiguo numero di bulgari. Mentre ci siamo addentrati
nell’approfondimento delle caratteristiche del ragionamento di default abbiamo
riscontrato, in questo ambito più che in quello logico, il maggior numero di perplessità.
Come evidente, la formalizzazione logica lascia meno spazio alla discussione, le
caratteristiche di quelle proposizioni atte a divenire parte del sistema di ragionamento
sono un terreno di contenzioso tra gli studiosi. Perciò Carlson[1995] sosterrà che “le
condizioni di verità delle cosiddette espressioni generiche sono qualcosa di misterioso;
non hanno relazione con le proprietà degli oggetti individuali che designano, ma
sottostanno ad un principio regolativo ontologicamente irriducibile” 31 . Nella sua
disamina Carlson, per meglio esplicitare la propria posizione sottopone al lettore questo
esempio:
i. Le persone hanno difficoltà a trovare la Carnegie Mellon University.
E’ evidente che la maggior parte delle persone non abbia questo tipo di difficoltà in
quanto non ha nemmeno l’intenzione di recarsi all’università Carnegie Mellon;
solamente un ristretto numero di persone, cioè coloro che si recano all’università
Carnegie Mellon per la prima volta, potrebbe incorrere in questo tipo di disguido. Per
valutare ciò che rende questa proposizione vera, è importante considerare quale genere
di persone rientrano nell’asserzione, ovvero ne sono rese partecipi, e quale ne
costituiscono un’eccezione. Come argomenta Carlson, le persone che non cercano di
recarsi all’università, o perché non sono interessate o perché conoscono già la strada
non contano come eccezioni; solo le persone che cercano di raggiungere l’università e
non hanno problemi nel farlo debbono essere considerate tali. Ma è evidente come
questa generalizzazione sia in verità assolutamente ristretta ed implichi per sua natura
l’esclusione dall’insieme dei soggetti propri della sua predicazione la maggior parte
dell’umanità. Come giustamente ha fatto notare Cohen: “nel valutare la verità di questo
tipo di proposizioni, noi dobbiamo confrontare le persone che hanno trovato l’università
31
G. Carlson, Truth-conditions of generic sentences: Two contrasting views, in The Generic Book, pg.
39, Chicago: University of Chicago Press, 1995.
senza problemi con quelli che invece ne hanno avuti: se la maggioranza di essi ha avuto
difficoltà allora la proposizione è vera, altrimenti è falsa” 32 .
Accettando dunque il criterio per cui si debba operare una selezione rispetto ai
referenti del termine persone in quella proposizione, Cohen ci fornisce un modo per
valutare se essa sia vera o meno.

Def. 2.1 Data un’asserzione generica S predicante una certa proprietà φ di tipo
κ, assumiamo che la proprietà φ sia un elemento dell’insieme A composto da tutte le
proprietà predicabili. Allora, se sono in maggior numero le istanze di κ che soddisfano
φ rispetto a quelle che soddisfano una diversa proprietà φI∈ A ma che non soddisfano
φ diciamo che la proposizione S è vera.

Ma parlando dell’insieme di tutte le proprietà A abbiamo implicitamente sottinteso il


fatto che tali proprietà esistano, ovvero che si diano sempre delle alternative nella scelta
delle proprietà passibili di essere predicate in un’asserzione generica S. Nella
definizione 2.1 abbiamo infatti decretato la scelta di φ, seguendo il ragionamento di
Cohen, poiché essa soddisfava più istanze di κ. La quantità delle istanze soddisfatte
diviene dunque il criterio di scelta. Riguardo alle alternative, nel caso di asserzioni
generali non possiamo assumere che esse si escludano sempre reciprocamente, esistono
infatti diversi casi in cui ciò non avviene.

Ex. 2.1 Consideriamo l’enunciato:


i. Gli italiani parlano l’Italiano.
Tuttavia in Trentino-Alto Adige la maggioranza della popolazione è bilingue, quindi le
alternative non possono escludersi vicendevolmente, non possiamo cioè concludere che
poiché parlano l’italiano essi non parlino altre lingue. Inoltre dobbiamo considerare se
sia sufficiente per la proprietà φ di essere più comune rispetto ad ogni φI∈ A, oppure se
essa debba essere più comune rispetto alla disgiunzione di tutte le possibili alternative.

32
A. Cohen, Default Reasoning and Generics, Computational Intelligence, V.13, N. 4, Blackwell
Publisher, 1997.
Ex. 2.2 Consideriamo l’enunciato:
i. Gli Indiani parlano l’Hindi.
Sappiamo che in India con una quota del 30% della popolazione totale la lingua Hindi è
la più parlata; perciò rispetto ad ogni linguaggio alternativo preso singolarmente la
lingua Hindi è più parlata, ma rispetto alla disgiunzione di tutti i linguaggi parlati in
India essa è evidentemente meno diffusa. Abbiamo perciò una sorta di massimo
relativo, l’enunciato in questa forma deve essere considerato falso a meno che non
venga completato con un’assunzione di relatività:
i.bis Tra tutte le lingue parlate dagli indiani la più diffusa è l’Hindi.

Considerati questi aspetti dettati da semplici esemplificazioni possiamo formalizzare le


condizioni di verità per le cosiddette espressioni generiche:

Def. 2.2 Sia genA(C(κ))(φ) una proposizione, dove φ è una proprietà, κ è un genere, e
C(κ) è una funzione che correla un genere con i suoi casi. Sia A un insieme di
alternative a φ, allora genA(C(κ))(φ) è vera se :

P(φ ∧ ( A) C (κ )) > P((¬φ ) ∧ ( A) C (κ )) ,

ovvero se:

P(φ ∧ ( A) C (κ )) > 0,5

dove P(A|B) indica la probabilità condizionata di A dato B, e A è la disgiunzione di


tutti i membri di A.

3.2 L’insieme delle Alternative

Il problema dell’insieme delle Alternative, della loro ricerca e della loro pertinenza è
molto simile al problema che si pone nella distinzione tra determinabile e determinato:

I propose to call such terms as colour and shape determinables in relation to such terms
as red and circular which will be called determinates. Any one determinable such as
colour is distinctly other than such a determinable as shape or tone; i.e. colour is,
metaphorically speaking, that from which the specific determinates, red, yellow, green,
etc., emanate; while from shape emanate another completely different series of
determinates such as triangular, square, octagonal, etc. Further, what have been assumed
to be determinables—e.g. colour, pitch, etc.—are ultimately different, in the important
sense that they cannot be subsumed under some one higher determinable, with the result
that they are incomparable with one another; while it is the essential nature of
determinates under any one determinable to be comparable with one another. The
ground for grouping determinates under one and the same determinable is not any
partial agreement between them that could be revealed by analysis, but the unique and
peculiar kind of difference that subsists between the several determinates under the
same determinable, and which does not subsist between any one of them and an
adjective under some other determinable. 33

Come si legge in questo brano, le alternative sembrano “emanare” o provenire da alcune


proprietà comuni, per esempio che i francesi mangino carne di cavallo, che i bulgari
siano buoni sollevatori di pesi o che i russi siano grandi ginnasti. Tutte queste
caratteristiche derivano dalla proprietà più comune di avere una tradizione nazionale
determinata e conosciuta dal resto del mondo.
Generalizzando questo concetto intuitivo possiamo dire che, se p e q sono
proprietà e p p q indica il fatto che p sia determinato e q invece sia determinabile allora
possiamo stabilire le seguenti proprietà:
i. Se p p q , allora p→q.
ii. Non esiste alcun p tale che p p p .
iii. Non esiste alcun p ed alcun q tale che ( p p q) ∧ (q p p) .
iv. Per ogni p, q, r, ( p p q) ∧ (q p r ) ⇒ ( p p r ) .
La prima proprietà deve essere intesa come relazione diretta tra p e q, ovvero se
p è il colore rosso e q la proprietà di essere un colore allora l’essere rosso è
evidentemente una particolare determinazione dell’essere un colore. La seconda
proprietà è una sorta di anti-identità proprio perché si vuole sottolineare il fatto che la
determinazione rosso, ad esempio, deve essere considerata come tale e non come
portatrice di ulteriori determinazioni come l’essere un colore. Pertanto nessun
determinato sarà mai il determinabile di se stesso. In un’altra forma la terza proprietà

33
W. E. Johnson, Logic, pgg. 174-176, New York: Dover, 1964.
sottintende la medesima fattispecie introducendo la relazione di reciprocità tra due
diversi determinati, che si scambiano vicendevolmente il ruolo nell’essere
determinazioni. L’ultima proprietà infine può suscitare qualche dubbio; essa risulta più
evidente tuttavia considerando tale esempio:
i. rosso p colore
ii. colore p proprietà − fisica
iii. rosso p proprietà − fisica
dove è chiaro come il rosso sia una particolare determinazione dell’essere colore, il
colore a sua volta una proprietà fisica e dunque il rosso sia una determinazione
dell’essere proprietà fisica.

Def. 2.3 Si dice che q è la determinazione minima di p , in notazione p p m q se p p q ,

se non si dà il caso che esista un r tale che p p r p q .

In letteratura, a quanto ci è dato di sapere, non è chiaro se la determinazione minima


esista per ogni proprietà. Come asserisce Johnson[1964], se una proprietà ha alcune
determinazioni è plausibile allora che essa ne possegga anche una minimale, poiché una
catena di infinite determinazioni sembra alquanto contro intuitiva; allo stesso modo
tuttavia non è escludibile che esistano alcuni casi “patologici” in cui ciò si può
verificare. Proprio in vista di questi casi patologici, sembra che l’idea di determinazione
minima non sia sufficiente, seguendo infatti il ragionamento di Searle[1959]:

The more fundamental position which “colour” occupies vis `a vis both “red” and
“scarlet” is shown by the fact that the predication of “red”, “not red”, “scarlet” or “not
scarlet” of any object presupposes that “coloured” is true of the object. A term A
presupposes a term B if and only if it is a necessary condition of A’s being true or false
of an object x, that B must be true of x. For example, as we commonly use these words,
in order for it to be either true or false of something that it is red, it must be coloured.
Both “red” and “scarlet” then presuppose their common determinable “coloured”. But
“scarlet” does not presuppose its determinable “red”, and we may generalise this point
as a criterion: B is an absolute determinable of A if and only if A is a determinate of B,
and A presupposes B. Thus “coloured” is an absolute determinable of “red”, but “red” is
not an absolute determinable of scarlet. The notion of an absolute determinable is
relevant to the traditional problem of categories: every predicate carries with it the
notion of a kind or category of entities of which it can be sensibly affirmed or denied.
For example, “red” is sensibly affirmed or denied only of objects which are coloured—
this is part of what is meant by saying that “red” presupposes “coloured”. Absolute
determinables then provide us with a set of category terms. 34

possiamo completare la definizione di determinazione minima con una più restrittiva di


determinazione minima assoluta.

Def. 2.4 Si dice che q è la determinazione minima assoluta di p , in notazione p p a q ,


se q è un assoluto determinato di p e non si dà il caso che esista un r assoluto
determinato da p tale che r p q .

Possiamo dunque utilizzare il concetto di determinazione minima assoluta per definire


le alternative indotte da una proprietà p come le determinazioni minime e assolute di p
stessa:

Def. 2.5 Siano p e q due proprietà tali che p p a q , allora l’insieme delle alternative di p

dato q sarà ALT(p) = {pI | pI p a q }.

Bisogna evidenziare il fatto che la definizione si riferisce ad un generico insieme di


alternative piuttosto che all’insieme universale delle alternative, poiché un proprietà può
avere più di una determinazione minima assoluta e conseguentemente può avere più di
un insieme di alternative.

3.3 L’utilizzo delle espressioni generiche nel ragionamento di default

Come abbiamo visto sopra, il ragionamento di default presuppone di costruire


delle regole in grado di permettere di trarre delle inferenze e delle conclusioni in
situazioni dove vi è incompletezza delle informazioni. Esistono diverse formalizzazioni
di questo tipo di ragionamento, a livello logico abbiamo considerato quella svolta da

34
J. Searle, On determinables and the notion of resemblance. In Proceding of the Aristotelian Society,
supplementary vol. 33, pg. 143, London: Harrison and Sons, 1959.
Reiter[1980]. In effetti possiamo vedere come le regole che dettano l’esistenza dei
default per Reiter siano strettamente legate all’intuitività delle asserzioni generiche.
Evidentemente la regola per cui gli uccelli volano non è altro che una formalizzazione
dell’asserzione generica “gli uccelli volano”. Dal punto di vista conoscitivo pertanto, ci
interessa sapere per quale ragione si possano utilizzare queste espressioni e addirittura
utilizzarle come regole in una formalizzazione per default. Come mai infatti preferiamo
regole del tipo “gli uccelli volano” a regole del tipo “gli uccelli sono bravi guidatori di
camion”?
Se consideriamo uno schema dei default come la correlazione tra due proprietà,
ovvero:

UCCELLO(x) : VOLA(x) p:q


=
VOLA(x) q

dove p è la proprietà di essere un uccello(in questo caso) e q è la proprietà di saper


volare allora è evidente come tale schema possa godere delle proprietà che
caratterizzano le asserzioni generiche, e quindi come sia possibile definirne un criterio
di validità, o meglio di adeguatezza.

Def. 2.6 Siano p e q due proprietà, ed A l’insieme di tutte le proprietà predicabili. Allora
una regola di default sarà adeguata con rispetto ad A se genA(p)(q) è vera cioè se

P (q p ∧ ( A)) > 0,5.

Possiamo pertanto applicare la regola di adeguatezza ad un default


semplicemente riscrivendolo nel seguente modo:

k ( x) ∧ (α1 ( x) ∨ α 2 ( x) ∨ ... ∨ α n ( x)) : β1 ( x),..., β n ( x)


,
α ( x)

dove k(x) sia una proprietà tra quelle presenti nell’insieme degli assiomi della teoria di
default ed α sia invece la proprietà da derivare, allora la regola è adeguata se:
P (α k ∧ (α1 ( x ) ∨ α 2 ∨ ... ∨ α n ( x )) > 0,5.

3.3.1 Rilevanza e Specificità tra le proprietà

Una volta stabilita la nozione di adeguatezza per le regole di default, e quindi


concretizzata la possibilità di trarre inferenze attraverso tali regole, è fondamentale
stabilire non solo se la regola utilizzata sia adeguata di per sé, ma se tra tutte le regole
applicabili essa sia la più adeguata. Come evidenziavamo prima per le asserzioni
generiche infatti, esistono due gradi di rilevanza: una assoluta, ed una relativa. La prima
la si ottiene in casi simili all’esempio riguardante la lingua Hindi, dove si sosteneva che
tale lingua fosse la più parlata in India; la seconda invece si ottiene asserendo che “tra
tutte le lingue parlate dagli indiani la più diffusa è l’Hindi”. Quando ci troviamo ad
operare con degli schemi di default, spesso per uno stesso problema sono utilizzabili
due o più default( tra loro contraddittori). A livello intuitivo si comprende come, in
generale, sia preferibile dare la precedenza ad un default più specifico rispetto ad uno
che lo sia meno. E’ necessario dunque, non solo valutare cosa significhi specificità ma
stabilire un criterio per scegliere quale default abbia la precedenza nell’essere applicato.

Ex. 2.3 Supponiamo di avere i seguenti due default:

MAMMIFERO( x) : PARTORISCE( x)
,
PARTORISCE( x)
ORNITORINCO( x) : DEPONE − UOVA( x)
.
DEPONE − UOVA( x)

Come sappiamo l’ornitorinco è una specie molto particolare, appartiene al genere dei
mammiferi ma depone le uova 35 . Come tale in questo caso, l’ordine di applicazione dei
default determina due risultati evidentemente contraddittori, di cui il primo(la proprietà
di partorire) è scorretto mentre il secondo è giusto. Pensando alla seconda regola,
notiamo come essa sia maggiormente specifica rispetto alla prima, poiché la nozione di

35
Fonte: Wikipedia the free enciclopedy, http://it.wikipedia.org/wiki/Ornithorhynchus_anatinus .
ornitorinco comprende evidentemente quella di mammifero mentre non è vero il
contrario. La regola aggiunge a sua volta una peculiarità per questa nozione ovvero il
fatto che un particolare tipo di mammifero abbia la proprietà di deporre le uova.

Il nostro ragionamento sarà allora rafforzato e meno soggetto ad errori se


valuterà nell’utilizzo delle regole di default questa specificità che rende preferibile una
regola rispetto ad un’altra. In ultima analisi se possiamo applicare un criterio di
selezione in base all’interesse sulle proprietà sorge spontaneo tentare di applicarlo alle
regole di default, che altro non sono se non regole per inferire ulteriori proprietà
riguardo ad un soggetto. Bisogna sottolineare come questa accezione non sia presente
nel lavoro di Reiter dell’1980, salvo una breve e confusa parentesi nel 1983, dove è
ravvisabile una sorta di scelta tra le regole che devono avere la precedenza nell’essere
applicate. Dobbiamo perciò, come aggiunge lo stesso Reiter, adottare un approccio
scettico nei confronti dei nostri default, dobbiamo cioè richiedere ad essi che siano
quanto più esaustivi nei confronti delle possibili interpretazioni. Essi dovranno cioè
essere quanto più specifici e rilevanti, come fa notare giustamente Fischer-Servi nel suo
celebre esempio sul “dilemma di Nixon”:

Ammettiamo di avere due regole, la prima afferme che i Quaccheri sono pacifisti e la
seconda che i Repubblicani non sono pacifisti. Supponiamo di venire a conoscenza del
fatto che Nixon è sia un Quacchero che un Repubblicano. Che cosa possiamo dire circa
l’essere o meno pacifista di Nixon? Poiché le nostre informazioni su Nixon riguardano
sia il suo essere un Quacchero che il suo essere un Repubblicano, abbiamo bisogno di
una regola riguardo ai Quaccheri-Repubblicani. Se tale regola esiste possiamo usarla per
inferire una conclusione riguardo Nixon; ma se non esiste non possiamo inferire una
conclusione. In altre parole in questo caso dobbiamo adottare un approccio di tipo
scettico. 36

3.3.2 L’approccio scettico e l’approccio fiducioso

L’esempio posta sopra è estremamente importante ed efficace; abbiamo infatti la


possibilità di misurarci con la nozione di approccio scettico e di approccio fiducioso.

36
Gisèle Fischer Servi, Quando l’eccezione è la regola, le logiche non monotone, pag. 199, Milano:
McGrawHill, 2001.
Bisogna innanzitutto stabilire che, quanto meno nell’intenzione di Reiter[1980], questi
due orientamenti riguardo all’affidabilità delle conoscenze sono spesso confusi e
distorti. Riteniamo quindi di escludere gli accenni fatti a tale problema dallo stesso
Reiter ed utilizzare piuttosto il lavoro di Dung[1997]:

The credulous approach justifies holding a conclusion if there is a suitably acceptable


set of assumptions, extending the initial theory, from which the conclusion can be
derived in the underlying monotonic logic. The sceptical approach, on the other hand,
justifies a conclusion if it can be derived from all acceptable extensions of the given
theory 37 .

Come dimostra questa definizione effettivamente non possiamo ritenere che vi sia una
differenza radicale nei due approcci, piuttosto sussiste una differenza di grado nella
rilevanza delle informazioni. L’approccio scettico è dunque un approccio più diffidente,
più esigente da un certo punto di vista, perché presuppone che l’affidabilità di una
conclusione sia asseribile solo rispetto a tutte le estensioni che costituiscono la teoria di
default. Gli approcci sono evidentemente l’ambito più generico del nostro sistema,
poiché mentre prima avevamo legato l’affidabilità ad una singola proprietà, poi ad una
regola di default, ora la applichiamo all’intero insieme delle regole che costituiscono la
nostra teoria.
Mentre l’approccio scettico è definito perentoriamente, riguardo all’approccio
fiducioso Dung[1997] indaga cinque differenti atteggiamenti assumibili dal soggetto
nell’accettare o rigettare una conoscenza che hanno come base comune il grado minimo
di validità della definizione sopra. La nozione più semplice di accettabilità per un
approccio, che denominiamo ingenuo, ritiene semplicemente che la teoria iniziale si
possa estendere con un certo insieme di assunzioni a patto che esse siano conflict-
free(non si può dedurre il contrario di nessuno dei presupposti usando semplicemente la
nozione di conseguenza logica). Tale criterio è evidentemente molto blando, poiché non
valuta l’ipotesi di assunzioni esterne alla teoria che possano avere effetti perturbanti
sulla teoria stessa.

37
P.M. Dung, An abstract argumentation-theoretic approach to default reasoning, Artificial Intelligence,
vol. 93, pg. 67, 1997.
Il secondo approccio si basa sulla nozione di semantica dei modelli stabili, che
in programmazione logica è di fatto la semantica standard per la logica di default, la
logica autoepistemica e la logica modale non monotònica. Questo approccio, che
denominiamo sufficiente, richiede non soltanto che l’insieme dei presupposti sia
conflict-free, ma che da essi non sia deducibile il contrario di una qualunque tra le
assunzioni.
Il terzo approccio nell’ambito di quelli fiduciosi consiste nel considerare un
insieme dei presupposti accettabile se e soltanto se è sia conflict-free che, dal punto di
vista della chiusura deduttiva, difendibile da tutti gli attacchi possibili.
Il quarto, che denominiamo preferenziale, riguarda le estensioni e considera
un'estensione accettabile se è massimamente ammissibile, nel senso che non esiste alcun
insieme comprendente tali estensioni che sia allo stesso modo ammissibile.
Il quinto, che denominiamo approccio completo, è intermedio fra il terzo ed il
quarto che abbiamo proposto; considera un'estensione accettabile se essa è ammissibile
e contiene in sé tutti i presupposti necessari affinché sia difendibile dagli attacchi.

3.4 L’abduzione nel ragionamento di default

Il ragionamento abduttivo è sicuramente riconosciuto come un importante


processo del ragionamento di senso comune, infatti sono plurime le dimostrazioni della
sua capacità di applicazione nelle diagnosi mediche, nel riconoscimento vocale e nel
mantenimento delle basi di dati. Poiché la nostra ricerca verte sul ragionamento di
default abbiamo provato a vedere, a livello intuitivo e non formalizzato(o semi-
formalizzato), cosa sarebbe successo tentando di ricomprendere il concetto di abduzione
all’interno del ragionamenti di default.

Def. 2.7 Per abduzione intendiamo che, data una teoria T in un qualunque linguaggio
logico formalizzato, un sottoinsieme X delle ipotesi di T è una spiegazione abduttiva se
T con l’aggiunta di X permette di derivare l’evento M osservato e non già compreso
nella teoria stessa.
La definizione implica chiaramente l’esigenza di possedere gli strumenti tipici
del ragionamento in condizioni di informazioni incomplete, tuttavia bisogna segnalare il
fatto ch si è tentata una formalizzazione di tale ragionamento anche in logica classica.
La logica di default essendo non monotònica si presta evidentemente meglio a subire e
gestire le eventuali conseguenze derivate dalla revisione delle conoscenze del soggetto.

Ex. 2.4 Consideriamo il seguente insieme di default, che rappresentano un insieme


seppur limitato intorno alla vita di John:
⎧: ¬SCIA( John) WEEKEND : ¬NEVICA : ¬NEVICA ⎫
Δ= ⎨ , , ⎬.
⎩ ¬SCIA( John) SCIA( John) ¬NEVICA ⎭

Questi default intuitivamente rappresentano un insieme di fatti attorno ai comportamenti


di John:
i. Normalmente, ovvero per la maggior parte della sua vita, John non esce per
sciare.
ii. Nel weekend tuttavia John solitamente scia a meno che non stia nevicando.
iii. Normalmente non nevica, ovvero per lo più durante l’anno non nevica.

Dobbiamo fare attenzione al senso di queste conoscenze intorno alla vita di John.
Facendo riferimento al criterio di adeguatezza posto sopra possiamo ora considerare
cosa significhi un’informazione come la terza. Normalmente non nevica significa infatti
che il numero dei giorni dell’anno in cui può verificarsi tale manifestazione
metereologica è esiguo rispetto al numero di giorni in cui essa non si verifica. Ma
tornando alle abitudini di John, se in una teoria di default ς = (A, Δ) assumessimo come
insieme degli assiomi A ={Weekend}, essa avrebbe una singola estensione contenente
¬NEVICA e SCIA(John). Supponiamo invece di osservare il fatto che John sia uscito
ma non per sciare, evidenza contraddittoria rispetto all’unica estensione della teoria.
L’abduzione in questo caso punta a trovare una spiegazione per questo evento, ovvero a
selezionare un insieme di fatti appartenenti alla teoria stessa tali per cui con l’aggiunta
di un’ulteriore ipotesi la teoria sia in grado di spiegare l’osservazione. In questo caso
basta aggiungere all’insieme degli assiomi A l’assioma NEVICA, quindi AI ={Weekend;
Nevica} per cui la nostra teoria di default ha una sola estensione contenente
¬SCIA(John) . Diciamo quindi che NEVICA è stato aggiunto all’insieme delle ipotesi
poiché è stato addotto dall’osservazione ¬SCIA(John) , quindi l’evento del nevicare è
la spiegazione abduttiva della conclusione ¬SCIA(John) .

E’ facile osservare come una semplice situazione, tratteggiata dal Ex. 2.4 sia
difficilmente rappresentabile in termini di logica classica e di ragionamento monotònico
di conseguenza; infatti non solo vi è una revisione delle inferenze tratte ma l’impiego
forte del significato di estensione tipico della logica di default.

Ex. 2.5 Consideriamo che le informazioni riguardo allo stato di una rete telematica,
ovvero una rete in cui delle macchine si scambiano informazioni, siano rappresentate
attraverso la logica di default. Supponiamo che la nostra teoria ς = (A, Δ) descriva delle
semplici conoscenze riguardo alle relazioni intercorrenti tra i componenti della rete di
computer, lo stato di una macchina(funzionante, non funzionante), lo stato della linea di
connessione, lo stato di collegamento tra un una macchina e l’altra(scambia
informazioni, non scambia informazioni). Supponiamo che la rete sia schematicamente
strutturata come in figura:
a

c e

Figura 1. Una rete di computer

e che l’insieme degli assiomi che costituiscono le informazioni sia:

⎧ FUNZIONA( x) ⇒ CONNESSO ( x, x) ⎫
⎪¬FUNZIONA( x) ⇒ ¬RAGGIUNGE ( y, x) ⎪
⎪ ⎪
⎪COLLEGATO ( a, b), COLLEGATO (a, f ) ⎪
⎪ ⎪
A= ⎨COLLEGATO (b, c), COLLEGATO (b, d ) ⎬.
⎪COLLEGATO (c, e), COLLEGATO (d , e), COLLEGATO (e, f )⎪
⎪ ⎪
⎪COLLEGATO ( x, x) ⎪
⎪COLLEGATO ( x, y ) ⇒ COLLEGATO ( y, x) ⎪
⎩ ⎭
I primi due assiomi riguardano il funzionamento di una macchina implicando il fatto
che ogni macchina sia raggiungibile da se stessa e come tale che sia anche connessa con
se stessa. L’assiomA del collegamento tra due macchine differenti rappresenta la
connessione diretta tra di esse, ovvero è una generalizzazione dove le variabili sono
sostituibili esclusivamente con le costanti fissate nel gruppo degli assiomi. Siano
dunque date le seguenti regole di default:

⎧: FUNZIONA( x) CONNESSO( x, y ) : : ¬CONNESSO( x, y ) ⎫


⎪⎪ FUNZIONA( x) , RAGGIUNGE( x, y ) , ¬RAGGIUNGE( x, y ) ⎪

Δ= ⎨ ⎬.
⎪ CONNESSO( x, y ) ∧ COLLEGATO( y, z ) ∧ FUNZIONA( z ) : ⎪
⎪⎩ CONNESSO( x, z ) ⎪⎭

La prima regola afferma che una macchina normalmente funziona; la seconda e la terza
asseriscono che se sussiste una connessione tra due macchine allora esse sono
reciprocamente raggiungibili e che altrimenti esse non sono reciprocamente
raggiungibili. L’ultima regola asserisce invece che una connessione possa essere estesa
attraverso due collegamenti in modo da ottenere un collegamento tra due macchine che
data la struttura della rete non sarebbero connesse direttamente tra loro. Secondo le
assunzioni che costituiscono la nostra teoria abbiamo una sola estensione, in cui tutte le
macchine lavorano e tutti i nodi della rete sono tra di loro connessi. Supponiamo ora di
accorgerci che la macchina a sia operativa ma che invece la macchina e non sia da essa
raggiungibile, ovvero FUNZIONA(a) e ¬COLLEGATO(a, e) siano entrambe vere, cosa
non considerata nell’unica estensione della teoria. Se osserviamo lo stato della rete una
possibile spiegazione di questa evidenza si può riscontrare nel fatto che la macchina e
sia rotta, ovvero che ¬FUNZIONA(e) è una possibile spiegazione del problema. Come
si vede dal secondo assioma ¬FUNZIONA( x) → ¬RAGGIUNGE( y, x) segue
direttamente che ¬RAGGIUNGE(a, e) e dalla prima regola di default
FUNZIONA(a) risulta essere vero. Altre possibili spiegazioni sono evidenziabili non
adducendo il malfunzionamento della macchina e, infatti ogni nodo della rete non
funzionante che sia causa di una possibile interruzione nella connessione tra le
macchine a ed e è una spiegazione.
Negli esempi riportati, le teorie di default avevano una singola estensione,
tuttavia in generale, una teoria di default può avere svariate estensioni; ciò non modifica
il processo abduttivo, semplicemente comporta che esistano due o più differenti
soluzioni a seconda dell’estensione valutata. Se scegliamo di adottare un approccio
fiducioso nel caso di estensioni multiple anche l’abduzione si riferirà di conseguenza
alla singola estensione analizzata, mentre adottando un approccio scettico essa dovrà
misurarsi con tutte le estensioni considerate nella teoria. Evidentemente spetta solo al
soggetto che applica le regole scegliere quale approccio adottare.

4. La logica di default come strumento di computazione

Il senso di sviluppare una logica per analizzare situazioni e modalità del


linguaggio ordinario sarebbe inutile se non permettesse un’applicazione pratica. Sarebbe
esclusivamente una formalizzazione sterile, equivalente alle molte altre che se ne
potrebbero dare. Potrebbe al massimo essere differente o migliore, ma allo stesso tempo
distante dal proposito stesso che dovrebbe determinarne l’esistenza: quello di
rappresentare informazioni reali e di poterle manipolare. Il proposito che abbiamo
deciso di seguire è infatti agli antipodi di una mera conoscenza teoretica, vogliamo non
solo dimostrare come sia possibile una logica per il ragionamento di default e come tale
logica sia valida per rappresentarlo e per studiarlo, ma altresì usare questo strumento per
trarre inferenze. In quest’ultimo senso abbiamo deciso di mostrare le proprietà
computazionali della formalizzazione di Reiter attraverso l’utilizzo di un software
sviluppato dall’Università del Kentucky, di nome DeReS 38 .
DeReS è una sorta di acronimo per “Default Reasoning System” 39 che, come
sottolineano gli sviluppatori, nasce proprio per l’esigenza di testare fattivamente la
qualità della formalizzazione logica dei ragionamenti di default. Esso è in grado di farci
apprezzare le proprietà computazionali, nella risoluzione di problemi, della logica di
default. Per fare questo ci serviremo di una sistema di benchmarking sviluppato

38
Il programma può essere gratuitamente scaricato all’indirizzo internet
http://www.cs.engr.uky.edu/deres/ dove si troveranno i codici sorgenti e la documentazione necessaria al
suo utilizzo.
39
P.Cholewinski, V. W. Marek, A. Mikitiuk, Computing with default logic, Artificial Intelligence, n. 122,
pgg. 105-146, 1999.
dall’Università di Stanford 40 , ed utilizzato a livello internazionale come metodo di
riferimento per il calcolo logico. Grazie ad esso avremo la possibilità di creare insiemi
di teorie di default secondo precisi parametri, ed investigare la crescita e la dimensione
delle loro estensioni in modo da riuscire a valutarne il comportamento. Forniremo
pertanto i risultati di queste prove ma soprattutto i grafici sviluppati con il programma,
che evidenzieranno sia le estensioni di una teoria di default, sia il modo in cui queste
estensioni stanno in rapporto con le altre estensioni. Nella formalizzazione ci siamo
infatti premurati di mostrare come, nel caso di default normali, l’esistenza di due
diverse estensioni comportasse la loro contraddittorietà. Vedremo infatti come i grafici
manterranno questa proprietà nel calcolo delle svariate estensioni della teoria.
Bisogna ricordare che, riguardo ad una teoria finita di default ς = (A, Δ) ed una
proposizione A ad essa associata, nell’analisi delle estensioni della teoria possiamo
riscontrare tre tipi di fattispecie:
i. Esistenza: l’analisi determina se esiste un’estensione per la teoria in
oggetto(poiché ragioniamo con default normali essa è garantita).
ii. Presenza parziale: l’analisi determina se esista almeno un’estensione della
teoria in cui sia presente A.
iii. Presenza assoluta: l’analisi determina se per ogni estensione vi sia la presenza
di A.
Date queste tre fattispecie abbiamo conseguentemente tre diversi livelli di
complessità problemica. Il primo caso è per noi ovvio poiché sappiamo che ogni teoria
di default normali possiede almeno un’estensione e quindi non sussiste l’oggetto
d’indagine. Nel secondo caso dobbiamo considerare la complessità dell’evento come
una ricerca normale per ampiezza nell’insieme delle estensioni calcolate, il primo
risultato valido produrrà la fine del processo. Nel terzo caso dovremo valutare invece
due aspetti: la non presenza della proposizione cercata determina il fallimento della
ricerca ma affinché ciò si verifichi è necessario che o essa non venga trovata o venga
ritrovato un controesempio. Nel primo caso dunque la ricerca dovrebbe continuare la
sua indagine fino al termine delle estensioni con complessità massima, mentre nel
secondo caso la ricerca dovrebbe continuare fino al primo controesempio rinvenuto

40
D. E. Knuth, The Stanford GraphBase: A Platform for Combinatorial Computing, Addison-Wesley,
Reading, MA: 1993.
quindi con un po’ di fortuna con una complessità media. Questi tre tipi di indagine
costituiscono sinteticamente ciò che DeReS è in grado di fare e come può farlo.

4.1 Struttura del programma DeReS

DeReS è un software per l’implementazione di ragionamenti di default che


funziona sotto tutte le maggiori distribuzioni di Unix e Linux 41 . DeReS è in grado di
computare le estensioni di una teoria finita di default in due modi: è in grado di
computare una qualunque delle estensioni oppure tutte le estensioni della teoria fornita.
Tecnicamente il programma consente di inserire teorie di default non normali, ovvero
non implica alcun tipo di restrizione sintattica nell’introduzione dei dati, facoltà che non
abbiamo preso in considerazione perché per noi non fondamentale nel raggiungimento
dello scopo previsto. Il programma è in grado di accettare richieste dall’utente, di
iniziare appropriate procedure di ricerca e di computazione e di fornire i risultati di
questi processi. E’ in grado inoltre di fornire inoltre statistiche e dati interessanti come il
tempo di utilizzo del processore(CPU) per risolvere un problema, il numero delle
estensioni calcolate, il tempo impiegato per determinare ogni singola estensione ed il
numero delle sotto-estensioni calcolate. DeReS può essere così suddiviso in tre moduli
costituenti:
i. Default Reasoning Module: il cuore del programma che si occupa di
sistematizzare le procedure attraverso cui è possibile il ragionamento di
default.
ii. Prover Module: il modulo che si occupa di computare le teorie di default
inserite fornendo le relative estensioni.
iii. Interfaccia Utente: un insieme di comandi adatti a dialogare con il
programma ed una visualizzazione grafica dei problemi risolti dal programma
stesso.

41
In realtà il programma è piuttosto datato in quanto i sorgenti risalgono al 1996. Ciò significa che buona
parte delle librerie di compilazione da esso usate non esistono più o sono state sostituite. Siamo riuscite a
recuperarle ed ad ottimizzare il programma affinché possa funzionare sotto le distribuzioni Linux attuali.
Una copia dei file binari ricompilati è stata spedita agli sviluppatori di DeReS i quali ne hanno promesso
a breve termine la pubblicazione online.
4.1.1 Default Reasoning Module

Questo modulo è probabilmente il più importante del programma. Esso si basa


sull’osservazione che ogni estensione di una teoria di default del tipo ς = (A, Δ) è della
forma υ = (A ∪ CONS(ΔI)) per un insieme di default tale che ΔI ⊆ Δ. Perciò
un’estensione può essere generata da A assieme a differenti conseguenze dell’insieme
dei default Δ. Tale osservazione implica la necessità di costruire un metodo, detto
generate-and-check 42 , per ottenere rispettivamente una o tutte le estensioni della teoria.
L’idea è perciò quella di costruire tutti i sottoinsiemi di Δ e per ognuno di essi verificare
quale sia l’insieme dei default in grado di generare l’estensione. Per ottenere questo
risultato DeReS usa la procedura Is_Extension(A, Δ, ΔI):
i. data una teoria di default ς = (A, Δ) ed un insieme del tipo ΔΙ ⊆ Δ essa
restituisce il valore booleano vero se ΔI è l’insieme dei default generanti la
teoria ς ed il valore booleano falso in caso contrario.

Per generare i sottoinsiemi di Δ , DeReS crea un albero binario i cui nodi sono i
sottoinsiemi di Δ . L’albero è costituito nel seguente modo: sia Δ = {δ1, δ2,..., δn}, la
radice dell’albero è l’insieme vuoto dei sottoinsiemi di Δ , se un nodo a, alla profondità
k, è etichettato dall’insieme ΔI ⊆ Δ allora il figlio sinistro sarà etichettato da ΔI∪{δk + 1}
mentre il figlio destro di a sarà nuovamente etichettato ΔI. (fig.1)
DeReS considera i nodi dell’albero in accordo con il tipo di ricerca in
profondità. Per evitare di considerare lo stesso sottoinsieme più volte, un insieme di
default è controllato attraverso la procedura Is_Estension solo quando si incontra la
prima volta come etichetta di un nodo.

42
Letteralmente genera e controlla, si riferisce al fatto che ciò che viene prodotto dal programma debba
essere in qualche modo registrato e controllato per evitare errori e ridondanze.

1 ∅

1,2 1 2


1,2, 1,2 1,3 1 2,3 2 3
3

Fig. 1. L’albero di tutti i sottoinsiemi di X = {1,2,3}.

4.1.2 Prover Module

Questo modulo si occupa di computare le estensioni delle teorie di default


inserite. DeReS implementa due tipi di moduli per la computazione delle estensioni, un
modulo cosiddetto locale ed un modulo cosiddetto completo. Il primo tipo di modulo
non effettua un controllo su tutte le estensioni della teoria con l’algoritmo descritto
sopra, perciò produce un risultato corretto seppure non completo. Il secondo modulo
invece esegue tale controllo su tutte le estensioni.

Ex. 3.1 Sia ς = (A, Δ) una teoria di default con A = {p} e Δ ={δ1, δ2, δ3}, dove:
p: :x : ¬x
δ1 = , δ2 = , δ3 = .
¬p x ¬x
Supponiamo di cercare le estensioni della teoria esaminando i default contenuti in essa.
Per ogni ΔI ⊆ Δ dobbiamo controllare quando (A ∪ CONS(ΔI)) è un’estensione della
nostra teoria. Ma tale teoria ha evidentemente una sola estensione data da (A
∪ CONS(δ1)), risultato che viene computato da DeReS come l’insieme dei default
generanti attraverso il prover module locale. Invocando invece il prover module
completo otterremo anche quelle due estensioni generate dai sottoinsiemi di Δ. E’
evidente come l’utilizzo dei due moduli dipenda dalle nostre necessità. Infatti il primo
modulo è sufficiente nel caso in cui si vogliano determinare quelle estensioni di una
teoria che siano derivate dall’insieme completo dei default, mentre il secondo nel caso
in cui si vogliano analizzare anche le sotto-estensioni derivabili dai gruppi dei
sottoinsiemi di default. Le esigenze possono così corrispondere al tipo di approccio che
presupponiamo di attuare, scettico oppure fiducioso, computando rispettivamente tutte
le estensioni o solo alcune.

4.1.3 Interfaccia Utente

L’interfaccia utente in DeReS si ottiene attraverso l’invocazione del programma


in una shell. Ogni teoria che si vuole processare attraverso DeReS si costituisce di tre
file. Nel primo vengono indicati i nomi dei dei due file che costituiranno
rispettivamente gli assiomi della teoria ed i default della stessa. Una volta caricata la
nostra teoria abbiamo la possibilità di scegliere il prover module rispettivamente tra
locale e completo, abbiamo la possibilità di farci mostrare le estensioni della teoria,
vedere quanto tempo impiega il programma a calcolarle etc.

4.2 Esperimenti con la logica di Default


Grazie a questo potente mezzo abbiamo ora la possibilità di vedere fattivamente come si
comporta una teoria di default sottoposta ad indagine. Il senso di compiere questo
esperimento sta nel valutare quanto possa essere buona questa logica come forma di
rappresentazione del ragionamento. Supponiamo infatti di esser giunti ad una
conclusione dopo un ragionamento per default. Vogliamo sapere se il nostro
ragionamento ha senso oppure è destituito di fondamento, oppure infine ha una ragione
parziale. Se costruiamo una teoria seguendo le nostre convinzioni, quindi fissando
rispettivamente gli assiomi ed i default che riteniamo validi, potremmo considerare il
nostro ragionamento come un’estensione di tale teoria. Andremo allora alla ricerca,
attraverso DeReS, dell’esistenza di questa teoria, ovvero della possibilità che essa sia
coerente con la base della teoria stessa e quindi possa esserne derivata come estensione.
Se il processo di computazione porterà alla luce l’esistenza di tale estensione
significherà che il nostro ragionamento è valido, perché è coerente con le assunzioni
iniziali, viceversa la non esistenza di un’estensione corrispondente alle nostre
conclusioni dimostra il contrario. Pensiamo ad esempio ad un ragionamento così
strutturato:
i. Il Re è il pezzo più importante degli scacchi e come tale dev’essere preservato.
ii. Se si eliminano vicendevolmente due pezzi uguali dalla scacchiera la
situazione non cambia.
iii. La prima fase del gioco deve mirare ad occupare il centro della scacchiera.
iv. Lo scopo del gioco è mettere in scacco matto il Re avversario.
dove i, ii, iii sono evidentemente gli assiomi del mio ragionamento. Per un’esigenza
particolare potremmo dover spostare un pedone e scoprire il Re contravvenendo alla
prima regola che avevamo fissato. Adduciamo come giustificazione il fatto che tale
mossa sia conveniente in quel momento e che secondo la nostra strategia essa è una
buona mossa per conseguire l’obiettivo di vincere la partita. Otteniamo effettivamente il
nostro risultato, abbiamo vinto, declassando la regola numero uno ed aumentando la
portata della regola 4. Il nostro ragionamento è sensato, infatti esiste un’estensione della
nostra teoria che permette di compiere operazioni di questo tipo. Se avessimo avuto al
posto della regola uno un’asserzione perentoria che vietava di sottoporre il Re a rischio
il nostro ragionamento seppur utile sarebbe stato illogico. Evidentemente la
contraddittorietà andava ricercata nella validità delle nostre assunzioni. Tuttavia
nell’ipotesi che esse siano le uniche e sole valide premesse che abbiamo sullo stato della
realtà è evidente come la mossa sia illogica.
Conclusione

Il lavoro ha cercato di analizzare per quanto possibile il ragionamento di default


e dettarne una formalizzazione. Abbiamo visto cosa esso sia e quali siano le sue
proprietà, sia formali che sostanziali. Dall’analisi abbiamo volutamente escluso alcune
formalizzazioni pertinenti la logica di default che ci sembravano eccessivamente
particolari, successive al lavoro di Reiter[1980] e probabilmente fuorvianti per il senso
stesso della tesi. Esse riguardano principalmente il modo in cui i default debbono essere
formalizzati, ovvero come essi debbono essere scritti in linguaggio logico per meglio
rappresentare un sistema omogeneo di conoscenze. Svariate sono le analisi di cui le più
importanti sono probabilmente quelle di Lukaszewicz[1984] e McDermott[1980]. La
scelta consapevole è dettata dalla qualità di queste formalizzazioni rispetto a quella qui
presentata. Sebbene esse siano in grado probabilmente di esprimere attraverso le loro
strutture un maggior numero di problemi, di asserzioni e di ragionamenti, per buona
parte di essi perdono o modificano proprietà per noi fondamentali. Pensiamo ad
esempio all’esistenza di un’estensione per i default normali, significa l’esistenza di una
prova per default del nostro ragionamento, è difficile rinunciarvi in virtù di una maggior
rappresentatività. Abbiamo privilegiato dunque l’equilibrio tra rappresentazione e
capacità d’analisi, e ci sembra adeguandoci alla letteratura in merito, che Reiter[1980]
rappresenti proprio questo equilibrio. Bisogna infine aggiungere come sarebbe stato
interessante sviluppare le capacità computazionali della logica di default, utilizzando
sistemi di dimostrazione automatica non monotònica anche differenti da DeReS. Ad
esempio diversi studi sono stati compiuti sulle capacità di introdurre goal per negazione
in Prolog(linguaggio di programmazione logica) fornendo la capacità appunto di
rappresentare sistemi non monotònici. Sarebbe stato altresì interessante approfondire
l’analisi dei sistemi grafici dello Stanford Graph Base, con le loro applicazioni curiose e
molto interessanti. Bisognerebbe infine aggiungere, nell’ambito della programmazione
logica, tutti quei sistemi che abbiamo analizzato per ottenere delle buone conoscenze da
applicare nelle regole di default, quindi la capacità valutativa e l’abduzione all’interno
di DeReS.
Bibliografia

Benzi M. [1997]
Il Ragionamento Incerto – Probabilità e logica in intelligenza artificiale,
Milano: Angeli.
Besnard P. [1988a]
Supposition-Based Logic for Automated Nonmonotonic Reasoning, In Proc.
AAAI-83, pp. 27-30, Washington.
Besnard P. [1988b]
An Introduction to Default Logic, Springer-Verlag.
Brewka G. [1986]
Tweety – Still Flying: Some Remarks on Abnormal Birds – Appliable rules and a
default prover, In Proc. AAAI-86, pp. 8-12, Philadelphia.
Carlson[1995]
Truth-conditions of generic sentences: Two contrasting views, in The Generic
Book, Chicago: University of Chicago Press, 1995.
Cholewinsky P. e Marek V. W. e Truszcynski M. [1996]
Default reasoning system DeReS, In Proc. 5th Internet conference on the
principles of knowledge representation and reasoning, Cambridge MA:
Cambridge University Press.
Cholewinsky P. e Marek V. W. e Truszcynski M. [1999]
Computing with default logic, Artificial Intelligence, vol. 112, pp. 105-146.
Cohen A. [1987]
Default Reasoning and Generics, Computational Intelligence, V.13, N. 4,
Blackwell Publisher.
Delgrande J. P. [1988]
An approach to default reasoning based on first-order conditional logic,
Artificial Intelligence, vol. 36, pp. 63-90.
Dung P. M. e Bodarenko A. e Kowalski R. A. [1997]
An abstract argumentation-theoretic approach to default reasoning, Artificial
Intelligence, vol. 93, pp. 67-74.
Eiter T. e Gottlob G. e Leone N. [1997]
Semantics and complexity of abduction from default theories, Artificial
Intelligence, vol. 90, pp. 177-233.
Fischer Servi G. [1990]
Quando l'eccezione è la regola: le logiche non monotone, Milano: McGraw-
Hill.
Israel D. [1980]
What’s wrong with nonmonotonic logics?, In Proc. AAAI-80, pp. 99-101,
Stanford.
Jiang W. S. [1987]
Commonsense reasoning in Prolog, ACM, Boston: Harvard University Press.
Johnson W. E. [1964]
Logic, pp. 174-176, New York: Dover, 1964.
Kramosil I. [1975]
A Note on Deduction Rules with Negative Premises, In Proc. IJCAI-75, pp. 53-
56, Tblissi.
Linke T. e Schaub T. [1999]
New foundations for automation of default reasoning, Bielefeld: University of
Bielefeld Press.
Linke T. e Schaub T. [2000]
Alternative foundation for Reiter’s default logic, Artificial Intelligence, vol. 124,
pp. 31-86.
Lolli G. [1991]
Introduzione alla logica formale, Bologna: Il Mulino, 1991.
Lukaszewicz W. [1984a]
Nonmonotonic logic for default theories, In Proc. AAAI-86, pp. 406-410,
Philadelphia.
McCarthy J. [1959]
Programs with Common Sense, In Mechanisation of Thought Processes,
Proceedings of the Symposium of the National Physics Laboratory, pp. 77-84,
London: Her Majesty's Stationery Office.
McCarthy J. [1969]
Some philosophical problems from standpoint of artificial intelligence, In
Machine Intelligence vol. 4, Edinburgh: Edinburgh University Press.
McDermott D. e Doyle J. [1980]
Non-Monotonic Logic I, In Special Issue on Non Monotonic Logics, Artificial
Intelligence vol. 13, pp. 50-103.
Palladino D. [2003]
Corso di logica – Introduzione elementare al calcolo dei predicati, cap. 5,
Roma: Carrocci.
Pollock J. L. [1994]
Justification and defeat, Artificial Intelligence, vol. 67, pp. 377-407.
Poole D. [1988]
A logical framework for default reasoning, Artificial Intelligence, vol. 36, pp.
27-47.
Reiter R. [1978a]
On Reasoning by Default, In Proc. Theoretical Issues in Natural Language
Processing, pp. 210-218, Urbana.
Reiter R. [1980]
A logic for default reasoning, In Special Issue on Non Monotonic Logics,
Artificial Intelligence vol. 13, pp. 103-147.
Reiter R. e Criscuolo G. [1981]
On interacting defaults, In Proc. IJCAI-81, pp- 270-276, Vancouver.
Roos N. [1997]
Reasoning by cases in default logic, Artificial Intelligence, vol. 99, pp. 165-183.
Searle J. [1959]
On determinables and the notion of resemblance, In Proc. of the Aristotelian
Society, supplementary vol. 33, London: Harrison and Sons.
Searle J. [1967]
Determinables and determinates, In The Encyclopedia of Philosophy, vol. 4, pp.
357-359, New York: MacMillan Publishing.
Toulmin S. [1958]
The uses of arguments, Cambridge MA: Cambridge University Press.

You might also like