Entscheidungsproblem

Samankaltaiset tiedostot
Entscheidungsproblem

Täydentäviä muistiinpanoja laskennan rajoista

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 10. joulukuuta 2015 TIETOTEKNIIKAN LAITOS.

Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 12. lokakuuta 2016

Logiikan kertausta. TIE303 Formaalit menetelmät, kevät Antti-Juhani Kaijanaho. Jyväskylän yliopisto Tietotekniikan laitos.

Insinöörimatematiikka A

Turingin koneet. Sisällys. Aluksi. Turingin koneet. Turingin teesi. Aluksi. Turingin koneet. Turingin teesi

vaihtoehtoja TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho 13. lokakuuta 2016 TIETOTEKNIIKAN LAITOS

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 29. toukokuuta 2013

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 8. syyskuuta 2016

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 16. marraskuuta 2015

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 6. maaliskuuta 2012 TIETOTEKNIIKAN LAITOS.

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 20. kesäkuuta 2013 TIETOTEKNIIKAN LAITOS.

Pinoautomaatit. Pois kontekstittomuudesta

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 31. maaliskuuta 2011

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 2. helmikuuta 2012

Laskennan rajoja. Sisällys. Meta. Palataan torstaihin. Ratkeavuus. Meta. Universaalikoneet. Palataan torstaihin. Ratkeavuus.

Lisää pysähtymisaiheisia ongelmia

Muunnelmia Turingin koneista sekä muita vaihtoehtoisia malleja

DFA:n käyttäytyminen ja säännölliset kielet

Pinoautomaatit. TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 6. kesäkuuta 2013 TIETOTEKNIIKAN LAITOS. Pinoautomaatit.

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 8. maaliskuuta 2012

Turingin koneet. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 7. joulukuuta 2015 TIETOTEKNIIKAN LAITOS.

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 19. tammikuuta 2012

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 10. kesäkuuta 2013

jäsentäminen TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho 26. marraskuuta 2015 TIETOTEKNIIKAN LAITOS

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 19. syyskuuta 2016

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

Approbatur 3, demo 1, ratkaisut A sanoo: Vähintään yksi meistä on retku. Tehtävänä on päätellä, mitä tyyppiä A ja B ovat.

Lisää kvanttoreista ja päättelyä sekä predikaattilogiikan totuustaulukot 1. Negaation siirto kvanttorin ohi

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 16. toukokuuta 2011

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 12. marraskuuta 2015

Todistus: Aiemmin esitetyn mukaan jos A ja A ovat rekursiivisesti lueteltavia, niin A on rekursiivinen.

Säännölliset kielet. Sisällys. Säännölliset kielet. Säännölliset operaattorit. Säännölliset kielet

Predikaattilogiikkaa

Pinoautomaatit. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 6. lokakuuta 2016 TIETOTEKNIIKAN LAITOS

Rajoittamattomat kieliopit

Täydentäviä muistiinpanoja kontekstittomien kielioppien jäsentämisestä

jäsennyksestä TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho 29. syyskuuta 2016 TIETOTEKNIIKAN LAITOS Kontekstittomien kielioppien

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 5. marraskuuta 2015

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 31. maaliskuuta 2011

Kontekstittomien kielten jäsentäminen Täydentäviä muistiinpanoja TIEA241 Automaatit ja kieliopit, syksy 2016

Nimitys Symboli Merkitys Negaatio ei Konjuktio ja Disjunktio tai Implikaatio jos..., niin... Ekvivalenssi... jos ja vain jos...

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 26. kesäkuuta 2013

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 12. tammikuuta 2012

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 20. lokakuuta 2016

LOGIIKKA johdantoa

Todistusmenetelmiä Miksi pitää todistaa?

Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna

jäsentämisestä TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho 27. marraskuuta 2015 TIETOTEKNIIKAN LAITOS

TAMPEREEN YLIOPISTO Pro gradu -tutkielma. Roosa Niemi. Riippuvuuslogiikkaa

Pysähtymisongelman ratkeavuus [Sipser luku 4.2]

T Syksy 2005 Logiikka tietotekniikassa: perusteet Laskuharjoitus 8 (opetusmoniste, kappaleet )

Predikaattilogiikan malli-teoreettinen semantiikka

