Correttezza e Completezza del metodo di tableaux per la logica proposizionale
Se consideriamo l’insieme infinito delle formule della logica proposizionale , possiamo notare che in questo insieme esistono un insieme di formule che sono tautologie e un insieme di formule che sono dimostrabili con il metodo di tableaux , vogliamo dimostrare che i due insiemi ( sono in verità sotto-insiemi dell’insieme infinito delle formule della logica proposizionale ) sono lo stesso insieme , ovvero che tutte le formule che sono tautologie sono dimostrabili con il metodo di tableaux e viceversa , le formule dimostrabili con il metodo di tableaux sono formule tautologie. Consideriamo ora e , ci chiediamo allora come possiamo dimostrare ? Beh possiamo farlo con la doppia inclusione , ovvero :
Osserviamo inoltre che :
- se dimostriamo allora stiamo dimostrando la correttezza del metodo di tableaux
- se dimostriamo che allora stiamo dimostrando la completezza del metodo di tableaux
Correttezza
Possiamo osservare che : se abbiamo una alfa formula , noi quello che facciamo e “dedurre” e :
mentre se abbiamo una beta formula , noi quello che facciamo è “supporre” o o :
quindi notiamo che :
- Una interpretazione rende soddisfacibile [ rende vera la formula ] una formula , se e solo se , rende soddisfacibile anche e
- Una interpretazione rende soddisfacibile una formula , se e solo se , rende soddisfacibile una delle due tra e
Quindi l’idea della dimostrazione è che se facciamo il tableaux di applicando e formule, arriviamo alla fine , e otteniamo l’impossibilità di soddisfare sia una che l’altra , allora neanche la formula originale , ovvero è soddisfacibile. Ci serve però dire sta roba in modo più preciso :
Definizione
Diciamo che una formula è soddisfacibile se esiste una interpretazione che la rende vera.
Notiamo da questa definizione che è soddisfacibile se e solo se non è una contraddizione [ è falsa sempre ]. Quindi possiamo dire che :
Definizione
Un insieme di formule è soddisfacibile se esiste una interpretazione che rende vere TUTTE le formule in .
Teorema
Se è dimostrabile con il metodo di tableaux , allora è una tautologia
Dimostrazione :
Se non fosse una tautologia allora sarebbe soddisfacibile , ma per l’osservazione di prima sulle e formule , se facciamo il tableaux di , avremo sempre un ramo di formule soddisfacibili , più precisamente avremo un ramo , tale che l’insieme di tutte le formule su quel ramo , questo insieme è soddisfacibile . Ma se ad un certo punto si chiudono tutti i rami , allora per ogni ramo [ chiuso ] l’insieme delle formule su quel ramo , non è soddisfacibile. Ma quindi otteniamo che se il tableaux di si chiude allora per nessuna interpretazione è soddisfacibile , allora è una tautologia.
Completezza
Vogliamo ora dimostrare che se è una tautologia allora è dimostrabile con il metodo di tableaux [si chiude].
Abbiamo bisogno prima di un ingrediente : insiemi di Hintikka
Definizione
Un insieme di formule è un insieme di Hintikka [ per logica proposizionale ] se succedono 3 cose [ che sono poi le proprietà dei rami che rimangono aperti ] :
- : in non c’è mai una variabile e la sua negata [ solo una delle due ]
- : se in c’è una formula di tipo allora necessariamente ci devono essere le sue due componenti e
- : se in c’è una formula di tipo allora necessariamente c’è una delle due componenti e
Possiamo osservare che : se un tableaux [ completo ] ha un ramo aperto , allora l’insieme delle formule su quel ramo è un insieme di Hintikka.
Lemma
Se è un insieme di Hintikka allora è soddisfacibile
Dimostrazione Lemma di Hintikka : Per induzione sulla lunghezza [numero di simboli nella formula] delle formule dell’insieme : Passo Base : Consideriamo solo formule che contengono 1 o 2 simboli , quindi o sono variabili del tipo oppure , questo è ok per la proprietà . Quindi ora fissiamo e consideriamo che è vera , ovvero che se prendo un insieme di di formule di lunghezza esisterà un’interpretazione che rende soddisfacibile [ la mia ipotesi induttiva ]. Passo Induttivo : Ora consideriamo ovvero le formule di lunghezza , osserviamo che una formula di lunghezza potrà essere una formula o una formula : - caso 1. : se formula ⇒ per la proprietà , in ci saranno sia che , ma queste due avranno necessariamente lunghezza , ma per ipotesi induttiva esiste una interpretazione che soddisfa sia che ⇒ soddisfa anche . - caso 2. : se formula ⇒ per la proprietà , in ci saranno una delle due tra e , ma queste due avranno necessariamente lunghezza , ma per ipotesi induttiva esiste una interpretazione che soddisfa almeno una delle due ⇒ soddisfa anche .
Teorema
Se è una tautologia allora è dimostrabile con il metodo di tableaux [si chiude].
Dimostrazione : Sia una tautologia , se non fosse dimostrabile col metodo di tableaux , allora partendo da e sviluppando tutto il tableaux otteniamo sempre almeno un ramo aperto , ma se è un ramo aperto allora l’insieme di formule su quel ramo è un insieme di Hintikka [ per l’osservazione di prima ]. Ma allora per il Lemma di Hintikka sarebbe soddisfacibile , allora esiste un’interpretazione che rende vera tutte le formule , ma allora rende vera anche [ soddisfacibile ] , ma allora non è una tautologia .
Notazione polacca
Nella notazione polacca , invece di scrivere
- si scrive
- si scrive
- si scrive questo ci semplifica un sacco perché possiamo scrivere formule senza l’utilizzo delle parentesi. Ad esempio proviamo a scrivere la formula :
Correttezza e completezza del metodo di tableaux per FOL
Vogliamo dimostrare che - secondo la definizione di formula valida e formula dimostrabile con il metodo di tableaux - tutte le formule dimostrabili con il metodo di tableaux sono formule valide ( Con formula valida si intende che quella formula è sempre True ). La “tattica” quindi è simile a quella per la logica proposizionale , quindi dimostriamo la doppia inclusione :
- da un lato dimostriamo che se una formula è dimostrabile con il metodo ⇒ è una formula valida
- dall’altro lato dimostriamo che se una formula è valida ⇒ esiste una dimostrazione con il metodo
1. Correttezza
Teorema
Se è dimostrabile con il metodo di tableaux , allora è una formula valida.
Dimostrazione : Il nostro obiettivo è dimostrare che se parto da e faccio il tableaux per e ottengo tutti i rami chiusi , allora è una formula valida. L’idea di base è che se consideriamo
- è dimostrabile
- è una formula valida e siccome il teorema afferma : , possiamo dimostrare il contrario ovvero : ovvero che “se NON è una formula valida , allora , NON è dimostrabile” . ( siccome dicono la stessa cosa )
Quindi l’idea della dimostrazione sta nei seguenti passi ( osservazioni ) :
- non è una formula valida se e solo se è soddisfacibile , ovvero che esiste una interpretazione che la rende True.
Siccome è soddisfacibile allora quando vado a svilupparla ci sono 4 casi.
-
incontro formule di tipo e quindi è come la logica proposizionale [ vedi sopra ]
-
incontro formule di tipo e quindi è come la logica proposizionale [ vedi sopra ]
-
incontro formule di tipo ovvero formule di tipo universale :
dove è un qualunque parametro , e siccome è un qualunque elemento del dominio , sicuramente con la stessa interpretazione che rende soddisfacibile ( quelle che sono sopra la riga ), rendiamo soddisfacibile anche , e quindi entrambe sono soddisfacibile
- incontro formule di tipo ovvero formule di tipo esistenziale :
dove è un nuovo parametro , e siccome è un nuovo elemento del dominio sicuramente con la stessa interpretazione che rende soddisfacibile ( quelle che sono sopra la riga ) sicuramente rendiamo soddisfacibile anche , e quindi entrambe sono soddisfacibili.
Siccome lo sviluppo del tableaux di è una sequenza di tableaux intermedi , ovvero che prima ho la formula , poi ho con lo sviluppo di quest’ultima e cosi via … Osserviamo che partiamo da che è soddisfacibile e quindi ha almeno un ramo soddisfacibile , allora sicuramente quando lo andiamo ad estendere e ottenere l’altro tableaux , siccome seguo i 4 possibili sviluppi che posso incontrare , ottengo che anche ha almeno un ramo soddisfacibile , e questo vale per sempre ancora andando avanti.
- Quindi avremo sempre un ramo aperto e quindi il tableaux non si chiude e quindi non è dimostrabile
2. Completezza
Teorema
Se è una formula valida , allora , è dimostrabile con il metodo di tableaux.
Prima della dimostrazione , ci serve definire un metodo “automatico” per lo sviluppo del tableaux :
Definizione
Un tableaux sistematico è un tableaux che viene sviluppato seguendo queste regole :
- Fissiamo un ordine arbitrario per i parametri che andiamo ad usare quando incontriamo o una -formula o una -formula.
- Sviluppiamo le formule nell’ordine in cui appaiono [ sarà più lungo ma ok ]
- Quando incontriamo una -formula , usiamo il primo parametro che non abbiamo utilizzato per una formula di tipo sul ramo che stiamo considerando
- Inoltre quando incontriamo una -formula , la ricopiamo sulle “foglie” del nostro tableaux , in modo da “ricordarci” che possiamo riutilizzarla
Adesso invece ci serve un’altro ingrediente speciale che abbiamo già utilizzato per la logica proposizionale : ovvero gli insiemi di Hintikka
Definizione
Un insieme di formule è un insieme di Hintikka [ per logica di primo ordine ] se succedono 5 cose [ che sono poi le proprietà dei rami che rimangono aperti ] :
- : in non c’è mai una formula e la sua negata [ solo una delle due ]
- : se in c’è una formula di tipo allora necessariamente ci devono essere le sue due componenti e
- : se in c’è una formula di tipo allora necessariamente c’è una delle due componenti e
- : se in c’è una formula di tipo allora necessariamente ci sono anche per tutti gli infiniti parametri
- : se in c’è una formula di tipo allora necessariamente ci sarà anche con random
Dimostrazione : Quindi l’idea della dimostrazione è :
- Partendo da e facciamo un tableaux sistematico , se non si chiude [ o è infinito ] allora ci deve essere almeno un ramo aperto.
- Se è un ramo aperto , allora l’insieme di formule che sono nel ramo è un insieme di Hintikka
- Facciamo vedere che ogni insieme di Hintikka è soddisfacibile [Lemma di Hintikka]
Per il punto 3. già lo abbiamo dimostrato per la logica proposizionale , per la logica di primo ordine è identico solo che nel passo induttivo si aggiungono altri 2 casi , ovvero che se la formula che consideriamo di lunghezza :
- è di tipo allora per la prop. ci saranno tutte le altre più corte , per ipotesi induttiva sono soddisfacibili , ma se sono tutte soddisfacibili , viene soddisfatta automaticamente anche [ siccome è universale ]
- è di tipo allora per la prop. ci sarà con random, ancora per ipotesi induttiva è soddisfacibile e quindi è soddisfacibile anche
Quindi se qualunque ramo aperto è un insieme soddisfacibile [perché è un insieme di Hintikka] allora vuol dire che è una formula soddisfacibile , ma se è soddisfacibile vuol dire che diventa almeno una volta True e quindi è False e quindi non può essere valida .