La logica • Dare un significato preciso alle affermazioni matematiche • Introdurre al ragionamento logico • Applicazioni in Informatica: – – – – Disegno di circuiti Specifica di sistemi Progettazione di software Verifica di correttezza di programmi La logica • La logica proposizionale • La logica dei predicati – Quantificatori universali ed esistenziali • Introduzione alle dimostrazioni Proposizioni • Proposizione: una sentenza dichiarativa cui è possibile assegnare, in modo non ambiguo, un valore di verità. – Può essere vera o falsa ma non entrambe • Variabili Proposizionali: p, q, r, s • Valori di verità: vero (T) o falso (F) Proposizioni • Esempi di proposizioni: – 1+1=2 – Parigi è la capitale della Francia – Parigi è la capitale della Germania • Non sono Proposizioni: – Che ora è? –x>1 – Carlo è alto Proposizioni composte • Nuove proposizioni formate da proposizioni esistenti usando operatori logici • Chiamate anche: formule proposizionali o espressioni della logica delle proposizioni • Operatori logici: (negazione), (congiunzione), (disgiunzione), (implicazione), (equivalenza) Negazione •Se p è una proposizione, la negazione di p, denotata da p, è “non è vero che p” – “not p” TABLE 1 (1.1) 歐亞書局 P. 3 Congiunzione e Disgiunzione • Se p e q sono proposizioni, la congiunzione di p e q, denotata p q, è la proposizione “p and q” (“p e q” ) • Se p e q sono proposizioni, la disgiunzione di p e q, denotata p q, è la proposizione “p or q” (“p o q” ) TABLE 2 (1.1) 歐亞書局 P. 4 TABLE 3 (1.1) 歐亞書局 P. 4 Disgiunzione esclusiva • Se p e q sono proposizioni, la disgiunzione esclusiva di p e q, denotata p q, è la proposizione che è vera esattamente quando una tra p e q è vera (ma non entrambe) TABLE 4 (1.1) 歐亞書局 P. 6 Implicazione (conditional statement) • Se p e q sono proposizioni, la implicazione p q è la proposizione “ se p allora q” – p: ipotesi (o antecedente o premessa) – q: conclusione (o conseguenza) Se p allora q • Molti modi per esprimere l’implicazione: q se p, q quando p, q ogni qualvolta che p, p è (condizione) sufficiente per q, q è (condizione) necessaria per p, p solo se q, q a meno che “not p” ….. TABLE 5 (1.1) 歐亞書局 P. 6 Implicazione Inversa, Contraria, Contronominale •pq • Inversa: q p (Converse) • Contronominale: q p (Contrapositive) • Contraria: p q (Inverse) Inversa, Contraria, Contronominale • Due proposizioni composte sono equivalenti se hanno sempre lo stesso valore di verità • Ogni implicazione p q è equivalente al proprio contronominale q p – L’inversa q p è equivalente alla contraria p q (ma non sono equivalenti a p q ) Doppia Implicazione (biconditional statement) • Se p e q sono proposizioni, la doppia implicazione p q è la proposizione “p se e solo se q.” – “p è condizione necessaria e sufficiente per q” – “p iff q” TABLE 6 (1.1) 歐亞書局 P. 9 Uso implicito di doppia implicazione • La doppia implicazione non è sempre esplicita nel linguaggio naturale • “Se mangi tutta la minestra, allora puoi avere il dolce.” Con il significato: • “Puoi avere il dolce se e solo se mangi tutta la minestra.” • Doppia implicazone implicita nelle definizioni: • “n è pari se è divisibile per 2” • ma è implicita l’implicazione inversa Tavoledi verità per le proposizioni composte TABLE 7 (1.1) 歐亞書局 P. 10 Precedenza degli operatori logici • La negazione è applicata prima degli altri operatori • La congiunzione ha precedenza sulla disgiunzione • Implicazione e doppia implicazione hanno precedenza più bassa • Le parentesi sono usate quando sono necessarie TABLE 8 (1.1) 歐亞書局 P. 11 Tradurre frasi del linguaggio naturale Specifiche di sistema • Controllo di non ambiguità • Verifica della consistenza – Quando il software del sistema è in aggiornamento, gli utenti non possono accedere al file system. – Gli utenti possono salvare nuovi file se possono accedere al file system. – Se gli utenti non possono salvare nuovi file, allora il software del sistema non è in aggiornamento. Tautologie e contraddizioni • Tautologia: una proposizione composta che è sempre VERA • Equivalente a T • p p • Contraddizione: una proposizione composta che è sempre FALSA •Equivalente a F •p p TABLE 1 (1.2) 歐亞書局 P. 22 Equivalenza logica • Proposizioni composte che hanno lo stesso valore di verità in ogni possibile caso • p e q sono logicamente equivalenti if p q è una tautologia – denoted by p q or p q Equivalenza logica - Esempi • Leggi di De Morgan: (p q) p q (p q) p q • Distributività: p (p r) (p q) (p r) • Proprietà dell’implicazione: pqp q TABLE 3 (1.2) 歐亞書局 P. 22 TABLE 4 (1.2) pq 歐亞書局 P. 23 TABLE 5 (1.2) 歐亞書局 P. 23 TABLE 6 (1.2) 歐亞書局 P. 24 TABLE 7 (1.2) 歐亞書局 P. 25 TABLE 8 (1.2) 歐亞書局 P. 25 Construire Nuove Equivalenze Logiche • Come mostrare equivalenze logiche: – Usare una tavola di verità – Usare equivalenze logiche già note Dimostrazioni • Una dimostrazione è una valida argomentazione che stabilisce la verità di una affermazione matematica – Argumentazione: una sequenza di affermazioni che portano ad una conclusione – Valida: la conclusione deve seguire dalle affermazioni precedenti (premesse) • Regole di Inferenza Argomentazioni valide nella Logica Proposizionale – “Se hai una password corrente, allora puoi entrare nella rete” – “Tu hai una password corrente” – Quindi, “Puoi entrare nella rete” • Regola di Inferenza (Modus ponens) p q p ______ :q TABLE 1 (1.5) 歐亞書局 P. 66 Un esempio – “Oggi non c’è il sole” – “Andiamo al mare solo se c’è il sole” – “ Quando non andiamo al mare, facciamo una passeggiata” – “Se facciamo una passeggiata, torniamo a casa prima del tramonto” • Conclusione: “Oggi torniamo a casa prima del tramonto” Attenzione! • ((p q) q) p non è una tautologia • “Se fai tutti gli esercizi imparerai bene la materia. • Tu hai imparato bene la materia • Quindi, tu hai svolto tutti gli esercizi.” CONCLUSIONE ERRATA • ((p q) p) q non è una tautologia Logica dei Predicati • Predicato: una proprietà che il soggetto della frase può soddisfare – Ex: x>3 • x: variabile • >3: predicato • P(x): x>3 – FUNZIONE PROPOIZIONALE – P(x1,x2, …, xn): predicato con n argomenti Quantificatori • Quantificazione universale: un predicato è vero per ogni elemento • Quantificazione esistenziale: c’è uno o più elementi per cui un predicato è vero Quantificatore universale • Dominio (o Universo): elementi cui si fa rierimento nelle affermazioni • La quantificazione universale di P(x) è: “P(x) vale per tutti i valori di x nel dominio – denotato da x P(x) • Contresempio: un elemento per cui P(x) è falso – Quandi gli elementi del dominio possono essere listati è equivalente a: P(x1) P(x2) … P(xn) Quantificatore esistenziale • La quantificazione esistenziale di P(x) è: “esiste un valore di x nel dominio tale che P(x) vale” per tutti i valori di x nelThe existential – Denotato da x P(x) – Quandi gli elementi del dominio possono essere listati è equivalente a: P(x1) P(x2) … P(xn) TABLE 1 (1.3) 歐亞書局 P. 34 Altri quantificatori • !x P(x) or 1x P(x) – Esiste un unico valore di x tale che P(x) è vero • Quantificatori con domini ristretti: – x<0 (x2>0) • Condizionale: x(x<0 x2>0) – z>0 (z2=2) • Congiunzione: z(z>0 z2=2) Precedenza di quantificatori • e hanno precedenza maggiore di tutti gli operatori logici – Ex: x P(x) Q(x) • (x P(x)) Q(x) Equivalenze logiche che coinvolgono quantificatori • Espressioni logiche che coinvolgono predicati e quantificatori sono logicamente equivalenti se e solo se essi hanno lo stesso valore di verità • E.g. x (P(x) Q(x)) and x P(x) x Q(x) Negare le espressioni quantificate • x P(x) x P(x) – Negazione di “Tutti gli studenti della classe frequentano il corso di Programmazione”: – “C’è uno studente della classe che non frequenta il corso di Programmazione” x Q(x) x Q(x) TABLE 2 (1.3) 歐亞書局 P. 41 Tradurre il linguaggio naturale in espressioni logiche • “Ogni studente della classe ha studiato Matematica Discreta” x (x ha studiato M.D.) • “Alcuni studenti hanno visitato il Messico”: x (x ha visitato il Messico) • “Tutti gli studenti hanno visitato il Messico o il Canada” : x ((x ha visitato il Messico) (x ha visitato il Canada)) Quantificatori annidati • Due quantificatori sono annidati se uno è nello scope dell’altro – x y (x+y=0) – x y ((x>0) (y<0) (xy<0)) • L’ordine dei quantificatori è importante a meno che non siano tutti universali o tutti esistenziali TABLE 1 (1.4) 歐亞書局 P. 53 Regole di Inferenza per espressioni quantificate • Instanziazione universale – x P(x), P(c) • Generalizzazione universale – P(c) per un generico c, x P(x) • Instanziazione esistenziale – x P(x), P(c) per un c • Generalizzazione esistenziale – P(c) per un c, x P(x) TABLE 2 (1.5) 歐亞書局 P. 70 Generalizzazioni delle regole di inferenza • Combinare regole di infrenza per proposizioni ed espressioni quantificate – Universal modus ponens • x (P(x) Q(x)) P(a), dove a è un particolare elemento nel dominio Q(a) – Universal modus tollens • x (P(x) Q(x)) Q(a) , dove a è un particolare elemento nel dominio P(a)