-Matematiikka on aksiomaattinen järjestelmä. -uusi tieto voidaan perustella edellisten tietojen avulla, tätä kutsutaan todistamiseksi

Tietojenkäsittelyteorian alkeet, osa 2

b) Määritä myös seuraavat joukot ja anna kussakin tapauksessa lyhyt sanallinen perustelu.

9.5. Turingin kone. Turingin koneen ohjeet. Turingin kone on järjestetty seitsikko

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 16. maaliskuuta 2011

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 22. toukokuuta 2013

Loogiset konnektiivit

Vaihtoehtoinen tapa määritellä funktioita f : N R on


Testaa: Vertaa pinon merkkijono syötteeseen merkki kerrallaan. Jos löytyy ero, hylkää. Jos pino tyhjenee samaan aikaan, kun syöte loppuu, niin

Rekursio. Funktio f : N R määritellään yleensä antamalla lauseke funktion arvolle f (n). Vaihtoehtoinen tapa määritellä funktioita f : N R on

T Kevät 2006 Logiikka tietotekniikassa: perusteet Laskuharjoitus 8 (opetusmoniste, kappaleet )

T Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet )

Tarkastelemme ensin konkreettista esimerkkiä ja johdamme sitten yleisen säännön, joilla voidaan tietyissä tapauksissa todeta kielen ei-säännöllisyys.

Rekursiiviset palautukset [HMU 9.3.1]

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 26. tammikuuta 2012

Logiikka 1/5 Sisältö ESITIEDOT:

Ratkaisu: (b) A = x 0 (R(x 0 ) x 1 ( Q(x 1 ) (S(x 0, x 1 ) S(x 1, x 1 )))).

1. Universaaleja laskennan malleja

T Kevät 2009 Logiikka tietotekniikassa: perusteet Laskuharjoitus 8 (Predikaattilogiikka )

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015

Johdatus diskreettiin matematiikkaan Harjoitus 2, Osoita että A on hyvin määritelty. Tee tämä osoittamalla

DIFFERENTIAALI- JA INTEGRAALILASKENTA I.1. Ritva Hurri-Syrjänen/Syksy 1999/Luennot 6. FUNKTION JATKUVUUS

Luonnollisen päättelyn luotettavuus

Ratkaisu: Käytetään induktiota propositiolauseen A rakenteen suhteen. Alkuaskel. A = p i jollain i N. Koska v(p i ) = 1 kaikilla i N, saadaan

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Surjektion käsitteen avulla kuvauksia voidaan luokitella sen mukaan, kuvautuuko kaikille maalin alkioille jokin alkio vai ei.

1. Logiikan ja joukko-opin alkeet

5.6 Yhdistetty kuvaus

Diskreetin Matematiikan Paja Ratkaisuhahmotelmia viikko 1. ( ) Jeremias Berg

Pikapaketti logiikkaan

FORMAALI SYSTEEMI (in Nutshell): aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus

Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 12. lokakuuta 2016

FI3 Tiedon ja todellisuuden filosofia LOGIIKKA. 1.1 Logiikan ymmärtämiseksi on tärkeää osata erottaa muoto ja sisältö toisistaan:

M = (Q, Σ, Γ, δ, q 0, q acc, q rej )

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014

MS-A0402 Diskreetin matematiikan perusteet

T kevät 2007 Laskennallisen logiikan jatkokurssi Laskuharjoitus 1 Ratkaisut

uv n, v 1, ja uv i w A kaikilla

Diskreetin matematiikan perusteet Laskuharjoitus 1 / vko 8

Yhteydettömän kieliopin jäsennysongelma

Matemaattisten työvälineiden täydentäviä muistiinpanoja

missä on myös käytetty monisteen kaavaa 12. Pistä perustelut kohdilleen!

Transkriptio:

