Logica per la Programmazione

Documenti analoghi
LOGICA DEL PRIMO ORDINE: MOTIVAZIONI, SINTASSI E INTERPRETAZIONI. Corso di Logica per la Programmazione A.A Andrea Corradini

04 - Numeri Complessi

1 IL LINGUAGGIO MATEMATICO

Rappresentazione della Conoscenza. Lezione 2. Rappresentazione della Conoscenza Daniele Nardi, 2008Lezione 2 0

1 Calcolo dei predicati del I ordine. Semantica

LA LOGICA DI HOARE. Corso di Logica per la Programmazione A.A. 2010/11 Andrea Corradini, Paolo Mancarella

Equazioni parametriche di primo grado fratte - Esercizi svolti -

I RADICALI QUADRATICI

CORSO DI LAUREA IN MATEMATICA

Giovanna Carnovale. October 18, Divisibilità e massimo comun divisore

0.1 Esercizi calcolo combinatorio

m = a k n k + + a 1 n + a 0 Tale scrittura si chiama rappresentazione del numero m in base n e si indica

x 2 + (x+4) 2 = 20 Alle equazioni di secondo grado si possono applicare i PRINCIPI di EQUIVALENZA utilizzati per le EQUAZIONI di PRIMO GRADO.

Esercizi sui sistemi di equazioni lineari.

Anno 3. Funzioni esponenziali e logaritmi: le 4 operazioni

SISTEMI LINEARI. x 2y 2z = 0. Svolgimento. Procediamo con operazioni elementari di riga sulla matrice del primo sistema: R 2 R 2 3R

La storia di due triangoli: i triangoli di Erone e le curve ellittiche

Geometria Superiore Esercizi 1 (da consegnare entro... )

Ripasso tramiti esempi - Applicazioni lineari e matrici

Riconoscere e formalizzare le dipendenze funzionali

1 Definizione di sistema lineare omogeneo.

Linguaggi. Claudio Sacerdoti Coen 11/04/ : Semantica della logica del prim ordine. Universitá di Bologna

Precorso di Matematica

SCOMPOSIZIONE IN FATTORI PRIMI:

Le disequazioni frazionarie (o fratte)

EQUAZIONI CON VALORE ASSOLUTO DISEQUAZIONI CON VALORE ASSOLUTO

Esercizi svolti sulla parabola

TEOREMA DEL RESTO E REGOLA DI RUFFINI

EQUAZIONI MATRICIALI

Matematica e-learning - Corso Zero di Matematica. Gli Insiemi. Prof. Erasmo Modica A.A.

Regola del partitore di tensione

SISTEMI LINEARI MATRICI E SISTEMI 1

1. riconoscere la risolubilità di equazioni e disequazioni in casi particolari

Anno 2. Radicali algebrici e aritmetici: condizioni di esistenza

AMBIENTE EXCEL CALCOLO DEL RESTO DELLA DIVISIONE FRA NATURALI

Linguaggi e Grammatiche Liberi da Contesto

Circonferenze del piano

Codice Gray. (versione Marzo 2007)

Risoluzione dei triangoli rettangoli

Sistemi di equazioni lineari

1 Relazione di congruenza in Z

a + 2b + c 3d = 0, a + c d = 0 c d

Funzioni goniometriche

LA LOGICA DEI PREDICATI DEL PRIMO ORDINE

Algoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 5

Programmazione Dichiarativa. Programmazione Logica. SICStus PROLOG PROLOG. Bob Kowalski: "Algoritmo = Logica + Controllo"

Le disequazioni di primo grado

Il Teorema di Kakutani

Disequazioni - ulteriori esercizi proposti 1

ESPONENZIALI E LOGARITMI. chiameremo logaritmica (e si legge il logaritmo in base a di c è uguale a b ).

EQUAZIONI DI PRIMO GRADO

In una palazzina abitata da 20 famiglie, 10 di esse hanno il cane, 2 non hanno n è cane n è gatto mentre 12 famiglie hanno il gatto.

