Modulo 16
Modus Ponens¶
Definizione ― Modus Ponens
Il Modus Ponens è una regola di inferenza che stabilisce quanto segue:
- Data un'implicazione \(P \rightarrow Q\) e la verità di \(P\), possiamo concludere \(Q\).
Esempio
- Usiamo le seguenti tre implicazioni come base di partenza:
- Dobbiamo dimostrare perchè \(P \mathop{\wedge} Q \rightarrow R\) è vera.
- Possiamo riscrivere le proposizioni come:
- \(P\) si legge come "per ogni \(x\), se \(x\) è un uomo (\(U(x)\)) allora è mortale (cioè vale \(M(x)\))".
- Nel mondo della Logica possiamo continuare la dimostrazione con il Modus Ponens:
Quantificatori¶
Definizione ― Quantificatore Universale
Il quantificatore universale \(\forall\) (si legge "per ogni") esprime che una formula è vera per tutti gli elementi del dominio.
Definizione ― Quantificatore Esistenziale
Il quantificatore esistenziale \(\exists\) (si legge "esiste almeno uno" o "esiste un") esprime che esiste almeno un elemento del dominio per cui una formula è vera.
Esempio
- Nella Logica Predicativa, è presente, come nella Logica Proposizionale l'insieme dei modelli, ma quest'ultimi vengono rappresentati in maniera differente:
- \(U\) rappresenta l'universo degli oggetti.
- \(P,Q,R\) rappresentano dei sottoinsiemi che applicano un predicato.
- Esempio:
- \(U =\) Universo degli Animali
- \(Q_m(x) = x\) è un quadrupede
- \(R_m(x) = x\) è un rettile
- Prendendo in analisi la frase:
- Nel nostro esempio la possiamo leggere come:
- Ovviamente quest'affermazione è falsa, perciò:
- Cambiamo Universo e Modello:
- \(V =\) essere animati
- \(Q_n(x) = x\) è un uomo
- \(R_n(x) = x\) è mortale
- Prendendo in analisi la frase:
- Nel nostro esempio si legge:
- L'affermazione è vera, perciò:
- Tornando all'esempio del modello \(m\) con Universo \(U\), aggiungiamo una proposizione:
- \(P_m(x) = x\) è squamato
- Prendendo in analisi la frase:
- Sicuramente esiste un elemento che è sia un quadrupede che squamato (il Varano) quindi possiamo concludere che:
- Torniamo all'esempio con il modello \(n\) nell'universo \(V\).
- Aggiungiamo una proposizione:
- \(P_n(x) = x\) ha almeno 100 arti
- Prendendo in analisi la frase:
- L'affermazione è falsa, quindi questra frase non è soddisfatta dal modello \(n\):
Logica Predicativa - Termini¶
Definizione ― Termini
- Un Termine è un elemento dell'insieme delle Variabili oppure un elemento dell'insieme delle Costanti.
- Avendo a disposizione \(n\) termini (\(t_1,t_2,\dots,t_n\)) ed \(f\) è una funzione di arietà \(n\) (quindi può prendere \(n\) argomenti), allora \(f(t_1,t_2,\dots,t_n\)) è anch'esso un termine.
- Dove:
- \(x | y | z | \dots\) fanno parte dell'insieme dei simboli di Variabile.
- \(a | b | c | \dots\) fanno parte dell'insieme dei simboli di Costante (es. \(S =\) Socrate).
- \(f | g | h | \dots\) fanno parte dell'insieme dei simboli di Funzione.
Definizione ― Arietà
- A ciascun simbolo \(f\) nella Logica Predicativa, si suppone che venga accompagnato da un'informazione (un intero positivo \(n\)) che chiamiamo arietà di \(f\), che rappresenta il numero di argomento della funzione \(f\).
Esempio
- La somma \(+\) è una funzione che ha bisogno di due argomento, quindi la sua arietà è \(2\) (funzione binaria).
- Il fattoriale è una funzione che ha bisogno di un solo argomento, quindi la sua arietà è \(1\) (funzione unaria).
- If-Then-Else è una funzione ternaria perchè ha bisogno di tre argomenti, perciò la sua arietà è \(3\).
Logica Predicativa - Formule¶
Definizione ― Termini
- A ciascun simbolo predicativo \(P\) è associato un intero positivo \(n\), chiamato arietà di \(p\), che ne rappresenta il numero di argomenti.
- \(P\) è un elemento che fa parte dell'insieme dei simboli predicativi (oltre a \(Q,R,\dots\)).
- Altre Formule:
- falso
- \(A \mathop{\wedge} B\)
- \(A \mathop{\vee} B\)
- \(A \rightarrow B\)
- \(\neg A\)
- \(\forall x. A\)
- \(\exists x. A\)
Note aggiuntive
- Altre definizioni formali sulle Formule:
- se \(t_1,t_2,\dots,t_n\) sono termini e \(P\) è un simbolo predicativo di arietà \(n\), allora \(P(t_1,t_2,\dots,t_n)\) è una formula.
- se \(A\) è una formula, allora \(\forall x. A\) è una formula.
- se \(A\) è una formula, allora \(\exists x. A\) è una formula.
- nient'altro è una formula!
Esempio
- Si legge come: "non esiste un \(x\) tale che \(x\) è uguale al successore di \(0\)" (terzo assioma di Peano).
- Modo alternativo per scrivere questa formula:
- Verifichiamo che la formula sia sintatticamente corretta:
- \(x\) è un termine
- \(0\) è una costante
- \(succ(x)\) è una funzione unaria, che dato un numero ne restituisce il successore.
- Terminata l'analisi, possiamo concludere che è una formula corretta.
Variabili Legate e Libere¶
Definizione ― Variabili Legate
- Una Variabile \(x\) la chiameremo Legata perchè è agganciata ad un quantificatore ed è indipendente per verificare la veridicità della formula.
Definizione ― Variabili Libera
- Una Variabile \(y\) la chiameremo Libera perchè non è agganciata ad un quantificatore ed il valore di verità di una formula dipende da esse.
Esempio
- Usiamo l'esempio dell'universo \(V\) con modello \(m\) ed aggiungiamo delle costanti:
- \(S =\) Socrate
- \(B =\) Briareo (dio con 100 braccia)
- Verifichiamo alcune proposizioni:
- L'ultima proposizione si legge: "Briareo ha 100 braccia ed ogni uomo è mortale."
- In questo caso la variabile \(x\) sarà la variabile Legata, perchè agganciata ad un quantificatore (\(\forall x\)), mentre \(y\) è una variabile Libera perchè non è agganciata a nessun quantificatore (\(P(y)\)).
- Altri esempi:
- Nell'ultimo esempio, \(z\) è sia legata che libera perchè la prima occorrenza (\(P(z)\)) non è agganciata a nessun agganciatore, mentre la seconda occorrenza (\(R(z)\)) è agganciata a \(\forall z\).
Modelli nella Logica Predicativa¶
Definizione ― Modelli
Un Modello della Logica Predicativa (chiamato anche Struttura) è costituito da:
- un insieme \(U\) (universo)
- \(\forall a \dots \in\) simboli di costante
- notazione: \([[a]] \in A\)
- \(\forall f \dots \in\) simboli di funzione
- notazione: \([[f]] : U \times U \times \dots \times U \rightarrow U\)
- \(\forall P \dots \in\) simboli predicativi
- notazione: \([[P]] \subseteq U \times U \times \dots \times U\)
Esempio
- Consideriamo:
- Prendiamo ora in considerazione la formula:
- La quale si legge: "esiste un numero primo \(y\) maggiore di \(x\) tale che \(y+2\) è primo".
- L'unica variabile libera è \(x\), quindi la verità o falsità di questa formula dipende dal valore che vogliamo associare ad \(x\).
- Esempio:
- In realtà questa formula è vera per qualsiasi \(x\), quindi possiamo scrivere:
- Questa formula si chiama congettura dei numeri primi gemelli.
Ambiente¶
Definizione ― Ambiente
- Un Ambiente (in \(U\)) è una funzione \(\rho :\) variabili \(\rightarrow U\).
Note aggiuntive
- Sia i termini che le formule possono essere interpretate fornendo un ambiente:
Definizione ― Rho Primo
- Dati un ambiente \(\rho\), una variabile \(x\) ed un elemento \(v \in U\), denotiamo con \(\rho [x \rightarrow v]\) l'ambiente \(\rho^\prime\) definito come segue:
Esempio ― Applicazione degli Ambienti sulla Sintassi della LP
- Applicando quindi gli ambienti sui termini della Logica Predicativa:
- Si legge: "qual è il significato di \(x\) nell'ambiente \(\rho\)? quell'elemento di \(u\) che \(\rho\) assegna ad \(x\)."
- Per quanto riguarda le Costanti, l'ambiente \(\rho\) non è rilevante:
- Per le funzioni invece è necessario interpretare ogni termine:
- Quindi, ogni interpretazione \([[t_1]]_\rho\) restituisce un elemento dell'universo \(U\).
- Applichiamo gli Ambienti sulle Formule della Logica Predicativa:
- Nella Seconda Interpretazione Semantica, il risultato delle due interpretazioni (\([[A]]_\rho, [[B]]_\rho\)) sarà \(T\) o \(F\), ed infine si otterrà il risultato finale attraverso le Tavole della Verità.
- Inoltre, sempre nella Seconda Interpretazione Semantica, il primo simbolo \(\mathop{\vee}\) rappresenta un oggetto sintattico, mentre il secondo \(\mathop{\vee}\) rappresenta un oggetto semantico, ovvero un operatore che lavora similmente ad altri operatori (\(+,-\)).
Esempio ― tilizzo del NOT nella Logica Predicativa
- Prendiamo come esempio queste proposizioni e la relativa Formula:
- Sostituiamo \(x\) con \(a\), deducendo quindi che \(a\) è un particolare leone:
- La seconda ipotesi che abbiamo a disposizione è:
- Sicuramente varrà anche per quel particolare leone \(a\):
- A questo punto, usiamo il Modus Ponens per derivare che \(a\) è feroce:
Istanza di una Variabile¶
Definizione ― Istanza di una Variabile
- Data una qualunque formula \(A\), denotiamo con \([b/x]A\) la formula ottenuta sostituendo \(b\) ad ogni occorrenza libera di \(x\) in \(A\).
Esempio ― Perchè è necessaria questa notazione
-
- \(Q_n(x) = x\) è un uomo
- \(R_n(x) = x\) è mortale
- \(P_n(x) = x\) ha 100 arti
Usiamo l'esempio del modello \(n\) con le seguenti proposizioni:
\[\begin{array}{c} \frac{\exists x. P(x)}{P(a)} \\ \frac{\exists x. Q(x)}{Q(a)} \\ \\ P(a) \mathop{\wedge} Q(a) \end{array}\]
$$
- Ovviamente \(P(a) \mathop{\wedge} Q(a)\) è falso, perchè sappiamo che non esiste un uomo con 100 arti.
- Dobbiamo quindi differenziare le due istanze in quanto non potranno avere entrambe \(a\).
Esempio
- Nell'ultimo esempio, \(x\) rimane inalterato nella seconda parte perhè è legato ad un quantificatore.
Tableu Predicativi¶
Definizione ― Istanza di una Variabile
Un Tableau Predicativo è una tecnica utilizzata in logica predicativa per verificare la soddisfacibilità di una formula o per dimostrare la validità di un argomento logico. Si basa sull'espansione sistematica della formula mediante regole logiche, introducendo variabili, termini e quantificatori fino a raggiungere una contraddizione (nel caso di formule insoddisfacibili) o una struttura completa.
Formule per i Tableu Predicativi
Esempio
- Sappiamo che questa è una formula valida: proviamo a derivarlo con i Tableu Predicativi:
- Tra il secondo e terzo passaggio, abbiamo applicato la regola del \(\forall\) ed istanziamo un \(x\) per ottenere \(P(a)\).
- Tra il terzo e quarto passaggio, applichiamo la regola del \(\neg \exists x. A\) ed istanziamo \(x\).
- Il Tableu non viene chiuso perchè abbiamo istanziato la prima parte della formula piuttosto che la seconda.
- Modificando il procedimento: