Ratkeavuus ja efektiivinen numeroituvuus

Save this PDF as:

Koko: px
Aloita esitys sivulta:

Download "Ratkeavuus ja efektiivinen numeroituvuus"

Transkriptio

1 Luku 6 Ratkeavuus ja efektiivinen numeroituvuus Proseduurit Olkoon A aakkosto. Proseduuri aakkoston A sanoille on mikä hyvänsä prosessi (algoritmi) P, jolle annetaan syötteeksi sana w A, ja joka etenee askelittain mekaanisesti annettuja ohjeita noudattaen. Näitä toimintaohjeita voi olla vain äärellinen määrä. Prosessi voi pysähtyä äärellisen monen askeleen jälkeen tai se voi jatkua koskaan pysähtymättä. Proseduuri voi myös tulostaa suorituksen aikana yhden tai useampia sanoja u A. Jos suoritus ei pysähdy, tulostetuista sanoista voi muodostua ääretön jono u 0,u 1,u 2,... Määritelmä 6.1Olkoon A aakkosto, W A joukko sanoja ja P proseduuri joukossa A. (a) P on joukon W ratkaisuproseduuri, jos P pysähtyy jokaisella syötteellä w A, ja tulostaa sanan u A, jolla pätee u = ε (tyhjä sana) jos ja vain jos w W. (b) W on ratkeava, jos on olemassa proseduuri P, joka on sen ratkaisuproseduuri. Sanomme, että proseduuri P hyväksyy sanan w A,jossesyötteellä w tulostaa tasan yhden sanan, joka on ε,japysähtyy sen jälkeen. Vastaavasti P hylkää sanan w, jos se tulostaa tasan yhden sanan, joka ei ole ε,japysähtyy sen jälkeen. Joukon W A ratkaisuproseduuri on siis proseduuri, joka hyväksyy kaikki joukon W sanat, ja hylkää kaikki joukon A \ W sanat. Esimerkki 6.1 (a) Olkoon A = {0,...,9} ja W = {w A n(w) on alkuluku}, missä n(w) N on luonnolinen luku, jonka desimaaliesitys w on. (Tässä sovitaan, että n(ε) =0jan(0w) = 0 jokaisella w A.) On helppo todeta, että seuraava proseduuri P ratkaisee joukon W : Olkoon syötteenä w A. Jos w = ε, w =1,taiw =0w jollain w A, tulostetaan 0, ja lopetetaan. Jos w = 2, tulostetaan ε, ja lopetetaan. 50

2 Jos mikään edellisistä ei päde, jaetaan luku n(w) vuoronperään luvuilla 2, 3,...,n(w) 1; jos jakolasku n(w)/m menee tasan jollain m {2,...,n(w) 1}, tulostetaan 0, ja lopetetaan. muussa tapauksessa tulostetaan ε, ja lopetetaan. Voidaan siis sanoa, että alkulukujen joukko on ratkeava. (b) Olkoon A S predikaattilogiikan aakkosto {v i i N} {,,,, (, )} S, missä S on symbolijoukko {f,c}, jaar(f) =2.Tällöin S-termien joukolla T S on seuraavanlainen ratkaisuproseduuri P : Olkoon syötteenä w A S. Jos w = ε tai sanan w ensimmäinen symboli ei ole c, f tai v i jollain i N, tulostetaan, ja lopetetaan. Jos w = c tai w = v i jollain i N, tulostetaan ε, ja lopetetaan. Jos w = cw tai w = v i w jollain w A S \{ε} ja i N, tulostetaan, ja lopetetaan. Jos w = fw jollain w A S, niin sovelletaan proseduuria P vuoronperään kaikilla syötteillä u A S ja v A S, joilla w = uv; jos proseduuri P tulostaa sanan ε ja pysähtyy molemmilla syötteillä u ja v, tulostetaan ε, ja lopetetaan. jos näin ei tapahdu millään parilla (u, v), jolla w = uv, niin tulostetaan, ja lopetetaan. Huomaa, että Esimerkin 6.1(b) proseduuria P on helppo muokata niin, että se toimii millä hyvänsä kiinnitetyllä symbolijoukolla S. Lisäksi samantapaista proseduuria P käyttäen nähdään, että kaikkien S-kaavojen joukko L S on ratkeava. Proseduuria P voidaan edelleen täydentää niin, että kaavojen vapaista muuttujista pidetään samalla kirjaa. Siis myös kaavajoukot L n S, n N, ovat kaikki ratkeavia. Joukkojen T S, L S ja L n S ratkaisuproseduureissa on kuitenkin vielä yksi asia, joka kaipaa tarkentamista: aakkosto A S on ääretön, joten proseduurin toimiminen näyttäisi edellyttävän kykyä erottaa toisistaan äärettömän monta eri symbolia. (Periaatteessa näiden proseduurien toimitaohjeiden joukkokin on ääretön.) Tämä ongelma ratkaistaan seuraavasti: korvataan aakkosto A S aakkostolla A L := {v,,,,, (, ),R,f,c,0, 1,...,9} ja koodataan kukin muuttujasymboli v n sanalla vn, missä n {0,...,9} on luvun n N desimaaliesitys. Vastaavasti kukin relaatio-, funktio- ja vakiosymboli R n, f n ja c n koodataan sanoilla Rn, fn ja cn. Esimerkiksi termi f 1 c 4 f 1 v 12 f 2 v 23 ja kaava v 0 (R 3 c 1 v 0 c 1 f 2 v 0 c 1 ) koodataan aakkoston A L sanoiksi f1c4f1v12f2v23 ja v0(r3c1v0 c1 f 2v0c1). Kun jatkossa puhumme proseduureista (ja rekisterikoneista), oletamme, että aakkosto on aina äärellinen. Erityisesti, kun tarkastelemme proseduureja termeille ja kaavoille, käytämme edellämainittua aakkoston A S koodausta äärellisen aakkoston A L sanoiksi. 51

3 Määritelmä 6.2Olkoon A aakkosto, W A joukko sanoja ja P proseduuri joukossa A. (a) P on joukon W efektiivinen numerointiproseduuri, jos P syötteellä ε tulostaa jonon u 0,u 1,u 2,... sanoja s.e. W = {u 0,u 1,u 2,...}. Tässä jono u 0,u 1,u 2,... voi olla äärellinen, ja siinä voi olla toistoja. Jos W =, jono u 0,u 1,u 2,... on tyhjä, eli P ei tulosta yhtään sanaa. (b) W on efektiivisesti numeroituva, jos on olemassa proseduuri P, joka on sen efektiivinen numerointiproseduuri. Jos joukko W A on äärellinen, niin sen efektiivinen numerointiproseduuri P voi olla pysähtymätön, tai vaihtoehtoisesti se voi pysähtyä sen jälkeen, kun se on tulostanut kaikki joukon W alkiot. Sen sijaan äärettömän joukon W efektiivinen numerointiproseduuri ei luonnollisesti voi koskaan pysähtyä. Esimerkki 6.2 Jos A on äärellinen aakkosto, niin A on efektiivisesti numeroituva. On nimittäin olemassa proseduuri P, joka tulostaa kaikki sanat w A leksikograafisessa järjestyksessä. Leksikograafinen järjestys määritellään seuraavasti: a 0...a n b 0...b m n<m n = m i n(a i < A b i j<i(a j = b j )), missä < A on joukon A valmiiksi kiinnitetty järjestys. Esimerkki 6.3 Olkoon S symbolijoukko. Kaikkien validien S-lauseiden joukko VAL S = {ϕ L 0 S = ϕ} on efektiivisesti numeroituva. Seuraava proseduuri antaa tarvittavan efektiivisen numeroinnin tälle joukolle: Käydään läpi kaikki aakkoston A L {,} sanat leksikograafisessa järjestyksessä: w 0 w 1 w 2... Jos w i on muotoa Γ 1 ϕ 1...Γ n ϕ n ϕ, missä kukin Γ j ϕ j sekä ϕ on sekventti, ja lisäksi sekventit Γ 1 ϕ 1,...,Γ n ϕ n muodostavat sekventin ϕ johdon tyhjästä oletusjoukosta ja ϕ L 0 S, niin tulostetaan ϕ, ja siirrytään järjestyksessä seuraavaan sanaan w i+1. Jos edellisen kohdan ehdot eivät päde sanalle w i, niin siirrytään suoraan järjestyksessä seuraavaan sanaan w i+1. Huomaa, että ylläoleva on mahdollista toteuttaa, koska sekventtisääntöjen korrekti soveltaminen voidaan tarkistaa mekaanisesti. Selvästi tämä proseduuri tulostaa kaikki joukon {ϕ L 0 S ϕ} lauseet. Adekvaattisuuslauseen 4.21 perusteella tämä joukko on VAL S. Lause 6.1 Jokainen ratkeava joukko on efektiivisesti numeroituva. Todistus. Olkoon W A ratkeava joukko, ja olkoon P sen ratkaisuproseduuri. Joukolla W on tällöin seuraava efektiivinen numerointiproseduuri P : Käydään aakkoston A sanat läpi leksikograafisessa järjestyksessä w 0 w 1 w

