Deduzione naturale + Logica & Calcolabilità

Slides:



Advertisements
Presentazioni simili
…da von Neumann al computer quantistico
Advertisements

…da von Neumann al computer quantistico architettura dellelaboratore.
LIMITI:DEFINIZIONI E TEOREMI
Sistemi dinamici discreti e computabilità intrinseca
Macchine di Turing e ricorsività generale
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E1 Dallanalisi del problema alla definizione dellalgoritmo.
Linguaggi Regolari e Linguaggi Liberi
Algoritmi e Programmazione
Intelligenza Artificiale
Precorsi di Informatica Dott. Antonio Cisternino Settembre 2003
Lez. 41 Universita' di Ferrara Facolta' di Scienze Matematiche, Fisiche e Naturali Laurea Specialistica in Informatica Algoritmi Avanzati Programmazione.
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Il ragionamento classico
MACCHINE DI TURING Le macchine di Turing sono dispositivi astratti per la manipolazione di simboli, ideati nel 1936 dal matematico e logico britannico.
Intelligenza Artificiale 1 Gestione della conoscenza lezione 8
Sistemi basati su conoscenza Conoscenza e ragionamento Prof. M.T. PAZIENZA a.a
EQUAZIONI DI PRIMO GRADO
LOGICA E MODELLI Logica e modelli nel ragionamento deduttivo A cura di Salvatore MENNITI.
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive
Modelli simulativi per le Scienze Cognitive
Semantica di Tarski.
Qualche esempio di tableaux
Unità Didattica 1 Algoritmi
Corso di Matematica Discreta I Anno
Intelligenza Artificiale
Obiettivi Conoscere strumento Analisi di un progetto
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
PROBLEMI RISOLUBILI E COMPUTABILITÀ
LINGUAGGI DI PROGRAMMAZIONE
Intelligenza Artificiale - AA 2001/2002 Logica formale (Parte 2) - 1 Intelligenza Artificiale Breve introduzione alla logica classica (Parte 2) Marco Piastra.
Intelligenza Artificiale - AA 2002/2003 Logica formale (Parte 2) - 1 Intelligenza Artificiale Breve introduzione alla logica classica (Parte 2) Marco Piastra.
IL GIOCO DELLA LOGICA.
Dalla logica naturale alla logica formale
Logica formale e logica discorsiva 2° Lezione
Riassumendo le teorie sulla comunicazione
Logica Matematica Seconda lezione.
Riassunto delle puntate precedenti:
Antonio Cisternino La Macchina di Turing.
CHI ERA ALAN TURING? Turing fece parte del team di matematici che, a partire dalla base di Bletchley Park, decodificarono i messaggi scritti dalle macchine.
LA MACCHINA DI TURING Nel 1936 il matematico inglese A. M. Turing propose una definizione del concetto di algoritmo tramite un modello matematico di macchina.
Pierdaniele Giaretta Primi elementi di logica
Agenti logici: calcolo proposizionale Maria Simi a.a. 2008/2009.
Corso di logica matematica
PRESENTAZIONE DI RAGANATO ROBERTO, BISCONTI GIAMMARCO E
La logica è lo studio del ragionamento.
Logica Lezione Nov 2013.
Logica A.A Francesco orilia
F. Orilia Logica F. Orilia
Algebra di Boole.
Logica F. Orilia.
Logica Lezioni Lunedì 18 Nov. Annuncio E' possibile che dovrò rinviare delle lezioni della prossima settimana. Tenete d'occhio gli annunci.
Logica F. orilia. Lezz Lunedì 4 Novembre 2013.
Didattica e Fondamenti degli Algoritmi e della Calcolabilità Terza giornata: principali classi di complessità computazionale dei problemi Guido Proietti.
Logica A.A Francesco orilia
INTRODUZIONE ALLA GEOMETRIA EUCLIDEA
Logica Lezz Nov Reiterazione (RE) P |- P 1 P A 2 P & P 1,1, &I 3 P 2, & E.
Logica Orilia. Lezz Nov Ancora sugli alberi di refutazione verifica dello statuto logico di una singola fbf con gli alberi di refutazione:
AOT Lab Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Intelligenza Artificiale Rappresentazione della Conoscenza e Ragionamento.
La logica degli enunciati interamente realizzata da GIANNUZZI SILVIA
Indecidibilità Limiti della calcolabilità Pigreco-day 14 marzo 2014 Matematica e Incertezza Prof. Antonio Iarlori Mathesis Lanciano-Ortona.
…da von Neumann al computer quantistico L’archittettura dell’elaboratore.
Introduzione alla LOGICA MATEMATICA Corso di Matematica Discreta. Corso di laurea in Informatica. Prof. Luigi Borzacchini III. La logica delle proposizioni.
Le proposizioni DEFINIZIONE. La logica è un ramo della matematica che studia le regole per effettuare ragionamenti rigorosi e corretti. DEFINIZIONE. Una.
Logica Lezione 8, DISTRIBUIRE COMPITO 1.
Lezione marzo nota su "a meno che" A meno che (non) = oppure Il dolce lo porto io (I) a meno che (non) lo porti Mario (M) I  M   I  M.
Logica Lezione 19, Distribuire compito 3 DATA esame in classe intermedio: Lunedì 20 aprile.
Logica Lezione 11, Annuncio Non si terrà la lezione di Lunedì 16 Marzo.
Logica Lez. 5, Varzi su affermazione del conseguente Malgrado alcuni esempi di questa forma siano argomentazioni valide, altri non lo sono.
INSIEMI E LOGICA PARTE QUARTA.
Transcript della presentazione:

