Università degli Studi di Camerino – Corso di Laurea Specialistica in Informatica(Classe 23S) – Anno Accademico 2008/2009S...
SommarioPARTE 1. ALGORITMI E CALCOLABILITA’. LA TESI DI CHURCH.• Frege e Hilbert• Macchina di Turing• Tesi di Church• Risu...
• Frege: “Bergriffsschrift” 1879, assimila il procedimento dimostrativo a uncalcolo, le cui regole sono in un numero finit...
Macchina di Turing T:• A insieme finito, detto alfabeto, i cui elementi sono chiamati simboli• S insieme finito i cui elem...
Una funzione f:N→N è Turing-computabile se esiste unamacchina di Turing T che avendo in input n simboli nonblankTuring - c...
DEFINIZIONE 1. Sia c un numero e g(x,y) una funzione. Sia f data da:1. f(0) = c;2. f(n+1) = g(n,f(n))Allora f è ottenuta p...
La composizione, la ricorsione e la minimizzazione sono leoperazioni necessarie e sufficienti per ottenere le funzioniTuri...
La macchina U, avendo in input un arbitrarioprogramma X di macchina di Turing e numero y,Macchina di Turing Universaleprog...
“Non esiste una macchina di Turing H, che avendo in input unacoppia ordinata (X, y) ove X è un elenco di quintuple ed y è ...
• Turing Programmazione (1936)• Fortran, Cobol (1950)• Pascal (linguaggi modulari)Linguaggi e ProgrammiNUOVA DISCIPLINAVer...
CERTIFICAZIONE DI UNA MACCHINA DI TURING T1. scrivere un enunciato E che dice che fissato un input e fissatal’inizializzaz...
Programmazione Logica: scrivere un programma per ilcalcolo di f significa assiomatizzare f.Es. R mdT preventivamente istru...
Le macchine di Turing hanno ancora un ruolo insostituibilenella teoria e nella didattica della calcolabilità, in quantoado...
Passi(x) ≤ qualche polinomio in x se e solo se lasoddisfacibilità di formule nella logica proposizionale èdecidibile con u...
DEFINIZIONE:Un problema Q è decidibile in tempo polinomiale, sec’è un polinomio r e una macchina di Turing T conqueste pro...
Struttura generale di questi problemi ( es. soddisfacibilità efrancobolli ):I. Indovinare magicamente un’assegnazione o un...
Cook dimostrò nel 1971 che il problema di soddisfacibilità ha unruolo emblematico in questa classe: ogni problema in NP èv...
Upcoming SlideShare
Loading in...5
×

Algoritmi, Calcolabilità, Tesi di Church ed applicazione della logica all'informatica

