Note del corso di Calcolabilità e Linguaggi Formali - Lezione 10

Documenti analoghi
Note del corso di Calcolabilità e Linguaggi Formali - Lezione 8

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 7

FUNZIONI TRA INSIEMI. Indice

Osservazione 1.1 Si verifica facilmente che esiste un unica relazione d ordine totale su Q che lo renda un campo ordinato.

DAI NUMERI NATURALI AI NUMERI RAZIONALI

I teoremi della funzione inversa e della funzione implicita

LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)

CAPITOLO SECONDO APPLICAZIONI TRA INSIEMI E RELAZIONI DI EQUIVALENZA

LEZIONE 30. Se x = 1 si dice che x è un versore. Se poi y = (y 1,..., y n ) R n poniamo. Ricordiamo che vale la cosiddetta disuguaglianza triangolare

Cenni di programmazione ricorsiva. Appunti per gli studenti di Programmazione I e Laboratorio (corsi A-B)

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 6

COMPLETAMENTO DI SPAZI METRICI

11. Misure con segno.

Gli insiemi N, Z e Q. I numeri naturali

Appunti del Corso Analisi 1

Dimostrazione. Indichiamo con α e β (finiti o infiniti) gli estremi dell intervallo I. Poniamo

1 Funzioni reali di una variabile reale

Linguaggio universale, riduzioni, e teorema di Rice. Linguaggio universale, riduzioni, e teorema di Rice

1 Principio di Induzione

401 PREDICATI RICORSIVI PRIMITIVI

APPUNTI DI TEORIA DEGLI INSIEMI. L assioma della scelta e il lemma di Zorn Sia {A i } i I

02 - Logica delle dimostrazioni

Teorema 1.1. (Teorema di Compattezza) Sia Γ un insieme di formule di un linguaggio proposizionale.

Dimostrazione: Data una allora non appartiene all immagine. Se per

Il Teorema di Mountain-Pass

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

m = a k n k + + a 1 n + a 0 Tale scrittura si chiama rappresentazione del numero m in base n e si indica

Equivalentemente, le colonne di A sono linearmente indipendenti se e solo se

1 Proprietà elementari delle congruenze

LEZIONE 2. ( ) a 1 x 1 + a 2 x a n x n = b, ove a j, b R sono fissati.

RISOLUZIONE IN LOGICA PROPOSIZIONALE. Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine

SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI

Sia k un campo e sia un elemento non appartenente a k chamato, al solito, infinito. Consideriamo k := k { }. Poniamo per definizione:

TEN Radici quadrate modulo p e modulo p k. Radici quadrate modulo p, con p > 2.

Ricordiamo che l operatore divergenza agisce su un campo vettoriale F ed è definito come segue: div F (x) = x i. i=1. x 2 + y 2

3/10/ Divisibilità e massimo comun divisore

Esistenza ed unicità per equazioni differenziali

Teoria degli insiemi

Informatica Teorica. Appunti della lezione su tesi di Church-Turing e problemi indecidibili

Logica per la Programmazione

NOTE DI ALGEBRA LINEARE v = a 1 v a n v n, w = b 1 v b n v n

Lunghezza media. Teorema Codice D-ario prefisso per v.c. X soddisfa. L H D (X). Uguaglianza vale sse D l i. = p i. . p.1/27

LEZIONE 3. a + b + 2c + e = 1 b + d + g = 0 3b + f + 3g = 2. a b c d e f g

Algoritmi e Strutture Dati

Problemi senza soluzione

04 - Numeri Complessi

Funzioni implicite - Esercizi svolti

4 0 = 4 2 = 4 4 = 4 6 = 0.

0.1 Condizione sufficiente di diagonalizzabilità

c A (a c = b) Le ipotesi che abbiamo ci dicono che esistono h, k A tali che:

non solo otteniamo il valore cercato per la validità della (1.4), ma anche che tale valore non dipende da

LOGICA DEL PRIMO ORDINE: PROOF SYSTEM. Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini

LEZIONE 12. Y = f(x) = f( x j,1 f(e j ) = x j,1 A j = AX = µ A (X),

RELAZIONI, FUNZIONI, INSIEMI NUMERICI. 1. Relazioni. Siano X e Y due insiemi non vuoti. Si definisce il prodotto cartesiano

Teoria dei modelli. Alessandro Berarducci. 3 Marzo Dipartimento di Matematica Pisa

Integrale indefinito

Introduzione soft alla matematica per l economia e la finanza. Marta Cardin, Paola Ferretti, Stefania Funari

LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)