Entscheidungsproblem Antti-Juhani Kaijanaho 10. joulukuuta 2015 Entscheidungsproblem eli ratkaisuongelma kysyy, millä mekaanisella menetelmällä voisi selvittää, onko mielivaltainen annettu ensimmäisen kertaluvun kaava loogisesti tosi vai ei. Turing todisti, että ratkaisua ei ole. Prujun alkupään asiat kuuluvat formaalin logiikan alkeisiin ja esitetään tyypillisesti kaikilla logiikan alkeiskursseilla, mitä nyt yksityiskohdissa voi olla eroja. Itse todistus perustuu seuraavaan artikkeliin: A. M. Turing: On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, Series 2, 42 1), 1937. http://dx.doi.org/10.1112/plms/ s2-42.1.230 Tämän lisäpujun sisältö ei kuulu kurssin varsinaiseen asiaan lähinnä siksi, että tässä tarvitaan enemmän esitietoja formaalista logiikasta kuin kurssilla vaaditaan). 1 Ensimmäisen kertaluvun logiikka 1.1 Syntaksi Ensimmäisen kertaluvun logiikka 1 engl. first-order logic) on looginen kieli, jolle voidaan kirjoittaa esimerkiksi seuraava moniselitteinen) kontekstiton kielioppi: 2 F F F F F F F F F F F) P L T ) F L x : F L x : F Lisäpruju kurssille TIEA241 Automaatit ja kieliopit, syksy 2015 1 Kutsutaan usein myös predikaattilogiikaksi, vaikka predikaattilogiikka on oikeasti laajempi termi ja sisältää mm. toisen kertaluvun logiikan, jossa voidaan kvantifioida joukkojen yli. 2 Tälle logiikalle on runsaasti erilaisia määritelmiä. Tämä on vain yksi niistä. 1

L x x L x, x L T T L T, T T x c fl T ) Tässä kieliopissa välikemerkit on lihavoitu, koska isoja kirjaimia tarvitaan päätemerkeiksi. Muuttujat x), vakiosymbolit c), funktiosymbolit f) ja predikaattisymbolit P ) ovat päätemerkkejä, jotka edustavat mielivaltaisia nimiä. Niinä käytetään yleensä yksittäisiä kirjaimia, joihin mahdollisesti liitetään alaindeksejä tai yläpilkkuja ). Tavanomaisesti muuttujat, vakiosymbolit ja funktiosymbolit kirjoitetaan pienillä kirjaimilla, kun taas predikaattisymbolit kirjoitetaan yleensä isoilla kirjaimilla. Muuttujat, vakiosymbolit ja funktiosymbolit erottaa helposti toisistaan sen perusteella, kuinka niitä kulloinkin käytetään vain muuttujia voi käyttää kvanttoreissa, ja vain funktio- ja predikaattisymboleille voi antaa argumenttilistan). Muita päätemerkkejä ovat pilkku, kaarisulkeet, kaksoispiste, loogiset konnektiivit,,,, ), kvanttorit, ) ja loogiset vakiot tarkoittaa totuutta ja epätotuutta). Tyhjät merkit kuten välilyönti ja rivinvaihto eivät ole kieliopin päätemerkkejä, vaan niitä voidaan käyttää tarpeen mukaan tuomaan merkkijonoon luettavuutta. Kielioppi voidaan tulkita F:n osalta luennoilla määritellyksi operaattorikieliopiksi. Operaattoreille voidaan antaa seuraava presedenssijärjestys matalasta korkeaan aaltosulkeissa olevilla on keskenään sama presedenssi): { x:, x: },,, {, },. Kaikki infiksioperaattorit assosioivat vasemmalle ja prefiksioperaattorit oikealle. 1.2 Tulkinta Vakiosymboleilla nimetään tiettyjä maailman otuksia: esim. a voi olla vaikkapa tämän kurssin luennoija tai jos tehdään jokin toinen valinta) Agorarakennus. Funktiosymboleilla nimetään maailman otusten välisiä kuvauksia: esimerkiksi f voi kuvata ihmisen hänen äidikseen tai ihmisparin heidän yhteiseksi esikoisekseen tai Agora-rakennukseksi, jos heillä ei ole yhteisiä lapsia 3 tai jos jompi kumpi sen argumenteista ei ole ihminen 4 ). Predikaattisymbolit ilmaisevat maailman otusten ominaisuuksia ja relaatioita: P voi esimerkiksi ilmaista, onko sille tarjottu otus ihminen, tai ovatko sille tarjotut kaksi otusta oikeasti sama otus. 3 Näin käy useimmille ihmispareille, koska useimmat tavat valita kaksi ihmistä eivät yleensä tuota saman perheen jäseniä. 4 Esimerkiksi yliopiston päärakennuksen kanssa kenelläkään tuskin on lapsia. 2