4 Sovelletaan sanaan w i proseduuria P ; jos P hyväksyy sanan w i, tulostetaan w i, ja siirrytään seuraavaan sanaan w i+1. jos P hylkää sanan w i, siirrytään seuraavaan sanaan w i+1. Selvästi proseduuri P tulostaa täsmälleen joukon W sanat (leksikograafisessa järjestyksessä). Lause 6.2 Joukko W A on ratkeava jos ja vain jos sekä W että sen komplementti A \ W ovat efektiivisesti numeroituvia. Todistus. Oletetaan ensin, että W on ratkeava. Lauseen 6.1 nojalla W on tällöin efektiivisesti numeroituva. Toisaalta joukon W ratkaisuproseduurista saadaan joukon A \ W ratkaisuproseduuri yksinkertaisesti vaihtamalla sanan hyväksyminen ja hylkääminen keskenään. Siis myös A \ W on ratkeava, ja siten myös efektiivisesti numeroituva. Oletetaan sitten, että W ja A \ W ovat molemmat efektiivisesti numeroituvia. Olkoot P 1 ja P 2 vastaavat numerointiproseduurit. Kiinnitetään sana u A, u = ε. Joukolla W on tällöin seuraava ratkaisuproseduuri P : Olkoon syöte w A. Käynnistetään proseduurit P 1 ja P 2 (molemmilla syötteenä tyhjä sana ε); kumpaakin proseduuria tehdään vuoronperään askel kerrallaan. Jos proseduuri P 1 tulostaa jossain vaiheessa sanan w, tulostetaan ε, ja lopetetaan. Jos proseduuri P 2 tulostaa jossain vaiheessa sanan w, tulostetaan u, ja lopetetaan. Koska P 1 tulostaa sanan w äärellisen monen askeleen jälkeen jos ja vain jos P 2 ei tulosta sitä koskaan, nähdään että P hyväksyy kaikki joukon W sanat, ja hylkää kaikki muut sanat. Määritelmä 6.3Olkoot A ja B aakkostoja. Funktio f : A B on laskettava, jos on olemassa proseduuri P,jokapysähtyy jokaisella syötteellä w A,ja tulostaa sanan f(w). 53

5 Rekisterikoneet Kiinnitetään äärellinen aakkosto A = {a 0,...,a r }. Rekisterikone muodostuu äärellisestä jonosta rekistereitä R 0,...,R m, joihin voidaan tallentaa ohjelman suorituksen aikana aakkoston A sanoja. Rekisterikoneen ohjelma muodostuu puolestaan äärellisestä jonosta käskyjä. Käskyjä on seuraavat viisi tyyppiä: (1) LET R i = R i + a j Tässä i m ja j r. Käskyn suoritus: lisätään symboli a j rekisterissä R i olevan sanan perään. (2) LET R i = R i a j Tässä i m ja j r. Käskyn suoritus: jos rekisterissä R i olevan sanan viimeinen symboli on a j, poistetaan se; muuten ei tehdä mitään. (3) IF R i = ε THEN l ELSE l 0 OR... OR l r Tässä i m. Käskyn suoritus: jos rekisterissä R i on tyhjä sana, siirrytään käskyyn, jonka numero on l; muuten siirrytään käskyyn, jonka numero on l j, missä a j on rekisterissä R i olevan sanan viimeinen symboli. (4) PRINT Käskyn suoritus: tulostetaan rekisterin R 0 sisältö. (5) HALT Käskyn suoritus: pysäytetään ohjelman suoritus. Määritelmä 6.4Rekisterikoneen ohjelma P on jono α 0,...,α k numeroituja käskyjä siten, että jokaisella n k pätee (i) käskyn α n numero on n; (ii) jos α n, on muotoa (3), niin l, l 0,...,l r k; (iii) α n on muotoa n HALT jos ja vain jos n = k. Jokaiseen ohjelmaan P liittyy luonnollisella tavalla vastaava proseduuri, eli ohjelman suoritus: suoritus aloitetaan tilanteesta, jossa rekisteri R 0 sisältää ohjelman syötteen w A, ja kaikki muut rekisterit R 1,...,R m sisältävät tyhjän sanan ε. (Viimeisen tarvittavan rekisterin indeksi m nähdään ohjelmasta.) Suoritus aloitetaan käskystä α 0, ja kunkin käskyn α l suorituksen jälkeen siirrytään käskyyn α l+1, paitsi jos α l on tyyppiä (3), ja sen suoritus määrää muun seuraavan käskyn. Jos suorituksessa päädytään käskyyn α k (eli käskyyn k HALT), ohjelman suoritus pysäytetään. Ohjelmissa on usein tarkoituksenmukaista käyttää hyppykäskyä (3 ) GOTO l : siirry käskyyn, jonka numero on l. Tämä on itse asiassa vain haarautumiskäskyn (3) erikoistapaus, jossa l = l = l 0 = = l r. Määritelmä 6.5Merkitsemme P : w, jos ohjelman P suoritus syötteellä w pysähtyy. Vastaavasti merkitsemme P : w, jos ohjelman P suoritus syötteellä w 54

6 ei pysähdy. Edelleen merkitsemme P : w u, jos ohjelman P suoritus syötteellä w pysähtyy, ja ennen pysähtymistään ohjelma P tulostaa tasan kerran, ja tulostettu sana on u. Sanomme taas, että ohjelma P hyväksyy syötteen w A,josP:w ε, ja ohjelma P hylkää syötteen w A,josP:w u jollain u = ε. Esimerkki 6.4 Olkoon A = {a} ja olkoon P seuraava ohjelma, jonka aakkosto on A: 0 IF R 0 = ε THEN 5 ELSE 1 1 LET R 0 = R 0 a 2 IF R 0 = ε THEN 6 ELSE 3 3 LET R 0 = R 0 a 4 GOTO 0 5 LET R 0 = R 0 + a 6 PRINT 7 HALT Kun ohjelman P suoritus aloitetaan syötteellä a n+2, missä n N, niin käskyn 0 suoritus johtaa käskyyn 1, jonka suoritus muuttaa rekisterin R 0 sisällöksi a n+1. Tämän jälkeen käskyn 2 suoritus johtaa käskyyn 3, jonka suoritus muuttaa R 0 :n sisällöksi a n.tämän jälkeen käsky 4 palauttaa ohjelman taas käskyyn 0. Syötteellä a 1 = a ohjelma puolestaan suorittaa ensin käskyt 0, 1, jonka jälkeen rekisterissä R 0 on ε, jakäsky 2 ohjaa suorituksen käskyyn 6. Käsky 6 tulostaa sanan ε, jakäsky 7 lopettaa ohjelman suorituksen. Siis P : a 1 ε. Toisaalta syötteellä a 0 = ε ohjelman suoritus hyppää käskystä 0 suoraan käskyyn 5, jonka jälkeen rekisterissä R 0 on a. Käsky 6 tulostaa sen jälkeen sanan a, ja käsky 7 pysäyttää ohjelman. Siis P : a 0 a. Nyt on helppo todistaa induktiolla, että P:a n ε kaikilla parittomilla n N ja P:a n a kaikilla parillisilla n N. Toisin sanoen P hyväksyy kaikki parittoman pituiset sanat w A ja hylkää kaikki parillisen pituiset sanat. Määritelmä 6.6Olkoon W A. (a) Ohjelma P ratkaisee joukon W, jos kaikilla w A pätee: P:w ε, josw W ; P:w u jollain u = ε, josw W. (b) Joukko W on R-ratkeava, jos on olemassa rekisteriohjelma, joka ratkaisee sen. Siis ohjelma P ratkaisee joukon W jos ja vain jos P hyväksyy kaikki sanat w W, ja hylkää kaikki sanat w W. Esimerkistä 6.4 seuraa, että joukko {a n n on pariton} {a} on R-ratkeava. Muuttamalla hieman tämän esimerkin ohjelmaa nähdään, että myös sen komplementtijoukko {a n n on parillinen} on R-ratkeava. 55