z =[a 4 a 3 a 2 a 1 a 0 ] 10

ALGEBRA I: ASSIOMI DI PEANO E PROPRIETÀ DEI NUMERI NATURALI

Esercitazioni per il corso di Logica Matematica

IL TEOREMA FONDAMENTALE DELL ARITMETICA: DIMOSTRAZIONE VELOCE.

Alberi: definizioni e dimostrazioni induttive.

1. Funzioni implicite

ALGEBRE DI BOOLE. (d) x, y X x y oppure y x.

La lunghezza dei vettori e legata alle operazioni sui vettori nel modo seguente: Consideriamo due vettori v, w e il vettore v + w loro somma.

Monomi L insieme dei monomi

ELEMENTI DI TEORIA DEGLI INSIEMI

SERIE NUMERICHE FAUSTO FERRARI

Argomenti diagonali. Gianluigi Bellin

Limiti e continuità. Teoremi sui limiti. Teorema di unicità del limite Teorema di permanenza del segno Teoremi del confronto Algebra dei limiti

Forme differenziali lineari e loro integrazione

Matematica. Corso integrato di. per le scienze naturali ed applicate. Materiale integrativo. Paolo Baiti 1 Lorenzo Freddi 1

Teorema delle Funzioni Implicite

Geometria e Topologia I (U1-4) 2006-mag-10 61

Appunti sui Codici di Reed Muller. Giovanni Barbarino

Logica per la Programmazione

04 - Logica delle dimostrazioni

Macchine di Turing. Francesco Paoli. Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Macchine di Turing 1 / 29

Corso di Laurea in Matematica Geometria 2. Foglio di esercizi n. 1 a.a Soluzioni

Capitolo 1. Gli strumenti. 1.1 Relazioni

Sistemi di equazioni lineari

Geometria BIAR Esercizi 2

Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana /16

Sottospazi vettoriali. Nota Bene: Questo materiale non deve essere considerato come sostituto delle lezioni.

Esercizi sulle equazioni differenziali a cura di Sisto Baldo, Elisabetta Ossanna e Sandro Innocenti

Prima lezione. Gilberto Bini. 16 Dicembre 2006

LEZIONE 9. k, tenendo conto delle formule che permettono di calcolare il prodotto scalare ed il prodotto vettoriale, otteniamo

LEZIONE Equazioni matriciali. Negli Esempi e si sono studiati più sistemi diversi AX 1 = B 1, AX 2 = R m,n, B = (b i,h ) 1 i m

Registro Lezioni di Algebra lineare del 15 e 16 novembre 2016.

Lezione 10: Teorema di Rouchè-Capelli e la classificazione dei sistemi lineari

LAUREA IN INGEGNERIA MECCANICA Corso di Matematica 2 I a prova parziale Padova Docenti: Cantarini Fiorot TEMA n.1

Piccolo teorema di Fermat

1 Il Teorema della funzione implicita o del Dini

UNITÀ DIDATTICA 5 LA RETTA

Corso di Geometria BIAR, BSIR Esercizi 2: soluzioni

TSRR. Vademecum sulle equazioni differenziali I. D. Mugnai( 1 ) ( 1 ) IFAC-CNR, Via Madonna del Piano 10, Sesto Fiorentino (FI), Italy

i) la somma e il prodotto godano delle proprietà associativa, commutativa e distributiva;

A.A CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5.