Deduzione naturale + Logica & Calcolabilità

La nozione di mondo possibile, fondamentale per la semantica dei linguaggi logici, è tuttavia una nozione non dominabile, perché evoca per definizione una infinità di situazioni possibili. Prendiamo il caso in cui b è conseguenza logica di a: sappiamo che ciò significa “in tutti i mondi in cui a è vera, anche b è vera” quanti mondi? quali? cosa significa in termini operativi?

Le alternative logicamente concepibili nella sfera dei mondi possibili sono infinite e risulta estremamente difficile trattare la nozione di conseguenza con modalità finitarie. Come rendere allora dominabile la relazione tra ipotesi e conclusione? Mediante il cosiddetto calcolo della deduzione naturale, un metodo effettivo per costruire concrete dimostrazioni della validità di argomenti dati.

In termini intuitivi: Dimostrazione  Successione finita di formule in cui, mediante una procedura effettiva, si passa in modo controllabile da un elemento all’altro della successione: formalmente scriveremo a1, ..., an ⊢ b (Conseguenza a lungo termine per la relazione tra logica e calcolabilità: una procedura effettiva è in linea di principio eseguibile)

È possibile, in altri termini, ‘ridurre’ le conseguenze logiche a dimostrazioni e controllare effettivamente se possiamo ‘produrre’ b a partire da a1,..., an. In una dimostrazione, le premesse permettono di ottenere in modo effettivo e procedurale la conclusione: per questo motivo, l’analisi del concetto di dimostrazione rimanda alla relazione tra logica e calcolabilità.

Nel calcolo della deduzione naturale, lo strumento principale per costruire dimostrazioni è l’insieme delle regole di inferenza, che sono prescrizioni su come ricavare un certo enunciato da altri enunciati. Calcolo enunciativo (CE): sistema di regole di inferenza per produrre dimostrazioni dentro la logica enunciativa.

Regole di inferenza per CE: regole di introduzione e di eliminazione di connettivi nel corso delle dimostrazioni. Se § è un connettivo qualsiasi Introduzione (I-§) Eliminazione (E-§) a, b a§b _______ _______ a§b a, b