7 Määritelmä 6.7Olkoon W A. (a) Ohjelma P numeroi joukon W,josW = {u 0,u 1,u 2,...}, missä u 0,u 1,u 2,... ovat ne sanat, jotka ohjelma P tulostaa suorituksensa aikana syötteellä ε. (b) Joukko W on R-numeroituva, jos on olemassa ohjelma, joka numeroi sen. Esimerkki 6.5 Olkoon A = {a, b}, ja olkoon P seuraava aakkoston A ohjelma: 0 PRINT 1 LET R 0 = R 0 + a 2 LET R 0 = R 0 + b 4 GOTO 0 5 HALT On helppo nähdä, että syötteellä ε, ohjelma P ei koskaan pysähdy, ja se tulostaa vuoronperään sanat ε =(ab) 0, ab =(ab) 1, abab =(ab) 2,... Toisin sanoen P numeroi joukon W = {(ab) n n N}. Määritelmä 6.8Olkoot A ja B aakkostoja, ja F : A B funktio. (a) Ohjelma P, jonka aakkosto on A B, laskee funktion F, jos kaikilla w A pätee P : w F (w). (b) Funktio F on R-laskettava, jos on olemassa rekisteriohjelma, joka laskee sen. Esimerkki 6.6 Olkoon A = {a, b}, ja olkoon F : A A funktio, jolla F (w) = a n b m, missä n on symbolin a esiintymien määrä sanassa w, jam vastaavasti symbolin b esiintymien määrä. Osoitetaan, että F on R-laskettava. Määritellään ohjelma P, joka laskee funktion F seuraavasti: 0 IF R 0 = ε THEN 7 ELSE 1 OR 4 1 LET R 0 = R 0 a 2 LET R 1 = R 1 + a 3 GOTO 0 4 LET R 0 = R 0 b 5 LET R 2 = R 2 + b 6 GOTO 0 7 IF R 1 = ε THEN 11 ELSE 8 OR 8 8 LET R 1 = R 1 a 9 LET R 0 = R 0 + a 10 GOTO 7 11 IF R 2 = ε THEN 15 ELSE 12 OR LET R 2 = R 2 b 13 LET R 0 = R 0 + b 14 GOTO PRINT 16 HALT 56

8 Ohjelman käskyt 0-6 muodostavat luupin, jonka suorituksen aikana syötteenä olevan sanan w symbolit a siirretään rekisteriin R 1 ja symbolit b rekisteriin R 2. Käskyt 7-10 muodostavat toisen luupin, joka siirtää rekisterissä R 1 olevan sanan a n takaisin rekisteriin R 0. Samaan tapaan käskyt muodostavat luupin, joka siirtää tämän jälkeen sanan b m rekisteristä R 2 sanan a n jatkeeksi rekisteriin R 0. Lopuksi käsky 15 tulostaa sanan a n b m,jakäsky 16 pysäyttää ohjelman. Churchin teesi. On selvää, että jos joukko W A on R-ratkeava, se on myös ratkeava Määritelmän 6.1 mielessä, sillä rekisteriohjelman suoritus on selvästi mekaaninen proseduuri. Samoin nähdään, että jos joukko W on R-numeroituva, se on myös efektiivisesti numeroituva, ja jos funktio F : A B on R-laskettava, se on myös laskettava. Churchin teesi (rekisterikoneille) on väite, että myös käänteinen on voimassa: jos joukko W on ratkeava (efektiivisesti numeroituva), niin se on myös R-ratkeava (R-numeroituva), ja jos funktio F on laskettava, niin se on myös R-laskettava. Churchin teesiä ei voi todistaa oikeaksi, sillä mekaanisen proseduurin käsitteellä ei ole täsmällistä määritelmää. Toisaalta Churchin teesillä on vahva evidenssi: 1930-luvulta alkaen on esitetty lukuisia - hyvinkin erilaisia - matemaattisia määritelmiä mekaaniselle laskettavuudelle, mutta kaikki nämä määritelmät on todistettu keskenään yhtäpitäviksi. Rekisterikoneen ohella tunnetuimpia määritelmiä ovat rekursiiviset funktiot ja Turingin koneet. (Myös Alan Turing esitti vastaavan väitteen Turingin koneisiin liittyen; siksi usein käytetään myös termiä Churchin ja Turingin teesi.) Churchin teesi onkin yleisesti hyväksytty, ja sitä käytetään usein hyväksi seuraavaan tapaan: Kun pitää osoittaa, että annettu joukko W on R-ratkeava (tai funktio F on R-laskettava), kuvaillaan proseduuri, joka ratkaisee sen (laskee sen); sitten päätellään, että Churchin teesin nojalla W on R-ratkeava (F on R-laskettava). Esimerkki 6.7 Esimerkin 6.3 perusteella validien S-lauseiden joukko VAL S = {ϕ L 0 S = ϕ} on efektiivisesti numeroituva. Siis Churchin teesin nojalla VAL S on R-numeroituva. Pysähtymisongelma Kiinnitetään taas aakkosto A = {a 0,...,a r }. Esitämme tässä luvussa joukon Π halt A, joka ei ole R-ratkeava. Tämä joukko muodostuu rekisterikoneen ohjelmista, jotka on koodattu aakkoston A sanoiksi. Liitämme tätä varten jokaiseen ohjelmaan P, jonka aakkosto on A, sanan z P A. Ensin laajennetaan aakkosto A lisäämällä symbolit, joita tarvitaan ohjelmien kirjoittamiseen: B = A {A, B, C,..., X, Y, Z} {0, 1,...,8, 9} {=, +,,ε,}. 57

9 Järjestetään B leksikograafisesti käyttäen ylläolevan esityksen järjestystä joukossa B. Ohjelma P, joka käskyt ovat α 0,...,α k esitetään nyt aakkoston B sanana x P := v 0 v 1...v k, missä v l on sana, joka saadaan kirjoittamalla käskyn α l numero l ja sen perään käskyn muut symbolit peräkkäin (ilman välilyöntejä); alaindeksit kirjoitaan tavallisina numeroina. Esimerkiksi ohjelmaa P 0 PRINT 1 LET R 12 = R 12 + a 7 2 HALT vastaa sana x P = 0PRINT1LETR12=R12+a72HALT. Olkoon x P joukon B leksikograafisen järjestyksen mukaan n:s sana. Merkitsemme tällöin n P = n. Sana z P määritellään nyt seuraavasti: z P = a n P 0. Lukua n P sanotaan ohjelman P Gödel-luvuksi, ja sanaa z P sanotaan ohjelman koodiksi. Olkoon Π kaikkien ohjelmien koodien joukko: Π:={z P PonaakkostonA ohjelma}. Apulause 6.3 Joukko Π on R-ratkeava. Todistus. Osoitetaan, että on olemassa proseduuri P, joka ratkaisee joukon Π. Väite seuraa tällöin Churchin teesistä. Proseduuri P toimii seuraavasti: Olkoon syötteenä sana w A. Luetaan ensin sana w symboli kerrallaan; jos siitä löytyy symboli a i, jolla i 1, tulostetaan a i ja lopetetaan; muuten lasketaan sanan w = a n 0 pituus n. Määritetään aakkoston B leksikograafisessa järjestyksessä n:s sana x. Hajotetaan sana x jonoksi v 0,...,v k aakkoston B\{} sanoja, joilla pätee x = v 0 v 1...v k ;käydään vuoronperään läpi sanat v n, n k; jos v n ei ole jotain seuraavista tyypeistä, tulostetaan a 0, ja lopetetaan: (1) nletrs=rs+a i, missä s N ja i r (2) nletrs=rs a i, missä s N ja i r (3) nifrs=εthenlelsel 0 OR...ORl r, missä s N ja l, l 0...,l r k (4) nprint (5) nhalt; jos n<kja v n = nhalt, tai n = k ja v n = nhalt, tulostetaan a 0, ja lopetetaan; muuten tulostetaan ε, ja lopetetaan. Selvästi tämä proseduuri hylkää kaikki sanat w, jotka eivät ole joukossa Π ja hyväksyy kaikki sanat w Π. Pysähtymisongelma (aakkostolla A) on seuraava joukko: Π halt := {z P PonaakkostonA ohjelma ja P : ε }. Tavoitteenamme on osoittaa, että pysähtymisongelma on R-ratkeamaton. Intuitiivisesti tämä tarkoittaa sitä, että ei ole olemassa mekaanista menetelmää selvittää, pysähtyykö annettu (aakkoston A) ohjelma P syötteellä ε, vai ei. 58

10 Ennen varsinaista pysähtymisongelmaa tarkastelemme kuitenkin sen muunnelmaa, jossa tyhjän sanan ε paikalla on ohjelman P koodi z P : Π halt := {z P PonaakkostonA ohjelma ja P : z P }. Apulause 6.4 Joukko Π halt ei ole R-ratkeava. Todistus. Tehdään vastaoletus, että on olemassa ohjelma P 0, joka ratkaisee joukon Π halt.tällöin kaikilla ohjelmilla P pätee P 0 : z P ε, jos P : z P (1) P 0 : z P u jollain u = ε, jos P : z P. Muokkaamalla ohjelmaa P 0 sopivasti voidaan muodostaa ohjelma P 1, jolla pätee P 1 : z P, jos P : z P (2) P 1 : z P, jos P : z P. Nimittäin jos ohjelman P 0 käskyt ovat α 0,...,α k, niin ohjelma P 1 saadaan siitä korvaamalla jokainen 1 tulostuskäsky α l = l PRINT hyppykäskyllä α l : l IF R 0 = ε THEN l ELSE k OR... OR k. Nyt voidaan päätellä seuraavasti: Jos ohjelma P 0 hyväksyy syötteen w A, niin sen suoritus tulee täsmälleen yhden kerran johonkin tulostuskäskyyn α l,jatässä vaiheessa rekisterissä R 0 on tyhjä sana ε. Ohjelman P 1 suoritus syötteellä w etenee tähän asti täsmälleen samoin kuin ohjelman P 0 suoritus, mutta käskyn α l suorittaminen saa sen juuttumaan ikuiseen luuppiin (se toistaa käskyn α l suorittamista loputtomiin). Toisaalta jos ohjelma P 0 hylkää syötteen w, jokin sen tulostuskäskyistä α l tulostaa jossain vaiheessa epätyhjän sanan u A.Tällöin ohjelman P 1 käskyn α l suoritus johtaa pysähtymiskäskyyn α k. Siispä ohjelman P 1 suoritus syötteellä w pysähtyy jos ja vain jos ohjelma P 0 hylkää syötteen w. Ehdosta (1) seuraa nyt, että P 1 pysähtyy syötteellä z P jos ja vain jos P ei pysähdy syötteellä z P : kaikilla ohjelmilla P pätee (3) P 1 : z P P:z P. Erityisesti, kun P = P 1 saadaan (4) P 1 : z P1 P 1 : z P1, mikä on ristiriita. Siispä vastaoletus on väärä, eli joukko Π halt ei ole R-ratkeava. Pysähtymisongelman Π halt ratkeamattomuus todistetaan palauttamalla ongelma Π halt siihen. 1. ohjelmassa P 0 voi periaatteessa olla useitakin tulostuskäskyjä, vaikka intuitiivisesti on selvää, että yksiriittää. 59