Huomaa, että klassisessa) ensimmäisen kertaluvun logiikassa sekä funktiosymboleien että predikaattisymbolien tulkintojen tulee olla määriteltyjä kaikilla mahdollisilla argumenteilla. Logiikka muuttuu jonkin verran, jos sallitaan määrittelemättömyys funktioille ns. osittaisfunktiologiikka, engl. partialfunction logic), ja aika paljon, jos se sallitaan predikaateille kolmiarvologiikka, engl. three-valued logic). Lisäksi tulkintojen tulee olla funktiomaisia: tulos saa riippua vain annetuista argumenteista. Edellä annetut esimerkit on napattu reaalimaailmasta, mutta ensimmäisen kertaluvun logiikalla harvoin tarkastellaan reaalimaailmaa. Tavallisimmin tarkastelun kohteena on jokin reaalimaailman malli, jota tarkastelun aikana kutsutaan usein myös maailmaksi engl. universe). Esimerkiksi joissakin tapauksissa saatetaan haluta tarkastella ihmisten sukulaissuhteiden toimintaa, jolloin malliksi otetaan joukko ihmisiä, joista joillakin on keskinäinen sukulaisuussuhde ja toisilla ei. Tällä kurssilla saattaisimme ottaa malliksi maailman, joka koostuu Turingin koneista, merkeistä ja merkkijonoista. Kun on kiinnitetty jokin malli, josta otukset napataan, pitää seuraavaksi kiinnittää tulkinta vakio-, funktio- ja predikaattisymboleille. Esimerkiksi Turingin koneiden, merkkien ja merkkijonojen maailmassa saatetaan haluta kiinnittää vakion b tulkinnaksi merkki b. Kun sekä maailma että tulkinta on kiinnitetty, voidaan logiikalla ryhtyä tekemään jotain. Jokaisella välikesymbolin T merkkijonolla eli termillä on jokin arvo, joka on jokin maailman otus; mikä se on, riippuu vakio- ja funktiosymboleille valituista tulkinnoista. Vastaavasti jokaisella välikesymbolin F merkkijonolla eli kaavalla engl. formula) on totuusarvo tosi tai epätosi), joka riippuu vakio-, funktio- ja predikaattisymboleiden tulkinnasta. Esimerkki 1. Tarkastellaan mallia, johon sisältyvät kaikki tietotekniikan laitoksen opettajat ja kurssit. Valitaan vakiosymbolin a tulkinnaksi Antti-Juhani Kaijanaho ja b:n Ville Tirronen; valitaan lisäksi vakiosymbolin c tulkinnaksi TIEA241 ja d:n TIEA341. Valitaan lisäksi funktiosymbolin f tulkinnaksi jos argumentti on kurssi, palautetaan sen opettaja; muuten palautetaan argumentti itse. Nyt termin fa) arvo on a, fb):n arvo on b, fc):n arvo on a ja fd):n arvo on b. Valitaan vielä predikaattisymbolin P tulkinnaksi jos ensimmäinen argumentti on kurssi ja toinen opettaja, palauta tosi jos kyseessä on kyseisen kurssin opettaja; palauta muissa tapauksissa epätosi ja Q:n tulkinnaksi jos ainoa argumentti on kurssi, palauta tosi; muuten palauta epätosi. Nyt kaava P a, b) on epätosi, kuten myös kaava P c, b); sen sijaan P c, a) ja P d, b) ovat tosia. Lisäksi kaava x: Qx) P x, fx)) on tosi. Nämä termien arvot ja kaavojen totuusarvot riippuvat valitusta maailmasta ja tulkinnasta. Jos vaihdetaan a:n ja b:n tulkinnat keskenään, termin 3