FUNZIONI ELEMENTARI, DISEQUAZIONI, NUMERI REALI, PRINCIPIO DI INDUZIONE Esercizi risolti

Lezioni sullo studio di funzione.

STATISTICHE DESCRITTIVE Parte II

TEORIA RELAZIONALE: INTRODUZIONE

2. APPUNTI SUI FASCI DI CIRCONFERENZE (raccolti dal prof. G. Traversi)

Prodotti scalari e matrici

SOTTOSPAZI E OPERAZIONI IN SPAZI DIVERSI DA R n

= < < < < < Matematica 1

Il concetto di calcolatore e di algoritmo

La codifica. dell informazione

Appunti di Elettronica I Lezione 3 Risoluzione dei circuiti elettrici; serie e parallelo di bipoli

La riduzione a gradini e i sistemi lineari (senza il concetto di rango)

Collegamento generatori di tensione. Collegamento parallelo. Sia dato il sistema di figura 1: Fig. 1 -

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli

Appunti ed esercizi sulle coniche

Esercizio. Sia a R non nullo e siano m, n numeri interi non nulli con m n. Allora a m /a n è uguale a. [1] 1/a n m [2] 1/a m n [3] 1/a n m [4] a n m

Esercitazione su grafici di funzioni elementari

ESERCIZI SUI SISTEMI LINEARI

Esercizi svolti. risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale

Osservazioni sulle funzioni composte

4 0 = 4 2 = 4 4 = 4 6 = 0.

Metodo di Gauss-Jordan 1

Lezione 39: la legge di Ohm e i circuiti elettrici

I vertici e i lati di ogni poligono vengono detti rispettivamente vertici e spigoli del poliedro.

Le aree dell informatica

Equazioni di Primo grado

Completezza e compattezza

Corso di laurea in Scienze Motorie Corso di Statistica Docente: Dott.ssa Immacolata Scancarello Lezione 15: Metodi non parametrici

LEZIONE 23. ax 2 + bxy + cy 2 + dx + ey + f

Metodi per la risoluzione di sistemi lineari

1 L estrazione di radice

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

Precorso di Matematica. Parte I : Fondamenti di Matematica

La logica modale e la dimostrazione dell esistenza di Dio di Gödel. LOGICA MODALE

NOME:... MATRICOLA:... Corso di Laurea in Fisica, A.A. 2009/2010 Calcolo 1, Esame scritto del

LEZIONE 10. S(C,ρ) Figura 10.1

Algebra di Boole Algebra di Boole

La corrente alternata

Informatica! appunti dalle lezioni dal 18/09/2012 al 28/09/2012!!

Rappresentazioni numeriche

LE DISEQUAZIONI LINEARI

Esercizi sulla retta. Gruppo 1 (4A TSS SER, 4B TSS SER, 4A AM )

MODULI CLASSE PRIMA TEMA ARITMETICA E ALGEBRA

Linguaggi di Programmazione Corso C. Parte n.3 Linguaggi Liberi da Contesto e Linguaggi Contestuali. Nicola Fanizzi

ESAME DI STATO LICEO SCIENTIFICO MATEMATICA 2011

METODI E TECNOLOGIE PER L INSEGNAMENTO DELLA MATEMATICA. Lezione n

Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing

Economia, Corso di Laurea Magistrale in Ing. Elettrotecnica, A.A Prof. R. Sestini SCHEMA DELLE LEZIONI DELLA PRIMA SETTIMANA

Transcript:

Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 8 Modelli, Formule Valide, Conseguenza Logica Proof Systems Regole di inferenza per Calcolo Proposizionale con Premesse Teorema di Deduzione A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 138

Logica del Primo Ordine: riassunto Sintassi: grammatica libera da contesto (BNF), parametrica rispetto a un alfabeto A = (C, F, V, P) Interpretazione I = (D, α): fissa il significato dei simboli dell alfabeto su un opportuno dominio Semantica: data una interpretazione I = (D, α) ed una formula φ, le regole (S1)-(S9) permettono di calcolare in modo induttivo il valore di verità di φ in I rispetto a un assegnamento ρ : V D, ovvero I ρ (φ). A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 139