11 Määritelmä 6.9Joukon U A palautus joukkoon V A on R-laskettava funktio F : A A, jolla pätee w U F (w) V kaikilla w A. Merkitsemme U V, jos on olemassa joukon U palautus joukkoon V. Apulause 6.5 Olkoot U, V A joukkoja, joilla U V. Jos V on R-ratkeava, niin myös U on R-ratkeava. Todistus. Olkoon F : A A joukon U palautus joukkoon V, ja olkoon P F ohjelma, joka laskee sen. Oletetaan edelleen, että P V on ohjelma, joka ratkaisee joukon V. Suorittamalla ensin ohjelma P F syötteellä w A, saadaan rekisteriin R 0 sana F (w). Kun tämän jälkeen suoritetaan ohjelma P V, sen laskenta pysähtyy, ja tulostaa sanan u A, missä u = ε joss F (w) V joss w U. Selvästi tämä on mekaaninen proseduuri, joka ratkaisee joukon U, joten Churchin teesin nojalla U on R-ratkeava. (Itse asiassa on suoraviivaista konstruoida ohjelmien P F ja P V yhdistetty ohjelma P F P V, joka toteuttaa tämän proseduurin.) Apulausetta 6.5 käytetään yleensä seuraavasti: Tavoitteena on todistaa, että annettu joukko V A ei ole R-ratkeava. Tällöin riittää osoittaa, että U V jollain tunnetulla joukolla U A, joka ei ole R-ratkeava. Lause 6.6 (Pysähtymisongelman ratkeamattomuus) Joukko Π halt ei ole R-ratkeava. Todistus. Riittää osoittaa, että Π halt Π halt. Palautus F : A A näiden joukkojen välillä määritellään seuraavasti: Jos w Π, asetetaan F (w) = w. Jos w Π eli w = z P jollain ohjelmalla P, niin muodostetaan ohjelma P +, jolla pätee ( ) P : z P P + : ε, ja asetetaan F (w) =z P +.Tällöin palautuksen määritelmän ehto w Π halt F (w) Π halt on selvästi voimassa. Ohjelma P + saadaan yksinkertaisesti lisäämällä ohjelman P alkuun käskyt l LET R 0 = R 0 + a 0, l<n P, ja muuttamalla ohjelman P käskyjen numerot ja hyppykäskyjen osoitteet vastaavasti lisäämällä niihin n P. Ohjelman P + ensimmäiset n P käskyä tuottavat rekisteriin R 0 syötteen ε paikalle syötteen z P. Sen jälkeen ohjelma P + simuloi täsmälleen ohjelman P toimintaa, joten ehto ( ) pätee. Lopuksi todetaan vielä, että F (w) voidaan laskea mekaanisella proseduurilla, sillä ehto w Π voidaan tarkistaa mekaanisesti Apulauseen 6.3 perusteella, ja ohjelma P + saadaan ohjelmasta P yksinkertaisella muunnoksella. Siispä F on R-laskettava Churchin teesin nojalla. 60

12 Pysähtymisongelma on siis R-ratkeamaton. Churchin teesin nojalla tämä voidaan tulkita niin, että ei ole olemassa mekaanista menetelmää tutkia, pysähtyykö annetun ohjelman P laskenta syötteellä ε. Toisaalta pysähtymisongelma on kuitenkin efektiivisesti numeroituva: Lause 6.7 Joukko Π halt on R-numeroituva. Todistus. Luennolla. (Churchin teesin avulla.) Seuraus 6.8 Joukko A \ Π halt ei ole R-numeroituva. Todistus. Väite seuraa siitä, että jos joukko W A ja sen komplementti A \W ovat molemmat R-numeroituvia, niin W on R-ratkeava (HT). 61

Luku 7. Ratkeamattomuus ja epätäydellisyys. Predikaattilogiikan ratkeamattomuus

Luku 7. Ratkeamattomuus ja epätäydellisyys. Predikaattilogiikan ratkeamattomuus 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ä

Lisätiedot

Pysähtymisongelman ratkeavuus [Sipser luku 4.2]

Pysähtymisongelman ratkeavuus [Sipser luku 4.2] Pysähtymisongelman ratkeavuus [Sipser luku 4.2] Osoitamme nyt vihdoin, että jotkin Turing-tunnistettavat kielet ovat ratkeamattomia ja jotkin kielet eivät ole edes Turing-tunnistettavia. Lisäksi toteamme,

Lisätiedot

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

Todistus: Aiemmin esitetyn mukaan jos A ja A ovat rekursiivisesti lueteltavia, niin A on rekursiivinen. Lause: Tyhjyysongelma ei ole osittain ratkeava; ts. kieli ei ole rekursiivisesti lueteltava. L e = { w { 0, 1 } L(M w ) = } Todistus: Aiemmin esitetyn mukaan jos A ja A ovat rekursiivisesti lueteltavia,

Lisätiedot

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016 ICS-C2000 Tietojenkäsittelyteoria Kevät 206 Kierros 0, 2. 24. maaliskuuta Huom! Perjantaina 25. maaliskuuta ei ole laskareita (pitkäperjantai), käykää vapaasti valitsemassanne ryhmässä aiemmin viikolla.

Lisätiedot

Rekursiiviset palautukset [HMU 9.3.1]

Rekursiiviset palautukset [HMU 9.3.1] Rekursiiviset palautukset [HMU 9.3.1] Yleisesti sanomme, että ongelma P voidaan palauttaa ongelmaan Q, jos mistä tahansa ongelmalle Q annetusta ratkaisualgoritmista voidaan jotenkin muodostaa ongelmalle

Lisätiedot

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

M = (Q, Σ, Γ, δ, q 0, q acc, q rej ) 6. LASKETTAVUUSTEORIAA Churchin Turingin teesi: Mielivaltainen (riittävän vahva) laskulaite Turingin kone. Laskettavuusteoria: Tarkastellaan mitä Turingin koneilla voi ja erityisesti mitä ei voi laskea.

Lisätiedot

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

on rekursiivisesti numeroituva, mutta ei rekursiivinen. 6.5 Turingin koneiden pysähtymisongelma Lause 6.9 Kieli H = { M pysähtyy syötteellä w} on rekursiivisesti numeroituva, mutta ei rekursiivinen. Todistus. Todetaan ensin, että kieli H on rekursiivisesti

Lisätiedot

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

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 10. joulukuuta 2015 TIETOTEKNIIKAN LAITOS. TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 10. joulukuuta 2015 Sisällys TM vs yleiset kieliopit Lause Jokaiselle kielelle A seuraavat ovat yhtäpitävät: 1.

Lisätiedot

TKT20005 Laskennan mallit (syksy 2018) Kurssikoe, malliratkaisut

TKT20005 Laskennan mallit (syksy 2018) Kurssikoe, malliratkaisut TKT20005 Laskennan mallit (syksy 2018) Kurssikoe, malliratkaisut Pisteytys on ilmoitettu välikoevaihtoehdon mukaan (joko tehtävät 1, 2 ja 3 välikokeen 1 uusintana tai tehtävät 4, 5 ja 6 välikokeen 2 uusintana).

Lisätiedot

2. Laskettavuusteoriaa

2. Laskettavuusteoriaa 2. Laskettavuusteoriaa Käymme läpi ratkeamattomuuteen liittyviä ja perustuloksia ja -tekniikoita [HMU luku 9]. Tämän luvun jälkeen opiskelija tuntee joukon keskeisiä ratkeamattomuustuloksia osaa esittää

Lisätiedot

Lisää pysähtymisaiheisia ongelmia

Lisää pysähtymisaiheisia ongelmia Lisää pysähtymisaiheisia ongelmia Lause: Pysähtymättömyysongelma H missä H = { w111x w validi koodi, M w ei pysähdy syötteellä x } ei ole rekursiivisesti lueteltava. Todistus: Pysähtymisongelman komplementti