Forma generale di una dimostrazione a1,..., am ⊢ b Numeri di riga Giustificazione della formula (1) # G . # G . # G Le a1,..., am . # G occorrono qui (m) # (m+1) # ………. G Qui occorrono . # ………. G formule ottenute (n) # con regole di inf. Numeri che indicano le formule da cui dipende la formula della riga formula formula formula formula formula conclusione = b

La regola più generale di tutte: Regola di Assunzione (Assn) Regola che consiste semplicemente nell’assumere una formula in un qualsiasi passo di una dimostrazione. Se scegliamo per esempio di aprire una dimostrazione con la formula a  b come assunzione, scriveremo (1) 1 a  b Assn Questi due numeri sono uguali perché la fbf a  b dipende da se stessa.

Se i connettivi della logica enunciativa LE sono , , , , avremo le rispettive regole di inferenza  I, E Introduzione ed Eliminazione di   I, E Introduzione ed Eliminazione di   I, E Introduzione ed Eliminazione di   I, E Introduzione ed Eliminazione di 

Eliminazione di  (legge del modus ponens). Cominciamo a vedere le regole più semplici. Eliminazione di  (legge del modus ponens). Da un condizionale ab e dall’antecedente a, possiamo inferire il conseguente b. Formalmente: ab, a _____ E b Es.: «Se il capo fuma, è nervoso.» «Il capo fuma» quindi _____ «Il capo è nervoso.»

(ab) g, ab ⊢ g ab, b  g, a ⊢ g 1 (ab) g Assn 2 ab Assn 1,2 g 1,2 E  ab, b  g, a ⊢ g 1 ab Assn 2 bg Assn 3 a Assn 1,3 b 1,3 E  1,2,3 g 2,4 E 

Introduzione di  (Regola di ‘scarico’) Supponiamo di avere una dimostrazione con premesse a1,..., am , e supponiamo di voler derivare un condizionale della forma bg. Possiamo allora cercare di costruire una dimostrazione con premesse a1,..., am, b: se in questa dimostrazione riusciremo a derivare g, allora saremo autorizzati a scrivere bg Si dice allora che l’assunzione b viene ‘scaricata’.

Formalmente, a1,..., am [b] . . I  g _____ bg Nota: la parentesi quadra [ ] indica l’assunzione scaricata.

Esempio: Tutti i gatti fanno le fusa a1, Esempio: Tutti i gatti fanno le fusa a1,..., am [Fido è un gatto] [b] ____________________ Se Fido è un gatto, allora fa le fusa bg

Introduzione di  Da due formule qualsiasi a e b possiamo inferire a  b a, b _____ I a  b Eliminazione di  Da una congiunzione a  b possiamo inferire uno qualsiasi dei congiunti _____ E

Dimostrazione a (b  g), a ⊢ a  b 1 1 a (b  g) Assn 2 2 a Assn 3 1,2 b  g 1,2 E 4 1,2,3 b 3, E 5 1,2,3,4 a  b 2,4 I

Introduzione di  Data una formula qualsiasi a, possiamo inferire la disgiunzione di a con una formula qualsiasi (che indichiamo con X) a _____ I a  X

Eliminazione di  Da formule della forma ab, bg e ag possiamo inferire la formula g. ab, bg, ag ______________ E g

La regola di eliminazione di  è definita dilemma costruttivo: Oggi o è sabato o è domenica Se è sabato ci sarà un concerto Se è domenica ci sarà un concerto ____________________________ Ci sarà un concerto L’informazione disgiuntiva non serve più!

Eliminazione di  Da due formula della forma a e a possiamo inferire b (principio secondo cui da una contraddizione segue qualsiasi cosa). Formalmente: a, a _____ E b

Dimostrazione  a ⊢ a b 1  a Assn 2 a Assn 3 b 1,2 E  4 a b 2,3 I 

Eliminazione di  (alternativa) Da una formula della forma  a possiamo inferire a (legge della doppia negazione). Formalmente:   a _____ E a

Dimostrazione  a    b,    a ⊢ b 1 1  a    b Assn 2 2    a Assn 3 2  a 2 E 4 1,3   b 1,3 E 5 1,2,3,4 b 4 E