Modelli, Formule Valide e Soddisfacibili Sia I un interpretazione e φ una formula chiusa. Se φ è vera in I, diciamo che I è un modello di φ e scriviamo: I = φ Se Γ ( Gamma ) è un insieme di formule, con I = Γ intendiamo che I è un modello di tutte le formule in Γ Se una formula φ è vera in tutte le interpretazioni si dice che è valida (estensione del concetto di tautologia) e scriviamo =φ Se una formula φ è vera in almeno una interpretazione si dice che è soddisfacibile altrimenti è insoddisfacibile A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 140

Esempi Formula soddisfacibile: p(a) Basta trovare un interpretazione che la renda vera. Per esempio: I = (D, α), con D = N e α(a) = 44 α(p)(x) = T se x è pari, F altrimenti Formula valida (corrispondono alle tautologie): ( x.p(x) p(x)) Formula insoddisfacibile (corrispondono alle contraddizioni): ( x. p(x) p(x)) A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 141

Conseguenza Logica Il concetto di conseguenza logica consente di parametrizzare la validità di una formula φ rispetto a un insieme di formule Γ Diciamo che φ è una conseguenza logica di Γ e scriviamo Γ = φ se e soltanto se φ è vera in tutti i modelli di Γ. In altre parole, se un interpretazione I rende vere tutte le formule in Γ (ovvero I = Γ), allora I rende vera anche φ (ovvero I = φ) Caso Particolare: = φ se e solo se = φ, cioè se φ è valida A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 142

I Sistemi di Dimostrazione (Proof Systems) Dato un insieme di formule, un sistema di dimostrazione (o proof system) per è un insieme di Regole di Inferenza Ciascuna Regola di Inferenza consente di derivare una formula (conseguenza) da un insieme di formule dette le (premesse) Una Regola di Inferenza ha la forma δ 1,..., δ k dove δ 1,..., δ k sono le premesse e δ è la conseguenza, e sono tutte formule in δ A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 143

Dimostrazioni Una dimostrazione di una formula φ a partire da un insieme di premesse Γ è una sequenza di formule φ 1,..., φ n tale che Ogni formula φ i è un elemento di Γ oppure è ottenuta applicando una regola di inferenza a partire dalle premesse Γ e φ 1,... φ i 1 φ n coincide con φ Scriviamo Γ φ se esiste una dimostrazione di φ a partire da Γ A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 144

Correttezza e Completezza dei Proof Systems Un proof system è corretto se quando esiste una dimostrazione di una formula φ da un insieme di premesse Γ allora φ è una conseguenza logica di Γ, cioè se Γ φ allora Γ = φ Un proof system è completo se quando una formula φ è una conseguenza logica di un insieme di premesse Γ, allora esiste una dimostrazione di φ da Γ, cioè se Γ = φ allora Γ φ Quindi completezza e correttezza mettono in relazione un concetto puramente sintattico (Γ φ) con uno semantico (Γ = φ) Non ha senso considerare proof system non corretti!! A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 145

Calcolo Proposizionale come Proof System Il Calcolo Proposizionale è un proof system sull insieme delle proposizioni Le regole di inferenza sono il principio di sostituzione per le dimostrazioni di equivalenza i principi di sostituzione per l implicazione Il Calcolo Proposizionale è corretto ed anche completo, ma non vediamo le dimostrazioni A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 146