Lisätiedot

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

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 6. maaliskuuta 2012 TIETOTEKNIIKAN LAITOS. TIEA241 Automaatit ja kieliopit, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 6. maaliskuuta 2012 Sisällys Sisällys Päätösongelmat Ongelma on päätösongelma (engl. decision problem), jos se on

Lisätiedot

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

Laskennan rajoja. TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 20. kesäkuuta 2013 TIETOTEKNIIKAN LAITOS. TIEA241 Automaatit ja kieliopit, kesä 2013 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 20. kesäkuuta 2013 Sisällys Päätösongelmat Ongelma on päätösongelma (engl. decision problem), jos se on muotoa Onko

Lisätiedot

Täydentäviä muistiinpanoja laskennan rajoista

Täydentäviä muistiinpanoja laskennan rajoista Täydentäviä muistiinpanoja laskennan rajoista Antti-Juhani Kaijanaho 10. joulukuuta 2015 1 Diagonaalikieli Diagonaalikieli on D = { k {0, 1} k L(M k ) }. Lause 1. Päätösongelma Onko k {0, 1} sellaisen

Lisätiedot

Vastaus 1. Lasketaan joukkojen alkiot, ja todetaan, että niitä on 3 molemmissa.

Vastaus 1. Lasketaan joukkojen alkiot, ja todetaan, että niitä on 3 molemmissa. Miten perustella, että joukossa A = {a, b, c} on yhtä monta alkiota kuin joukossa B = {d, e, f }? Vastaus 1. Lasketaan joukkojen alkiot, ja todetaan, että niitä on 3 molemmissa. Vastaus 2. Vertaillaan

Lisätiedot

Kielenä ilmaisten Hilbertin kymmenes ongelma on D = { p p on polynomi, jolla on kokonaislukujuuri }

Kielenä ilmaisten Hilbertin kymmenes ongelma on D = { p p on polynomi, jolla on kokonaislukujuuri } 135 4.3 Algoritmeista Churchin ja Turingin formuloinnit laskennalle syntyivät Hilbertin vuonna 1900 esittämän kymmenennen ongelman seurauksena Oleellisesti Hilbert pyysi algoritmia polynomin kokonaislukujuuren

Lisätiedot

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

Laskennan rajoja. Sisällys. Meta. Palataan torstaihin. Ratkeavuus. Meta. Universaalikoneet. Palataan torstaihin. Ratkeavuus. TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 17. lokakuuta 2016 Sisällys Harjoitustehtävätilastoa Tilanne 17.10.2016 klo 15:07 passed waiting redo submitters

Lisätiedot

Miten perustella, että joukossa A = {a, b, c} on yhtä monta alkiota kuin joukossa B = {d, e, f }?

Miten perustella, että joukossa A = {a, b, c} on yhtä monta alkiota kuin joukossa B = {d, e, f }? Miten perustella, että joukossa A = {a, b, c} on yhtä monta alkiota kuin joukossa B = {d, e, f }? Miten perustella, että joukossa A = {a, b, c} on yhtä monta alkiota kuin joukossa B = {d, e, f }? Vastaus

Lisätiedot

5.3 Ratkeavia ongelmia