fc) arvo onkin b ja termin fd) arvo onkin a. Sen sijaan kaava x: Qx) P x, fx)) on edelleen tosi. Jos lisäksi vaihdetaan P :n ja Q:n tulkinta keskenään, kaikki kaavat P a, b), P c, b), P c, a) ja P d, b) ovat epätosia; sen sijaan kaava x: Qx) P x, fx)) pysyy edelleen totena. Jos vielä muutetaan Q:n tulkinta siten, että se on kaikilla mahdollisilla argumenteilla tosi, kaava x: Qx) P x, fx)) muuttuu epätodeksi. Kuten esimerkistä havaitaan, kaavan totuus riippuu valitusta maailmasta ja lisäksi valituista tulkinnoista. Toisinaan ollaan kuitenkin kiinnostuneita sellaisista yleisistä laeista, joiden totuus ei riipu maailmasta eikä tulkinnasta: esimerkiksi x: P x)) P c) on tosi kaikissa maailmoissa ja kaikilla tulkinnoilla. Määritelmä 2. Kaava on loogisesti tosi, jos se on tosi kaikissa mahdollisissa malleissa kaikilla mahdollisilla tulkinnoilla. Määritelmä 3. Kaava on loogisesti epätosi, jos se on epätosi kaikissa mahdollisissa malleissa kaikilla mahdollisilla tulkinnoilla. Nämä ovat toistensa negaatioita: Lause 4. Jos ϕ on loogisesti tosi kaava, niin ϕ) on loogisesti epätosi kaava. Todistus. Triviaali. Huomaa, että looginen totuus ja looginen epätotuus eivät kuitenkaan ole toistensa komplementteja. Esimerkiksi kaava P c) ei ole looginen totuus, sillä on mahdollista valita maailma ja tulkinta siten, että se on epätosi, mutta se ei myöskään ole looginen epätotuus, koska jollakin maailmalla ja tulkinnalla se on tosi. Tällaisille välimuotokaavoille on oma nimensäkin: Määritelmä 5. Jos kaava ei ole loogisesti tosi eikä loogisesti epätosi, se on kontingentti. Logiikka ja matematiikka ovat kiinnostuneita vain) loogisista totuuksista, mutta jokapäiväisessä elämässä olemme enemmän tekemisissä kontingenttien asioiden kanssa. 1.3 Todistusjärjestelmät Loogisesti tosien kaavojen selvittämiseksi ei onneksi tarvitse tarkastella kaikkia maailmoja ja kaikkia tulkintoja. Ensimmäisen kertaluvun logiikalle voidaan määritellä useita eri todistusjärjestelmiä, joille kaikille pätee seuraavat kaksi lausetta: 4

Lause 6 Ensimmäisen kertaluvun logiikan eheyslause). Jos kaava voidaan todistaa, se on loogisesti tosi. Lause 7 Gödelin täydellisyyslause). Jos kaava on loogisesti tosi, se voidaan todistaa. Todistus. Sivuutetaan. Todistukset esitetään tavallisesti formaalin logiikan peruskursseilla. Lausetta 7 ei tule sekoittaa Gödelin kuuluisiin epätäydellisyyslauseisiin. Tavanomainen matemaattinen päättely kelpaa useimmissa tapauksissa kaavan todistukseksi. Sen tarkemmin todistusjärjestelmiä ei tässä käsitellä. 2 Entscheidungsproblemin epäratkaisu Lause 8. Loogisesti tosien kaavojen joukko on laskettavasti lueteltava. Todistus. Ideana on rakentaa epädeterministinen Turingin kone, joka soveltaa jotain ensimmäisen kertaluvun logiikan todistusjärjestelmää. Se, että kone hyväksyy loogiset totuudet, seuraa lauseesta 7. Se, että kone ei hyväksy mitään, joka ei ole looginen totuus seuraa lauseesta 6. Tarkempi todistus sivuutetaan, koska monisteessa ei ole määritelty yhtään todistusjärjestelmää. Lause 9 Turing). Loogisesti tosien kaavojen kieli ei ole laskettava. Todistus. Tehdään vastaoletus, että loogisesti tosien kaavojen kieli on laskettava. Tällöin on olemassa TM, joka ratkaisee sen. Johdetaan tästä ristiriita osoittamalla, että kyseinen TM ratkaisee myös ratkeamattomaksi tiedetyn kysymyksen mielivaltaisen Turingin koneen kielen epätyhjyydestä. Rakennetaan mielivaltaisen Turingin koneen perusteella ensimmäisen kertaluvun logiikan kaava, joka on loogisesti tosi, jos ja vain jos tuo TM hyväksyy yhdenkään merkkijonon. Aloitetaan rakentamalla TM:n kuvauksessa tarvittavia työkaluja, ensisijaisesti merkkijonot. Merkkijonon käsittelyyn tarvitaan vakiosymboli, jonka on tarkoitus edustaa tyhjää merkkijonoa, funktiosymboli, jonka on tarkoitus yhdistää kaksi merkkijonoa toisiinsa, sekä predikaattisymboli, jonka on tarkoitus ilmaista merkkijonojen samuutta. Kaavojen luettavuuden helpottamiseksi merkitään tuota funktiosymbolia infiksioperaattorilla ε eli kirjoitetaan operandit peräkkäin) ja tulkitaan se vasemmalle assosiatiiviseksi. Samasta 5