Introduzione di  Se da una formula a deriviamo una contraddizione, cioè deriviamo sia una formula b sia la sua negazione b, allora possiamo scrivere  a, introducendo il connettivo  . [a] [a] Principio della . . dimostrazione . . I  per assurdo . . b,  b ______ a

Dimostrazione a  b, a   b ⊢  a 1 a  b Assn 2 a   b Assn 3 a Assn 4 b 1,3 E  5  b 2,3 E  6  a 3,4,5 I 

Le nozioni di DECIDIBILITÀ e COMPUTABILITÀ e i loro limiti Formulazione della logica in termini di teorie formalizzate e di dimostrazioni (all’interno di teorie formalizzate)  Soluzione effettiva di tutti i problemi logici? NO!

Problema della Decisione Data una qualsiasi proposizione A della logica predicativa, è possibile determinare se A è vera o falsa? Esiste cioè un algoritmo capace di decidere se, per una qualsiasi proposizione A, quella proposizione è vera o falsa? Il problema nascosto è: cos’è un algoritmo?

Concetti vaghi e indefiniti ‘PROCEDURA’, METODO’,... ALGORITMO Concetti vaghi e indefiniti ‘PROCEDURA’, METODO’,... MACCHINA DI TURING (MdT) Concetto preciso

LOGICA Decidibilità/Indecidibilità COMPUTABILITÀ Ricorsività TEORIA DEGLI ALGORITMI Linguaggio come strumento cognitivo (‘Produzione’ linguistica come fenomeno computabile) LINGUISTICA I sistemi cognitivi umani producono espressioni linguistiche ‘adeguate’ al contesto e in tempi ‘corretti’

 Chiarificazione della nozione di algoritmo Definizione di un modello astratto di computazione (Macchina di Turing [MdT]) Assunzione: la MdT (modello astratto) include in realtà le caratteristiche fondamentali di ogni possibile procedura di calcolo, cioè di ogni possibile algoritmo.

I FONDAMENTI DELLA NOZIONE DI MdT  Assunzione ‘qualitativa’ di Turing: le condizioni più generali di un modello astratto di un generico processo di calcolo sono proprio i vincoli ai quali deve sottostare un qualsiasi generico agente razionale che debba eseguire un calcolo. Idea di fondo: questi vincoli sono legati ai limiti percettivi e computazionali generali di sistemi cognitivi

Intuizione fondamentale alla base della MdT Un agente razionale C dispone di una memoria e di capacità percettive limitate. Se assumiamo che lo spazio a disposizione di C per eseguire il calcolo sia rappresentato da un nastro unidimensionale potenzialmente infinito, quali sono le possibili operazioni che C è in grado di eseguire?

1. C può osservare delle caselle sul nastro e scrivere sul nastro dei simboli tratti da un alfabeto finito; 2. C può ricordare risultati determinati da passi precedenti del calcolo e utilizzare tale informazione nel seguito del calcolo; 3. Ogni operazione elementare che C può eseguire è determinata univocamente da ciò che C osserva e ricorda (cioè dal contenuto delle caselle osservate e dal contenuto degli stati interni).

Se con Turing assumiamo che le condizioni 1-3 siano le condizioni che possiamo assumere per un generico processo di calcolo, allora è possibile sostenere la seguente tesi: TESI DI CHURCH-TURING Ogni processo di calcolo effettivo (cioè ogni ‘algoritmo’) può essere realizzato mediante una macchina di Turing.

IMPORTANTE! LA TESI DI CHURCH-TURING NON È UN TEOREMA MA ‘SOLO’ UNA TESI SULLA NATURA DELLA CALCOLABILITÀ Infatti nella formulazione della tesi di Church-Turing «Ogni processo di calcolo effettivo (cioè ogni ‘algoritmo’) può essere realizzato mediante una macchina di Turing» si utilizza il concetto di algoritmo, che come abbiamo visto, è in sé un concetto vago.