5.3 Ratkeavia ongelmia 153 5.3 Ratkeavia ongelmia Deterministisen äärellisten automaattien (DFA) hyväksymisongelma: hyväksyykö annettu automaatti B merkkijonon w? Ongelmaa vastaava formaali kieli on A DFA = { B, w B on DFA,

Lisätiedot

4. Tehtävässä halutaan todistaa seuraava ongelma ratkeamattomaksi:

4. Tehtävässä halutaan todistaa seuraava ongelma ratkeamattomaksi: T-79.148 Kevät 2004 Tietojenkäsittelyteorian perusteet Harjoitus 12 Demonstraatiotehtävien ratkaisut 4. Tehtävässä halutaan todistaa seuraava ongelma ratkeamattomaksi: Hyväksyykö annettu Turingin kone

Lisätiedot

Miten osoitetaan joukot samoiksi?

Miten osoitetaan joukot samoiksi? Miten osoitetaan joukot samoiksi? Määritelmä 1 Joukot A ja B ovat samat, jos A B ja B A. Tällöin merkitään A = B. Kun todistetaan, että A = B, on päättelyssä kaksi vaihetta: (i) osoitetaan, että A B, ts.

Lisätiedot

2. Laskettavuusteoriaa

2. Laskettavuusteoriaa 2. Laskettavuusteoriaa Kaymme lapi ratkeamattomuuteen liittyvia ja perustuloksia ja -tekniikoita [HMU luku 9]. Taman luvun jalkeen opiskelija tuntee joukon keskeisia ratkeamattomuustuloksia osaa esittaa

Lisätiedot

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

Vaihtoehtoinen tapa määritellä funktioita f : N R on Rekursio Funktio f : N R määritellään yleensä antamalla lauseke funktion arvolle f (n). Vaihtoehtoinen tapa määritellä funktioita f : N R on käyttää rekursiota: 1 (Alkuarvot) Ilmoitetaan funktion arvot

Lisätiedot

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

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

Lisätiedot

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

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä Rekursiolause Laskennan teorian opintopiiri Sebastian Björkqvist 23. helmikuuta 2014 Tiivistelmä Työssä käydään läpi itsereplikoituvien ohjelmien toimintaa sekä esitetään ja todistetaan rekursiolause,

Lisätiedot

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

Turingin koneet. Sisällys. Aluksi. Turingin koneet. Turingin teesi. Aluksi. Turingin koneet. Turingin teesi TIEA241 Automaatit ja kieliopit, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 17. kesäkuuta 2013 Sisällys Chomskyn hierarkia (ja vähän muutakin) kieli säännöllinen LL(k) LR(1) kontekstiton kontekstinen

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2016-2017 ari.vesanen (at) oulu.fi 5. Rekursio ja induktio Rekursio tarkoittaa jonkin asian määrittelyä itseensä viittaamalla Tietojenkäsittelyssä algoritmin määrittely niin,

Lisätiedot

(0 1) 010(0 1) Koska kieli on yksinkertainen, muodostetaan sen tunnistava epädeterministinen q 0 q 1 q 2 q3

(0 1) 010(0 1) Koska kieli on yksinkertainen, muodostetaan sen tunnistava epädeterministinen q 0 q 1 q 2 q3 T-79.48 Tietojenkäsittelyteorian perusteet Tentti 25..23 mallivastaukset. Tehtävä: Kuvaa seuraavat kielet sekä säännölisten lausekkeiden että determinististen äärellisten automaattien avulla: (a) L = {w

Lisätiedot

Laskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja

Laskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja 581336 Laskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja 1. S! axc X! axc X! by c Y! by c Y! " 2. (a) Tehtävänä on konstruoida rajoittamaton kielioppi, joka tuottaa kielen f0 n 1 n jn 1g. Vaihe1: alkutilanteen

Lisätiedot

Johdatus matemaattiseen päättelyyn

Johdatus matemaattiseen päättelyyn Johdatus matemaattiseen päättelyyn Maarit Järvenpää Oulun yliopisto Matemaattisten tieteiden laitos Syyslukukausi 2015 1 Merkintöjä 2 Todistamisesta 2 3 Joukko-oppia Tässä luvussa tarkastellaan joukko-opin

Lisätiedot

Output. Input Automaton

Output. Input Automaton 16 Aakkostot, merkkijonot ja kielet Automaattiteoria diskreetin signaalinkäsittelyn perusmallit ja -menetelmät ( diskreettien I/O-kuvausten yleinen teoria) 1011 Input Automaton Output Automaatin käsite

Lisätiedot

Todistusmenetelmiä Miksi pitää todistaa?

Todistusmenetelmiä Miksi pitää todistaa? Todistusmenetelmiä Miksi pitää todistaa? LUKUTEORIA JA TO- DISTAMINEN, MAA11 Todistus on looginen päättelyketju, jossa oletuksista, määritelmistä, aksioomeista sekä aiemmin todistetuista tuloksista lähtien

Lisätiedot

Laskennan mallit (syksy 2009) Harjoitus 11, ratkaisuja

Laskennan mallit (syksy 2009) Harjoitus 11, ratkaisuja 582206 Laskennan mallit (syksy 2009) Harjoitus 11, ratkaisuja 1. Seuraavissa laskennoissa tilat on numeroitu sarakkeittain ylhäältä alas jättäen kuitenkin hyväksyvä tila välistä. Turingin koneen laskenta

Lisätiedot

Luonnollisen päättelyn luotettavuus

Luonnollisen päättelyn luotettavuus Luonnollisen päättelyn luotettavuus Luotettavuuden todistamiseksi määrittelemme täsmällisesti, milloin merkkijono on deduktio. Tässä ei ole sisällytetty päättelysääntöihin iteraatiosääntöä, koska sitä

Lisätiedot

2.1. Tehtävänä on osoittaa induktiolla, että kaikille n N pätee n = 1 n(n + 1). (1)

2.1. Tehtävänä on osoittaa induktiolla, että kaikille n N pätee n = 1 n(n + 1). (1) Approbatur 3, demo, ratkaisut Sovitaan, että 0 ei ole luonnollinen luku. Tällöin oletusta n 0 ei tarvitse toistaa alla olevissa ratkaisuissa. Se, pidetäänkö nollaa luonnollisena lukuna vai ei, vaihtelee

Lisätiedot

Säännöllisen kielen tunnistavat Turingin koneet

Säännöllisen kielen tunnistavat Turingin koneet 186 Säännöllisen kielen tunnistavat Turingin koneet Myös säännöllisen kielen hyväksyvien Turingin koneiden tunnistaminen voidaan osoittaa ratkeamattomaksi palauttamalla universaalikielen tunnistaminen

Lisätiedot

Johdatus matematiikkaan

Johdatus matematiikkaan Johdatus matematiikkaan Luento 7 Mikko Salo 11.9.2017 Sisältö 1. Funktioista 2. Joukkojen mahtavuus Funktioista Lukiomatematiikassa on käsitelty reaalimuuttujan funktioita (polynomi / trigonometriset /

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 29. toukokuuta 2013 TIEA241 Automaatit ja kieliopit, kesä 2013 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 29. toukokuuta 2013 Sisällys Chomskyn hierarkia (ja muutakin) kieli LL(k) LR(1) kontekstiton kontekstinen rekursiivisesti

Lisätiedot

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

vaihtoehtoja TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho 13. lokakuuta 2016 TIETOTEKNIIKAN LAITOS TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 13. lokakuuta 2016 Sisällys Harjoitustehtävätilastoa Tilanne 13.10.2016 klo 9:42 passed waiting redo submitters

Lisätiedot

Chomskyn hierarkia ja yhteysherkät kieliopit

Chomskyn hierarkia ja yhteysherkät kieliopit Chomskyn hierarkia ja yhteysherkät kieliopit Laskennan teorian opintopiiri Tuomas Hakoniemi 21. helmikuuta 2014 Käsittelen tässä laskennan teorian opintopiirin harjoitustyössäni muodollisten kielioppien

Lisätiedot

a k+1 = 2a k + 1 = 2(2 k 1) + 1 = 2 k+1 1. xxxxxx xxxxxx xxxxxx xxxxxx

a k+1 = 2a k + 1 = 2(2 k 1) + 1 = 2 k+1 1. xxxxxx xxxxxx xxxxxx xxxxxx x x x x x x x x Matematiikan johdantokurssi, syksy 08 Harjoitus, ratkaisuista Hanoin tornit -ongelma: Tarkastellaan kolmea pylvästä A, B ja C, joihin voidaan pinota erikokoisia renkaita Lähtötilanteessa

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 8. maaliskuuta 2012 TIEA241 Automaatit ja kieliopit, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. maaliskuuta 2012 Sisällys Ongelma-analyysiä Sisällys Ongelma-analyysiä Hypoteettinen ongelma The Elite Bugbusters

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 31. maaliskuuta 2011 TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 31. maaliskuuta 2011 Sisällys Sisällys Chomskyn hierarkia kieli säännöllinen kontekstiton kontekstinen rekursiivisesti

Lisätiedot

1 sup- ja inf-esimerkkejä

1 sup- ja inf-esimerkkejä Alla olevat kohdat (erityisesti todistukset) ovat lähinnä oheislukemista reaaliluvuista, mutta joihinkin niistä palataan myöhemmin kurssilla. 1 sup- ja inf-esimerkkejä Nollakohdan olemassaolo. Kaikki tuntevat

Lisätiedot

1 sup- ja inf-esimerkkejä

1 sup- ja inf-esimerkkejä Alla olevat kohdat (erityisesti todistukset) ovat lähinnä oheislukemista reaaliluvuista, mutta joihinkin niistä palataan myöhemmin kurssilla. 1 sup- ja inf-esimerkkejä Kaarenpituus. Olkoon r: [a, b] R

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 16. marraskuuta 2015 ja ja TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho NFA:ksi TIETOTEKNIIKAN LAITOS 16. marraskuuta 2015 Sisällys ja NFA:ksi NFA:ksi Kohti säännöllisiä lausekkeita ja Nämä tiedetään:

Lisätiedot

Rajoittamattomat kieliopit (Unrestricted Grammars)

Rajoittamattomat kieliopit (Unrestricted Grammars) Rajoittamattomat kieliopit (Unrestricted Grammars) Laura Pesola Laskennanteorian opintopiiri 13.2.2013 Formaalit kieliopit Sisältävät aina Säännöt (esim. A -> B C abc) Muuttujat (A, B, C, S) Aloitussymboli

Lisätiedot

Algoritmin määritelmä [Sipser luku 3.3]

Algoritmin määritelmä [Sipser luku 3.3] Algoritmin määritelmä [Sipser luku 3.3] Mitä algoritmilla yleensä tarkoitetaan periaatteessa: yksiselitteisesti kuvattu jono (tietojenkäsittely)operaatioita, jotka voidaan toteuttaa mekaanisesti käytännössä:

Lisätiedot

Johdatus diskreettiin matematiikkaan (syksy 2009) Harjoitus 3, ratkaisuja Janne Korhonen

Johdatus diskreettiin matematiikkaan (syksy 2009) Harjoitus 3, ratkaisuja Janne Korhonen Johdatus diskreettiin matematiikkaan (syksy 009) Harjoitus 3, ratkaisuja Janne Korhonen 1. Väite: Funktio f : [, ) [1, ), missä on bijektio. f(x) = x + 4x + 5, Todistus: Luentomateriaalissa todistettujen

Lisätiedot

6.5 Turingin koneiden pysähtymisongelma Lause 6.9 Kieli. H = {c M w M pysähtyy syötteellä w}

6.5 Turingin koneiden pysähtymisongelma Lause 6.9 Kieli. H = {c M w M pysähtyy syötteellä w} 6.5 Turingin koneiden pysähtymisongelma Lause 6.9 Kieli H = {c w pysähtyy syötteellä w} on rekursiivisesti numeroituva, mutta ei rekursiivinen. Todistus. Todetaan ensin, että kieli H on rekursiivisesti

Lisätiedot

Seuraus 4.2 Kaavajoukko Φ on ristiriidaton jos ja vain jos on olemassa kaava ϕ, jolla Φ ϕ.

Seuraus 4.2 Kaavajoukko Φ on ristiriidaton jos ja vain jos on olemassa kaava ϕ, jolla Φ ϕ. Luku 4 Täydellisyyslause Ristiriidattomuus ja toteutuvuus Määritelmä 4.1Olkoon Φ L S kaavajoukko. (a) Φ on ristiriidaton eli konsistentti, Con(Φ), jos ei ole olemassa kaavaa ϕ, jolla Φ ϕ ja Φ ϕ. (b) Φ

Lisätiedot

Ensimmäinen induktioperiaate

Ensimmäinen induktioperiaate Ensimmäinen induktioperiaate Olkoon P(n) luonnollisilla luvuilla määritelty predikaatti. (P(n) voidaan lukea luvulla n on ominaisuus P.) Todistettava, että P(n) on tosi jokaisella n N. ( Kaikilla luonnollisilla

Lisätiedot

a ord 13 (a)

a ord 13 (a) JOHDATUS LUKUTEORIAAN (syksy 2017) HARJOITUS 4, MALLIRATKAISUT Tehtävä 1. Etsi asteet ord p (a) luvuille a 1, 2,..., p 1 kun p = 13 ja kun p = 17. (ii) Mitkä jäännösluokat ovat primitiivisiä juuria (mod

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 12. lokakuuta 2016 ja ja TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 12. lokakuuta 2016 Sisällys ja ja Vuosi on 1936, eikä tietokoneita ollut. Computer oli ammattinimike. http://www.nasa.gov/centers/dryden/

Lisätiedot

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

Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna. q 0 x solmuina laskennan mahdolliset tilanteet juurena alkutilanne lehtinä tilanteet joista ei siirtymää,

Lisätiedot

isomeerejä yhteensä yhdeksän kappaletta.

isomeerejä yhteensä yhdeksän kappaletta. Tehtävä 2 : 1 Esitetään aluksi eräitä havaintoja. Jokaisella n Z + symbolilla H (n) merkitään kaikkien niiden verkkojen joukkoa, jotka vastaavat jotakin tehtävänannon ehtojen mukaista alkaanin hiiliketjua

Lisätiedot

Ensimmäinen induktioperiaate

Ensimmäinen induktioperiaate 1 Ensimmäinen induktioperiaate Olkoon P(n) luonnollisilla luvuilla määritelty predikaatti. (P(n) voidaan lukea luvulla n on ominaisuus P.) Todistettava, että P(n) on tosi jokaisella n N. ( Kaikilla luonnollisilla

Lisätiedot

(iv) Ratkaisu 1. Sovelletaan Eukleideen algoritmia osoittajaan ja nimittäjään. (i) 7 = , 7 6 = = =

(iv) Ratkaisu 1. Sovelletaan Eukleideen algoritmia osoittajaan ja nimittäjään. (i) 7 = , 7 6 = = = JOHDATUS LUKUTEORIAAN (syksy 07) HARJOITUS 7, MALLIRATKAISUT Tehtävä Etsi seuraavien rationaalilukujen ketjumurtokehitelmät: (i) 7 6 (ii) 4 7 (iii) 65 74 (iv) 63 74 Ratkaisu Sovelletaan Eukleideen algoritmia

Lisätiedot

Lukuteoria. Eukleides Aleksandrialainen (n. 300 eaa)

Lukuteoria. Eukleides Aleksandrialainen (n. 300 eaa) Lukuteoria Lukuteoria on eräs vanhimmista matematiikan aloista. On sanottu, että siinä missä matematiikka on tieteiden kuningatar, on lukuteoria matematiikan kuningatar. Perehdymme seuraavassa luonnollisten

Lisätiedot

Predikaattilogiikan malli-teoreettinen semantiikka

Predikaattilogiikan malli-teoreettinen semantiikka Predikaattilogiikan malli-teoreettinen semantiikka February 4, 2013 Muistamme, että predikaattilogiikassa aakkosto L koostuu yksilövakioista c 0, c 1, c 2,... ja predikaattisymboleista P, R,... jne. Ekstensionaalisia

Lisätiedot

Turingin koneen laajennuksia

Turingin koneen laajennuksia Turingin koneen laajennuksia Turingin koneen määritelmään voidaan tehdä erilaisia muutoksia siten että edelleen voidaan tunnistaa tasan sama luokka kieliä. Moniuraiset Turingin koneet: nauha jakautuu k

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 5. marraskuuta 2015 TIEA24 Automaatit ja kieliopit, syksy 205 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 5. marraskuuta 205 Sisällys Käsiteanalyysiä Tarkastellaan koodilukkoa äärellisenä automaattina. Deterministinen äärellinen

Lisätiedot

Kanta ja dimensio 1 / 23

Kanta ja dimensio 1 / 23 1 / 23 Kuten ollaan huomattu, saman aliavaruuden voi virittää eri määrä vektoreita. Seuraavaksi määritellään mahdollisimman pieni vektorijoukko, joka virittää aliavaruuden. Jokainen aliavaruuden alkio

Lisätiedot

Ongelma(t): Mikä on Turingin kone? Miten Turingin kone liittyy funktioihin ja algoritmeihin? Miten Turingin kone liittyy tietokoneisiin?

Ongelma(t): Mikä on Turingin kone? Miten Turingin kone liittyy funktioihin ja algoritmeihin? Miten Turingin kone liittyy tietokoneisiin? Ongelma(t): Mikä on Turingin kone? Miten Turingin kone liittyy funktioihin ja algoritmeihin? Miten Turingin kone liittyy tietokoneisiin? 2013-2014 Lasse Lensu 2 Algoritmit ovat deterministisiä toimintaohjeita

Lisätiedot

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.

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. Approbatur 3, demo 1, ratkaisut 1.1. A sanoo: Vähintään yksi meistä on retku. Tehtävänä on päätellä, mitä tyyppiä A ja B ovat. Käydään kaikki vaihtoehdot läpi. Jos A on rehti, niin B on retku, koska muuten

Lisätiedot

3SAT-ongelman NP-täydellisyys [HMU ]

3SAT-ongelman NP-täydellisyys [HMU ] 3SAT-ongelman NP-täydellisyys [HMU 10.3.4] erotukseksi yleisestä CNF-esityksestä, kaikilla kaavoilla ei ole 3-CNF-esitystä; esim. x 1 x 2 x 3 x 4 esitämme muunnoksen, jolla polynomisessa ajassa mielivaltaisesta

Lisätiedot

Muita vaativuusluokkia

Muita vaativuusluokkia Muita vaativuusluokkia Käydään lyhyesti läpi tärkeimpiä vaativuusluokkiin liittyviä tuloksia. Monet tunnetuista tuloksista ovat vaikeita todistaa, ja monet kysymykset ovat vielä auki. Lause (Ladner 1975):

Lisätiedot

Vastaoletuksen muodostaminen

Vastaoletuksen muodostaminen Vastaoletuksen muodostaminen Vastaoletus (Antiteesi) on väitteen negaatio. Sitä muodostettaessa on mietittävä, mitä tarkoittaa, että väite ei ole totta. Väite ja vastaoletus yhdessä sisältävät kaikki mahdolliset

Lisätiedot

Matematiikan tukikurssi, kurssikerta 1

Matematiikan tukikurssi, kurssikerta 1 Matematiikan tukikurssi, kurssikerta 1 1 Joukko-oppia Matematiikassa joukko on mikä tahansa kokoelma objekteja. Esimerkiksi joukkoa A, jonka jäseniä ovat numerot 1, 2 ja 5 merkitään A = {1, 2, 5}. Joukon

Lisätiedot

Avaruuden R n aliavaruus

Avaruuden R n aliavaruus Avaruuden R n aliavaruus 1 / 41 Aliavaruus Esimerkki 1 Kuva: Suora on suljettu yhteenlaskun ja skalaarilla kertomisen suhteen. 2 / 41 Esimerkki 2 Kuva: Suora ei ole suljettu yhteenlaskun ja skalaarilla

Lisätiedot

Kaikki kurssin laskuharjoitukset pidetään Exactumin salissa C123. Malliratkaisut tulevat nettiin kurssisivulle.

Kaikki kurssin laskuharjoitukset pidetään Exactumin salissa C123. Malliratkaisut tulevat nettiin kurssisivulle. Kombinatoriikka, kesä 2010 Harjoitus 1 Ratkaisuehdotuksia (RT (5 sivua Kaikki kurssin laskuharjoitukset pidetään Exactumin salissa C123. Malliratkaisut tulevat nettiin kurssisivulle. 1. Osoita, että vuoden

Lisätiedot

1 Lukujen jaollisuudesta

1 Lukujen jaollisuudesta Matematiikan mestariluokka, syksy 2009 1 1 Lukujen jaollisuudesta Lukujoukoille käytetään seuraavia merkintöjä: N = {1, 2, 3, 4,... } Luonnolliset luvut Z = {..., 2, 1, 0, 1, 2,... } Kokonaisluvut Kun

Lisätiedot

Esitetään tehtävälle kaksi hieman erilaista ratkaisua. Ratkaisutapa 1. Lähdetään sieventämään epäyhtälön vasenta puolta:

Esitetään tehtävälle kaksi hieman erilaista ratkaisua. Ratkaisutapa 1. Lähdetään sieventämään epäyhtälön vasenta puolta: MATP00 Johdatus matematiikkaan Ylimääräisten tehtävien ratkaisuehdotuksia. Osoita, että 00 002 < 000 000. Esitetään tehtävälle kaksi hieman erilaista ratkaisua. Ratkaisutapa. Lähdetään sieventämään epäyhtälön

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 19. syyskuuta 2016 TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 19. syyskuuta 2016 Sisällys Neuvoja opintoihin tee joka päivä ainakin vähän uskalla mennä epämukavuusalueelle en

Lisätiedot

Johdatus matemaattiseen päättelyyn

Johdatus matemaattiseen päättelyyn Johdatus matemaattiseen päättelyyn Maarit Järvenpää Oulun yliopisto Matemaattisten tieteiden laitos Syyslukukausi 2015 1 Merkintöjä Luonnollisten lukujen joukko N on joukko N = {1, 2, 3,...} ja kokonaislukujen

Lisätiedot

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

Testaa: Vertaa pinon merkkijono syötteeseen merkki kerrallaan. Jos löytyy ero, hylkää. Jos pino tyhjenee samaan aikaan, kun syöte loppuu, niin Yhteydettömien kielioppien ja pinoautomaattien yhteys [Sipser s. 117 124] Todistamme, että yhteydettömien kielioppien tuottamat kielet ovat tasan samat kuin ne, jotka voidaan tunnistaa pinoautomaatilla.

Lisätiedot

Analyysi III. Jari Taskinen. 28. syyskuuta Luku 1

Analyysi III. Jari Taskinen. 28. syyskuuta Luku 1 Analyysi III Jari Taskinen 28. syyskuuta 2002 Luku Sisältö Sarjat 2. Lukujonoista........................... 2.2 Rekursiivisesti määritellyt lukujonot.............. 8.3 Sarja ja sen suppenminen....................

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 22. toukokuuta 2013 TIEA24 Automaatit ja kieliopit, kesä 3 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 22. toukokuuta 3 Sisällys Äärellisiä automaatteja ON PUSH PUSH OFF Q T J Q C C H S C,Q C,Q 0 40 60 80 00, 70 90 Deterministinen

Lisätiedot

Johdatus matemaattiseen päättelyyn (5 op)

Johdatus matemaattiseen päättelyyn (5 op) Johdatus matemaattiseen päättelyyn (5 op) Tero Vedenjuoksu Oulun yliopisto Matemaattisten tieteiden laitos 2014 Johdatus matemaattiseen päättelyyn 2014 Yhteystiedot: Tero Vedenjuoksu tero.vedenjuoksu@oulu.fi

Lisätiedot

1. Esitä rekursiivinen määritelmä lukujonolle

1. Esitä rekursiivinen määritelmä lukujonolle Matematiikan laitos Johdatus Diskrettiin Matematiikkaan Harjoitus 4 24.11.2011 Ratkaisuehdotuksia Aleksandr Pasharin 1. Esitä rekursiivinen määritelmä lukujonolle (a) f(n) = (2 0, 2 1, 2 2, 2 3, 2 4,...)

Lisätiedot

ongelma A voidaan ratkaista ongelman B avulla, joten jossain mielessä

ongelma A voidaan ratkaista ongelman B avulla, joten jossain mielessä Edellä esitetyt kielten A TM ja HALT TM ratkeamattomuustodistukset ovat esimerkkejä palautuksesta (reduction). Intuitiivisesti ongelman A palauttaminen ongelmaan B tarkoittaa, että Oletetaan, että meillä

Lisätiedot

Onko kuvaukset injektioita? Ovatko ne surjektioita? Bijektioita?

Onko kuvaukset injektioita? Ovatko ne surjektioita? Bijektioita? Matematiikkaa kaikille, kesä 2017 Avoin yliopisto Luentojen 2,4 ja 6 tehtäviä Päivittyy kurssin aikana 1. Olkoon A = {0, 1, 2}, B = {1, 2, 3} ja C = {2, 3, 4}. Luettele joukkojen A B, A B, A B ja (A B)

Lisätiedot

(1) refleksiivinen, (2) symmetrinen ja (3) transitiivinen.

(1) refleksiivinen, (2) symmetrinen ja (3) transitiivinen. Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus. Tietyn ominaisuuden samuus -relaatio on ekvivalenssi; se on (1) refleksiivinen,

Lisätiedot

Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus.

Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus. Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus. Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2018-2019 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen

Lisätiedot

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

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 12. tammikuuta 2012 TIEA241 Automaatit ja kieliopit, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 12. tammikuuta 2012 Sisällys Sisällys Äärellisiä automaatteja PUSH ON PUSH OFF Q T Q J C C H S C,Q C,Q 0 50s 1e

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2016-2017 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen

Lisätiedot

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

Johdatus diskreettiin matematiikkaan Harjoitus 2, Osoita että A on hyvin määritelty. Tee tämä osoittamalla Johdatus diskreettiin matematiikkaan Harjoitus 2, 23.9.2015 1. Osoita että A on hyvin määritelty. Tee tämä osoittamalla a) että ei ole olemassa surjektiota f : {1,, n} {1,, m}, kun n < m. b) että a) kohdasta

Lisätiedot

Luku 5. Löwenheimin ja Skolemin lause. kompaktisuuslause. Tässä luvussa tutustumme tärkeimpiin täydellisyyslauseen (ja sen todistuksen) seurauksiin.

Luku 5. Löwenheimin ja Skolemin lause. kompaktisuuslause. Tässä luvussa tutustumme tärkeimpiin täydellisyyslauseen (ja sen todistuksen) seurauksiin. Luku 5 Löwenheimin ja Skolemin lause, kompaktisuuslause Tässä luvussa tutustumme tärkeimpiin täydellisyyslauseen (ja sen todistuksen) seurauksiin. Löwenheimin ja Skolemin lause Sanomme, että kaavajoukko

Lisätiedot

Laskennan teoria

Laskennan teoria 581336-0 Laskennan teoria luennot syyslukukaudella 2003 Jyrki Kivinen tietojenkäsittelytieteen laudatur-kurssi, 3 ov pakollinen tietojenkäsittelytieteen suuntautumisvaihtoehdossa esitiedot käytännössä

Lisätiedot

(2n 1) = n 2

(2n 1) = n 2 3.5 Induktiotodistus Induktiota käyttäen voidaan todistaa luonnollisia lukuja koskevia väitteitä, jotka ovat muotoa väite P (n) on totta kaikille n =0, 1, 2,... Tässä väite P (n) riippuu n:n arvosta. Todistuksessa

Lisätiedot

Ratkaisu: a) Kahden joukon yhdisteseen poimitaan kaikki alkiot jotka ovat jommassakummassa joukossa (eikä mitään muuta).

Ratkaisu: a) Kahden joukon yhdisteseen poimitaan kaikki alkiot jotka ovat jommassakummassa joukossa (eikä mitään muuta). Matematiikan laitos Johdatus Diskreettiin Matematiikaan Harjoitus 1 03.11.2010 Ratkaisuehdotuksia Aleksandr Nuija 1. Tarkastellaan joukkoja A = {1,3,4}, B = {2,3,7,9} ja C = {2, 5, 7}. Määritä joukot (a)

Lisätiedot

Äärellisten automaattien ja säännöllisten kielten ekvivalenssi

Äärellisten automaattien ja säännöllisten kielten ekvivalenssi Äärellisten automaattien ja säännöllisten kielten ekvivalenssi Osoitamme seuraavan keskeisen tuloksen: Lause 1.8: [Sipser Thm. 1.54] Kieli on säännöllinen, jos ja vain jos jokin säännöllinen lauseke esittää

Lisätiedot

Chomskyn hierarkia. tyyppi 0 on juuri esitelty (ja esitellään kohta lisää) tyypit 2 ja 3 kurssilla Ohjelmoinnin ja laskennan perusmallit

Chomskyn hierarkia. tyyppi 0 on juuri esitelty (ja esitellään kohta lisää) tyypit 2 ja 3 kurssilla Ohjelmoinnin ja laskennan perusmallit Chomskyn hierarkia Noam Chomskyn vuonna 1956 esittämä luokittelu kieliopeille niiden ilmaisuvoiman mukaan tyyppi kieli kielioppi tunnistaminen 0 rekurs. lueteltava rajoittamaton Turingin kone 1 kontekstinen

Lisätiedot

Topologia Syksy 2010 Harjoitus 4. (1) Keksi funktio f ja suljetut välit A i R 1, i = 1, 2,... siten, että f : R 1 R 1, f Ai on jatkuva jokaisella i N,

Topologia Syksy 2010 Harjoitus 4. (1) Keksi funktio f ja suljetut välit A i R 1, i = 1, 2,... siten, että f : R 1 R 1, f Ai on jatkuva jokaisella i N, Topologia Syksy 2010 Harjoitus 4 (1) Keksi funktio f ja suljetut välit A i R 1, i = 1, 2,... siten, että f : R 1 R 1, f Ai on jatkuva jokaisella i N, i=1 A i = R 1, ja f : R 1 R 1 ei ole jatkuva. Lause

Lisätiedot

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

9.5. Turingin kone. Turingin koneen ohjeet. Turingin kone on järjestetty seitsikko 9.5. Turingin kone Turingin kone on järjestetty seitsikko TM = (S, I, Γ, O, B, s 0, H), missä S on tilojen joukko, I on syöttöaakkosto, Γ on nauha-aakkosto, I Γ, O on äärellinen ohjeiden joukko, O S Γ

Lisätiedot

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

Turingin koneet. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 7. joulukuuta 2015 TIETOTEKNIIKAN LAITOS. TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 7. joulukuuta 2015 Sisällys Vuosi on 1936, eikä tietokoneita ollut. Computer oli ammattinimike. http://www.nasa.gov/centers/dryden/

Lisätiedot

6. Tekijäryhmät ja aliryhmät

6. Tekijäryhmät ja aliryhmät 6. Tekijäryhmät ja aliryhmät Tämän luvun tavoitteena on esitellä konstruktio, jota kutsutaan tekijäryhmän muodostamiseksi. Konstruktiossa lähdetään liikkeelle jostakin isosta ryhmästä, samastetaan alkioita,

Lisätiedot

Injektio. Funktiota sanotaan injektioksi, mikäli lähtöjoukon eri alkiot kuvautuvat maalijoukon eri alkioille. Esim.

Injektio. Funktiota sanotaan injektioksi, mikäli lähtöjoukon eri alkiot kuvautuvat maalijoukon eri alkioille. Esim. Injektio Funktiota sanotaan injektioksi, mikäli lähtöjoukon eri alkiot kuvautuvat maalijoukon eri alkioille. Esim. Funktio f on siis injektio mikäli ehdosta f (x 1 ) = f (x 2 ) seuraa, että x 1 = x 2.

Lisätiedot

a) Mitkä seuraavista ovat samassa ekvivalenssiluokassa kuin (3, 8), eli kuuluvat joukkoon

a) Mitkä seuraavista ovat samassa ekvivalenssiluokassa kuin (3, 8), eli kuuluvat joukkoon Matematiikan johdantokurssi, syksy 08 Harjoitus 3, ratkaisuista. Kokonaisluvut määriteltiin luonnollisten lukujen avulla ekvivalenssiluokkina [a, b], jotka määrää (jo demoissa ekvivalenssirelaatioksi osoitettu)

Lisätiedot