syystä merkitään predikaattisymbolia infiksioperaattorilla =, joka tulkitaan vasemmalle assosiatiiviseksi. 5 Tuota vakiosymbolia merkitään e:llä. Näin lisätyn vakio-, funktio- ja predikaattisymbolin keskinäisen yhteistoiminnan tueksi tarvitaan ekvivalenssirelaation ja monoidin aksioomat kaavoiksi kirjoitettuna: x: x = x) 1) x, y : x = y y = x) 2) x, y, z : x = y y = z x = z) 3) x: x = ex) 4) x: x = xe) 5) x, y, z : xyz) = xy)z) 6) Lisätään vielä predikaattisymboli S, joka kertoo, palauttaako argumenttina annettu termi yhden merkin mittaisen merkkijonon. x, y, z : y = e) Sx) x = yz y = x z = e)) 7) Otetaan nyt tarkasteluun mielivaltainen standardimuotoinen Turingin kone M = Q, Σ, Γ, δ,, q 0, q yes, q no ). Voidaan olettaa, että tilat ja nauhamerkit ovat logiikan vakiosymboleita ja että e ei ole kumpaakaan. Otetaan käyttöön predikaattisymboli Q merkitsemään, mitkä termit palauttavat tiloja, ja G merkitsemään, mitkä palauttavat nauhamerkkien jonoja. Näiden toimintaa kuvaavat seuraavat kaavat: 6 )) x: Qx) x = q 8) q Q ))) x: Gx) x = e y : Gy) x = yc Otetaan vielä käyttöön predikaattisymboli I merkitsemään, mitkä termit palauttavat syötemerkkien jonoja. Sen toimintaa kuvaa seuraava kaava: ))) x: Ix) x = e y : Iy) x = yc 10) 5 Nämä ovat puhtaasti kirjoitustapoja, jotka eivät muuta itse ensimmäisen kertaluvun logiikan kieltä: esimerkiksi kun kirjoitamme abc, se voidaan helposti tulkita termiksi ssa, b), c), missä s on yhdistämistä edustavalle funktiosymbolille valittu nimi. Jälkimmäinen sattuu vain olemaan hankalasti luettava. 6 Merkintä ϕ on lyhennysmerkintä ja tarkoittaa niiden kaavojen yhdistämistä - q Q konnektiivilla, jotka saadaan sijoittamalla ϕ-kaavaan q:n paikalle vuorollaan kukin Q:n alkio. 6 c Γ c Σ 9)