CP come Proof System: dimostrazione del Complemento Quindi: una dimostrazione di φ a partire da un insieme di premesse Γ è una sequenza φ 1,..., φ n = φ dove φ i Γ oppure è ottenuta applicando una regola di inferenza a partire da Γ e φ 1,... φ i 1 Vediamo come leggere le nostre dimostrazioni in questo modo. Γ sono le leggi già dimostrate. Dimostrazione di p ( p q) p q (Complemento) p ( p q) φ 1 = p ( p q) p ( p q) {(Distr.)} {Regola: (Sost- ), applicata a φ 1 e (Distr.)} (p p) (p q) φ 2 = p ( p q) (p p) (p q) {(Terzo Escluso)} {(Sost- ), applicata a φ 2 e (Terzo Escluso)} T (p q) φ 3 = p ( p q) T (p q) {(Unità)} {(Sost- ), applicata a φ 3 e (Unità)} (p q) φ 4 = p ( p q) (p q) Quindi le nostre dimostrazioni sono una notazione più compatta della definizione generale. A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 147

Cosa vedremo del Calcolo del Primo Ordine Rivedremo le Regole di Inferenza del Calcolo Proposizionale in forma più generale (come proof system con premesse) Per i connettivi logici useremo le leggi del CP Estenderemo il proof system alla Logica del Primo Ordine Anche per il primo ordine ci limiteremo alle regole di inferenza che consentono di dimostrare la validità di formule del tipo: φ ψ φ ψ Introdurremo nuove leggi e nuove regole di inferenza per i quantificatori Le regole di inferenza che introdurremo formano un proof system corretto per LPO per LPO esistono diversi proof systems corretti e completi (come la deduzione naturale e il calcolo dei sequenti) A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 148

Leggi Generali e Ipotesi (1) Anche nel calcolo del primo ordine useremo come leggi generali formule valide (corrispondenti alle tautologie nel calcolo proposizionale) L uso di formule valide garantisce la validità del risultato. Vediamo perché: Sia Γ un insieme di formule valide e φ una formula dimostrabile a partire da Γ: Γ φ se Γ φ allora per la correttezza di, Γ = φ, ovvero φ è vera in ogni modello I di Γ poiché ogni interpretazione I è modello di Γ, φ è vera in ogni interpretazione I quindi è valida, ovvero = φ A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 149

Leggi Generali e Ipotesi (2) Se in Γ, oltre alle formule valide abbiamo anche altre formule (ipotesi) allora la dimostrazione Γ φ non garantisce la validità di φ, ma il fatto che φ sia una conseguenza logica delle ipotesi ovvero se Γ = Γ 1 Γ 2, dove Γ 1 sono formule valide e Γ 2 sono ipotesi, allora la dimostrazione garantisce che Γ 2 = φ A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 150

Generalizzazione del Principio di Sostituzione per (P Q) Γ Γ R R[Q/P] Nota: La generalizzazione consiste nel far riferimento ad un insieme di premesse Γ Se P e Q sono logicamente equivalenti nelle premesse Γ, allora il fatto che R e R[Q/P] sono equivalenti è dimostrabile da Γ A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 151

Generalizzazione dei Principi di Sostituzione per Dobbiamo estendere il concetto di occorrenza positiva o negativa alle formule quantificate P occorre positivamente in ( x.p) ed in ( x.p) (P Q) Γ P occorre positivamente in R Γ R R[Q/P] (P Q) Γ P occorre negativamente in R Γ R[Q/P] R A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 152

Esempi ( x.p R) ( x. P) {Ip : P Q} ( x.q R) ( x. P) Corretto perché la prima P occorre positivamente ( x.p R) ( x. P) {Ip : P Q} ( x.q R) ( x. Q) Sbagliato perché la seconda P occorre negativamente A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 153

Teorema di Deduzione Sappiamo dal CP che per dimostrare che P Q è una tautologia, basta dimostrare Q usando P come ipotesi Ora che abbiamo introdotto le premesse di una dimostrazione, possiamo giustificare questa tecnica con il Teorema di Deduzione: Γ P Q se e solo se Γ, P Q Ovvero per dimostrare una implicazione P Q è possibile costruire una dimostrazione per Q usando sia le leggi generali (formule valide) che P come ipotesi A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a. 2016/17 pag. 154