Transcript:

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 10 Alberto Carraro DAIS, Università Ca Foscari Venezia http://www.dsi.unive.it/~acarraro 1 Teoremi fondamentali della Recursion Theory Theorem 1 (s-m-n). Dati due numeri naturali m, n esiste una funzione primitiva ricorsiva ed iniettiva S m n (e, x 1,..., x n ) tale che ϕ n+m e (x 1,..., x n, y 1,..., y m ) ϕ S m n (e,x 1,...,x n )(y 1,..., y m ) Proof. Sia e l indice di una funzione ricorsiva parziale ϕ n+m e (x 1,..., x n, y 1,..., y m ). Vogliamo produrre a partire da e una descrizione (un codice) della funzione γ(y 1,..., y m ) ϕ n+m e (x 1,..., x n, y 1,..., y m ) al variare degli input x 1,..., x n. Informalmente il processo di decodificare e, e modificare la definizione della funzione da esso codificata cambiandone la segnatura e sostituendo nel corpo le funzioni costanti a valore x 1,..., x n rispettivamente è esso stesso un procedimento effettivo e definibile, usando i metodi dell aritmetizzazione, con una funzione totale primitiva ricorsiva Sn m, che prende appunto come input il codice e ed i valori x 1,..., x n. Inoltre per le proprietà delle codifiche la funzione Sn m risulta anche essere iniettiva. Un importante applicazione del Teorema 1 è la possibilità di dimostrare il seguente teorema, che parla di come esistano funzioni che forniscono programmi. Theorem 2 (del parametro). Data una funzione ricorsiva parziale f(x 1,..., x n, y 1,..., y m ) esiste una funzione primitiva ricorsiva ed iniettiva S(x 1,..., x n ) tale che f(x 1,..., x n, y 1,..., y m ) ϕ S(x1,...,x n)(y 1,..., y m ) Proof. Siccome f(x 1,..., x n, y 1,..., y m ) è parziale ricorsiva, allora esiste un numero e tale che ϕ e f. Pertanto basta usare il Teorema 1 e definire S(x 1,..., x n ) = Sn m (e, x 1,..., x n ). Un istanza semplice del Teorema del parametro è la seguente: data una funzione ricorsiva parziale f(x, y) esiste una funzione primitiva ricorsiva ed iniettiva S(x) tale che f(x, y) ϕ S(x) (y). Si noti che la funzione S(x) (ed in generale S m n (e, x 1,..., x n )), essendo primitiva ricorsiva, è totale. Theorem 3 (di ricorsione II). Sia ψ una funzione ricorsiva parziale m + 1- aria. Allora esiste un indice e tale che ϕ e ( y) ψ(e, y), per ogni y N m.