La tesi di Church-Turing non è dunque altro che la formulazione esplicita della convinzione che la nozione di MdT rappresenti in modo adeguato il concetto intuitivo di calcolabilità, algoritmicità o risolvibilità mediante procedura effettiva.

Ma come è fatta una MdT? Una MdT è definita da: un nastro una testina uno stato interno un programma uno stato iniziale

Il nastro Il nastro è * Infinito (cioè potenzialmente illimitato) * suddiviso in celle In una cella può essere contenuto un simbolo preso da un alfabeto opportuno Un alfabeto è semplicemente un insieme di simboli Una cella deve contenere un simbolo che appartiene all’alfabeto

Lo stato interno e la testina La macchina è dotata di una testina di lettura/scrittura La testina è in grado di leggere e scrivere il contenuto della cella del nastro su cui si trova La macchina ha uno stato interno Uno stato è un elemento appartenente all’insieme degli stati

Il programma di una MdT Il comportamento della macchina è determinato da un insieme di regole Una regola ha la forma seguente: (A, a, B, b, dir) Una regola viene applicata se lo stato corrente della macchina è A e il simbolo letto dalla testina è a L’applicazione della regola scrive sul nastro b, cambia lo stato in B ed eventualmente sposta la testina di una cella a sinistra o a destra (dir)

Il funzionamento di una MdT La macchina opera come segue: Determina la regola da applicare in base allo stato interno e al simbolo corrente (quello letto dalla testina) Se esiste una tale regola cambia lo stato, scrive il simbolo sulla cella corrente si sposta come indicato dalla regola Se non esiste la regola l’esecuzione termina In questo modello non può esistere più di una regola per uno stato ed un simbolo corrente: la MdT è un sistema deterministico

Problema della Decisione Torniamo al nostro Problema della Decisione Data una qualsiasi proposizione A di L2, è possibile determinare se A è vera o falsa? Esiste cioè un ‘algoritmo’ capace di decidere se, per una qualsiasi proposizione A di L2, quella proposizione è vera o falsa? Ora sappiamo cos’è un ‘algoritmo’: una MdT!

Vediamo allora il Problema della Decisione in termini di MdT: Data una qualsiasi proposizione A, esiste una MdT capace di decidere se, per una qualsiasi proposizione A, quella proposizione è vera o falsa? Teorema di Turing (1936) Non esiste alcuna MdT capace di risolvere il problema della decisione! Vediamo perché (in termini qualitativi).

Intuitivamente, possiamo indicare una MdT come un algoritmo con input e output: l’input rappresenta il ‘dato in ingresso’ della MdT, mentre l’output rappresenta il risultato dell’applicazione della MdT all’input. input output MdT

Possiamo cioè indicare una generica MdT usando i simboli di variabile n e m, cioè: MdTn  la n-esima MdT m  possibile input per MdTn MdTn(m)  output di MdTn per input m

Consideriamo ora la seguente domanda (Problema della fermata): per m e n generici, la macchina di Turing MdTn si fermerà per l’input m? Intuitivamente “MdTn si ferma MdTn calcola per l’input m” l’output MdTn (m) “MdTn non si ferma MdTn non calcola

La domanda "Per m e n generici, la macchina di Turing MdTn si fermerà per l’input m?" può avere però risposta soltanto se esiste un'altra macchina di Turing, che calcola – dati n, m qualsiasi – se MdTn si ferma per l'input m o no.

Si dimostra tuttavia che questo algoritmo non può esistere: il problema della fermata ha soluzione NEGATIVA. Ma se il problema della fermata non è risolvibile, allora nemmeno il problema della decisione è risolvibile: perché? Formula A  A è vera A non è vera [MdT si ferma [MdT non si per l’input A] ferma per l’input A] MdT

Problema della Decisione Riassumendo: Problema della Decisione RISOLVIBILE per LE NON RISOLVIBILE per LP Esiste un algoritmo capace Non esiste un algoritmo di decidere (  tavole di verità) generale capace di decidere