228

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
228
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Algoritmi, Calcolabilità, Tesi di Church ed applicazione della logica all'informatica

  1. 1. Università degli Studi di Camerino – Corso di Laurea Specialistica in Informatica(Classe 23S) – Anno Accademico 2008/2009Seminario sul corso di “Logica Matematica II”Docente: Prof. Toffalori CarloDott. Ficcadenti Stefano
  2. 2. SommarioPARTE 1. ALGORITMI E CALCOLABILITA’. LA TESI DI CHURCH.• Frege e Hilbert• Macchina di Turing• Tesi di Church• Risultati fondamentali della calcolabilitàPARTE 2. APPLICAZIONI DELLA LOGICA ALL’INFORMATICA.• Linguaggi e Programmi• Il problema della certificazione• Logica e Programmazione logica• Complessità e calcolabilità polinomialeSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  3. 3. • Frege: “Bergriffsschrift” 1879, assimila il procedimento dimostrativo a uncalcolo, le cui regole sono in un numero finito e tutte esplicite a priori, e lacorrettezza dei risultati prescinde dal contenuto delle formule. (calcolodeduttivo)Frege e Hilbert• Hilbert: “Entscheidungsproblem” problema (fondamentale) di decisione,risolto quando si conosca una procedura per decidere la validità o lasoddisfacibilità di una data espressione logica, mediante un numero finitodi operazioni.Come definire una procedura meccanica ?Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  4. 4. Macchina di Turing T:• A insieme finito, detto alfabeto, i cui elementi sono chiamati simboli• S insieme finito i cui elementi sono chiamati stati di T (0 statoiniziale di T)• Un nastro costituito da una fila di caselle, finita ma estendibile inentrambe le direzioniMacchina di Turingentrambe le direzioni• Un pennino ottico che può leggere e scrivere su una casella allavolta sul nastro seguendo il programma di TOgni istruzione è una quintupla del tipo[a,s,a’,D,s’]Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  5. 5. Una funzione f:N→N è Turing-computabile se esiste unamacchina di Turing T che avendo in input n simboli nonblankTuring - computabileconsecutivi, posta in stato 0 col pennino ottico sul primo di talisimboli, si ferma dopo un numero finito di passi, lasciandoscritti sul nastro f(n) simboli nonblank consecutivi.Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  6. 6. DEFINIZIONE 1. Sia c un numero e g(x,y) una funzione. Sia f data da:1. f(0) = c;2. f(n+1) = g(n,f(n))Allora f è ottenuta per ricorsione primitiva a partire da c e dallafunzione g.DEFINIZIONE 2. Sia g(x,y):NxN→N una funzione Turing calcolabile, siaRicorsione primitiva e minimalizzazioneDEFINIZIONE 2. Sia g(x,y):NxN→N una funzione Turing calcolabile, siaZER(x) l’insieme dei numeri y tali che g(x,y)=0. Si supponga che perogni x, ZER(x) sia non vuoto. Allora per minimizzazione di g si ottienela funzione f:N→N tale chef(x)=minimo elemento di ZER(x)(Kleene 1938) funzioni parziali ricorsive, abrogando la condizione cheZER(x) non sia vuoto.Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  7. 7. La composizione, la ricorsione e la minimizzazione sono leoperazioni necessarie e sufficienti per ottenere le funzioniTuring-computabili.Tesi di ChurchTESIPer ogni funzione f effettivamente computabile c’è una macchinadi Turing che calcola f.RISULTATO: Equivalenza tra funzioni parziali ricorsive e funzioniTuring-computabiliSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  8. 8. La macchina U, avendo in input un arbitrarioprogramma X di macchina di Turing e numero y,Macchina di Turing Universaleprogramma X di macchina di Turing e numero y,simula il calcolo X su input y e produce in outputil valore X(y)Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  9. 9. “Non esiste una macchina di Turing H, che avendo in input unacoppia ordinata (X, y) ove X è un elenco di quintuple ed y è unnumero, H si ferma se e solo se la macchina X si ferma avendo ininput y”Problema della fermataTuringProblema della Fermata -> Problema di decisioneEintscheidungsproblem è insolubile(indecidibilità della logica dei predicati)Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  10. 10. • Turing Programmazione (1936)• Fortran, Cobol (1950)• Pascal (linguaggi modulari)Linguaggi e ProgrammiNUOVA DISCIPLINAVerifica della correttezza dei programmi (certificazione),necessaria la verifica in maniera formale tramite lalogica dei predicatiSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  11. 11. CERTIFICAZIONE DI UNA MACCHINA DI TURING T1. scrivere un enunciato E che dice che fissato un input e fissatal’inizializzazione di T, dopo un certo numero di passi T si ferma suun certo input;2. dimostrare E, utilizzando le definizioni della Turing-computabilità, assieme a tutti gli strumenti matematici disponibili; l’induzione,Certificazione, assieme a tutti gli strumenti matematici disponibili; l’induzione,la teoria dei numeri, l’analisi combinatoria.TeoremaDimostrazione -> ProgrammaCertificazioneSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  12. 12. Programmazione Logica: scrivere un programma per ilcalcolo di f significa assiomatizzare f.Es. R mdT preventivamente istruita con le regole del calculusratiocinato che si incaricherà di calcolare f(x), procederà perdeduzioni successive al modo di una dimostrazione matematica.Logica e programmazione logicadeduzioni successive al modo di una dimostrazione matematica.Oss. (dettatura di f e di x e la lettura del risultato f(x))Proporzionalmente all’efficienza che chiediamo alle macchine, esse cichiedono di stringare al massimo il nostro modo di fare matematica(abolendo invenzioni simboliche, immagini geometriche, figureRetoriche...)Seminario sul Corso di “Logica Matematica II“ Logica & Informatica
  13. 13. Le macchine di Turing hanno ancora un ruolo insostituibilenella teoria e nella didattica della calcolabilità, in quantoadottate per misurare i costi dei calcoli.Lettera di Gödel a von Neumann (1956)ComplessitàLettera di Gödel a von Neumann (1956)“Considera una macchina di Turing T che avendo in input unaformula F della logica dei predicati e un numero x, decide se Fpossegga una dimostrazione di lunghezza ≤x.”Gödel chiede una stima della crescita della funzione passi(x) alcrescere di xSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  14. 14. Passi(x) ≤ qualche polinomio in x se e solo se lasoddisfacibilità di formule nella logica proposizionale èdecidibile con un numero di passi polinomiale (uno deiproblemi fondamentali e insoluti dell’informatica).Teoria della Complessità- Problema della soddisfacibilità- Problema dell’intersecabilità- Problema dei francobolliSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  15. 15. DEFINIZIONE:Un problema Q è decidibile in tempo polinomiale, sec’è un polinomio r e una macchina di Turing T conqueste proprietà:avendo qualsiasi input x di lunghezza n, T riesce aProblema Facile – Classe Pavendo qualsiasi input x di lunghezza n, T riesce adecidere se x è soluzione di Q entro al più r(n) passi.Facile = Classe PSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  16. 16. Struttura generale di questi problemi ( es. soddisfacibilità efrancobolli ):I. Indovinare magicamente un’assegnazione o un’affrancaturaII. Banalmente controllare che tale assegnazione o affrancaturaè soluzione del problemaProblemi DifficiliEs. Congettura di Fermat (Euler)I.II. si controlla la validità di questa fattorizzazione con un calcolatore o concarta e penna.Classe NP (polinomiale nondeterministico)Seminario sul Corso di “Logica Matematica II“ Logica & Informatica670041764142949672972152x==+
  17. 17. Cook dimostrò nel 1971 che il problema di soddisfacibilità ha unruolo emblematico in questa classe: ogni problema in NP èvelocemente riducibile al problema della soddisfacibilità.Problema della soddisfacibilitàCONCLUSIONEChi scoprisse un algoritmo veloce per questo problema risolve intempo polinomiale tutti i problemi in NP, ridimensionandol’importanza della fase inventiva (I) e rispondendo positivamente alladomanda fatta da Gödel nella lettera a von NeumannSeminario sul Corso di “Logica Matematica II“ Logica & Informatica
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×