Yhdistetään kaavat 1) 10) uudeksi, isoksi kaavaksi -konnektiivilla. Kutsutaan näin saatua kaavaa jatkossa nimellä A. Kuvataan nyt tilasiirtymien vaikutus M:n tilanteisiin lisäämällä uusi funktiosymboli t. Tarkoitus on, että tx) palauttaa M:n tilanteen, johon päästään tilanteesta x tekemällä yksi M:n tilasiirtymä. Funktion toimintaa kuvaamaan tarvitaan iso kaava, jota kutsutaan jatkossa nimellä T. Se muodostetaan yhdistämällä -konnektiivilla kaikki kaavat, jotka saadaan seuraavista kahdesta kaavasta korvaamalla q ja q kaikilla mahdollisilla M:n tiloilla sekä c ja c kaikilla mahdollisilla M:n nauhamerkeillä, jotka täyttävät kaavan viereen kirjoitetun ehdon: w, v : Gw) Gv) twqcv) = wc q v ) jos δq, c) = q c, R) 11) ) d, w, v : Gd) Sd) Gw) Gv) twdqcv) = wq dc v tqcv) = q c jos δq, c) = q c, L) 12) v Lisäksi T :hen lisätään -konnektiivilla seuraava kaava: w : tw) = tw )) 13) Lisätään vielä predikaattisymboli T, jonka on tarkoitus sanoa, että jos molemmat argumentit ovat M:n tilanteita, voiko ensimmäisestä päästä jälkimmäiseen nollalla tai useammalla tilasiirtymällä. Sen toiminta kuvataan seuraavilla kahdella kaavalla, jotka lisätään -konnektiivilla A:han: w : T w, w)) 14) w, v : T w, v) T w, tv))) 15) Nyt todistuksen alussa luvattu kaava, jonka on tarkoitus kuvata väitettä M hyväksyy ainakin yhden merkkijonon, on seuraava: A T w, v, u: Iw) Gv) Gu) T q 0 w, vq yes u) 16) Osoitetaan ensiksi, että jos kaava 16) on loogisesti tosi, niin M hyväksyy ainakin yhden merkkijonon. Oletetaan siis, että kaava 16) on loogisesti tosi. Tällöin se on tosi kaikissa maailmoissa kaikilla tulkinnoilla. Erityisesti se on siis tosi sellaisessa maailmassa, joka koostuu M:n tiloista ja nauhamerkeistä muodostuvista merkkijonoista, niillä tulkinnoilla, jotka edellä on kullekin symbolille kerrottu sen tarkoitetuksi tulkinnaksi. Tuossa maailmassa tuolla tulkinnalla kaava 16) kertoo sen, mitä olemme osoittamassa eli että M hyväksyy ainakin yhden merkkijonon. Seuraavaksi tulee osoittaa, että jos M hyväksyy ainakin yhden merkkijonon, niin kaava 16) on tosi kaikissa maailmoissa kaikilla tulkinnoilla. Tähän riittää lauseen 6 nojalla osoittaa, että kaava 16) on todistettavissa, jos M hyväksyy ainakin yhden merkkijonon. 7

Oletetaan siis, että M hyväksyy ainakin yhden merkkijonon. Oletetaan lisäksi kaavat A ja T loogisiksi totuuksiksi, ja osoitetaan, että tällöin w, v, u: Iw) Gv) Gu) T q 0 w, vq yes u) 17) on looginen totuus. Merkitään jotain M:n hyväksymää merkkijonoa w. Koska nauhamerkit ja siten syötemerkit ovat oletetusti vakiosymboleita, w on termi. Niinpä w voidaan valita kaavan 17) olemassaolokvanttorin w:ksi. Näin ollen, jos v, u: Iw) Gv) Gu) T q 0 w, vq yes u) 18) on looginen totuus, niin myös 17) on looginen totuus. On helppo todeta kaavan 10) perusteella, että Iw) on looginen totuus; niinpä jos kaava v, u: Gv) Gu) T q 0 c 0 c n, vq yes u) 19) on looginen totuus, niin myös 18) ja sitä kautta 17) ovat loogisia totuuksia. Koska M hyväksyy merkkijonon w, on olemassa merkkijonot v ja u sekä jono M:n tilanteita K 0,..., K n, joille pätee K 0 = q 0 w ja K n = vq yes u sekä K i K i+1 kaikilla i {0, n 1}. Jokainen K i on nauhamerkkien ja tilojen merkkijono, joten ne kelpaavat termeiksi. Koska K i K i+1 kaikilla i {0, n 1}, kaavojen 11) ja 12) nojalla tk i, K i+1 ) pätee kaikilla i {0, n 1}. Kaavojen 14) ja 15) perusteella voidaan todeta, että T K 0, K n ) eli T q 0 w, vq yes u) pätee. Kun vielä todetaan, että Gv) ja Gu) pätevät kaavan 9) nojalla, päästään johtopäätöksen, että 19), ja sen kautta 17) on looginen totuus. Nyt on saatu todistettua, että 17) on looginen totuus jos ja vain jos M hyväksyy ainakin yhden merkkijonon. On selvää, että on mahdollista joskin erittäin työlästä) laatia Turingin kone, joka saatuaan syötteenä jonkin TM:n binäärikuvauksen laatii siitä kaavan 17). Tämän koneen perään voidaan helposti kytkeä vastaoletuksen nojalla olemassa oleva Turingin kone, joka ratkaisee tuon kaavan loogisen totuuden. Näin meillä on Turingin kone, joka kykenee ratkaisemaan, hyväksyykö mielivaltainen Turingin kone ainakin yhden syötteen. Tiedämme kuitenkin, ettei tällaista Turingin konetta ole olemassa, joten vastaoletuksen on oltava väärin. 8