La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Deduzione naturale + Logica & Calcolabilità

Presentazioni simili


Presentazione sul tema: "Deduzione naturale + Logica & Calcolabilità"— Transcript della presentazione:

1 Deduzione naturale + Logica & Calcolabilità

2 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?

3 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.

4 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)

5 È 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à.

6 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.

7 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

8 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

9 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.

10 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 

11 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.»

12 (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 

13 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’.

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

15 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

16 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

17 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

18 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

19 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

20 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ù!

21 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

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

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

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

25 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

26 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 

27 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!

28 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?

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

30 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’

31  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.

32 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

33 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?

34 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).

35 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.

36 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.

37 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.

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

39

40

41 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

42 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

43 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)

44 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

45 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!

46 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).

47 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

48 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

49 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

50 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.

51 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

52 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


Scaricare ppt "Deduzione naturale + Logica & Calcolabilità"

Presentazioni simili


Annunci Google