10.06.2013 Views

Logica Matematica Corso di Laurea in Informatica ... - Mbox.dmi.unict.it

Logica Matematica Corso di Laurea in Informatica ... - Mbox.dmi.unict.it

Logica Matematica Corso di Laurea in Informatica ... - Mbox.dmi.unict.it

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

110 CAPITOLO 5. CALCOLO DELLA RISOLUZIONE<br />

Prima <strong>di</strong> <strong>di</strong>mostrare il viceversa, <strong>in</strong>troduciamo la seguente operazione su<br />

<strong>in</strong>siemi <strong>di</strong> clausole, con la notazione<br />

S l = {C \ {l c } : C ∈ S e l /∈ C}.<br />

Analogamente per Slc, osservando che (lc ) c = l,<br />

Slc = {C \ {l} : C ∈ S e lc /∈ C}.<br />

L’<strong>in</strong>sieme S l si ottiene da S tenendo le clausole che non contengono né l né<br />

l c , elim<strong>in</strong>ando quelle che contengono l e mo<strong>di</strong>ficando quelle che contengono<br />

l c con l’elim<strong>in</strong>azione <strong>di</strong> l c .<br />

Lemma 5.1.5. Se S è <strong>in</strong>sod<strong>di</strong>sfacibile, anche S l e S lc<br />

lo sono.<br />

Dimostrazione. Supponiamo che S l sia sod<strong>di</strong>sfatto da i (per S lc<br />

il <strong>di</strong>scorso è<br />

analogo). Poiché né l né l c occorrono <strong>in</strong> S l , i non è def<strong>in</strong><strong>it</strong>a per l e la si può<br />

estendere a i ′ ponendo i ′ (l) = 1.<br />

Le clausole <strong>di</strong> S che sono anche <strong>in</strong> S l perché non contengono né l né l c e<br />

che sono sod<strong>di</strong>sfatte da i cont<strong>in</strong>uano a essere sod<strong>di</strong>sfatte da i ′ . Le clausole <strong>di</strong><br />

S che si ottengono da clausole <strong>di</strong> S l re<strong>in</strong>serendo il letterale l c che era stato<br />

tolto, cont<strong>in</strong>uano a essere sod<strong>di</strong>sfatte da i ′ . Le clausole <strong>di</strong> S che non sono <strong>in</strong><br />

S l perché contengono l sono sod<strong>di</strong>sfatte da i ′ (l) = 1.<br />

Vale anche il viceversa (esercizio).<br />

Se S è f<strong>in</strong><strong>it</strong>o, Sl e Slc hanno meno letterali <strong>di</strong> S. Iterando il passaggio<br />

da S a Sl e Slc, determ<strong>in</strong>ando (Sl ) M , (Slc) M e via riducendo, si perviene a<br />

<strong>in</strong>siemi la cui <strong>in</strong>sod<strong>di</strong>sfacibil<strong>it</strong>à è facilmente deci<strong>di</strong>bile. L’organizzazione <strong>di</strong><br />

questo proce<strong>di</strong>mento sui vari <strong>in</strong>siemi <strong>di</strong> clausole non è semplice, e useremo<br />

Sl e Slc solo per <strong>di</strong>mostrare, per S f<strong>in</strong><strong>it</strong>o, il<br />

Teorema 5.1.6 (Completezza). Se S è <strong>in</strong>sod<strong>di</strong>sfacibile, allora S ⊢ ✷.<br />

Dimostrazione. La <strong>di</strong>mostrazione è per <strong>in</strong>duzione sul numero <strong>di</strong> letterali degli<br />

<strong>in</strong>siemi <strong>di</strong> clausole. Sl e Slc hanno meno letterali <strong>di</strong> S e sono <strong>in</strong>sod<strong>di</strong>sfacibili.<br />

per ipotesi <strong>in</strong>duttiva, Sl ⊢ ✷ e Slc ⊢ ✷. Se nella refutazione <strong>di</strong> Sl si re<strong>in</strong>tro-<br />

duce l c nelle clausole <strong>di</strong> S l che sono foglie e che si ottengono da clausole <strong>di</strong> S<br />

per cancellazione <strong>di</strong> l c , questo letterale si trasmette nelle clausole risolventi,<br />

e la derivazione <strong>di</strong>venta una derivazione <strong>di</strong> lc da S. Analogamente, se nella<br />

refutazione <strong>di</strong> Slc si re<strong>in</strong>troduce l nelle clausole da cui era stato cancellato,<br />

si ottiene una derivazione <strong>di</strong> l da S.<br />

Accostando queste due derivazioni e aggiungendo una risoluzione tra l e<br />

lc , si ottiene una refutazione <strong>di</strong> S.<br />

Per la base dell’<strong>in</strong>duzione, si può considerare il caso <strong>di</strong> zero letterali, e<br />

allora S deve contenere solo la clausola ✷, che è qu<strong>in</strong><strong>di</strong> derivabile da S.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!