Luku 7 Ratkeamattomuus ja epätäydellisyys Predikaattilogiikan ratkeamattomuus Totesimme aikaisemmin Esimerkissä 6.7, että kaikkien validien S-lauseiden joukko VAL S on R-numeroituva. Osoitamme kohta, ettätämä joukko ei ole kuitenkaan ratkeava, kun S on riittävän laaja. Ennen tämän ratkeamattomuustuloksen todistamista määrittelemme kuitenkin muutamia hyödyllisiä rekisteriohjelmiin liittyviä käsitteitä. Olkoon P aakkoston A rekisteriohjelma, jonka käskyt ovat α 0,...,α k, ja olkoon n N suurin indeksi, jolla rekisteri R n esiintyy jossain käskyssä α i. Ohjelman P konfiguraatio (eli laskennan mahdollinen tilanne) on tällöin jono (l, w 0,...,w n ) N (A ) n+1, missä l k on ohjelman seuraavan käskyn numero, ja w i A on rekisterin R i sisältämä sana kullakin i n. Merkitsemme (l, w 0,...,w n ) P (l,w0,...,w n), jos käskyn l suorittaminen konfiguraatiossa (l, w 0,...,w n ) johtaa konfiguraatioon (l,w0,...,w n). Edelleen kun s N, merkitsemme (l, w 0,...,w n ) s P (l,w0,...,w n), jos suorittamalla ohjelmaa P s askelta konfiguraatiosta (l, w 0,...,w n ) päädytään konfiguraatioon (l,w0,...,w n). Jos ohjelman P suoritus syötteellä ε pysähtyy, merkitsemme sen suorittamaa askelten määrää symbolilla s P. Toisin sanoen s P on pienin luku s N, jolla pätee (0,ε,...,ε) s P (k, w 0,...,w n) jollain w 0,...,w n A. Lause 7.1 (Predikaattilogiikan ratkeamattomuuslause) Jos S sisältää jokaista paikkalukua m N olevia relaatiosymboleja, 1-paikkaisen funktiosymbolin ja vakiosymbolin, niin joukko VAL S ei ole R-ratkeava. Todistus. Kiinnitetään aakkostoksi A = {a 0 }; merkitsemme jatkossa a = a 0. Olkoon Π halt pysähtymisongelma aakkoston A rekisteriohjelmille P. Liitämme jokaiseen ohjelmaan P predikaattilogiikan lauseen ϕ P L S niin että ( ) z P Π halt ϕ P VAL S. Lause ϕ P muodostetaan ohjelmasta P mekaanisella proseduurilla, joten Churchin teesin nojalla funktio F : z P ϕ P of R-laskettava. Siispä F on joukon Π halt 62
palautus joukkoon VAL S. Koska joukko Π halt on R-ratkeamaton, Apulauseesta 6.5 seuraa, että joukko VAL S on R-ratkeamaton. Olkoot ohjelman P käskyt α 0,...,α k, ja olkoon n suurin luku, jolla rekisteri R n esiintyy ohjelmassa P. Olkoon S P symbolijoukko {R, <, f, c} S, missä R on (n + 3)-paikkainen, < on 2-paikkainen, f on 1-paikkainen funktiosymboli ja c on vakiosymboli. Käytämme relaatiota R koodaamaan ohjelman P konfiguraatioita eri laskenta-askelten jälkeen; muilla symboleilla koodataan luonnollisten lukujen järjestys, seuraajafunktio, ja luku 0. Tarkemmin sanoen muodostamme S P -mallin A P, joka koodaa ohjelman P koko laskennan seuraavasti: Tapaus 1. Jos P : ε, määritellään A P := N, < A P := < N (luonnollisten lukujen tavallinen järjestys), c A P := 0 ja f A P (i) :=i + 1 jokaisella i N. Lopuksi relaatio R A P on niiden jonojen (s, l, m 0,...,m n ) N n+3 joukko, joilla pätee (0,ε,...,ε) s P (l, am 0,...,a mn ). Tapaus 2. Jos P : ε, määritellään A P := {0, 1,...,e}, missä e =max{k, s P }. Edelleen määritellään, että < A P on joukon {0,...,e} tavallinen järjestys, c A P := 0 ja f A P (i) :=i + 1, kun i<eja f A P (e) :=e. Lopuksi relaatio R A P on niiden jonojen (s, l, m 0,...,m n ) N n+3 joukko, joilla s s P ja joilla on voimassa (0,ε,...,ε) s P (l, am 0,...,a mn ). Huomaa, että R A P on tällöin relaatio joukossa A P : kunkin rekisterin R i sisältö voi kasvaa vain yhtä merkkiä pidemmäksi kullakin ohjelman suorittamalla käskyllä, joten m i s e aina kun (s, l, m 0,...,m n ) R A P. Muodostamme seuraavaksi S P -lauseen ψ P, joka kuvailee ohjelman P laskennan syötteellä ε.käytämme tässä lyhennysmerkintöjä 0, 1, 2, 3,... vakiotermeille c, fc, ff c, fff c,.... Lause ψ P on konjunktio seuraavista lauseista: (1) θ 0, joka sanoo, että < on järjestys, jonka pienin alkio on c; (2) θ 1, joka sanoo, että x fx jokaisella x, jaettä fx on x:n välitön seuraaja järjestyksen < suhteen, jollei x ole suurin alkio; (3) R0...0; (4) ψ l, l < k, joka kuvailee, miten ohjelman P käskyn α l suoritus muuttaa konfiguraatioita. Esimerkiksi, jos α l on käsky LET R i = R i + a, onψ l lause x y 0... y n Rxly0...y n x<fx Rfxl y 0...y i 1 fy i y i+1...y n, missä l = l +1. On suoraviivaista todistaa, että (a) A P = ψ P,ja (b) jos A = ψ P ja (0,ε,...,ε) s P (l, am 0,...,a mn ), niin 0 A, 1 A,...,s A ovat mallin A eri alkioita, ja A = Rslm 0...m n. Voimme nyt määritellä etsityn lauseen ϕ P seuraavasti: ϕ P := ψ P x y 0... y n Rxky 0...y n. 63
Meidän pitää vielä osoittaa, että ehto( ) on voimassa tällä lauseella. Oletetaan ensin, että ϕ P VAL S.Tällöin erityisesti A P = ϕ P, ja koska ehdon (a) perusteella A P = ψ P, on edelleen voimassa A P = x y 0... y n Rxky 0...y n, eli on olemassa s, m 0,...,m n A P, joilla (s, k, m 0,...,m n ) R A P. Nyt relaation R A P määritelmän perusteella tämä tarkoittaa, että ohjelman P laskenta syötteellä ε päätyy konfiguraatioon, jossa seuraava käsky on α k eli k HALT. Siis P : ε. Oletetaan sitten kääntäen, että z P Π halt. On siis olemassa s, m 0,...,m n N, joilla pätee (0,ε,...,ε) s P (k, am 0,...,a mn ). Olkoon A S P -malli. Jos A = ψ P, niin tällöin ehdon (b) nojalla pätee A = Rskm 0...m n.tästä seuraa edelleen, että A = x y 0... y n Rxky 0...y n. Siispä ϕ P on validi, eli ϕ P VAL S. Lauseen 7.1 todistuksessa käytetään aakkostoa S P S, jossa on funktiosymbolin f ja vakiosymbolin c lisäksi yksi (n + 3)-paikkainen relaatisymboli, missä n on (oleellisesti) tarkasteltavan ohjelman P rekisterien lukumäärä. Siksi Lauseen muotoilussa on oletus, että S sisältää kaikkia paikkalukuja olevia relaatiosymboleja. Tämä oletus ei kuitenkaan ole välttämätön: voidaan osoittaa, että VAL S ei ole R-ratkeava, jos S sisältää kaksi 2-paikkaista relaatiosymbolia, tai yhden 3- paikkaisen relaatiosymbolin. Sen sijaan VAL S on R-ratkeava, jos S sisältää vain 1-paikkaisia relaatiosymboleja. Trakhtenbrotin lause Määritelmä 7.1Olkoon S symbolijoukko. (a) Lause ϕ L S on äärellisesti toteutuva, jos on olemassa äärellinen S-malli A, jolla pätee A = ϕ. Merkitsemme kaikkien äärellisesti toteutuvien S-lauseiden joukkoa symbolilla FSAT S. (b) Lause ϕ L S on äärellisesti validi,josa = ϕ kaikilla äärellisillä S-malleilla A. Merkitsemme kaikkien äärellisesti validien S-lauseiden joukkoa symbolilla FVAL S. Jokainen äärellinen malli A, jonka universumi on A = {0,...,n 1}, voidaan koodata aakkoston A = {a, b} sanaksi. Jokaiseen r-paikkaiseen relaatioon R A voidaan nimittäin liittää sana u R = u 1...u n r,jokamääritellään seuraavasti: Olkoot b 1,..., b n r joukon A r alkiot leksikograafisessa järjestyksessä. Tällöin kullakin i {1,...,n r } asetetaan u i = a b i R A. Vastaavasti kuhunkin r-paikkaiseen funktioon f A : A r A voidaan liittää sana w f := w Rf, missä R f := {( b, d) f A ( b) = d}. Edelleen kuhunkin alkioon c A voidaan liittää sana w c := w Rc, missä R c := {c A }. Jos siis A on S-malli, missä S = {R 1,...,R m,f 1,...,f l,c 1,...,c k }, niin sen koodiksi voidaan asettaa sana w A := w R1...w Rm w f1...w fl w c1...w ck. Apulause 7.2 Olkoon S äärellinen symbolijoukko ja ϕs-lause. Tällöin joukko on R-ratkeava. W ϕ = {w A A on S-malli, ja A = ϕ} A 64
Todistus. (Idea) Todistetaan ensin induktiolla, ettäjost on S-termi, niin sen arvo I(t) tulkinnasa I =(A,β) voidaan laskea mekaanisella proseduurilla sanasta w A w 0...w m 1, missä w i koodaa 1-paikkaisen relaation {β(v i )} A, ja v 0,...,v m 1 ovat termissä t esiintyvät muuttujat. Tämän jälkeen todistetaan induktiolla, että joukko W ψ := {w A w 0...w m 1 A on S-malli, ja I = ψ} on ratkeava jokaisella kaavalla ψ L m S. Apulause 7.3 Joukko FSAT S on R-numeroituva. Todistus. Olkoon P S joukon L 0 S numerointiproseduuri; se siis tulostaa kaikki S- lauseet jonona ϕ 0,ϕ 1,ϕ 2,... Olkoon P i kullakin i N joukon W ϕi ratkaisuproseduuri. Joukolla FSAT S on tällöin seuraavanlainen numerointiproseduuri: Käydään läpi kaikki luonnolliset luvut n; kullakin i n muodostetaan kaava ϕ i proseduurin P S avulla käydään sitten läpi leksikograafisessa järjestyksessä kaikki sanat w A, joiden pituus on korkeintaan n; sovelletaan vuoronperään proseduuria P i, i n, sanaan w; josp i hyväksyy syötteen w, tulostetaan lause ϕ i. Jos tämä proseduuri tulostaa lauseen ϕ i, niin on olemassa äärellinen S-malli A, jolla proseduuri P i hyväksyy syötteen w A,jotenϕ i FSAT S. Toisaalta jos ϕ i FSAT S, niin on olemassa äärellinen malli B, jolla B = ϕ i. On helppo todeta, että tällöin on olemassa malli A, jolla A = {0,...,m 1} (missä m =card(b)), ja A = B. Siispä ylläoleva proseduuri tulostaa lauseen ϕ i, kun n max{i, l}, missä l on sanan w A pituus. Lause 7.4 Jos S sisältää jokaista paikkalukua r N olevia relaatiosymboleja, 1-paikkaisen funktiosymbolin ja vakiosymbolin, niin joukko FSAT S ei ole R- ratkeava. Todistus. Olkoon P rekisterikoneen ohjelma, ja olkoot A P ja ψ P määritelty kuten Lauseen 7.1 todistuksessa. Mallin A P määritelmästä nähdään, että josp:ε, niin A P on äärellinen. Lisäksi todistuksen ehdon (a) nojalla A P = ψ P. Toisaalta jos A = ψ P ja P : ε, niin todistuksen ehdon (b) nojalla 0 A,...,s A ovat mallin A eri alkioita kaikilla s N, joten malli A ei voi olla äärellinen. Olemme näin osoittaneet, että z P Π halt ψ P FSAT S. Funktio F, jolla F (z P )=ψ P, on selvästi laskettava, joten se on joukon Π halt palautus joukkoon FSAT S.Väite seuraa nyt Apulauseesta 6.5. Lause 7.5 (Trakhtenbrotin lause) Jos S sisältää jokaista paikkalukua r N olevia relaatiosymboleja, 1-paikkaisen funktiosymbolin ja vakiosymbolin, niin joukko FVAL S ei ole R-numeroituva. 65
Todistus. Huomataan ensin, että ϕ FVAL S jos ja vain jos ϕ FSAT S. Tehdään sitten vastaoletus: FSAT S on R-numeroituva. Olkoon P V sen numerointiproseduuri, ja olkoot ψ 0,ψ 1,ψ 2,... sen tulostamat lauseet. Vastaavasti olkoon P S joukon FSAT S numerointiproseduuri, ja olkoot sen tulostamat lauseet θ 0,θ 1,θ 2,...Tällöin joukolle FSAT S saadaan seuraava ratkaisuproseduuri: Olkoon syöte w; käytetään ensin joukon L 0 S ratkaisuproseduuria: jos w ei ole S-lause, hylätään syöte; muuten jatketaan. Kullakin i N tehdään seuraavasti: käytetään ensin proseduuria P V kunnes se tulostaa lauseen ψ i ;jos ψ i = w, hylätään syöte ja lopetetaan; muuten jatketaan; käytetään seuraavaksi proseduuria P S kunnes se tulostaa lauseen θ i ; jos θ i = w, hyväksytään syöte, ja lopetetaan; muuten jatketaan. Jos tämä proseduuri hyväksyy syötteen w, niin selvästi w = ϕ jollain ϕ FSAT S. Toisaalta jos ϕ FSAT S, niin ϕ = θ i jollain i N, joten proseduuri P S hyväksyy syötteen w = ϕ vaiheessa i. (Huomaa, että tällöin ϕ FSAT S, joten proseduuri P V ei voi hylätä syötettä ennen tätä.) Lopuksi pitää vielä todeta, että ylläoleva proseduuri pysähtyy myös syötteillä w FSAT S. Jos w ei ole S-lause, tämä seuraa siitä, että ensin käytetään joukon L 0 S ratkaisuproseduuria. Jos taas w = ϕ on S-lause, joka ei ole joukossa FSAT S, niin ϕ FVAL S,joten w = ψ i jollain i N. Tällöin proseduuri P V hylkää syötteen w vaiheessa i. Huomautus: Tarkkaan ottaen Apulauseessa 7.3 pitää olettaa, että symbolijoukko S on efektiivisesti numeroituva. Muuten numerointiproseduria P S ei ole olemassa. Sen sijaan Lauseissa 7.4 ja 7.5 tätä ei tarvitse olettaa: on helppo todistaa, että joukot FSAT S ja FVAL S eivät ole R-numeroituvia, jollei S ole R- numeroituva. Lukuteorian ratkeamattomuus Määritelmä 7.2Lausejoukko T L 0 S on teoria, jost on toteutuva, ja se on suljettu loogisen seurauksen suhteen: jokaisella ϕ L 0 S pätee T = ϕ = ϕ T. Selvästi lausejoukko Th(A) on teoria jokaisella S-mallilla A. Teoria T = Th(A) on täydellinen: jokaisella S-lauseella ϕ pätee joko ϕ T tai ϕ T. Teoriaa Th(N), missä N =(N, +,, 0, 1) on luonnollisten lukujen tavallinen malli, kutsutaan (elementaariseksi) aritmetiikaksi, tai lukuteoriaksi. Jos Φ on joukko S-lauseita, merkitsemme Φ = := {ϕ L 0 S Φ = ϕ}. Jos T on teoria, niin T = = T,jajosΦ L 0 S on toteutuva, niin Φ = on teoria. Käydään läpi muutamia esimerkkejä teorioista: 66
(1) = = {ϕ L 0 S = ϕ} = VAL S. (2) Jos Φ gr on ryhmäteorian aksioomien joukko, niin Th gr := Φ = gr on (elementaarinen) ryhmäteoria. (3) Peano aritmetiikka on teoria Th PA := Φ = PA, missä Φ PA muodostuu seuraavista aksioomista: x( x +1 0) x y(x +1 y +1 x y) x(x +0 x) x(x 0 0) x y(x +(y +1) (x + y)+1) x y(x (y +1) (x y)+x) sekä induktioskeemasta, jonka mukaan seuraavat lauseet ovat aksioomia aina kun ϕ on kaava, jolla Free(ϕ) {x 1,...,x n,y}: x 1... x n (ϕ[0/y] y(ϕ ϕ[y +1/y])) yϕ. Koska N = Φ PA,onΦ = PA Φ = PA =Th(N). Th(N). Hiukan myöhemmin todistamme, että Määritelmä 7.3(a) Teoria T on R-aksiomatisoituva, jos on olemassa R-ratkeava lausejoukko Φ, jolla T =Φ =. (b) Teoria T on äärellisesti aksiomatisoituva, jos on olemassa äärellinen lausejoukko Φ, jolla T =Φ =. Jokainen äärellisesti aksiomatisoituva teoria on R-aksiomatisoituva, mutta päinvastainen ei pidä paikkaansa. Esimerkiksi Peano aritmetiikka Th PA on R-aksiomatisoituva, mutta ei äärellisesti aksiomatisoituva. Lause 7.6 Jos teoria T on R-aksiomatisoituva, niin se on R-numeroituva. Todistus. Luennolla. Kaikki R-aksiomatisoituvat teoriat eivät ole R-ratkeavia; esimerkiksi = = VAL S on R-aksiomatisoituva, mutta predikaattilogiikan ratkeamattomuuslauseen perusteella se ei ole R-ratkeava. Toisaalta täydellisillä teorioilla R-numeroituvuudesta seuraa R-ratkeavuus: Lause 7.7 Jos T on R-numeroituva täydellinen teoria, niin T on R-ratkeava. Erityisesti jokainen R-aksiomatisoituva täydellinen teoria on R-ratkeava. Todistus. Luennolla. Tavoitteemme on siis todistaa, että aritmetiikka Th(N) on R-ratkeamaton. Tämä tehdään samaan tapaan kuin todistettiin predikaattilogiikan ratkeamattomuus: liitetään jokaiseen rekisterikoneen ohjelmaan P, jonka aakkosto on {a}, aritmetiikan symbolijoukon S = {+,, 0, 1} lause ϕ P, jolla pätee N = ϕ P P:ε eli ϕ P Th(N) z P Π halt. Lauseen ϕ P idea perustuu siihen, että ohjelman P koko laskenta syötteellä ε voidaan koodata kahdella luonnollisella luvulla, mikäli laskenta pysähtyy. Tämä koodaus toteutetaan seuraavan apulauseen avulla. 67
Apulause 7.8 (β-funktio -lemma) On olemassa funktio β : N 3 N, jolla on seuraavat ominaisuudet: (a) (b) Jokaisella jonolla (d 0,...,d l ) N l+1 on olemassa t, p N siten, että jokaisella i l pätee β(t, p, i) =d i. β on määriteltävä: on olemassa S-kaava ϕ β (v 0,v 1,v 2,v 3 ) siten, että kaikilla t, p, i, d N pätee N = ϕ β [t, p, i, d] β(t, p, i) =d. Todistus. (a) Olkoon (d 0,...,d l ) jono luonnollisia lukuja. Valitaan alkuluku p, joka on suurempi kuin luvut d 0,...,d l sekä l + 1. Luku t määritellään nyt seuraavasti: ( ) t := (1 p 0 +2 p 2 + +(l +1) p 2l )+(d 0 p 1 + d 1 p 3 + + d l p 2l+1 ). Huomaa, että ( ) on luvun t esitys p-järjestelmässä, jokaisen parillisen potenssin p 2i kerroin on (i + 1) ja jokaisen parittoman potenssin p 2i+1 kerroin on d i. Nyt on helppo todeta, että jokaisella d N ja i l pätee: d = d i jos ja vain jos on olemassa b 0,b 1,b 2 N, joilla pätee ehdot (i) t = b 0 + b 1 ((i +1)+dp + b 2 p 2 ), (ii) d<p, (iii) b 0 <b 1, (iv) b 1 = p 2j jollain j N. Edelleen kohta (iv) on selvästi yhtäpitävä seuraavan kanssa: (iv ) b 1 = q 2 jollain q N ja p on luvun b 1 ainoa alkulukutekijä. Ehdot (i)-(iii) ja (iv ) määräävät siis funktion β arvon β(t, p, i) halutulla tavalla, kun t ja p on valittu kuten yllä. Meidän pitää kuitenkin vielä laajentaa funktion β määritelmä koskemaan kaikkia muuttujien arvoja t, p, i N. Tämä tehdään seuraavasti: β(t, p, i) := d, missä d on pienin luonnollinen luku, jolla pätevät ehdot (i)- (iii) ja (iv ), jos tällainen d on olemassa; muuten β(t, p, i) :=0. (b) Ehdot (i)-(iii) ja (iv ) on suoraviivaista ilmaista kaavoilla η 1,η 2,η 3,η 4 L 7 S. Etsitty kaava ϕ β on tällöin v 4 v 5 v 6 (η 1 η 2 η 3 η 4 ). Todistamme seuraavaksi, että minkä hyvänsä ohjelman P laskennan aikana esiintyvät konfiguraatiot voidaan määritellä lukuteorian kaavalla. Apulause 7.9 Olkoon P rekisterikoneen ohjelma, jonka aakkosto on {a}, ja jossa esiintyy korkeintaan rekisterit R 0,...,R n.tällöin on olemassa kaava χ P siten, että kaikilla l, q 0,...,q n,l,q0,...,q n N pätee L 2n+4 S N = χ P [l, q 0,...,q n,l,q 0,...,q n] (l, a q 0,...,a qn ) s P (l,a q 0,...,a q n ) jollain s N. 68
Todistus. (Hahmotelma.) Kaavan χ P pitää oleellisesti sanoa, että on olemassa s N ja ohjelman P konfiguraatiot C 0,...,C s s.e. C 0 =(l, a q 0,...,a qn ), C s = (l,a q 0,...,a q n )jaci P C i+1 jokaisella i<s.tämä onyhtäpitävää sen kanssa, että on olemassa jono (c 0 0,...,c 0 n+1,...,c s 0,...,c s n+1) N (s+1)(n+2), jolla pätee: (i) (c 0 0,...,c 0 n+1) =(l, q 0,...,q n ), (ii) (c s 0,...,c s n+1) =(l,q0,...,q n), ja (iii) (c i 0,a ci 1,...,a c i n+1 ) P (c i+1 0,a ci+1 1,...,a ci+1 n+1 ) jokaisella i<s. Predikaattilogiikan kaavalla ei kuitenkaan voi ilmaista suoraan, että on olemassa alkiojono, jonka pituus ei ole kiinteä. Tästä ongelmasta selvitään käyttämällä edellisen apulauseen β-funktiota: Riittää siis ilmaista kaavan avulla, että on olemassa s N sekä t, p N siten, että β(t, p, i(n +2)+j) =c i j jokaisella i s ja j n +1,jaettä ehdot (i)-(iii) pätevät. Ehdon (iii) ilmaisemiseen tarvitaan taas oma kaavansa ψ j jokaista ohjelman P käskyä α j varten. Esimerkiksi, jos α j on käsky j LET R 1 = R 1 + a, kaavaψ j on u j (u u +1 u 0 u 0 u 1 u 1 +1 u 2 u 2... u n u n ); tässä merkitään muuttujia seuraavasti: u = v 0, u i = v i+1, u = v n+2 ja u i = v n+2+i, kun 1 i s. Merkintä j tarkoittaa vakiotermiä 1+1+...+ 1, missä vakio 1 summataan itsensä kanssa j kertaa. Lause 7.10 (Lukuteorian ratkeamattomuuslause) Teoria Th(N) on R-ratkeamaton. Todistus. Olkoon ohjelman P viimeinen käsky α k : k HALT. Aikaisemmin mainittu S-lause ϕ P voidaan nyt kirjoittaa kaavan χ P avulla: ϕ P := v n+3... v 2n+3 χ P [0/v 0, 0/v 1,...,0/v n+1,k/v n+2 ]. Koska lause ϕ P voidaan muodostaa ohjelmasta P mekaanisella proseduurilla, on funktio F : z P ϕ P Churchin teesin nojalla R-laskettava. Selvästi nyt pätee N = ϕ P P:ε, jotenf on joukon Π halt palautus joukkoon Th(N). Koska Π halt R-ratkeamaton, on myös Th(N) R-ratkeamaton. Seuraus 7.11 Teoria Th(N) ei ole R-aksiomatisoituva eikä R-numeroituva. Erityisesti Φ = PA Th(N). Todistus. Jos Th(N) olisi R-numeroituva, se olisi Lauseen 7.7 perusteella R- ratkeava vastoin Lausetta 7.10. Siis Th(N) ei ole R-numeroituva. Koska kaikki Peano-aksioomat ovat tosia mallissa N, pätee N = Φ = PA. Siispä Φ = PA Th(N). Toisaalta Φ = PA = Th(N), sillä Φ = PA on R-numeroituva, mutta Th(N) ei ole. Laajennamme ratkeavuuden ja laskettavuuden käsitteet luonnollisten lukujen relaatioille ja funktioille seuraavasti: 69
Määritelmä 7.4(a) Relaatio R N r on R-ratkeava, jos on olemassa aakkoston {a, } rekisteriohjelma, joka ratkaisee joukon R := {a q 0 a q 1...a q r 1 (q 0,...,q r 1 ) R}. (b) Funktio F : N r N on R-laskettava, jos on olemassa aakkoston {a, } rekisteriohjelma, joka laskee funktion F : {a, } {a}, jolla F (a q 0 a q 1...a q r 1 )=a F (q 0,...,q r 1 ) ja F (w) =ε, josw ei ole muotoa a q 0...a q r 1. Todetaan vielä lopuksi, että kaikki ratkeavat relaatiot ja laskettavat funktiot voidaan määritellä mallissa N. Sanomme, että relaatio R N r on määriteltävä, jos on olemassa S-kaava ϕ L r S siten, että kaikilla q 0,...,q r 1 N pätee (q 0,...,q r 1 ) R N = ϕ[q 0,...,q r 1 ]. Vastaavasti funktio F : N r N on määriteltävä, jos on olemassa S-kaava ψ siten, että kaikilla q 0,...,q r 1,q r N pätee L r+1 S F (q 0,...,q r 1 )=q r N = ψ[q 0,...,q r 1,q r ]. Lause 7.12 Olkoon r 1 luonnollinen luku. (a) Jokainen R-ratkeava relaatio R N r on määriteltävä. (b) Jokainen R-laskettava funktio F : N r N on määriteltävä. Todistus. Luennolla. Gödelin epätäydellisyyslauseet Oletamme koko tämän luvun ajan, että S = {+,, 0, 1} on aritmetiikan symbolijoukko. Luettavuuden parantamiseksi käytämme jatkossa seuraavanlaissia merkintöjä: Jos ϕ L r S ja t 0,...,t r 1 ovat S-termejä, niin ϕ(t 0,...,t r 1 ) tarkoittaa kaavaa ϕ[t 0...t r 1 /v 0...v r 1 ]. Esimerkiksi, jos ϕ = v 2 (v 1 0 v 2 v 1 v 0 +1), niin ϕ(v 1, 2) = v 2 (2 0 v 2 2 v 1 +1) Määritelmä 7.5Olkoon Φ L S lausejoukko. (a) Relaatio R N r on esitettävissä joukon Φ suhteen, jos on olemassa S-kaava ϕ L r S siten, että kaikilla q 0,...,q r 1 N pätee: (i) jos (q 0,...,q r 1 ) R, niin Φ ϕ(q 0,...,q r 1 ), (ii) jos (q 0,...,q r 1 ) R, niin Φ ϕ(q 0,...,q r 1 ). (b) Funktio F : N r N on esitettävissä joukon Φ suhteen, jos on olemassa S-kaava ψ L r+1 S siten, että kaikilla q 0,...,q r 1,q r N pätee: (i) jos F (q 0,...,q r 1 )=q r, niin Φ ψ(q 0,...,q r 1,q r ), 70
(ii) jos F (q 0,...,q r 1 ) = q r, niin Φ ψ(q 0,...,q r 1,q r ), (iii) Φ =1 v r ψ(q 0,...,q r 1,v r ). Apulause 7.13 (a) Jos Φ L 0 S on ristiriitainen, niin jokainen relaatio R Nr ja jokainen funktio F : N r N on esitettävissä joukon Φ suhteen. (b) Jos Φ Ψ L 0 S, niin jokainen relaatio ja funktio, joka on esitettävissä joukon Φ suhteen, on esitettävissä myös joukon Ψ suhteen. (c) Jos joukko Φ on ristiriidaton ja R-ratkeava, niin jokainen relaatio, joka on esitettävissä Φ:n suhteen on R-ratkeava, ja jokainen funktio, joka on esitettävissä Φ:n suhteen on R-laskettava. Todistus. Luennolla. Sanomme, että lausejoukko Φ L S sallii esitykset, jos jokainen R-ratkeava relaatio ja jokainen R-laskettava funktio on esitettävissä Φ:n suhteen. Lause 7.14 Lukuteoria Th(N) sallii esitykset. Todistus. Väite seuraa välittömästi Lauseesta 7.12 ja siitä, että jokaisella S- lauseella ϕ pätee ekvivalenssit Th(N) = ϕ Th(N) ϕ Th(N) = ϕ Th(N) ϕ. Lause 7.15 Peano aritmetiikka Φ PA sallii esitykset. Todistus. Sivuutetaan. Kiinnitetään seuraavia tarkasteluja varten sopiva efektiivisesti laskettava Gödelnumerointi ϕ n ϕ, joka on surjektio: jokaisella n N on olemassa kaava ϕ L S, jolla n = n ϕ. Lause 7.16 (Kiintopistelause) Olkoon Φ L S lausejoukko, joka sallii esitykset. Tällöin jokaisella kaavalla ψ L 1 S on olemassa S-lause ϕ, jolla pätee Φ ϕ ψ(n ϕ ). (Intuitiivisesti lause ϕ sanoo minulla on ominaisuus ψ.) Todistus. Olkoon F : N 2 N funktio, jolla n χ(m), jos n = n χ jollain χ L 1 S F (n, m) = 0, muuten. Selvästi F on R-laskettava, ja F (n χ,m)=n χ(m) jokaisella kaavalla χ L 1 S.Koska Φ sallii esitykset, on olemassa kaava α L 3 S, joka esittää funktion F. 71
Kiinnitetään sitten kaava ψ L 1 S.Määritellään S-kaava β ja S-lause ϕ seuraavasti: β := v 2 (α(v 0,v 0,v 2 ) ψ(v 2 )) ϕ := v 2 (α(n β,n β,v 2 ) ψ(v 2 )). Koska β L 1 S ja ϕ = β[n β/v 0 ], on F (n β,n β )=n ϕ,jotenφ α(n β,n β,n ϕ ). Osoitetaan sitten, että Φ ϕ ψ(n ϕ ). Ensinnäkin kaavan ϕ määritelmän perusteella pätee Φ {ϕ} α(n β,n β,n ϕ ) ψ(n ϕ ). Koska Φ α(n β,n β,n ϕ ), tästä seuraa, että Φ {ϕ} ψ(n ϕ ), ja edelleen Φ ϕ ψ(n ϕ ). Kääntäen, koska α esittää funktion F, on voimassa Φ =1 v 2 α(n β,n β,v 2 ). Koska Φ α(n β,n β,n ϕ ), tästä seuraa, ettäφ v 2 (α(n β,n β,v 2 ) v 2 n ϕ ), ja edelleen Φ ψ(n ϕ ) v 2 (α(n β,n β,v 2 ) ψ(v 2 )) eli Φ ψ(n ϕ ) ϕ. Jos Φ L S on lausejoukko, merkitsemme kaikkien joukosta Φ pääteltävissä olevien lauseiden joukkoa symbolilla Φ ; siis Φ := {ϕ L 0 S Φ ϕ}. Edelleen merkitsemme joukon Φ lauseiden Gödel-lukujen joukkoa Φ G ; siis Φ G = {n ϕ ϕ L 0 S, Φ ϕ}. Apulause 7.17 Olkoon Φ L S ristiriidaton lausejoukko, joka sallii esitykset. Tällöin Φ G ei ole esitettävissä Φ:n suhteen. Todistus. Oletetaan, että Φ on ristiriidaton ja sallii esitykset. Tehdään vastaoletus: kaava χ L 1 S esittää joukon Φ G. Koska Φ on ristiriidaton, jokaisella α L0 S pätee Φ χ(n α ) Φ α. Soveltamalla kiintopistelausetta kaavaan χ saadaan lause ϕ L S, jolla pätee Tällöin siis pätee mikä on ristiriita. Φ ϕ χ(n ϕ ). Φ ϕ Φ χ(n ϕ ) Φ ϕ, Huomaa, että täydellisyyslauseen nojalla Φ =Φ =. Edellisestä apulauseesta seuraa siis välittömästi, että joukon Φ loogisten seurausten Gödel-lukujen joukko Φ = G := {n ϕ ϕ L 0 S, Φ = ϕ} ei ole esitettävissä Φ:n suhteen, jos Φ on ristiriidaton, ja sallii esitykset. Edelleen siitä seuraa, että tosien lauseiden Gödel-lukujen joukko Th(N) G := {n ϕ ϕ L 0 S, N = ϕ} ei ole esitettävissä lukuteorian Th(N) suhteen. Tämä tulos tunnetaan nimellä Tarskin teoreema: Lause 7.18 (Tarskin teoreema) (a) Jos Φ L 0 S on ristiriidaton ja sallii esitykset, niin Φ = G Φ:n suhteen. (b) Th(N) G ei ole esitettävissä Th(N):n suhteen. ei ole esitettävissä 72
Lause 7.19 (Gödelin ensimmäinen epätäydellisyyslause) Oletetaan, että Φ L 0 S on ristiriidaton ja R-numeroituva joukko, joka sallii esitykset. Tällöin on olemassa S-lause ϕ siten, että Φ ϕ ja Φ ϕ. Todistus. Tehdään vastaoletus: jokaisella ϕ L 0 S pätee joko Φ ϕ tai Φ ϕ. Tällöin Φ on täydellinen teoria, joten Lauseen 7.7 perusteella Φ on R-ratkeava. Koska Φ sallii esitykset, tästä seuraa, että Φ G on esitettävissä Φ:n suhteen. Tämä on kuitenkin ristiriidassa Apulauseen 7.17 kanssa. Oletetaan seuraavissa tarkasteluissa, ettäφ L S on R-ratkeava lausejoukko, joka sallii esitykset. Valitaan jokin efektiivinen numerointi kaikille sekventtikalkyylin todistuksille, ja määritellään tämän avulla relaatio H seuraavasti: (n, m) H joss sekventtikalkyylin m:s todistus päättyy sekventtiin Γ ϕ, missä Set(Γ) Φjan = n ϕ. Koska Φ on R-ratkeava, niin myös H on R-ratkeava, ja selvästi Φ ϕ on olemassa m N siten että (n ϕ,m) H. Koska Φ sallii esitykset, on olemassa kaava ϕ H L 2 S, joka esittää H:n joukon Φ suhteen. Olkoon Der Φ L 1 S kaava v 1ϕ H. Sovelletaan sitten Kiintopistelausetta kaavalle ψ = Der Φ : on olemassa S-lause ϕ, jolla pätee Φ ϕ Der Φ (n ϕ ). Intuitiivisesti lause ϕ sanoo tällöin Minä en ole todistuva joukosta Φ. Apulause 7.20 Jos Φ on ristiriidaton, niin Φ ϕ. Todistus. Harjoitustehtävä. Koska Φ 0 0, on Φ ristiriidaton jos ja vain jos Φ 0 0. Siis S-lause Con Φ := Der Φ (n 0 0 ) ilmaisee, että Φ on ristiriidaton. Apulause 7.20 voidaan nyt muotoilla implikaationa Con Φ = Der Φ (n ϕ ). Jos Φ PA Φ, Apulauseen 7.20 todistus voidaan periaatteessa formalisoida sekventtikalkyylissä niin, että kokopäättely tapahtuu käyttämällä oletuksina vain joukon Φ lauseita (tämän toteaminen on työlästä, mutta ei sinänsä vaikeaa). Siis itse asiassa tällöin pätee Φ Con Φ Der Φ (n ϕ ). Lause 7.21 (Gödelin toinen epätäydellisyyslause) Oletetaan, että Φ L 0 S on ristiriidaton ja R-ratkeava joukko, jolla Φ PA Φ. Tällöin Φ Con Φ. Todistus. Tehdään vastaoletus: Φ Con Φ.Tällöin edelläolevan havainnon perusteella Φ Der Φ (n ϕ ), joten lauseen ϕ valinnan nojalla Φ ϕ. KoskaΦ PA Φ, joukko Φ sallii esitykset. Olemme päätyneet ristiriitaan Apulauseen 7.20 kanssa. 73