2 A. Carraro Proof. Sia h una funzione ricorsiva totale unaria qualsiasi. Allora la funzione ϕ(e, y) ψ(h(e), y) è ricorsiva parziale, per lo schema di rimpiazzamento e dunque ha un indice a, ovvero ϕ ϕ a. Ora per il Teorema 1 (s-m-n) esiste una funzione primitiva ricorsiva binaria S1 m tale che per ogni y N m ϕ a (e, y) ϕ(e, y) ψ(h(e), y) ϕ S m 1 (a,e)( y) (1) Poiché la (1) vale per ogni h : N N ricorsiva ed ogni e N, in particolare vale per h(z) = S m 1 (z, z) e per e = a. Quindi abbiamo che per ogni y N m ϕ a (a, y) ϕ(a, y) ψ(s m 1 (a, a), y) ϕ S m 1 (a,a)( y) (2) Ma allora la (2) ci dice che S1 m (a, a) è un indice che soddisfa l enunciato del teorema. Notazione. Useremo talvolta una notazione per definire funzioni on-the-fly senza darvi un nome (come si fa in OCaml ed F # ). Ad esempio la funzione quadrato può essere definita dall espressione x x x, piuttosto che dire che l elevamento al quadrato è la funzione f data da f(x) = x x. Lemma 1. Per ogni funzione parziale ricorsiva ψ esiste una funzione ricorsiva totale ψ tale che ϕ ψ(x) = ϕ ψ(x), per ogni x dom(ψ). Proof. Poiché la funzione ψ è parziale ricorsiva, essa ha un indice: sia ψ ϕ e. Sia u la funzione ricorsiva parziale universale. Allora la funzione binaria (x, y) u(u(e, x), y) è ricorsiva parziale e quindi ha un indice p. È chiaro che, per definizione, ϕ p (x, y) ϕ ψ(x) (y) per ogni x dom(ψ) ed ogni y N. Per il Teorema 1 (s-m-n) esiste una funzione primitiva ricorsiva binaria S1 1 tale che ϕ p (x, y) ϕ S 1 1 (p,x)(y) e quindi abbiamo che ϕ ψ(x) (y) ϕ S 1 1 (p,x)(y) per ogni x dom(ψ) ed ogni y N. Ciò significa che la funzione unaria ricorsiva totale x S1(p, 1 x) soddisfa l enunciato del teorema. Theorem 4 (di punto fisso). Sia f una funzione ricorsiva totale. Allora esiste un indice n tale che ϕ n ϕ f(n). Proof. Sia p un indice di f. La funzione φ(x) ϕ p (ϕ x (x)) è ricorsiva parziale, dato che φ(x) u(p, u(x, x)), dove u è la funzione ricorsiva parziale universale. Per il Lemma 1 esiste una funzione ricorsiva totale φ tale che ϕ φ(x) = ϕ φ(x), per ogni x dom(φ). Sia q un indice di φ. Poiché sia f che φ sono totali, sicuramente ϕ q (q) e f(ϕ q (q)), quindi possiamo porre n = ϕ q (q), per comodità. Ora ci accorgiamo che q dom(φ), perché φ(q) ϕ p (ϕ q (q)) = f(n) e siccome la funzione φ ci è data dal Lemma 1, abbiamo che ϕ φ(q) = ϕ φ(q). Ma allora possiamo concludere osservando che ϕ f(n) ϕ φ(q) ϕ φ(q) ϕ ϕq (q) ϕ n e quindi n è il numero che cercavamo.

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 10 3 1.1 Insiemi che rispettano le funzioni e teorema di Rice Abbiamo visto che i numeri naturali sono allo stesso tempo anche funzioni dai naturali ai naturali. In questa sezione guardiamo ai sottoinsiemi di N come insiemi di funzioni. Si pensi all analogia tra insiemi e predicati: un insieme di numeri naturali può essere pensato come l estensione di una proprietà (e quindi di un predicato) di numeri naturali e, tramite la codificata data dal Teorema di Enumerazione di Kleene, può essere pensato anche come l estensione di una proprietà di programmi. Ogni funzione r.p. ha molti indici e quindi se vogliamo vedere in maniera sensata un insieme A N come un insieme di funzioni, allora A deve soddisfare la seguente proprietà: se e A allora tutti gli indici della funzione ϕ e devono stare in A. Questa proprietà viene resa precisamente nella prossima definizione. Definition 1. Un insieme A N rispetta le funzioni se per ogni coppia di numeri a, b N abbiamo che ϕ a ϕ b (a A b A) Definition 2. Un insieme A N è completamente ricorsivo (resp. completamente r.e.) se è r.e. (resp ricorsivo) e rispetta le funzioni. Per la suriettività dell enumerazione di Kleene, ogni insieme A che rispetta le funzioni rappresenta una proprietà di programmi P. Allora il fatto che A sia completamente r.e. (ricorsivo) corrisponde al fatto che P sia r.e. (ricorsiva). Diciamo che un insieme A N è triviale se A = oppure A = N. Il prossimo teorema, chiamato il Teorema di Rice, dice in sostanza che nessuna proprietà non banale dei programmi può essere ricorsiva. Theorem 5 (di Rice). Sia A N un insieme che rispetta le funzioni. Allora A è completamente ricorsivo sse A è triviale. Proof. Dimostriamo i due versi della doppia implicazione. ( ) Se A è triviale allora è completamente ricorsivo perchè e N sono entrambi ricorsivi e rispettano le funzioni. ( ) Supponiamo, per assurdo, che A sia completamente ricorsivo e non-triviale. Allora anche A c è completamente ricorsivo e non-triviale e quindi esistono due numeri x 0 A, x 1 A c. Definiamo una funzione f come segue: x 0 se m A c f(m) = se m A x 1 Chiaramente f è una funzione ricorsiva totale e quindi, per il Teorema 4, esiste un numero n tale che ϕ f(n) ϕ n. A questo punto n deve appartenere ad A o ad A c : (1) se n A, allora f(n) = x 1 A c. (2) se n A c, allora f(n) = x 0 A. Nel caso (1) n A ed f(n) A e nel caso (2) n A ed f(n) A. Pertanto in entrambi i casi A non rispetta le funzioni, e questo contraddice l ipotesi iniziale.

4 A. Carraro 2 Applicazioni dei teoremi fondamentali Che cos ha ache fare il Teorema 3 con la ricorsione? Perchè si chiama così? Si chiama così perché ci aiuta a risolvere equazioni in cui le incognite sono funzioni ricorsive, un po come i metodi che si usano per risolvere equazioni differenziali, in cui le incognite sono appunto funzioni. Exercise 1. Consideriamo la seguente equazione ricorsiva nell incognita f: f(x) f(f(x + 1)) se x 2 Vediamo che l equazione non può intendersi come una definizione per induzione e quindi può avere più soluzioni, anche totali, differenti. Vogliamo ora trovare una soluzione a quest equazione in PR, e quindi trovare un numero n tale che la funzione ϕ n soddisfa la stessa equazione. Solution 1. Ora la funzione t(y, x) ϕ y (ϕ y (x + 1)) se x 2 è ricorsiva e quindi per il II Teorema di Ricorsione (Teorema 3) esiste un indice n tale che ϕ n (x) t(n, x), per ogni x N. Quindi abbiamo che ϕ n (x) ϕ n (ϕ n (x + 1)) se x 2 e questo ci dice che n è un indice di una funzione che soddisfa la nostra equazione ricorsiva. Vediamo due soluzioni diverse dell equazione data: g 0 (x) se x 2 g 1 (x) = 0 se x 2 Sfortunatamente non sappiamo se ϕ n è g 0, g 1 oppure un altra funzione ancora. Exercise 2. Consideriamo la seguente equazione ricorsiva nell incognita f: 1 se x = 0 f(x, y) = f(x 1, f(x, y)) se x > 0 Vogliamo ora trovare una soluzione a quest equazione in PR, e quindi trovare un numero n tale che la funzione ϕ n soddisfa la stessa equazione.

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 10 5 Solution 2. Ora la funzione t(z, y, x) 1 se x = 0 ϕ z (x 1, ϕ z (x, y)) se x > 0 è ricorsiva parziale e quindi per il II Teorema di Ricorsione (Teorema 3) esiste un indice n tale che ϕ n (x, y) t(n, x, y), per ogni x, y N. Quindi abbiamo che ϕ n (x, y) = 1 se x = 0 ϕ n (x 1, ϕ n (x, y)) se x > 0 e questo ci dice che n è un indice di una funzione che soddisfa la nostra equazione ricorsiva. Ancora una volta però non sappiamo come sia fatta veramente ϕ n poichè non vi è un unica soluzione possibile all equazione. Exercise 3. La funzione di Ackermann è una soluzione della seguente equazione ricorsiva nell incognita A: y + 1 se x = 0 A(x, y) = A(x 1, 1) se x > 0 e y = 0 A(x 1, A(x, y 1)) se x > 0 e y > 0 Mettendo il simbolo = otteniamo che quest equazione vuole funzioni totali come soluzioni e per come è data ammette una unica soluzione totale. Per questo è vista come una definizione della funzione di Ackermann. Dimostriamo che esiste una soluzione in PR all equazione qui sopra però con al posto di =. Solution 3. La funzione y + 1 se x = 0 t(z, x, y) ϕ z (x 1, 1) se x > 0 e y = 0 ϕ z (x 1, ϕ z (x, y 1)) se x > 0 e y > 0 è ricorsiva parziale e quindi per il II Teorema di Ricorsione (Teorema 3) esiste un indice n tale che ϕ n (x, y) t(n, x, y), per ogni x, y N. Quindi abbiamo che y + 1 se x = 0 ϕ n (x, y) ϕ n (x 1, 1) se x > 0 e y = 0 ϕ n (x 1, ϕ n (x, y 1)) se x > 0 e y > 0 e questo ci dice che n è un indice di una funzione che soddisfa l equazione ricorsiva, ma ancora una volta non sappiamo se ϕ n è o meno la funzione di Ackermann. Quindi per dimostrare che Ackermann sta in REC non basta il II Teorema di Ricorsione di Kleene. Infatti ci vuole il I Teorema di Ricorsione di Kleene, che però noi non vedremo.

6 A. Carraro Exercise 4. Dimostriamo che esiste un numero naturale n tale che dom(ϕ n ) = n} e ϕ n (n) = n. Solution 4. Definiamo una funzione t(x, y) x se x = y altrimenti La funzione t è ricorsiva parziale, per cui possiamo applicare il II Teorema di Ricorsione che ci da un indice n tale che ϕ n (y) t(n, y), per ogni y N. Per cui ϕ n (n) = t(n, n) = n, da cui ϕ n (n) e per ogni x n abbiamo ϕ n (m) t(n, m), da cui ϕ n (m).