verso una teoria strutturale della dimostrazione Simona Ronchi Della Rocca Università di Torino Dipartimento di Informatica
|
|
- Martina Montanari
- 6 anni fa
- Visualizzazioni
Transcript
1 Logica Lineare e Ludica verso una teoria strutturale della dimostrazione Simona Ronchi Della Rocca Università di Torino Dipartimento di Informatica Riassunto Questo articolo presenta, con un approccio divulgativo, la Logica Lineare e la Ludica, che sono certamente le maggiori novità sviluppate nell area della Logica negli ultimi 50 anni. Vengono in particolare messi in evidenza due aspetti estremamente innovativi di tali logiche: l interpretazione computazionale della dimostrazione, che ha avuto interessanti ricadute nell Informatica, e un diverso approccio alla semantica delle dimostrazioni, che ha dato nuovo impulso alla proof-theory. La Logica Lineare è stata proposta da Girard [5] nel 1987, e può essere considerata come la maggiore novità nel campo della logica degli ultimi 50 anni. La Logica Lineare (LL) nasce da due esigenze fra loro apparentemente disgiunte: affinare lo sguardo sulla Logica Classica, cambiando prospettiva semantica, e indagare sulle sue proprietà computazionali. La semantica usuale con cui si interpreta la Logica Classica è basata sulla nozione di verità. La verità è statica e immutabile, e in conseguenza di ciò ogni frase della logica ha uno e un solo valore di verità. Conseguenza naturale di questa visione semantica è il principio del terzo escluso: se A rappresenta una qualsiasi proposizione logica, e A denota la sua negazione, la proposizione A A sempre vera. Infatti il simbolo rappresenta la disgiunzione, e la frase A A è vera se e solo se o è vera A o è vera A, cioè sempre. Alla Logica Classica è associato un Sistema Formale, cioè un insieme di regole, che permettono di costruire proposizioni vere a partire da proposizioni vere. Più specificatamente, un sistema formale permette di dimostrare assunti del tipo: P 1,..., P n C 1,..., C m (n, m 0) il cui significato è: assumendo che siano vere le premesse P 1,..., P n, si può dimostrare la verità di almeno una delle conclusioni C 1,..., C m. Nella Logica Classica l accento, come si è detto, viene posto sulla nozione di verità, quindi le regole del sistema formale associato sono viste come meri strumenti per arrivare a conclusioni vere. Girard rovescia questa visione, spostando l accento dalla verità delle proposizioni al procedimento di dimostrazione di questa verità. Per capire meglio questo spostamento, vediamo alcuni esempi di regole della Logica Classica. Per questa presentazione molto informale, mi restringerò a casi in cui le regole hanno un unica conclusione. La regola più semplice è l assioma: A A che dice semplicemente che, se assumiamo che A sia vera, possiamo dedurre la verità di A. Vi sono poi regole che introducono ed eliminano i vari connettivi logici. Ad esempio la regola di introduzione del connettivo, che denota la congiunzione, è la seguente: Γ A Γ B Γ A B ( I) che dice che, se da un dato insieme di premesse Γ abbiamo dedotto sia la verità di A che quella di B, possiamo, dallo stesso insieme, dedurre la verità di A B. Una classe speciale di regole è la classe delle regole strutturali, che non dimostrano la verità di nuove proposizioni ma parlano della struttura della dimostrazione di per sè. Un esempio è la regola dell indebolimento: Γ B Γ, A B (weak)
2 che ci dice che si può aggiungere una premessa preservando la verità della conclusione. La Logica Lineare sostituisce alla nozione di verità la nozione di uso. Una premessa è una risorsa che può essere usata. Allora l asserzione: P 1,..., P n C 1,..., C m (n, m 0) si può interpretare come: usando le risorse P 1,..., P n si possono produrre gli oggetti C 1,..., C m. Risorse e oggetti possono poi essere diversamente instanziati per adattarsi a contesti diversi: così le une possono essere viste come denaro, tempo, ingredienti mentre i secondi possono rappresentare rispettivamente merci, attività, ricette. Se si vuole, è una visione capitalistica della Logica! Le risorse sono poi divise in due classi: le risorse consumabili, che quindi possono essere usate una sola volta, e quelle sempre disponibili, e quindi di uso illimitato. Per dividere queste due classi si introduce una modalità!, che premessa ad una proposizione A interpretata come risorsa, denota il fatto che tale risorsa è di uso illimitato. Questo semplice spostamento di visuale ha conseguenze molto forti. Innanzitutto aumenta il numero dei connettivi della logica, e quindi la sua espressività. Ad esempio la congiunzione classica si sdoppia nei due connettivi e &. A B significa che le risorse A e B sono entrambi disponibili, e saranno usate tutte e due insieme (es. col tempo e con la paglia maturano le nespole). A&B denota che le risorse A e B sono entrambi disponibili, ma io ne potrò usare una sola, a mia scelta (es. col menu a prezzo fisso posso avere frutta o dessert). Notiamo qui che la congiunzione & corrsponde ad un o nel linguaggio quotidiano, ma questo è solo una spia del fatto che non sempre le interpretazioni informali possono avere il rigore di quelle formali! Anche la disgiunzione si sdoppia nei due connettivi e. E qui l interpretazione distingue in modo molto raffinato due possibili situazioni. La disgiunzione classica (A B è vera se o è vera A o è vera B) già contiene in sè l idea di una possibile scelta tra le due proposizioni coinvolte, ma la Logica Lineare riesce a distinguere tra il caso in cui la scelta è possibile, e quello in cui una scelta non è possibile. A B indica che una sola delle risorse A o B è disponibile, io non so quale, ma qualcuno sceglierà per me (es. il menu prevede frutta di stagione: pere o arance). A B indica che una sola delle risorse A o B è disponibile, e non si sa quale. (es. domani pioverà o non pioverà). E naturale chiedersi se il principio del terzo escluso valga nella Logica Lineare, e in caso positivo se valga per entrambe le disgiunzioni o no. La risposta è che vale per ma non per, cioè si può dimostrare A A ma non si può dimostrare A A (in LL A denota la negazione di A). Notiamo che abbiamo parlato qui di dimostrabilità, non di verità, come nella Logica Classica. Come esempio di uso della modalità, consideriamo l asserzione della Logica Classica: A A A, che ci dice che, se A è vera, allora possiamo ribadire A due volte, e ottenere ancora una proposizione vera. Se oggi piove è un affermazione vera, anche oggi piove e oggi piove è vera (al limite può essere considerata ridondante!). Ma adesso sostituiamo il classico con il connettivo : dalla semantica informale che ho dato prima a questo connettivo, è chiaro che A A A non è dimostrabile, in quanto per ottenere due copie dell oggetto A abbiamo bisogno di due copie della risorsa A. Per ottenere quindi la conseguenza A A ho quindi bisogno adesso o di avere a disposizione due copie di A, o A deve essere una risorsa sempre disponibile. Quindi posso dimostrare sia A, A A A, sia!a A A. Una regola strutturale particolare è la regola del taglio, che esiste sia nella Logica Classica che nella Logica Lineare: Γ A, Γ, A (cut) Γ L importanza della regola del taglio è di essere inutile: infatti sia nella Logica Classica che nella Logica Lineare vale la proprietà che si può decidere di non usarla, nel senso che ogni dimostrazione che usa la regola del taglio può essere trasformata in una dimostrazione che prova la stessa conclusione, senza però usare il taglio. L interpretazione classica di tale proprietà può essere la seguente. Se per dimostrare mi serve una
3 AX AX A A B B A B (A B) B Figura 1: La rete di prova corrispondente alla dimostrazione di A (A B) B (o di (A B) B A ). I due nodi senza nome denotano uno la premessa e l altro la conclusione della dimostrazione, che sono concetti qui simmetrici e interscambiabili. dimostrazione di A, magari per usarla più di una volta, posso dimostrare A con una dimostrazione a parte, e poi usarlo tutte le volte che mi serve, come un Lemma ausiliario, e questa è una dimostrazione con il taglio. Ma posso anche non usare questo metodo, e semplicemente ricopiare la dimostrazione di A dentro la dimostrazione di, ogni volta che è necessario: ottengo una dimostrazione certamente meno efficiente, ma ugualmente corretta, e questa è una dimostrazione senza taglio. Ma nella Logica Lineare la proprietà dell eliminazione del taglio è più forte, e assume un preciso significato computazionale. Assumiamo di avere una dimostrazione che usa il taglio, e di voler eliminare tale regola: esiste un modo effettivo di farlo. Però la dimostrazione può usare il taglio più di una volta, e quindi ci si pone la scelta di quale regola eliminare per prima: nella Logica Classica diverse scelte possono portare a ottenere dimostrazioni diverse, se pure con la stessa conclusione. Invece una proprietà importante della Logica Lineare è che la dimostrazione ottenuta è unica, indipendentemente dalle scelte fatte. Questo permette di dare una interpretazione computazionale alla Logica Lineare: una dimostrazione può essere vista come un programma, la regola del taglio come la regola di calcolo, e la dimostrazione normalizzata (cioè senza taglio) come il risultato della computazione. Il fatto che l eliminazione del taglio sia una procedura deterministica corrisponde al ben noto principio che il risultato di una computazione non deve dipendere dall ordine in cui vengono effettuate le operazioni (pensiamo al calcolo delle espressioni aritmetiche!). L analogia dimostrazione = programma è ulteriormente sviluppato con l introduzione delle reti di prova [8]. Una rete di prova è una rappresentazione grafica di una dimostrazione della Logica Lineare, con una struttura a grafo, cioè un insieme di punti (nodi ) su di un piano che possono essere connessi da archi, cioè segmenti di retta. I punti rappresentano i connettivi, gli archi rappresentano le formule, e il modo in cui essi sono connessi riproduce la struttura della dimostrazione (si veda un esempio di rete di prova nella Figura ). La rappresentazione delle dimostrazioni mediante le reti di prova non è solo un mero esercizio di riscrittura, ma permette di eseguire in modo molto efficiente l eliminazione del taglio, e quindi il procedimento di calcolo, se usiamo il paradigma prima esposto che associa la programmazione alla dimostrazione logica [9]. Infatti tale rappresentazione ha permesso lo sviluppo di un interprete ottimale per un linguaggio paradigmatico, il λ-calcolo [1], e ha inoltre suggerito la definizione di logiche particolari, derivate dalla Logica Lineare, che hanno la proprietà che la procedura di eliminazione del taglio per esse si può effettuare in un tempo che dipende in modo polinomiale dalla dimensione della rete da normalizzare [6] [2], mentre nella la Logica Lineare, come nella Logica Classica, tale dipendenza è esponenziale. In questo modo queste logiche cosidette
4 leggere possono essere la base per linguaggi di programmazione in cui si possono scrivere solo programmi la cui esecuzione avviene in tempo accettabile. Per comprendere l importanza di questo risultato, pensiamo che una funzione che cresce in tempo esponenziale, come ad esempio 2 n, assume rapidamente valori grandissimmi, al crescere del parametro n: se per n = 3 vale 8, per n = 10 vale 1024 e per n = 100 il suo valore è un numero addirittura maggiore del numero di microsecondi trascorsi dal big-bang! Quindi un programma il cui tempo di esecuzione cresca in modo esponenziale in dipendenza dei dati in input può essere considerato come virtualmente non eseguibile, in quanto la sua esecuzione può richiedere più tempo della vita del programmatore che l ha scritto! Ovviamente non tutti i grafi i cui nodi hanno nomi di connettivi e i cui archi hanno nomi di formule della Logica Lineare rappresentano dimostrazioni in tale logica; anzi, se disegnamo a caso un grafo, e poi assegniamo a caso dei nomi ai suoi componenti, sarà ben raro che questo denoti una dimostrazione. Ma esiste un risultato sorprendente: un grafo di questo tipo rappresenta una dimostrazione se e solo se soddisfa ad una proprietà meramente geometrica, che è indipendente dai nomi delle formule che decorano i suoi archi. Questo porta a pensare che l essenza di una dimostrazione si basi sulla sua struttura, piuttosto che sulle formule che vi compaiono. Come dire che, se ci si pone il problema (un po peregrino, se vogliamo): sono nate prima le formule o le dimostrazioni?, forse la risposta: le dimostrazioni è la più corretta! Continuiamo a divertirci con domande fuori dall ordinario. Un metodo di verifica delle dimostrazioni che può essere usato fruttuosamente è il metodo interattivo: si simula una discussione tra S (sostenitore della correttezza della dimostrazione in questione) e O (che mette in discussione tale correttezza). O pone domande ad S, che indagano sulla struttura della dimostrazione da analizzare. Si assume che S dica sempre la verità, e se S sa rispondere esaurientemente a tutte le domande di O, in modo da convincerlo, la dimostrazione è corretta. Se la dimostrazione invece è scorretta, S sarà costretto a dichiarare qualcosa di contradditorio, e verrà quindi smascherato da O. Ovviamente S e O sono entità immaginarie, che quindi non fanno parte della logica stessa. A questo punto possiamo porci un problema, apparentemente un pò strano: si possono internalizzare nella logica stessa S e O? cioè una logica può dimostrare al suo interno la sua stessa correttezza? S può essere la dimostrazione stessa, che si assume il compito di difendersi dai dubbi di O, ma chi può impersonare O? la correttezza formale ci porterebbe a dire che anche O deve essere una dimostrazione, che dimostra la negazione di quanto dimostra S, ma questo non è possibile, perchè si possono dimostrare solo proposizioni vere, e quindi se esiste una dimostrazione di A non può esistere una dimostrazione di A, e viceversa. La Ludica viene proposta da Girard [7] come una nuova logica, che vede al suo centro la nozione di dimostrazione, e in cui i problemi apparentemente assurdi che ci siamo posti trovano una loro soluzione, per quanto anti-intuitiva. Il sottotitolo dell articolo in cui Girard presenta la Ludica è indicativo: dalle regole della logica alla logica delle regole, in quanto pone subito l accento sul fatto che il centro dell interesse della Ludica non sono più le formule, ma le regole per manipolare le dimostrazioni. Infatti nella Ludica le formule non ci sono più! Gli oggetti di base sono i loci, che rappresentano posti in cui le formule potrebbero trovare posto: ma poichè le formule in questo contesto non sono interessanti, i loci vengono lasciati vuoti, denotati semplicemente da numeri. La nascita tecnica della Ludica si può ricondurre all osservazione che i connettivi della Logica Lineare si possono dividere in due classi. I negativi, o reversibili, sono quei connettivi la cui regola di introduzione non aggiunge informazione rispetto all informazione delle premesse, ad esempio, il connettivo &: Γ A Γ B (&I) Γ A&B
5 e quelli positivi o irreversibili, per cui succede il contrario, ad esempio : Γ A Γ A B ( I d) Γ B Γ A B ( I s). Una regola della Ludica corrisponde a una sequenza di regole della Logica Lineare, tutte introducenti connettivi della stessa classe. Quindi avremo una regola negativa, un istanza della quale è la seguente, che costruisce a partire dal loco 3 i due loci 33 e 37: 33, 37 ( {3, 7}) 3 e una regola positiva, che scompone i loci 33 e 37 in sotto-loci: , , 37 (+{{2}{1, 7}}). Inoltre, vi è un solo assioma, chiamato demone, che permette di generare un qualunque loco, ad esempio: 3054 Ψ. Notate che le due regole sono etichettate da insiemi di numeri positivi, che possono essere virtualmente di cardinalità infinita, quindi possiamo scrivere istanze delle regole con un numero infinito di loci, o addirittura con un numero infinito di premesse. Il demone poi, ci permette di derivare qualunque cosa, e grazie a questo possiamo internalizzare nella Ludica la verifica interattiva delle dimostrazioni, di cui abbiamo parlato in precedenza. Infatti due dimostrazioni della Ludica (ma qui le dimostrazioni si chiamano disegni) possono interagire l una con l altra attraverso una procedura simile all eliminazione del taglio. L interazione può avere tre possibili risultati: o termina con la vittoria di uno dei due disegni, quando l altro si riduce a coincidere con una instanza dell assioma, o non termina mai, o si blocca senza arrivare ad un risultato preciso. Come succede con un programma per il calcolatore, che non è detto termini con successo: quindi la Ludica spinge ulteriormente l analogia della Logica con la computazione, arrivando anche a modellare computazioni che sono normalmente considerate scorrette (come certamente quelle effettuate da un programma che non restituisce mai un risultato!). Ma poichè la Ludica è stata introdotta a partire da problematiche nate all interno della Logica Lineare, è naturale chiedersi la relazione tra i due sistemi. Certamente i disegni della Ludica possono essere interpretate come classi (anche infinite) di dimostrazioni nella Logica Lineare. Ad esempio, il disegno: , (+{{2}{1, 7}}) 33, 37 ( {3, 7}) 3 rappresenta (tra le altre), le due dimostrazioni seguenti: P Q, R P Q, R ( I) (P Q) R ( I) S T (S T) ( I) Q, R ( I) (S T) Q, R ((S T) Q)&R (&I) Se consideriamo la Logica Lineare senza la modalità (MALL), la corrispondenza tra Logica Lineare e Ludica può essere stabilita in modo preciso. Infatti i connettivi della Logica Lineare corrispondono a insiemi di disegni (con particolari caratteristiche),
6 e le formule a proprietà di disegni. Esplorando tali analogie, la Ludica diventa una fondazione per la Logica Lineare, in quanto vale il seguente teorema: Teorema 1 (correttezza) Per ogni dimostrazione in MALL della formula A, esiste un disegno della Ludica che ha la proprietà A ed è vincente. (completezza) Per ogni formula A, esiste un disegno della Ludica che gode della proprieta A e rappresenta una dimostrazione senza tagli di A in MALL. Un disegno è vincente quando ogni sua interazione con un disegno complementare termina con la sua vittoria. Ricordando la nozione di interazione, il disegno complementare quindi introduce la nozione di dimostrazione sbagliata di A. Rimane ancora aperto il problema di estendere la Ludica in modo che il teorema di correttezza e completezza valga per tutta LL (compresa quindi la mdalità). Per ora quindi la Ludica ci offre una teoria strutturale delle dimostrazioni della Logica Lineare, ristretta al caso in cui tutte le risorse sono consumabili. Per un approccio introduttivo alla Logica Lineare e alla Ludica si vedano rispettivamente [4] e [3]. Riferimenti bibliografici [1] A.Asperti and S.Guerrini, 1998, The optimal Implementation of Functional Programming Languages. Cambridge Tracts in Theoretical Computer Science, Cambridge University Press. [2] Asperti and L.Roversi, 2002, Intuitionistic light affine logic. ACM Transactions on Computational Logic, 3(1), pp [3] Curien P.-L., 2004, Introduction to Ludics. curien. [4] Danos V., Di Cosmo R., 2004,The Linear Logic Primer, course notes, dicosmo/coursenotes/linlog/. [5] Girard J.-Y., 1987, Linear Logic, Theoretical Computer Science, London Mathematical 50:1, pp [6] Girard, J.-Y., 1998, Light Linear Logic, Information and Computation 143. [7] Girard J.-Y., 2001, Locus Solum: From the rules of logic to the logic of rules. Mathematical Structures in Computer Science 11, pp [8] Girard, J.-Y., 1996, Proof-nets : the parallel syntax for proof-theory, Logic and Algebra, eds Ursini and Agliano, Marcel Dekker, New York. [9] Y. Lafont, 1988, The linear abstract machine, Theoretical Computer Science 59, North-Holland, pp Torino, 19 febbraio 2004
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...
DettagliLogica 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
DettagliLuca 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
DettagliUn 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
DettagliIl Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)
Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande
DettagliDimostrazioni e programmi come oggetti geometrici. Simone Martini
Dimostrazioni e programmi come oggetti geometrici Simone Martini Dipartimento di Scienze dell Informazione Alma Mater Studiorum Università di Bologna 1 Dimostrazioni alla Hilbert Assiomi, che caratterizzano
DettagliLogica per la Programmazione
Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 7 Formule Valide, Conseguenza Logica Proof System per la Logica del Primo Ordine Leggi per i Quantificatori
DettagliLogica 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
DettagliUNIVERSITÀ DEGLI STUDI LA SAPIENZA CORSO DI STUDI IN INFORMATICA ESERCITAZIONI AL CORSO DI LOGICA MATEMATICA LOGICA PROPOSIZIONALE
UNIVERSITÀ DEGLI STUDI LA SAPIENZA CORSO DI STUDI IN INFORMATICA ESERCITAZIONI AL CORSO DI LOGICA MATEMATICA LOGICA PROPOSIZIONALE TAVOLE DI VERITÀ, COLETEZZA VERO-FUNZIONALE Esercizio 1. Calcola le tavole
DettagliEsercitazioni per il corso di Logica Matematica
Esercitazioni per il corso di Logica Matematica Luca Motto Ros 02 marzo 2005 Nota importante. Queste pagine contengono appunti personali dell esercitatore e sono messe a disposizione nel caso possano risultare
DettagliLa codifica digitale
La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore
DettagliNOZIONI 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
DettagliProblemi, algoritmi, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
DettagliElementi di Algebra e di Matematica Discreta Numeri interi, divisibilità, numerazione in base n
Elementi di Algebra e di Matematica Discreta Numeri interi, divisibilità, numerazione in base n Cristina Turrini UNIMI - 2016/2017 Cristina Turrini (UNIMI - 2016/2017) Elementi di Algebra e di Matematica
DettagliBREVE 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
DettagliSemantica proposizionale. Unit 2, Lez 3 e 4 Corso di Logica
Semantica proposizionale Unit 2, Lez 3 e 4 Corso di Logica Sommario Semantica dei connettivi Costruzione delle tavole di verità Tautologie, contraddizioni e contingenze Semantica delle forme argomentative
DettagliIntroduzione ad alcuni sistemi di logica modale
Introduzione ad alcuni sistemi di logica modale Laura Porro 16 maggio 2008 1 Il calcolo proposizionale Prendiamo come primitivi i simboli del Calcolo Proposizionale (PC) tradizionale a due valori 1 : un
DettagliRISOLUZIONE IN LOGICA PROPOSIZIONALE. Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine
RISOLUZIONE IN LOGICA PROPOSIZIONALE Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine 1. Risoluzione Definitione 1.1. Un letterale l è una variabile proposizionale (letterale
DettagliLe parole dell informatica: algoritmo e decidibilità
Le parole dell informatica: algoritmo e decidibilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico dell Informatica
DettagliLOGICA e INSIEMISTICA
LOGICA e INSIEMISTICA Prof. Enrico Terrone A. S: 2008/09 Definizioni La logica è una parte speciale della matematica che si occupa, anziché dei numeri, delle proposizioni. Una proposizione è una frase
DettagliIl concetto di calcolatore e di algoritmo
Il concetto di calcolatore e di algoritmo Elementi di Informatica e Programmazione Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Informatica
DettagliCorso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi
Codice BCD Prima di passare alla rappresentazione dei numeri relativi in binario vediamo un tipo di codifica che ha una certa rilevanza in alcune applicazioni: il codice BCD (Binary Coded Decimal). È un
DettagliLOGICA 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
Dettagli04 - 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,
DettagliCalcoli dei sequenti classici e lineare
Calcoli dei sequenti classici e lineare Gianluigi Bellin November 5, 2009 Scheda per il compito 2, scadenza rinviata al marteedì 10 novembre 2009 1 Calcolo dei sequenti classico 1.1 Linguaggio ed interpretazione
DettagliSi può fare un riassunto in matematica?
Si può fare un riassunto in matematica? Livello scolare: 1 biennio Abilità Esprimersi nel linguaggio naturale con coerenza e proprietà. Usare, in varie situazioni, linguaggi simbolici. Analizzare semplici
DettagliLogica 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
DettagliInformatica, Algoritmi, Linguaggi
Elementi di Informatica e Applicazioni Numeriche T Informatica, Algoritmi, Linguaggi Cos'è l'informatica? Che cos'è l'informatica? Cos'è l'informatica? Che cos'è l'informatica? Dell'informatica possiamo
DettagliAppunti di geometria euclidea
Appunti di geometria euclidea Il metodo assiomatico Appunti di geometria Euclidea Lezione 1 Prima di esaminare nel dettaglio la Geometria dal punto di vista dei Greci è opportuno fare unrichiamo di Logica.
DettagliLogica proposizionale
Definire un linguaggio formale Logica proposizionale Sandro Zucchi 2013-14 Definiamo un linguaggio formale LP (che appartiene a una classe di linguaggi detti linguaggi della logica proposizionale) Per
DettagliDIMOSTRAZIONI DI EQUIVALENZE, SUI CONNETTIVI E SULL'AMBIGUITA' DELLA SINTASSI. Corso di Logica per la Programmazione
DIMOSTRAZIONI DI EQUIVALENZE, SUI CONNETTIVI E SULL'AMBIGUITA' DELLA SINTASSI Corso di Logica per la Programmazione SULLE LEGGI DEL CALCOLO PROPOSIZIONALE Abbiamo visto le leggi per l'equivalenza ( ),
DettagliRiassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.
Capitolo 2 Campi 2.1 Introduzione Studiamo ora i campi. Essi sono una generalizzazione dell insieme R dei numeri reali con le operazioni di addizione e di moltiplicazione. Nel secondo paragrafo ricordiamo
DettagliAspetti computazionali della logica lineare
Proof-nets, λ-calcolo e complessità computazionale implicita 26 febbraio 2009 Relatore: Prof. Stefano Guerrini Correlatore: Prof.ssa Adele Morrone Contenuto Introduzione 1 Introduzione 2 Corrispondenza
DettagliAppunti 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
DettagliSimilitudini tra rette
Similitudini tra rette Mario Puppi 14 gennaio 2017 1 orrispondenze di Talete Raggi di luce, schermo e immagini. onsideriamo una retta s e una retta d, non parallele tra loro. llora ogni retta x parallela
DettagliSi consideri il sistema a coefficienti reali di m equazioni lineari in n incognite
3 Sistemi lineari 3 Generalità Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite ovvero, in forma matriciale, a x + a 2 x 2 + + a n x n = b a 2 x + a 22 x 2 + + a 2n x
DettagliGIOVANNI FUSCHINO COMPLETEZZA E RAGIONAMENTO PER DEFAULT
GIOVANNI FUSCHINO COMPLETEZZA E RAGIONAMENTO PER DEFAULT La completezza logica si esprime nel modo seguente: M α M α che si legge: da M 1 segue logicamente ( ) α se e solo se ( ) da M si può dedurre (
DettagliAlgoritmo per A. !(x) Istanza di B
Riduzioni polinomiali Una funzione f: T*!T* è detta computabile in tempo polinomiale se esiste una macchina di Turing limitata polinomialmente che la computi. Siano L 1 e L 2 " T* due linguaggi. Una funzione
Dettagli01 - Elementi di Teoria degli Insiemi
Università degli Studi di Palermo Scuola Politecnica Dipartimento di Scienze Economiche, Aziendali e Statistiche Appunti del corso di Matematica 01 - Elementi di Teoria degli Insiemi Anno Accademico 2015/2016
DettagliRagionamento Automatico Calcolo dei Sequenti. Lezione 5 Ragionamento Automatico Carlucci Aiello, 2004/05 Lezione 5 0. Il calcolo dei sequenti
Il calcolo dei sequenti Ragionamento Automatico Calcolo dei Sequenti Materiale cartaceo distribuito in aula Il calcolo dei sequenti nella logica proposizionale Il calcolo dei sequenti nella logica predicativa
DettagliIntelligenza Artificiale. Logica proposizionale: calcolo automatico
Intelligenza Artificiale Logica proposizionale: calcolo automatico Marco Piastra Logica formale (Parte 3) - Parte 3 Calcolo automatico Forme normali ed a clausole Risoluzione e refutazione Forward chaining
DettagliProblema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
DettagliCorrettezza (prima parte)
Fondamenti di informatica Oggetti e Java (prima parte) Capitolo 16 ottobre 2015 1 Contenuti Introduzione alla correttezza dei programmi specifica di un programma correttezza di un programma verifica di
DettagliLez. 5 La Programmazione. Prof. Salvatore CUOMO
Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente
DettagliLuigi Piroddi
Automazione industriale dispense del corso 9. Reti di Petri: analisi dinamica e metodi di riduzione Luigi Piroddi piroddi@elet.polimi.it Metodi di analisi di Reti di Petri Ci sono 2 modi per analizzare
DettagliLogica: 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
DettagliLinguaggi. Claudio Sacerdoti Coen 29,?/10/ : La struttura dei numeri naturali. Universitá di Bologna
Linguaggi 5: La struttura dei numeri naturali Universitá di Bologna 29,?/10/2014 Outline La struttura dei numeri naturali 1 La struttura dei numeri naturali I numeri naturali La
DettagliFilosofia del linguaggio (i) (3 cr.)
Filosofia del linguaggio (i) (3 cr.) Docente: Giuseppe Spolaore Orario: Martedì ore 17.20 aula T4, mercoledì ore 17.20 aula 1.4, giovedì ore 14.00 aula 1.4 (per un totale di circa 10 lezioni). Ricevimento:
DettagliCorso di elettrotecnica Materiale didattico: i grafi
Corso di elettrotecnica Materiale didattico: i grafi A. Laudani 12 ottobre 2005 I grafi costituiscono uno strumento matematico che permette di descrivere e schematizzare una grande varietà di problemi
DettagliSistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara
Sistemi lineari Lorenzo Pareschi Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara http://utenti.unife.it/lorenzo.pareschi/ lorenzo.pareschi@unife.it Lorenzo Pareschi (Univ. Ferrara)
Dettagli1. equivalenze e implicazioni logiche. Esercizio 1.2. Trovare le implicazioni che legano i seguenti enunciati (x, y R):
. equivalenze e implicazioni logiche Esercizio.. Trovare le implicazioni che legano i seguenti enunciati (x, y R): () x < y, () x = y, () x y, () x y, () (x y) > 0. Osserviamo subito che (x y) > 0 equivale
DettagliCapitolo IV SPAZI VETTORIALI EUCLIDEI
Capitolo IV SPAZI VETTORIALI EUCLIDEI È ben noto che in VO 3 si possono considerare strutture più ricche di quella di spazio vettoriale; si pensi in particolare all operazioni di prodotto scalare di vettori.
DettagliMaiuscole 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
Dettagli1 IL LINGUAGGIO MATEMATICO
1 IL LINGUAGGIO MATEMATICO Il linguaggio matematico moderno è basato su due concetti fondamentali: la teoria degli insiemi e la logica delle proposizioni. La teoria degli insiemi ci assicura che gli oggetti
DettagliProposizioni e verità
Proposizioni e verità Claudia Casadio Logica e Psicologia del Pensiero Laurea Triennale - Parte Istituzionale A.A. 2007-08 Contents 1 Proposizione.......................................... 3 2 Verità...............................................
Dettagli1 Funzioni reali di una variabile reale
1 Funzioni reali di una variabile reale Qualche definizione e qualche esempio che risulteranno utili più avanti Durante tutto questo corso studieremo funzioni reali di una variabile reale, cioè Si ha f
DettagliColorazioni di mappe e basi di Gröbner
Colorazioni di mappe e basi di Gröbner Marcelo Escudeiro Hernandes 12 Luglio 2012 Per il famoso Teorema dei quattro colori, abbiamo bisogno solo di quattro colori per colorare una mappa in modo che nessuna
Dettagli3. Logica. Obiettivi di apprendimento: Relazioni, dati e previsioni 6T, 7T, 8T, 10Q. La logica nel linguaggio comune...
Capitolo 3. Logica 3. Logica Obiettivi di apprendimento: Relazioni, dati e previsioni 6T, 7T, 8T, 10Q. La logica nel linguaggio comune... sei una persona priva di logica è logico comportarsi cosí fai l
DettagliIntroduzione all algebra
Introduzione all algebra E. Modica http://dida.orizzontescuola.it Didattica OrizzonteScuola Espressioni letterali come modelli nei problemi Espressioni come modello di calcolo Esempio di decodifica Premessa
DettagliMonomi L insieme dei monomi
Monomi 10 10.1 L insieme dei monomi Definizione 10.1. Un espressione letterale in cui numeri e lettere sono legati dalla sola moltiplicazione si chiama monomio. Esempio 10.1. L espressione nelle due variabili
Dettaglivariabili. se i limiti esistono e si chiamano rispettivamente derivata parziale rispetto ad x e rispetto ad y.
Funzioni di più variabili Derivate parziali Qui saranno considerate soltanto funzioni di due variabili, ma non c è nessuna difficoltà ad estendere le nuove nozioni a funzioni di n ( > variabili ( Definizione:
DettagliLa logica della finzione
Formalizzazione Nella lezione precedente, abbiamo visto qual è l idea di fondo della teoria di Lewis: La logica della finzione Sandro Zucchi 2013-14 Un enunciato della forma Nell opera di finzione f, p
DettagliINTRODUZIONE AL TESTO FILOSOFICO
INTRODUZIONE AL TESTO FILOSOFICO MEDIANTE FORME DI ANNOTAZIONE SEMANTICA Ciclo seminariale 4 febbraio 2011 4 marzo 2011 Fra ontologie e mappe: un introduzione Francesco Bianchini DI COSA PARLEREMO Mappe
DettagliUna breve introduzione all implementazione in C di algoritmi su grafo
Una breve introduzione all implementazione in C di algoritmi su grafo A cura di Gianmaria Leo Introduzione La lezione è un introduzione a concetti e strumenti che permettono l implementazione di algoritmi
DettagliSviluppo di programmi
Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla
DettagliRichiami di Matematica. 1. Insiemi, relazioni, funzioni. 2. Cardinalitá degli insiemi infiniti e numerabilitá. 3. Notazione asintotica.
Richiami di Matematica 1. Insiemi, relazioni, funzioni. 2. Cardinalitá degli insiemi infiniti e numerabilitá. 3. Notazione asintotica. Insiemi Definizioni di base Dato un insieme A: x A: elemento x appartenente
Dettagli1 Introduzione alle matrici quadrate 2 2 a coefficienti in R.
1 Introduzione alle matrici quadrate 2 2 a coefficienti in R Per introdurre il concetto di matrice, a 2 righe e 2 colonne, iniziamo col considerare griglie o tabelle di numeri Gli elementi della griglia,
DettagliTEORIA DEI SISTEMI SISTEMI LINEARI
TEORIA DEI SISTEMI Laurea Specialistica in Ingegneria Meccatronica Laurea Specialistica in Ingegneria Gestionale Indirizzo Gestione Industriale TEORIA DEI SISTEMI SISTEMI LINEARI Ing. Cristian Secchi Tel.
DettagliParte n.4 Linguaggi: Gerarchia ed Operazioni
Linguaggi di Programmazione Corso C Parte n.4 Linguaggi: Gerarchia ed Operazioni Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Gerarchia di Chomsky Sia
DettagliLinguaggi, Traduttori e le Basi della Programmazione
Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi
DettagliLezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi
Lezione 4 Problemi trattabili e soluzioni sempre più efficienti Gianluca Rossi Trattabile o intrattabile? Consideriamo ora il problema, ben noto a tutti gli studenti a partire dalla scuola media, di calcolare
DettagliEsercizi di logica. Ivan Valbusa 5 dicembre 2012
Esercizi di logica Ivan Valbusa 5 dicembre 2012 Gli esercizi proposti di seguito coprono solo una piccola parte del programma del corso. Sono mediamente più difficili di quelli presenti sul manuale di
DettagliI.4 Rappresentazione dell informazione
I.4 Rappresentazione dell informazione Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 13, 2015 Argomenti Introduzione 1 Introduzione 2 3 L elaboratore Introduzione
DettagliMinimi quadrati vincolati e test F
Minimi quadrati vincolati e test F Impostazione del problema Spesso, i modelli econometrici che stimiamo hanno dei parametri che sono passibili di interpretazione diretta nella teoria economica. Consideriamo
DettagliCONCETTO DI ASINTOTO. Asintoto verticale Asintoto orizzontale Asintoto obliquo
CONCETTO DI ASINTOTO Asintoto e' una parola che deriva dal greco: a privativo che significa no e sympìptein che significa congiungere cioe' significa che non tocca, in pratica si tratta di una retta che
DettagliNote sulle classi di complessità P, NP e NPC per ASD (DRAFT)
Note sulle classi di complessità P, NP e NPC per ASD 2010-11 (DRAFT) Nicola Rebagliati 20 dicembre 2010 1 La complessità degli algoritmi Obiettivo principale della teoria della complessità: ottenere una
DettagliLa dualità nella Programmazione Lineare
Capitolo 3 La dualità nella Programmazione Lineare 3.1 Teoria della dualità Esercizio 3.1.1 Scrivere il problema duale del seguente problema di Programmazione Lineare: min x 1 x 2 + x 3 2x 1 +3x 2 3 x
DettagliLuigi Piroddi
Automazione industriale dispense del corso (a.a. 2008/2009) 10. Reti di Petri: analisi strutturale Luigi Piroddi piroddi@elet.polimi.it Analisi strutturale Un alternativa all analisi esaustiva basata sul
DettagliUniversità degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA
Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA Introduzione George Boole (1815-1864) nel 1854 elaborò una algebra basata su predicati logici. Valori
DettagliRichiami 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
Dettagli01 - Elementi di Teoria degli Insiemi
Università degli Studi di Palermo Facoltà di Economia CdS Sviluppo Economico e Cooperazione Internazionale Appunti del corso di Matematica 01 - Elementi di Teoria degli Insiemi Anno Accademico 2013/2014
DettagliMoltiplicazione. Divisione. Multipli e divisori
Addizione Sottrazione Potenze Moltiplicazione Divisione Multipli e divisori LE QUATTRO OPERAZIONI Una operazione aritmetica è quel procedimento che fa corrispondere ad una coppia ordinata di numeri (termini
DettagliVerifica di programmi
Verifica di programmi Informalmente, un programma è corretto se l output prodotto è quello atteso rispetto all input. La correttezza dei programmi può essere espressa mediante formule per la correttezza
DettagliAPPUNTI DI TEORIA DEGLI INSIEMI. L assioma della scelta e il lemma di Zorn Sia {A i } i I
APPUNTI DI TEORIA DEGLI INSIEMI MAURIZIO CORNALBA L assioma della scelta e il lemma di Zorn Sia {A i } i I un insieme di insiemi. Il prodotto i I A i è l insieme di tutte le applicazioni α : I i I A i
DettagliANALISI 1 1 QUINTA LEZIONE
ANALISI 1 1 QUINTA LEZIONE 1 prof. Claudio Saccon, Dipartimento di Matematica Applicata, Via F. Buonarroti 1/C email: saccon@mail.dm.unipi.it web: http://www2.ing.unipi.it/ d6081/index.html Ricevimento:
DettagliAUTOMA A STATI FINITI
Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate
DettagliGrafi e reti di flusso
Grafi e reti di flusso Molti problemi di ottimizzazione sono caratterizzati da una struttura di grafo: in molti casi questa struttura emerge in modo naturale, in altri nasce dal particolare modo in cui
DettagliDisequazioni di secondo grado
Disequazioni di secondo grado. Disequazioni Definizione: una disequazione è una relazione di disuguaglianza tra due espressioni. Detti p() e g() due polinomi definiti in un insieme A, una disequazione
DettagliMATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI. Anna TORRE
MATEMATICA PER LO STUDIO DELLE INTERAZIONI STRATEGICHE: TEORIA DEI GIOCHI Anna TORRE Dipartimento di Matematica, Università di Pavia, Via Ferrata 1, 27100, Pavia, Italy. E-mail: anna.torre@unipv.it 1 SOLUZIONI:
DettagliGeorge BOOLE ( ) L algebra booleana. (logica proposizionale)
George BOOLE (1815-64) L algebra booleana. (logica proposizionale) La logica e George BOOLE George BOOLE nel 1847 pubblicò il libro Mathematical Analysis of Logic, nel quale presentava ciò che oggi si
DettagliLa codifica. dell informazione
00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111
DettagliPrecorsi 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
DettagliElementi 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
DettagliCorso di Analisi Numerica
Corso di Laurea in Ingegneria Informatica Corso di 3 - PROBLEMI DI INTERPOLAZIONE Lucio Demeio Dipartimento di Scienze Matematiche 1 Interpolazione: Polinomio di Lagrange 2 3 Introduzione Problemi di interpolazione
DettagliFUNZIONI. }, oppure la
FUNZIONI 1. Definizioni e prime proprietà Il concetto di funzione è di uso comune per esprimere la seguente situazione: due grandezze variano l una al variare dell altra secondo una certa legge. Ad esempio,
DettagliEsercizi di Programmazione Lineare - Dualità
Esercizi di Programmazione Lineare - Dualità Esercizio n1 Dato il seguente problema 3 + 3 2 2 + a scriverne il duale; b risolvere il duale (anche geometricamente indicando cosa da esso si può dedurre sul
DettagliLuigi Piroddi
Automazione industriale dispense del corso (a.a. 2008/2009) 9. Reti di Petri: analisi dinamica e metodi di riduzione Luigi Piroddi piroddi@elet.polimi.it Metodi di analisi di Reti di Petri Ci sono 2 modi
Dettagli1 Indipendenza lineare e scrittura unica
Geometria Lingotto. LeLing7: Indipendenza lineare, basi e dimensione. Ārgomenti svolti: Indipendenza lineare e scrittura unica. Basi e dimensione. Coordinate. Ēsercizi consigliati: Geoling. Indipendenza
DettagliLEZIONE DI MATEMATICA SISTEMI DI NUMERAZIONE. (Prof. Daniele Baldissin)
LEZIONE DI MATEMATICA SISTEMI DI NUMERAZIONE (Prof. Daniele Baldissin) L'uomo usa normalmente il sistema di numerazione decimale, probabilmente perché ha dieci dita. Il sistema decimale è collegato direttamente
Dettagli