Fondamenti teorici e programmazione
|
|
|
- Oliviero Gagliardi
- 6 anni fa
- Просмотров:
Транскрипт
1 Fondamenti teorici e programmazione FTP(A) - modb Lezione 8 F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 1
2 Ragionamento formale Comprendere le basi del ragionamento formale, utilizzato in matematica per dimostrare teoremi all interno di teorie, è fondamentale tra gli informatici. Come si può sapere quando un programma è fa esattamente cosa ci aspettiamo? Una pratica abbastanza comune è il testing, cioè l esecuzione del programma su alcuni input. Questo però non garantisce la certezza del programma, perchè tutti i possibili input sono infiniti. E quando il programma non calcola correttamente? Esercitarsi a ragionare in modo formale aiuta a definire i programmi che sono, appunto, delle specifiche formali. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 2
3 Ragionamento formale - continua I concetti che vengono introdotti in modo informale sono trattati formalemente in: logica proposizionale logica del primo ordine. In questo corso non c è spazio per studiare tali formalismi, ma tratteremo solo alcuni aspetti. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 3
4 Ragionamento formale - continua II teoremi in generale vengono espressi attraverso formule che sono espressioni che possono risultare vere (true) o false (false). Tali espressioni contengono connettivi logici tra cui (l and e l or e il not ma anche altri) e fatti semplici (detti anche proposizioni) Ad esempio il Teorema di Pitagora per i triangoli rettangoli, ha il seguente enunciato: Se (a, b) sono i cateti di un triangolo rettangolo e c è l ipotenusa allora a 2 + b 2 = c 2. Tutto ciò che si trova tra Se e allora è detta ipotesi, costituita da uno o più fatti che vengono assunti essere veri. Ciò che appare dopo allora è la tesi: ciò che bisogna dimostrare. Questa forma di enunciato è una implicazione. Se p allora q. Si può anche scrivere p q. Una volta dimostrato un teorema con un tipo di enunciato di questo genere, se ci troviamo in una situazione in cui l ipotesi è vera possiamo dedurre che anche la tesi è vera, applicando il teorema. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 4
5 Sostituzione Le formule possono essere istanziate, sostituendo una o più variabili che vi compaiono, con un valore dell insieme. L operazione di sostituzione in un asserzione E del simbolo di variabile con un valore, viene indicata con E[v/x] Ad esempio se E = x 4 2 x x 2 E [4/x]= E [5/x] = Ad esempio se E = (R = R; Id A ) E [ /R]=( = ; Id A ) E [(R; S)/R]=( (R; S) = (R; S); IdA )... In generale se ho un espressione E, indichiamo con E[q/p] l espressione risultante dalla sostituzione di tutte le occorrenze di p in E con q. p e q possono essere anche due espressioni equivalenti oppure il nome di una variabile e un suo possibile valore, come sopra. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 5
6 Implicazione L implicazione si può esprimere in vari modi, nel linguaggio comune: Se A allora B A implica B A solo se B B se A Quando A, segue B B è condizione necessaria per A È però importante comprendere il significato dell implicazione: se A è vero allora deve essere vero anche B. se viceversa A è falso non sappiamo nulla su B se invece B è falso allora deve essere falso anche A F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 6
7 Significato dell Implicazione L implicazione è un operatore (connettivo) logico simile all and e all or il cui valore true o false dipende dal valore dei suoi argomenti. Analogamente all and e or il significato di è riassunto nella seguente tabellina. A B A B true true true true false false false true true false false true Esempio: Se piove la starda è bagnata, è un implicazione. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 7
8 Quantificatori: Quando non è ovvio quale siano i valori che una variabile può assumere è possibile esprimere esplicitamente tale insieme, utilizzando un quantificatore universale il, che si legge per ogni Dopo un quantificatore compare la variabile e il simbolo seguito dall insieme. Il significato è quello già discusso che la formula deve essere vera per tutti gli elementi dell insieme. Ad esempio, se A = {0, 2, 6, 10} la formula x A, x%2 = 0, asserisce che tutti gli elementi di A sono pari. Un quantificatore universale può anche non specificare l insieme in questo caso si riferisce all universo U. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 8
9 Quantificatori, In altri casi vogliamo invece esprimere fatti che riguardano solo alcuni elementi di un insieme. In questo caso si usa il quantificatore, che si legge esiste Il significato è che la formula di cui si sta trattando deve essere vera per almeno un elemento dell insieme. Ad esempio, se A = {0, 3, 6, 1} la formula x A, x modulo 2 = 0, asserisce che almeno un elemento di A è pari. Ovviamente se A = {9, 3, 7, 1} la formula x A, x modulo 2 = 0, che asserisce che almeno un elemento di A è pari, risulta falsa. Anche in questo caso, se l insieme non è specificato, ci si sta riferendo all universo U. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 9
10 Enunciati Se e solo se È un enunciato di equivalenza di due proposizioni H e C. Si può esprimere in vari modi: H C H C H se e solo se C H iff (sse) C H equivalente C Un simile teorema è costituito da due implicazioni: H C e C H La dimostrazioni consta conseguentemente di due parti: la dimostrazione che H C e quella che C H. Tutte le proprietà enunciate sugli insiemi come ad esempio la proprietà distributiva A (B C) = (A B) (A C), sono teoremi se e solo se. (Potete provare a dimostrarle per esercizio). F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 10
11 Dimostrazioni per assurdo Per dimostrare H C alle volte è conveniente dimostrare che: H!C false in altre parole si dimostra che assumere che quando H è vero, C è falso fa seguire logicamente qualcosa di notoriamente falso. Ricordiamo la tabella di, H C H C true true true true false false false true true false false true Dimostrando che H e!c portano ad un assurdo, dimostriamo che il secondo caso non può verificarsi e quindi l implicazione è vera. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 11
12 Contronominale Per dimostrare H C alle volte è conveniente dimostrare che!c!h che è logicamente equivalente. Vediamo un esempio per convincerci di questa equivalenza, sia: H =piove C =la strada è bagnata H C può essere tradotto in: Se piove allora la strada è bagnata!c!h può essere tradotto in la strada non è bagnata allora non piove Esercizio Provate a dimostrare la seguente proprietà sugli insiemi: A B = B B A F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 12
13 Controesempi Spesso i teoremi sono proprietà di cui dovrebbero godere tutti gli elementi di un dato insieme (infinito). Ovvero enunciati del tipo Tutti i numeri primi sono dispari. Se cercando di dimostrare il teorema ci viene il sospetto che sia falso, è sufficiente trovare un controesempio. Nel caso precedente 2 è il controesempio che dimostra che il teorema è falso. Questo modo di operare ci tornerà utile in diversi casi. Ad esempio per dimostrare che un programma non è corretto è sufficiente trovare un caso in cui il risultato calcolato non è il risultato atteso. F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 13
Ragionamenti e metodi di dimostrazione. Liceo Scientifico Statale S. Cannizzaro Prof.re E. Modica
Ragionamenti e metodi di dimostrazione Liceo Scientifico Statale S. Cannizzaro Prof.re E. Modica Proposizioni Si definisce proposizione una frase alla quale è possibile attribuire uno e un solo valore
Fondamenti teorici e programmazione
Fondamenti teorici e programmazione FTP(A) - modb Lezione 6 Chiusure Relazioni di equivalenza F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 1 Chiusure Ogni
Logica proposizionale
Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Logica proposizionale Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università degli
Logica: materiale didattico
Logica: materiale didattico M. Cialdea Mayer. Logica (dispense): http://cialdea.dia.uniroma3.it/teaching/logica/materiale/dispense-logica.pdf Logica dei Predicati (Logica per l Informatica) 01: Logica
Richiami teorici ed esercizi di Logica
Facoltà di ingegneria Università della Calabria Corsi di Potenziamento Matematica e Logica A. A. 2008-2009 Richiami teorici ed esercizi di Logica Proposizioni logiche: Ogni espressione matematica alla
Esercizi sul Calcolo Proposizionale
Esercizi sul Calcolo Proposizionale Francesco Sborgia Matricola: 459245 December 7, 2015 1 Esercizio 1 Per ogni formula A dimostrare che ρ(a) = min{n A F n } Definizione 1. Ricordiamo che, dato un linguaggio
INSIEMI. DEF. Un INSIEME è una qualsiasi collezione di oggetti.
INSIEMI DEF. Un INSIEME è una qualsiasi collezione di oggetti. Esso è ben definito quando è chiaro se un oggetto appartiene o non appartiene all insieme stesso. Esempio. E possibile definire l insieme
METODI MATEMATICI PER L INFORMATICA
METODI MATEMATICI PER L INFORMATICA Tutorato Lezione 5 05/05/2016 Corso per matricole congrue a 1 Docente: Margherita Napoli Tutor: Amedeo Leo Dimostrazioni e prove Esercizio 7 pagina 91 Utilizzare una
Un po di logica. Christian Ferrari. Laboratorio di matematica
Un po di logica Christian Ferrari Laboratorio di matematica 1 Introduzione La logica è la disciplina che studia le condizioni di correttezza del ragionamento. Il suo scopo è quindi quello di elaborare
NOZIONI DI LOGICA PROPOSIZIONI.
NOZIONI DI LOGICA PROPOSIZIONI. Una proposizione è un affermazione che è vera o falsa, ma non può essere contemporaneamente vera e falsa. ESEMPI Sono proposizioni : 7 è maggiore di 2 Londra è la capitale
Cenni di logica matematica e di teoria degli insiemi Paola Rubbioni
Cenni di logica matematica e di teoria degli insiemi Paola Rubbioni CORSI INTRODUTTIVI Dipartimento di Ingegneria di Perugia a.a. 2017/2018 1 Corsi Introduttivi - a.a. 2017/2018 2 1 Logica matematica Serve
BREVE CENNO DI LOGICA CLASSICA La logica può essere definita come la scienza che studia le condizioni in base alle quali un ragionamento risulta
BREVE CENNO DI LOGICA CLASSICA La logica può essere definita come la scienza che studia le condizioni in base alle quali un ragionamento risulta corretto e vero. Un ragionamento è corretto se segue uno
02 - Logica delle dimostrazioni
Università degli Studi di Palermo Facoltà di Economia Dipartimento di Scienze Economiche, Aziendali e Statistiche Appunti del corso di Matematica 0 - Logica delle dimostrazioni Anno Accademico 015/016
Logica per la Programmazione
Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 1 Calcolo Proposizionale: sintassi e semantica Tautologie Esempi di Formalizzazione di Enunciati pag.
Cenni di logica matematica e di teoria degli insiemi. CORSI INTRODUTTIVI Dipartimento di Ingegneria di Perugia a.a. 2016/2017 Paola Rubbioni
Cenni di logica matematica e di teoria degli insiemi CORSI INTRODUTTIVI Dipartimento di Ingegneria di Perugia a.a. 2016/2017 Paola Rubbioni 1 1 Logica matematica Corsi Introduttivi - a.a. 2016/2017 2 Serve
04 - Logica delle dimostrazioni
Università degli Studi di Palermo Facoltà di Economia CdS Sviluppo Economico e Cooperazione Internazionale Appunti del corso di Matematica 04 - Logica delle dimostrazioni Anno Accademico 013/014 D. Provenzano,
DIMOSTRAZIONI E TAUTOLOGIE, IPOTESI NON TAUTOLOGICHE. Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini
DIMOSTRAZIONI E TAUTOLOGIE, IPOTESI NON TAUTOLOGICHE Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini INFERENZE CORRETTE E TAUTOLOGIE Il Calcolo Proposizionale permette di formalizzare
Cenni di logica e calcolo proposizionale
Cenni di logica e calcolo proposizionale Corso di Laurea in Informatica Università degli Studi di Bari (sede Brindisi) Analisi Matematica S.Milella ([email protected]) Cenni di logica 1 / 10 Proposizioni
Logica per la Programmazione
Logica per la Programmazione Lezione 4 Dimostrazione di Implicazioni Tautologiche Principio di sostituzione per l implicazione Occorrenze positive e negative Altre tecniche di dimostrazione Forme Normali
METODI MATEMATICI PER L INFORMATICA
METODI MATEMATICI PER L INFORMATICA ANNO ACCADEMICO 2011/2012 Sommario. Sintassi e semantica della Logica dei predicati. Proprietà fondamentali dei quantificatori. Strutture, soddisfacibilità e verità
Introduzione alla logica proposizionale
Introduzione alla logica proposizionale Mauro Bianco Questa frase è falsa Contents 1 Proposizioni 1 2 Altri operatori 4 Nota : Le parti delimitate da *** sono da considerarsi facoltative. 1 Proposizioni
Introduzione alla logica matematica
Introduzione alla logica matematica, Paolo Bison, A.A. 2004-05, 2004-10-26 p.1/29 Introduzione alla logica matematica Silvana Badaloni Paolo Bison Fondamenti di Informatica 1 A.A. 2004/05 Università di
Elementi di logica. SCOPO: introdurre nozioni di logica & vocabolario per una corretta interpretazione delle dimostrazioni.
Elementi di logica SCOPO: introdurre nozioni di logica & vocabolario per una corretta interpretazione delle dimostrazioni. Quantificatori: elementi fondamentali del linguaggio matematico. quantificatore
LOGICA MATEMATICA PER INFORMATICA
LOGICA MATEMATICA PER INFORMATICA A.A. 10/11, DISPENSA N. 2 Sommario. Assiomi dell identità, modelli normali. Forma normale negativa, forma normale prenessa, forma normale di Skolem. 1. L identità Esistono
CALCOLO PROPOSIZIONALE
CALCOLO PROPOSIZIONALE UN PROBLEMA DI DEDUZIONE LOGICA (da un test d ingresso) Tre amici, Antonio, Bruno e Corrado, sono incerti se andare al cinema. Si sa che: Se Corrado va al cinema, allora ci va anche
Introduzione alla logica
Corso di Intelligenza Artificiale 2011/12 Introduzione alla logica iola Schiaffonati Dipartimento di Elettronica e Informazione Sommario 2 Logica proposizionale (logica di Boole) Logica del primo ordine
ELEMENTI DI LOGICA. Siano p e q le due proposizioni: p: 3 è un numero primo q: 20 è divisibile per 5 Enunciare le proposizioni p q, p q.
ELEMENTI DI LOGICA Proposizioni e operazioni 2 3 4 Stabilire quali di queste frasi sono proposizioni logiche e stabilirne il valore di verità: a) 5 è un numero dispari b) Napoli è il capoluogo della Campania
Logica proposizionale
Logica proposizionale Proposizione: frase compiuta che è sempre o vera o falsa. Connettivi Posti in ordine di precedenza: not, and, or, implica, doppia implicazione Sintassi Le proposizioni sono costituite
Una Breve Introduzione alla Logica
Una Breve Introduzione alla Logica LOGICA La LOGICA è la disciplina che studia le condizioni di correttezza del ragionamento Occorre dire, anzitutto, quale oggetto riguardi ed a quale disciplina spetti
Cenni di logica. Hynek Kovarik. Università di Brescia. Analisi Matematica A
Cenni di logica Hynek Kovarik Università di Brescia Analisi Matematica A Hynek Kovarik (Università di Brescia) Cenni di logica Analisi Matematica A 1 / 21 Scopo: introdurre nozioni di logica & terminologia
LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)
LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) DISPENSA N. 4 Sommario. Dimostriamo il Teorema di Completezza per il Calcolo dei Predicati del I ordine. 1. Teorema di Completezza Dimostriamo il Teorema
Prerequisiti Matematici
Prerequisiti Matematici Richiami di teoria degli insiemi Relazioni d ordine, d equivalenza Richiami di logica Logica proposizionale, tabelle di verità, calcolo dei predicati Importante: Principio di Induzione
Logica proposizionale
Logica proposizionale Linguaggio comune Nel linguaggio comune si utilizzano spesso frasi imprecise o ambigue Esempio Un americano muore di melanoma ogni ora! Assurdo: significa che c è un americano (sfortunato)
1 Richiami di logica matematica
Geometria e Topologia I 2006-mar-05 1 1 Richiami di logica matematica Definire cos è un enunciato, una proposizione (elemento primitivo della logica delle proposizioni). La definizione è data in termini
La matematica non è un opinione, lo è oppure...?
La matematica non è un opinione, lo è oppure...? Giulio Giusteri Dipartimento di Matematica e Fisica Università Cattolica del Sacro Cuore Brescia 26 Febbraio 2010 Vecchie conoscenze Dedurre... dedurre...
Elementi di Logica Teoria degli insiemi
Precorso di Analisi Matematica Facoltà d'ingegneria Università del Salento Elementi di Logica Teoria degli insiemi Proff. A. Albanese E. Mangino Dipartimento di Matematica e Fisica E. De Giorgi - Università
Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1
Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1 Esercizio 1.12 Per dimostrare che per ogni funzione esiste una formula in cui compaiono le variabili tale che la corrispondente
CALCOLO PROPOSIZIONALE. Corso di Logica per la Programmazione Andrea Corradini
CALCOLO PROPOSIZIONALE Corso di Logica per la Programmazione Andrea Corradini [email protected] UN PROBLEMA DI DEDUZIONE LOGICA (da un test d ingresso) Tre amici, Antonio, Bruno e Corrado, sono incerti
DI CHE COSA SI OCCUPA LA LOGICA
Di Emily Rinaldi DI CHE COSA SI OCCUPA LA LOGICA La logica si occupa dell esattezza dei ragionamenti Nei tempi antichi solo verbale. Nell epoca moderna la logica viene applicata per l ordinamento sistemazione
Materiale didattico aggiuntivo - Analisi Matematica I CENNI DI LOGICA MATEMATICA. 1. Proposizioni. Valori logici. Connettivi logici. Tavole di verita.
Materiale didattico aggiuntivo - Analisi Matematica I CENNI DI LOGICA MATEMATICA 1. Proposizioni. Valori logici. Connettivi logici. Tavole di verita. Intenderemo per PROPOSIZIONE (o ENUNCIATO) una qualunque
Esercizi di Logica Matematica (parte 2)
Luca Costabile Esercizio 317 Esercizi di Logica Matematica (parte 2) Dimostro per induzione sulla costruzione del termine : - Supponiamo che sia una variabile :, - Supponiamo che sia una variabile diversa
Maiuscole e minuscole
Maiuscole e minuscole Abilità interessate Distinguere tra processi induttivi e processi deduttivi. Comprendere il ruolo e le caratteristiche di un sistema assiomatico. Riconoscere aspetti sintattici e
METODI MATEMATICI PER L INFORMATICA
METODI MATEMATICI PER L INFORMATICA Tutorato Lezione 2 17/03/2016 Corso per matricole congrue a 1 Docente: Margherita Napoli Tutor: Amedeo Leo Applicazioni della logica proposizionale La logica ha una
Precorsi di matematica
Precorsi di matematica Francesco Dinuzzo 12 settembre 2005 1 Insiemi Il concetto di base nella matematica moderna è l insieme. Un insieme è una collezione di elementi. Gli elementi di un insieme vengono
Logica per la Programmazione
Logica per la Programmazione Lezione 2 Dimostrazione di tautologie Proof System pag. 1 Un Problema di Deduzione Logica [da un test di ingresso] Tre amici, Antonio, Bruno e Corrado, sono incerti se andare
Logica degli enunciati; Operazioni con le proposizioni; Proprietà delle operazioni logiche; Tautologie; Regole di deduzione; Logica dei predicati;
Logica degli enunciati; Operazioni con le proposizioni; Proprietà delle operazioni logiche; Tautologie; Regole di deduzione; Logica dei predicati; Implicazione logica. Equivalenza logica; Condizione necessaria,
LOGICA MATEMATICA PER INFORMATICA
LOGICA MATEMATICA PER INFORMATICA A.A. 10/11, SETTIMANA N. 1 Sommario. Introduciamo il linguaggio e la sintassi e la semantica della Logica del I Ordine. Introduciamo i concetti di teoria, teoria completa,
Sesto modulo: Logica Obiettivi 1. individuare dei "calcoli logici" che consentano di meccanizzare l attività deduttiva
Sesto modulo: Logica Obiettivi 1. individuare dei "calcoli logici" che consentano di meccanizzare l attività deduttiva 2. stabilire quali ragionamenti sono corretti e quali no 3. distinguere tra condizione
Appunti di informatica. Lezione 7 anno accademico Mario Verdicchio
Appunti di informatica Lezione 7 anno accademico 2016-2017 Mario Verdicchio L algoritmo di Euclide per l MCD Dati due numeri A e B, per trovare il loro MCD procedere nel seguente modo: 1. dividere il maggiore
NOZIONI DI LOGICA. Premessa
NOZIONI DI LOGICA Premessa Il compito principale della logica è quello di studiare il nesso di conseguenza logica tra proposizioni, predisponendo delle tecniche per determinare quando la verità di una
