Luokan P loogisesta karakterisoinnista
|
|
- Harri Väänänen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Luokan P loogisesta karakterisoinnista Janne Korhonen Pro Gradu 18. marraskuuta 2009 Helsingin yliopisto Matematiikan ja tilastotieteen laitos
2 HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta Fakultet Faculty Laitos Institution Department Matemaattis-luonnontieteellinen tiedekunta Matematiikan ja tilastotieteen laitos Tekijä Författare Author Korhonen, Janne Työn nimi Arbetets titel Title Luokan P loogisesta karakterisoinnista Oppiaine Läroämne Subject Matematiikka Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages Pro gradu Marraskuu Tiivistelmä Referat Abstract Deskriptiivisessä vaativuusteoriassa tutkitaan laskennan vaativuuteen liittyviä kysymyksiä logiikan työkalujen avulla. Tällöin käsitellään tilannetta, jossa laskennan syötteenä toimivat äärelliset mallit. Tässä kehyksessä erinäisiä vaativuusluokkia voidaan karakterisoida etsimällä logiikoita, joilla on kyseistä vaativuusluokkaa vastaava ilmaisuvoima. Klassiset esimerkit tällaisista tuloksista ovat Faginin esittämä epädeterministisen polynomiaalisen ajan karakterisaatio logiikan Σ 1 1 avulla ja Immermanin, Livchakin ja Vardin esittämä deterministisen polynomiaalisen ajan karakterisaatio ensimmäisen kertaluvun inflatorisen kiintopistelogiikan avulla. Tässä opinnäytetyössä tarkastellaan Gurevichin esittämää kysymystä polynomiaalisessa ajassa ratkeavien kielten luokan P vahvasta loogisesta karakterisaatiosta. Kyseinen kysymys on yksi äärellisen malliteorian haastavimpia ongelmia. Kysymyksen esittelyyn tarvittavan peruskoneiston läpikäynnin lisäksi tässä käsitellään myös sen yhteyksiä laskennan vaativuusteoriassa keskeiseen P-NP-ongelmaan. Gurevichin kysymyksestä voidaan esittää myös rajoitetumpia versioita, mikäli käsitellään tilannetta, jossa laskennan syötteenä voi olla vain kiinnitetyn malliluokan K malleja. Tällöin luokan P karakterisointi helpottuu, ainakin jos luokka K on riittävän suppea. Tässä opinnäytetyössä käydään läpi Grohen esittämä tulos siitä, että mikäli luokaksi K valitaan 3-yhtenäisten tasoverkkojen luokka, niin ensimmäisen kertaluvun inflatorinen kiintopistelogiikka karakterisoi polynomiaalisessa ajassa laskettavat kielet. Avainsanat Nyckelord Keywords matemaattinen logiikka, laskennan vaativuusteoria, deskriptiivinen vaativuusteoria, P-NP-ongelma Säilytyspaikka Förvaringsställe Where deposited Kumpulan tiedekirjasto Muita tietoja Övriga uppgifter Additional information
3 xkcd 505, Randall Munroe Käytetty Creative Commons Attribution-NonCommercial 2.5 -lisenssin alaisena.
4
5 v Johdanto Logiikka ja laskennan teoria ovat aina olleet läheisessä suhteessa toisiinsa. Itse asiassa laskennan teoria sai alkunsa 1900-luvun alkupuolella loogikkojen pyrkimyksistä formalisoida laskettavuuden ja algoritmin käsitteet. Tällöin määriteltiin lukuisia myöhemmin ekvivalenteiksi osoittautuneita laskennan malleja, kuten rekursiiviset funktiot, Churchin lambda-kalkyyli [3] ja Turingin a-koneet [24]. Näistä Turingin koneet ovat sittemmin vakiintuneet ainakin joillain aloilla tietynlaiseksi laskennan vakiomalliksi. Moderni laskennan vaativuusteoria alkoi muotoutua ja 1970-luvuilla, jolloin annettiin ensimmäistä kertaa keskeisten aikavaativuusluokkien P (polynomiaalisessa ajassa deterministisellä Turingin koneella ratkeavat ongelmat) [4] ja NP (polynomiaalisessa ajassa epädeterministisellä Turingin koneella ratkeavat ongelmat) [5, 19] määritelmät ja alettiin tutkia niihin liittyviä kysymyksiä. Ilmeni pian, että luokkien P ja NP suhteen selvittäminen on haastava ongelma; ei ole selvää, onko P luokan NP aito osajoukko vai ovatko luokat samat. Tämä kysymys tunnetaan P-NP-ongelmana, ja sen kanssa ekvivalentin kysymyksen muotoili ensimmäisenä Gödel kirjeessään von Neumannille vuonna 1956 [22], vaikka aiheen tutkimus käynnistyikin kunnolla vasta 1970-luvulla. Ei siis ole yllättävää, että laskennan vaativuusteorian ja logiikan väliltä löytyy monia yhteyksiä. Me olemme tässä kiinnostuneita erityisesti deskriptiivisestä vaativuusteoriasta, jossa tavoitteena on löytää loogisia karakterisaatioita eri vaativuusluokille. Ensimmäinen tällainen karakterisaatio oli Faginin vuonna 1974 antama looginen muotoilu luokalle NP logiikan Σ 1 1 avulla [10]. Vastaava kuvailu löytyi myöhemmin myös logiikalle P kiintopistelogiikoiden avulla; tämän todistivat Immerman [18], Livchak [21] ja Vardi [25] 1980-luvulla. Immermanin, Livchakin ja Vardin karakterisaatio luokalle P ei ole kaikin puolin tyydyttävä. Gurevich esitti 1988 kysymyksen vielä vahvemmasta loogisesta karakterisaatiosta, ja samalla myös konjektuurina, ettei tällaista karakterisaatiota ole olemassa [16]. Tämä P-NP-ongelmaan läheisesti liittyvä ongelma on kuitenkin myös osoittautunut huomattavan vaikeaksi. Tässä opinnäytetyössä käsittelemme näitä luokan P loogiseen karakterisointiin liittyviä kysymyksiä. Aloitamme käsittelemällä tarvittavia pohjatietoja luvussa I. Tavoitteenamme on erityisesti muodostaa kattava kuva kehyksestä, jonka puitteissa myöhemmin työskentelemme.
6 JOHDANTO vi Luvussa II paneudumme Gurevichin esittämään kysymykseen luokan P vahvasta loogisesta karakterisaatiosta. Määrittelemme täsmällisesti, millä tavalla haluaisimme karakterisoida luokan P, ja tutkimme, mitä tällaisista karakterisaatioista voidaan sanoa. Käsittelemme myös rajoitetumpia versioita tästä yleisestä ongelmasta sekä ongelman yhteyksiä muihin samankaltaisiin ongelmiin. Tämä luku on luonteeltaan hyvin katsausmainen, vaikkakin koen, etten ole ehtinyt käsitellä läheskään kaikkea mainitsemisen arvoista. Luvussa III sovellamme aikaisempien lukujen teoriaa ja käymme läpi Grohen tuloksen luokan P karakterisoinnista 3-yhtenäisillä tasoverkoilla [13]. Tämä luku on luonteeltaan huomattavasti teknisempi kuin kaksi aikaisempaa, ja käsittelemmekin todistukset mahdollisimman yksityiskohtaisesti. Esitiedoista Lukijalla olisi suotavaa olla jonkin verran esitietoja sekä logiikasta että laskennan vaativuusteoriasta. Erityisesti moni Turingin koneita koskeva todistus on hahmoteltu melko karkeasti, joten lukijan olisi hyvä tuntea perustekniikoita, joilla koneita voidaan yhdistää ja simuloida toisilla koneilla. Lienee turvallista olettaa, että jos on käynyt joskus läpi todistuksen kielen SAT NP-täydellisyydestä, tuntee riittävästi laskennan vaativuusteoria. Logiikan osalta esitietojen tarve on jokseenkin vähäisempi. Kokemus ensimmäisen kertaluvun logiikan FO kanssa työskentelystä, yhdessä luvun I käsittelyn kanssa riittänee tämän gradun lukemiseen. Jätämme kuitenkin monet keskeiset perustulokset todistamatta. Ideaalitapauksessa lukija olisi tutustunut deskriptiiviseen vaativuusteoriaan sen verran, että tuntee logiikat FO+IFP ja Σ 1 1, sekä on nähnyt todistukset Faginin lauseelle ja ILV-lauseelle. Luvussa III on myös hyödyksi, mikäli lukijalla on pohjatietoja verkkoteoriasta. Määritelmät ovat kuitenkin pääasiassa hyvin yksinkertaisia, joten puutteet tässä suhteessa eivät ole merkittävä ongelma. Tasoverkkojen käsittelyssä kuitenkin vaaditaan tiettyä matemaattista yleissivistystä, sillä niiden määritelmät viittaavat tiettyihin yksinkertaisiin tason R 2 topologian käsitteisiin. Notaatioista ja konventioista Lopuksi muutama huomautus tässä gradussa käytetyistä notaatioista ja muista konventioista. Luonnolliset lukumme, joukko N, alkaa nollasta, eli N = {0, 1, 2... }. Merkitsemme lisäksi N + = N \ {0}. Osajoukkorelaatiosta käytämme symbolia. Lineaarijärjestyksemme ovat kuitenkin aitoja lineaarijärjestyksiä, eli jos x < y, niin x y. Tässä työssä minä viittaa minuun, siis tämän gradun kirjoittajaan. Me puolestaan viittaa sekä minuun että tätä teosta parhaillaan lukevaan henkilöön, eli sinuun. Vaikka me-passiivin kieliopillinen korrektius toisinaan kyseenalaistetaankin, niin koen, että se kuvastaa hyvin matemaattisen kirjoittamisen ja lukemisen prosessia. Kirjoittaja pyrkii itse ymmärtämään asian riittävän hyvin selittääkseen
7 vii JOHDANTO sen jollekin muulle, ja toisaalta samalta selittää asiaa lukijalle. Lukija puolestaan pyrkii ymmärtämään, mitä kirjoittaja hänelle yrittää kertoa. Kiitokset Luonnollisesti minun tekisi mieli kiittää tässä kaikkia elämääni tämän pro gradun kirjoituksen aikana vaikuttaneita ihmisiä. Päätin kuitenkin säästää tällaiset kiitoslitaniat väitöskirjaani varten ja kiittää tässä vain harvoja ja valittuja. Ensinnäkin haluaisin kiittää graduohjaajaani Juha Kontista, joka jaksoi minua läpi tarpeettoman pitkäksi venyneen kirjoitusprosessin. Lisäksi hänen luennoima äärellisten mallien teorian kurssi antoi alunperin idean tehdä graduni deskriptiivisestä vaativuusteoriasta. Lisäksi haluan myös kiittää viime vuosina työnantajanani toiminutta tietojenkäsittelytieteen laitoksen professoria Esko Ukkosta. Tämän järjestelyn kautta olen päässyt tutustumaan työskentelyyn tiedemaailmassa sekä tekemään kaikkea jännää jo perustutkintovaiheessa. Toisaalta on myös todettava, että tämä gradu olisi saattanut valmistua jokseenkin nopeammin, mikäli en olisi ollut jatkuvasti töissä.
8
9 ix Sisältö Johdanto v Luku I. Peruskäsitteitä 1 I.1. Laskettavuus 1 I.2. Laskennan vaativuus 4 I.3. Aakkostot, mallit ja logiikat 7 I.4. Erinäisiä logiikoita 11 I.5. Deskriptiivinen vaativuusteoria 14 Luku II. Luokan P looginen karakterisointi 17 II.1. Vaativuusluokkien karakterisointi 17 II.2. Vaativuusluokat malliluokilla 21 Luku III. P 3-yhtenäisillä tasoverkoilla 25 III.1. Verkkoteoriaa 25 III.2. P 3-yhtenäisillä tasoverkoilla 27 Kirjallisuutta 35
10
11 1 I Peruskäsitteitä Aloitamme käymällä läpi erinäisiä peruskäsitteitä laskettavuuden vaativuusteoriaan ja logiikkaan liittyen. Oletamme, että suurin osa näistä asioista on jossain määrin tuttuja lukijalle. Tavoitteenamme onkin esittää lyhyt katsaus jatkon kannalta oleellisiin käsitteisiin ja erityisesti korostaa yksityiskohtia, joilla on myöhemmän käsittelyn kannalta merkitystä. Samalla kiinnitämme käyttämämme määritelmät ja notaatiot. I.1. Laskettavuus Kertaamme tässä Turingin koneiden perusmääritelmät. Määritelmien yksityiskohdat voi tehdä huomattavan monella eri tavalla ja saada silti oleellisesti ekvivalentin käsitteen; mukailemme määritelmissämme pitkälti Ebbinghausin ja Flumin kirjaa Finite Model Theory [8], mutta esityksemme on myös ottanut vaikutteita monista laskennan teorian teoksista [2, 17, 23]. I.1.1. Sanat ja kielet Kutsumme äärellistä epätyhjää symbolijoukkoa Σ merkistöksi ja alkioita a Σ merkeiksi. Merkistön Σ alkioiden äärellisiä jonoja kutsutaan sanoiksi. Erityisesti sallimme myös tyhjän eli nollan pituisen merkkijonon sanaksi ja merkitsemme sitä symbolilla ɛ. Kaikkien merkistön Σ sanojen joukkoa merkitsemme symbolilla Σ ja lisäksi merkitsemme Σ + = Σ \ {ɛ}. Tavalliseen tapaan merkitsemme sanaa w = (w 1,..., w n ) lyhennysmerkinnällä w = w 1... w n. Vastaavasti jos u = u 1... u n ja w = w 1... w m Σ ovat sanoja, niin merkitsemme uw = u 1... u n w 1... w m. Sanan pituutta merkitsemme w. Osajoukkoa L Σ + sanomme kieleksi. Erityisesti emme siis salli kielten sisältävän tyhjää merkkijonoa, kuten usein on tapana. Tämä on puhtaasti tekninen yksityiskohta, joka kuitenkin säästää meiltä vaivaa myöhemmin. I.1.2. Turingin kone Käytämme laskennan mallinamme Turingin konetta. Käyttämämme määritelmän mukainen Turingin kone koostuu äärellisestä ohjelmasta ja k:sta äärettömän pitkästä nauhasta, joilla jokaisella liikkuu lukupää. Nauhat on numeroitu luvuilla 1,..., k ja jokaisella nauhalla on äärettömän monta solua, jotka on numeroitu luonnollisilla luvuilla alkaen luvusta 0. Olkoon nyt ja eri symboleita. Käytämme jatkossa symbolia merkitsemään nauhan päätä ja symbolia merkitsemään nauhan tyhjiä soluja. Määritelmä I.1. Turingin kone on seitsikko M = (Q, Σ, Γ, δ, q 0, q +, q ), missä Q on äärellinen joukko ja jollain k N
12 I.1. LASKETTAVUUS 2 1. Q on epätyhjä koneen tilajoukko, 2. Σ on epätyhjä syötemerkistö, joka ei sisällä merkkejä ja, 3. Γ on nauhamerkistö, missä Σ {, } Γ, 4. δ (Q Γ k ) (Q Γ k { 1, 0, 1} k ) on tilasiirtymärelaatio, jolle kaikilla ((q, (a 1,..., a k )), (q, (a 1,..., a k ), (d 1,..., d k )) δ (a) a i = jos ja vain jos a i =, (b) jos a i = niin d i 1, sekä (c) q q + ja q q, 5. q 0 Q on aloitustila, 6. q + Q on hyväksyvä tila, ja 7. q Q on hylkäävä tila, missä q + q. Jos δ on osittainen funktio Q Γ k Q Γ k { 1, 0, 1} k, sanomme, että M on deterministinen. Kun emme vaadi, että δ on funktio, sanomme Turingin koneen M olevan epädeterministinen. Kun k = 1, kone M on yksinauhainen, ja muussa tapauksessa M on moninauhainen. Turingin koneelle annetaan syötteeksi jokin merkkijono, joka tallennetaan nauhan 1 alkuun. Kone suorittaa laskentaa tilasiirtymärelaation kuvaaman ohjelman mukaisesti, aloittaen tilasta q 0 ja käyttäen nauhaa työmuistina. Se valitsee siis seuraavan toiminnon pelkästään nykyisen tilansa ja lukupäiden alla olevien merkkien perusteella. Mikäli sopivaa siirtymää ei löydy, kone pysähtyy. Toisaalta on mahdollista, että Turingin koneen laskenta voi jatkua jollain syötteellä äärettömän pitkään. Jatkossa tarkoitamme Turingin koneen konfiguraatiolla tietoa koneen tilasta, nauhan sisällöstä ja lukupään sijainnista nauhalla. Määritelmä I.2. Turingin koneen M laskenta syötteellä w = w 1... w k Σ on äärellinen tai ääretön jono konfiguraatioita, jolle seuraavat ehdot ovat voimassa. 1. Ensimmäisessä konfiguraatiossa kone M (a) on alkutilassa q 0, (b) nauhalla 1 solussa 0 on merkki, soluissa 1,..., k on merkit w 1,..., w k ja muissa soluissa on merkki, (c) kaikilla muilla nauhoilla solussa 0 on merkki ja muissa soluissa merkki, ja (d) jokaisen nauhan lukupää on solun 1 kohdalla. 2. Seuraava konfiguraatio saadaan edellisestä aina tilasiirtymärelaation mukaisesti. Toisin sanoen, jos S ja S ovat kaksi peräkkäistä konfiguraatiota laskennassa ja konfiguraatiossa S (a) M on tilassa q, (b) nauhan i lukupää on solun p i kohdalla, ja (c) nauhalla i solussa p i on merkki a i, niin konfiguraatiossa S (a) M on tilassa q, (b) nauhan i lukupää on solun p i + d i kohdalla, (c) nauhan i sisältö on sama kuin konfiguraatiossa S lukuun ottamatta solua p i, ja
13 3 I. PERUSKÄSITTEITÄ (d) nauhalla i solussa p i on merkki b i, missä b 1,..., b k Γ ja d 1,..., d k { 1, 0, 1} sekä ((q, (a 1,..., a k )), (q, (b 1,..., b k ), (d 1,..., d k ))) δ. 3. Jos laskenta on äärellisen pituinen, niin sen viimeisessä konfiguraatiossa koneen tilalle q ja lukupäiden alla oleville merkeille a 1,..., a k pätee ((q, (a 1,..., a k )), (q, (b 1,..., b k ), (d 1,..., d k ))) / δ kaikilla q Q, b 1,..., b k Γ ja d 1,..., d k { 1, 0, 1}. Äärellisen pituista laskentaa kutsumme pysähtyväksi. Jos pysähtyvän laskennan viimeisen konfiguraation tila on q +, laskenta on hyväksyvä. Jos taas viimeinen tila on q, vastaavasti laskenta on hylkäävä. Kone M hyväksyy sanan w Σ jos on olemassa koneen M hyväksyvä laskenta syötteellä w, ja M hylkää sanan w Σ jos kaikki koneen M laskennat syötteellä w ovat hylkääviä. Huomautus I.3. Deterministisellä Turingin koneella M on täsmälleen yksi laskenta C jokaisella syötteellä. Tällöin siis M hyväksyy sanan jos C on hyväksyvä ja vastaavasti hylkää sanan jos C on hylkäävä. Huomautus I.4. Voimme tarvittaessa olettaa, että kaikki pysähtyvät laskennat ovat joko hylkääviä tai hyväksyviä. Voimme nimittäin lisätä annettuun Turingin koneeseen tilasiirtymiä ja muuttaa näin kaikki alkuperäisen koneen pysähtyvät eihyväksyvät laskennat hylkääviksi pysähtyviksi laskennoiksi. Emme kuitenkaan ole varsinaisesti kiinnostuneita itse Turingin koneista, vaan siitä, mitä niillä voi laskea. Tätä varten tarvitsemme seuraavia käsitteitä. Määritelmä I.5. Olkoon Σ merkistö, L Σ + kieli ja M Turingin kone. Sanomme, että 1. M tunnistaa kielen L, jos kaikilla w Σ kone M hyväksyy sanan w jos ja vain jos w L, ja 2. M ratkaisee kielen L, jos M hyväksyy kielen L ja lisäksi M hylkää sanan w Σ jos ja vain jos w / L. Yleisemmin, kieli L on ratkeava (kirjallisuudessa myös rekursiivinen), jos jokin Turingin kone ratkaisee sen. Vastaavasti, jos jokin Turingin kone tunnistaa kielen L, L on tunnistettava (tai rekursiivisesti numeroituva). Huomautus I.6. Nauhojen lukumäärä ja epädeterministisyys eivät lisää Turingin koneiden voimakkuutta laskentaformalismina. Kaikille tunnistettaville kielille L Σ + on olemassa deterministinen yksinauhainen Turingin kone, joka tunnistaa kielen L. Vastaava pätee ratkeaville kielille. Huomautus I.7. Ratkeavat kielet ovat aito osajoukko tunnistettavista kielistä. Lisäksi on olemassa kieliä, jotka eivät ole tunnistettavia. Olemme määritelleet Turingin koneet merkkijonoja käsittelevänä laskentaformalismina. Voimme kuitenkin koodata muitakin matemaattisia objekteja merkkijonoiksi ja näin käsitellä niihin liittyviä laskettavuuden kysymyksiä. Tarkemmin, jos
14 I.2. LASKENNAN VAATIVUUS 4 meillä on luokka K matemaattisia objekteja, ja haluamme käsitellä laskettavuutta luokalla K, niin määrittelemme kuvauksen w : K Σ + jollain aakkostolla Σ. Luokan K objekteja käsittelevälle Turingin koneelle annetaan syötteenä merkkijono w(x), kun sen halutaan suorittavan laskentaa koskien objektia x K. Emme tietenkään pysty koodaamaan mitä tahansa mielivaltaista luokkaa K järkevästi merkkijonoiksi, ja funktiolta w on vaadittava erinäisiä säännöllisyysominaisuuksia. Emme kuitenkaan paneudu tähän yleiseen kysymykseen, vaan meille riittää, että pystymme käsittelemään luonnollisia lukuja, N-kertoimisia polynomeja, Turingin koneita, äärellisiä malleja ja erinäisten logiikoiden lauseita Turingin koneiden syötteinä. Näille voidaan tunnetusti antaa eksplisiittiset koodaukset merkkijonoiksi [2, 17, 23]. Äärellisten mallien merkkijonokoodauksen esittelemme eksplisiittisesti luvussa I.5. Lisäksi, jos meillä on merkkijonoesitykset x 1,..., x n, niin monikko (x 1,..., x n ) voidaan myös koodata merkkijonoksi. Lisäksi on syytä huomata, että koodaaminen voidaan itse asiassa tehdä aina aakkostoon {0, 1}. Itse asiassa mielivaltaisen aakkoston Σ merkkijonot voidaan myös koodata aakkostoon {0, 1}. Voimme siis tarvittaessa olettaa, että kaikkien Turingin koneiden syöteaakkosto on {0, 1} ja nauha-aakkosto on {0, 1,, } [2]. Kaikissa tilanteissa kielen ratkeavuus ei ole riittävä käsite tarpeisiimme. Yleistämme siis vielä laskettavuuden käsitteen koskemaan funktioita. Määritelmä I.8. Olkoon Σ aakkosto ja f : Σ + Σ + jokin funktio. Sanomme, että deterministinen Turingin kone M laskee funktion f, jos kaikilla w Σ + koneen M laskenta syötteellä w pysähtyy ja laskennan lopuksi koneen nauhalle 1 on tallennettuna merkkijono f(w). Sanomme lisäksi, että funktio f on laskettava, jos jokin Turingin kone laskee sen. Jälleen käyttämällä koodauksia voimme käsitellä laskettavia funktiota, joilla on jokin muu lähtö- tai maalijoukko. I.2. Laskennan vaativuus Sen lisäksi, että haluamme tietää, mikä ylipäätänsä on laskettavaa, voimme kysyä, kuinka vaikeaa jonkin ongelman ratkaiseminen laskennallisesti on. Tämän ajatuksen kehittäminen johtaa laskennan vaativuusteoriaan. Turingin koneiden pohjalta voidaan luonnollisella tavalla määritellä erilaisia vaativuusmittoja laskennalle. Tutkimme tässä nyt laskennan aikavaativuutta, eli sitä, kuinka paljon laskenta-askelia jonkun ongelman ratkaiseminen vaatii. Määritelmä I.9. Olkoon M Turingin kone, jonka kaikki laskennat ovat pysähtyviä, ja f : N N jokin funktio. Sanomme, että M toimii ajassa f, jos kaikilla w Σ koneen M kaikissa laskennoissa syötteellä w on korkeintaan f( w ) konfiguraatiota. Huomautus I.10. Jos M on ajassa f toimiva Turingin kone jollain funktiolla f : N N, voimme huomautuksen I.4 nojalla olettaa, että M ratkaisee jonkin kielen.
15 5 I. PERUSKÄSITTEITÄ Alan Cobham esitti 1965 näkemyksen, että laskentaongelma on käytännössä ratkaistavissa, jos se voidaan ratkaista ajassa p toimivalla deterministisellä Turingin koneella, missä p on N-kertoiminen polynomi [4]. Toisaalta polynomin p aste ja kertoimet voivat olla mielivaltaisen suuria, joten tämä ei riitä käytännössä takaamaan algoritmin tehokkuutta kaikilla syötteillä. Tästä huolimatta tällaiset kielet ovat keskeisessä asemassa laskennan vaativuusteoriassa, ja meidänkin työmme tulee pääasiassa käsittelemään niitä. Määrittelemme siis seuraavan kieliluokan. Määritelmä I.11. Luokka P koostuu niistä kielistä L Σ +, joille on olemassa N-kertoiminen polynomi p ja ajassa p toimiva deterministinen Turingin kone M, joka ratkaisee kielen L. Jos L P, niin sanomme, että L on polynomiaalisessa ajassa ratkeava. Voimme tietenkin määritellä vastaavanlaisen luokan epädeterministisille Turingin koneille. Määritelmä I.12. Luokka NP koostuu niistä kielistä L Σ +, joille on olemassa N-kertoiminen polynomi p ja ajassa p toimiva epädeterministinen Turingin kone M, joka ratkaisee kielen L. Jos L NP, niin sanomme, että L on epädeterministisesti polynomiaalisessa ajassa ratkeava. Huomautus I.13. Turingin koneen nauhojen lukumäärällä ei ole merkitystä luokkien P ja NP määritelmissä. Jokaiselle kielelle L P on olemassa yksinauhainen polynomiaalisessa ajassa toimiva deterministinen Turingin kone, joka ratkaisee kielen L. Vastaavasti kielelle L NP on olemassa yksinauhainen polynomiaalisessa ajassa toimiva epädeterministinen ratkaisija. Myöskään merkkijonojen koodaaminen aakkostolle {0, 1} ei vaikuta näiden luokkien määritelmiin. Huomautus I.14. On helppo nähdä, että luokat P ja NP ovat suljettuja kielten yhdisteiden ja leikkausten suhteen. Toisin sanoen, olkoon L, L Σ +. Tällöin 1. jos L P ja L P, niin L L P ja L L P, ja 2. jos L NP ja L NP, niin L L NP ja L L NP. Lisäksi jos L P niin myös Σ + \ L P. Luokalle NP on olemassa myös vaihtoehtoinen määritelmä, johon ei tarvita epädeterministisiä Turingin koneita. Seuraava lause karkeasti ottaen sanoo, että kielet L NP ovat sellaisia, että mikäli joku antaa meille todistuksen sanan w kuulumisesta kieleen L, voimme varmistaa annetun todistuksen pätevyyden deterministisesti polynomiaalisessa ajassa. Lause I.15. Olkoon Σ aakkosto ja L Σ + kieli. Seuraavat ehdot ovat yhtäpitäviä. 1. L NP. 2. On olemassa N-kertoiminen polynomi ja polynomiaalisessa ajassa toimiva Turingin kone M niin että w L jos ja vain jos on olemassa u Σ + jolla u < p( x ) ja M hyväksyy parin (w, u).
16 I.2. LASKENNAN VAATIVUUS 6 Huomaamme, että luokkien P ja NP määritelmistä seuraa suoraan P NP. On kuitenkin osoittautunut, että näiden luokkien suhteesta on vaikea sanoa enempää. Tämän tutkiminen muodostaakin yhden motivaation tässä esittelemällemme teorialle. Erityisesti olemme kiinnostuneet seuraavasta ongelmasta. Kysymys I.16 (P-NP-ongelma). Kumpi vaihtoehdoista 1 P = NP ja P NP pätee? Tätä kirjoittaessa P-NP-ongelma on yksi matematiikan suurista avoimista kysymyksistä, eikä siihen ole löydetty vastausta vuosikymmenten tutkimustyöstä huolimatta. Clay Mathematics Institute on peräti valinnut kysymyksen yhdeksi Millennium-ongelmistaan 2 ja tarjoaa miljoonan Yhdysvaltain dollarin palkintoa ratkaisusta jompaan kumpaan suuntaan. Eräs keskeinen jo aikaisessa vaiheessa kehitetty työkalu P-NP-ongelmaan liittyen ovat niin sanotut NP-täydelliset kielet. Mainitsemme ne tässä, sillä tulemme törmäämään käsitteeseen vielä myöhemmin. Määritelmä I.17. Olkoon L Σ +. Kieli L on NP-täydellinen, jos L NP sekä kaikilla merkistöillä Γ ja kaikilla merkistön Γ kielillä L NP on olemassa polynomiaalisessa ajassa deterministisellä Turingin koneella laskettava funktio f : Γ + Σ +, missä w L jos ja vain jos f(w) L. Lause I.18. On olemassa NP-täydellinen polynomiaalisessa ajassa ratkeava kieli jos ja vain jos P = NP. Tämä lauseen valossa P-NP-ongelman ratkaisuun riittää yhden NP-täydellisen kielen käsittely. Nimittäin jos yhdelle NP-täydelliselle kielelle on kielen polynomiaalisessa ratkaiseva Turingin kone, niin P = NP. Toisaalta, jos voidaan osoittaa, ettei tällaista Turingin konetta ole olemassa, luokat P ja NP saadaan erotettua. Kumpikaan lähestymistapa ei kuitenkaan toistaiseksi ole osoittautunut hedelmälliseksi, vaikkakin NP-täydellisiä laskentaongelmia tunnetaan tuhansia. Kuten matematiikassa on tyypillistä, laskennan vaativuusteoria on kehittynyt huomattavasti ensimmäisistä kysymyksenasetteluista. Erinäisten vaativuusluokkien tutkimiseen on kehitetty monenlaisia tekniikoita liittyen esimerkiksi laskentapiirien kompleksisuuteen, satunnaislaskentaan ja kvanttilaskentaan. Vaikka erinäisiä merkittäviä P-NP-ongelmaa muistuttavia kysymyksiä aikavaativuusluokkien suhteesta onkin saatu ratkaistua, ei kuitenkaan itse P-NP-ongelma näytä olevan yhtään lähempänä ratkaisua nykyään. Itse asiassa sen sijaan on onnistuttu todistamaan erinäisiä tuloksia siitä, kuinka monet luontevan oloiset todistustekniikat eivät voi ratkaista P-NP-ongelmaa. Emme kuitenkaan tässä paneudu tarkemmin näihin P-NP-ongelmaan liittyviin kysymyksiin. Yksityiskohtainen johdanto aiheeseen löytyy esimerkiksi Gareyn 1 On myös esitetty, että P-NP-ongelma on luonteeltaan sen tyyppinen kysymys, että se voisi periaatteessa olla riippumaton joukko-opin aksioomista [1]. 2
17 7 I. PERUSKÄSITTEITÄ ja Johnsonin teoksesta Computers and Intractability, A Guide to the Theory of NP- Completeness [12]. Tuoreempiin tutkimussuuntiin voi tutustua esimerkiksi lähtien Fortnowin tuoreesta katsausartikkelista [11] tai Aroran ja Barakin teoksesta Computational Complexity: a Modern Approach [2]. I.3. Aakkostot, mallit ja logiikat Esittelemme nyt tarvittavia logiikan peruskäsitteitä. Noudatamme jälleen pitkälti Ebbinghausin ja Flumin linjaa esityksessä, vaikkakin erityisesti käyttämämme logiikoiden määritelmät ovat jokseenkin virtaviivaistettuja. Abstraktien logiikoiden määritelmässä ja siihen liittyvissä asioissa puolestaan mukailemme Ebbinghausin, Flumin ja Thomasin teosta Mathematical Logic [9]. I.3.1. Aakkostot ja mallit Kutsumme aakkostoksi mitä tahansa äärellistä joukkoa symboleita. Aakkoston symbolit ovat joko relaatiosymboleita tai vakiosymboleita. 3 Jokaiseen relaatiosymboliin R liittyy lisäksi paikkaluku (R) N +. Vakiosymboleilla ei ole paikkalukua. Olkoon τ aakkosto. Aakkoston τ malli A, tai lyhyemmin τ-malli A, koostuu 1. epätyhjästä joukosta Dom(A) = A, jota kutsumme mallin A universumiksi, 2. relaatiosymbolin R tulkinnasta R A A (R) jokaisella relaatiosymbolilla R τ, ja 3. vakiosymbolin c tulkinnasta c A A jokaisella vakiosymbolilla c τ. Jos A on äärellinen joukko, sanomme, että A on äärellinen malli. Yleisesti mallin universumin voidaan sallia olevan ääretön joukko, mutta käsittelemiemme aiheiden kannalta vain äärelliset mallit ovat kiinnostavia. Oletamme siis jatkossa, että kaikki mallit ovat äärellisiä. Olkoon σ, τ aakkostoja, σ τ ja A τ-malli. Sanomme, että σ-malli B on mallin A rajoittuma aakkostoon σ, jos Dom(A) = Dom(B) ja kaikilla symboleilla X σ on voimassa X A = X B. Merkitsemme tällöin B = A σ. Kääntäen sanomme, että A on mallin B laajennos aakkostoon τ. Olkoon nyt τ aakkosto sekä A ja B τ-malleja. Sanomme, että kuvaus π : A B on isomorfismi, jos se on bijektio ja 1. kaikilla relaatiosymboleilla R τ ja alkioilla a 1,..., a n A, missä n = (R), on voimassa (a 1,..., a n ) R A jos ja vain jos (π(a 1 ),..., π(a n )) R B, ja 2. π(c A ) = c B kaikilla vakiosymboleilla c τ. Jos on olemassa isomorfismi π : A B, sanomme, että A ja B ovat isomorfiset ja merkitsemme A = B. Isomorfismia mallilta A itselleen kutsumme automorfismiksi. 3 Emme siis käsittele aakkostoja, joissa on funktiosymboleita, vaikka se onkin yleensä tapana logiikan teksteissä.
18 I.3. AAKKOSTOT, MALLIT JA LOGIIKAT 8 I.3.2. Logiikat Haluamme käsitellä logiikoita abstraktilla tasolla ja puhua esimerkiksi tietynlaisten logiikoiden olemassaolosta. Tätä varten annamme formaalin määritelmän logiikalle. Määritelmä I.19. Logiikka L koostuu 1. jokaiselle aakkostolle τ, joukosta L[τ], jota kutsutaan logiikan L τ-lauseiden joukoksi, ja 2. kaksipaikkaisesta relaatiosta = L. Vaadimme lisäksi, että seuraavat ehdot ovat voimassa. 1. Jos σ τ, niin L[σ] L[τ]. 2. Jos A = L ϕ, niin jollain aakkostolla τ A on τ-malli ja ϕ L[τ]. 3. Jos A = L ϕ ja A = B, niin B = L ϕ. 4. Jos σ τ, ϕ L[σ] ja A on τ-malli, niin A = L ϕ jos ja vain jos A σ = L ϕ. Jos A = L ϕ, sanomme, että lause ϕ toteutuu mallissa A. Jos A on τ-malli ja ϕ L[τ], mutta ei päde A = ϕ, merkitsemme A = L ϕ. Toisinaan haluamme parametrisoida kaavoja mallin alkioilla. Olkoon τ aakkosto, johon vakiosymbolit x 1,..., x n ja relaatiosymbolit R 1,..., R m eivät kuulu. Kun ϕ L[τ {x 1,..., x n, R 1,..., R m }], merkitsemme ϕ(x 1,..., x n, R 1,..., R m ) ja sanomme, että ϕ on logiikan L τ-kaava. Sanomme tällöin lisäksi, että symbolit x 1,..., x n, R 1,..., R m ovat vapaita kaavassa ϕ. Tällöin ϕ voidaan tulkita τ- mallissa A, jos ensin kiinnitämme tulkinnat aakkostoon τ kuulumattomille symboleille. Jos ϕ(x 1,..., x n, R 1,..., R m ) on τ-kaava, a 1,..., a n A ja A i A (Ri) kaikilla i = 1,..., m, niin määrittelemme A = ϕ[a 1,..., a n, A 1,... A m ] jos ja vain jos A = ϕ, missä A on mallin A laajennos aakkostoon x A i τ {x 1,..., x n, R 1,..., R m }, = a i kaikilla i = 1,... n ja R A i = A i kaikilla i = 1,..., m. Jatkoa varten teemme vielä yhden havainnon τ-kaavoista. Logiikkojen ominaisuus 3. implikoi suoraan seuraavan lauseen. Lause I.20. Olkoon τ aakkosto, A, B τ-malleja ja π : A B isomorfismi. Jos ϕ(x 1,... x n ) on logiikan L τ-kaava ja a 1,... a n A, niin jos ja vain jos A = ϕ[a 1,..., a n ] B = ϕ[π(a 1 ),..., π(a n )].
19 9 I. PERUSKÄSITTEITÄ I.3.3. Malliluokat Haluamme jatkossa tyypillisesti yksittäisten mallien sijasta tutkia malliluokkia. Merkitsemme kaikkien äärellisten mallien luokkaa Str ja kaikkien äärellisten τ- mallien luokkaa Str[τ]. Malliluokka K on mikä tahansa kokoelma äärellisiä malleja. Jatkossa kuitenkin käsittelemme vain malliluokkia, jotka on suljettu isomorfismien suhteen. Toisin sanoen, oletamme aina, että jos K on malliluokka, A ja B ovat τ-malleja, A K ja A = B, niin B K. Tyypillisesti lisäksi käsittelemämme malliluokat K sisältävät vain yhden aakkoston malleja, eli K Str[τ] jollain aakkostolla τ. Näin ei kuitenkaan ole kaikissa tapauksissa. Määritelmä I.21. Olkoon τ kiinnitetty työskentelyaakkosto. Jos nyt L on logiikka ja ϕ L[τ] lause, niin luokka Mod(ϕ) sisältää kaikki mallit A Str[τ], joilla A = ϕ. Määritelmä I.22. Olkoon L logiikka, τ aakkosto ja K Str[τ]. Sanomme, että malliluokka K on aksiomatisoitavissa logiikassa L, jos on olemassa L[τ]-lause ϕ, jolla Mod(ϕ) = K. Esimerkki I.23. Olkoon τ = {E}, missä (E) = 2. Malliluokka Graph koostuu niistä τ-malleista G, joilla relaatio E G on irrefleksiivinen ja symmetrinen, eli 1. (a, a) / E G kaikilla a G, ja 2. kaikilla a, b G, jos (a, b) E G niin (b, a) E G. Luokan Graph alkioita sanotaan verkoiksi. Esimerkki I.24. Olkoon τ = {<, S, min, max}, missä (<) = (S) = 2 ja min, max ovat vakiosymboleita. Sanomme, että τ-malli A on järjestys, jos 1. millään a A ei päde a < A a, 2. a < A b tai b < A a tai a = b kaikilla a, b A, ja 3. jos a < A b ja b < A c niin a < A c kaikilla a, b, c A. 4. kaikilla a, b A, (a, b) S A jos ja vain jos a < A b ja kaikilla c A, jos a < A c niin b < A tai b = c, 5. min A < a tai min A = a kaikilla a A, ja 6. a < max A tai a = max A kaikilla a A. Siis < A on lineaarijärjestys joukolla A, symbolin S tulkinta on seuraajarelaatio, min A on mallin pienin alkio ja max A mallin suurin alkio. Järjestys < A määrää muut tulkinnat yksikäsitteisesti, eli jos A on {<}-malli ja < A toteuttaa ehdot , niin on olemassa yksikäsitteinen mallin A laajennos järjestykseksi. Yleisemmin, olkoon {<} τ 0 {<, S, min, max} ja σ τ 0. Sanomme, että σ-malli A on järjestetty malli, jos A τ 0 voidaan laajentaa järjestykseksi. Merkitsemme kaikkien järjestettyjen σ-mallien luokka Ord[σ]. Esimerkki I.25. Olkoon Σ merkistö. Määrittelemme aakkoston τ(σ) = {<} {P a a Σ},
20 I.3. AAKKOSTOT, MALLIT JA LOGIIKAT 10 missä (<) = 2 ja (P a ) = 1 kaikilla a Σ. Olkoon nyt w = w 1... w n Σ + sana. Sanomme, että malli B on sanan w sanamalli, jos B = n, < B on lineaarijärjestys joukolla B (eli B on järjestetty malli) ja kaikilla a Σ, P B a = {b B b on j:nneksi pienin alkio järjestyksessä < B ja w j = a jollain j}. Selvästi kaikki sanan w sanamallit ovat keskenään isomorfisia. I.3.4. Määriteltävyys Olkoon τ aakkosto ja A aakkoston τ malli. Tällöin yksipaikkainen τ-kaava ϕ(x) määrää mallin universumin A osajoukon {a A A = ϕ[a]}. Vastaavasti τ-kaava ψ(x 1,..., x n ) määrää relaation {(a 1,..., a n ) A n A = ψ[a 1,..., a n ]}. Tällaiset joukot ja relaatiot tulevat olemaan jatkossa tärkeässä roolissa. Määritelmä I.26. Olkoon A aakkoston τ malli jollain aakkostolla τ. Osajoukko X A on määriteltävä logiikassa L, jos on olemassa aakkoston τ L[τ]-kaava ϕ(x), jolla X = {a A A = ϕ[a]}. Tällöin kaava ϕ(x) määrittelee joukon X. Vastaavasti sanomme, että relaatio R A n on määriteltävä logiikassa L, jos on olemassa aakkoston τ L[τ]-kaava ψ(x 1,..., x n ), jolla R = {(a 1,..., a n ) A n A = ψ[a 1,..., a n ]}. Jälleen sanomme, että kaava ψ(x 1,..., x n ) määrittelee relaation R. Lauseella I.20 on tärkeä määriteltäviä joukkoja koskeva seuraus. Olkoon nyt π : A A mallin A automorfismi. Jos ϕ(x) määrittelee joukon X A, niin lauseen I.20 nojalla a X A = ϕ[a] A = ϕ[π(a)] π(a) X. Vastaavasti määriteltävälle relaatiolle R A n pätee (a 1,..., a n ) R jos ja vain jos (π(a 1 ),..., π(a n )) R. Kääntäen, joukot ja relaatiot joilla nämä ehdot eivät toteudu kaikilla mallin A automorfismeilla eivät ole määriteltäviä.
21 11 I. PERUSKÄSITTEITÄ I.4. Erinäisiä logiikoita Siirrymme nyt käsittelemään varsinaisia logiikoita. Esittelemme klassisen ensimmäisen kertaluvun logiikan ja rakennamme sen päälle erinäisiä laajennoksia, joita tulemme jatkossa käyttämään. Hieman tyypillisestä lähestymistavasta poiketen emme käytä erikseen muuttujasymboleja, vaan käytämme vakiosymboleita myös muuttujien roolissa. I.4.1. Ensimmäisen kertaluvun logiikka Haluamme jatkossa laajentaa helposti ensimmäisen kertaluvun logiikkaa, joten emme määrittele sitä suoraan. Sen sijaan annamme joukon lauseenmuodostussääntöjä, joita voimme käyttää jatkossa myös muiden logiikoiden rakennuspalikoina. Jatkossa oletamme, että τ on aakkosto ja A on τ-malli. Määritelmä I.27. Atomilause on merkkijono, joka on muotoa 1. v 1 = v 2, missä v 1 ja v 2 ovat vakiosymboleita, tai 2. R(v 1,..., v n ), missä R on relaatiosymboli, (R) = n ja v 1,..., v n ovat vakiosymboleita. Atomilauseen ϕ aakkosto τ(ϕ) sisältää täsmälleen atomilauseessa esiintyvät symbolit, eli 1. jos ϕ on muotoa v 1 = v 2, niin τ(ϕ) = {v 1, v 2 }, ja 2. jos ϕ on muotoa R(v 1,..., v n ), niin τ(ϕ) = {R, v 1,..., v n }. Jos ϕ on atomilause ja τ(ϕ) τ, niin määrittelemme lauseen ϕ totuuden τ-mallissa A seuraavasti: 1. Jos ϕ on muotoa v 1 = v 2, niin A = ϕ jos ja vain jos v A 1 = v A Jos ϕ on muotoa R(v 1,..., v n ), niin A = ϕ jos ja vain jos (v A 1,..., v A n ) R A. Atomilauseista rakennetaan monimutkaisempia lauseita konnektiiveilla ja kvantifioinnilla. Esittelemme nyt ensimmäisen kertaluvun logiikassa käytetyt lauseenmuodostussäännöt. Määritelmä I.28. Merkkijonon ϕ negaatio on merkkijono ϕ. Merkkijonon ϕ aakkosto on Jos τ( ϕ) τ, niin määrittelemme τ( ϕ) = τ(ϕ). A = ϕ jos ja vain jos ei A = ϕ. Määritelmä I.29. Merkkijonojen ϕ ja ψ disjunktio on merkkijono (ϕ ψ). Merkkijonon (ϕ ψ) aakkosto on Jos τ ((ϕ ψ)) τ, niin määrittelemme τ ((ϕ ψ)) = τ(ϕ) τ(ψ). A = (ϕ ψ) jos ja vain jos A = ϕ tai A = ψ.
22 I.4. ERINÄISIÄ LOGIIKOITA 12 Määritelmä I.30. Jos ϕ on merkkijono ja x vakiosymboli, eksintenssikvantifioinnilla saamme merkkijonon xϕ. Tällöin määrittelemme τ( xϕ) = τ(ϕ) \ {x}, ja A = xϕ jos ja vain jos on olemassa mallin A τ(ϕ) \ {x} laajennos aakkoston τ(ϕ) malliksi A, jolle A = ϕ. Tavalliseen tapaan käytämme lyhennysmerkintöjä (ϕ ψ), (ϕ ψ), (ϕ ψ) ja xϕ tarkoittamaan merkkijonoja ( ϕ ψ), ( ϕ ψ), (( ϕ ψ) ( ψ ϕ)) ja x ϕ, kun ϕ ja ψ ovat merkkijonoja. Määritelmä I.31. Ensimmäisen kertaluvun logiikan lauseiden joukko on pienin merkkijonojen kokoelma, joka sisältää atomikaavat ja on suljettu negaation, disjunktion ja eksistenssikvantifioinnin suhteen. Määrittelemme ensimmäisen kertaluvun logiikan FO seuraavasti: 1. Kaikilla aakkostoilla τ, FO[τ] koostuu niistä ensimmäisen kertaluvun logiikan lauseista ϕ, joilla τ(ϕ) τ. 2. Relaatio = FO on lauseenmuodostussääntöjen määräämä relaatio =. I.4.2. Inflatorinen kiintopistelogiikka Laajennamme nyt ensimmäisen kertaluvun logiikkaa eräällä kiintopisteoperaattorilla. Saamme näin logiikan, joka tulee jatkossa olemaan keskeisessä roolissa tarkasteluissamme. Olkoon A epätyhjä äärellinen joukko ja F : P(A) P(A) kuvaus. Sanomme, että kuvaus F on inflatorinen, jos kaikilla X A joukko X sisältyy omaan kuvaansa, eli X F (X). Joukko X A on kuvauksen F kiintopiste, jos F (X) = X. Olemme kiinnostuneita kuvauksen F indusoimasta jonosta, F ( ), F (F ( )),... eli jonosta (F i ( )) i N, missä F 0 ( ) = ja F +1 ( ) = F (F i ( )). Jos F on inflatorinen, niin = F 0 ( ) F 1 ( ) F 2 ( ) A. Koska lisäksi A on äärellinen joukko, viimeistään F A ( ) on kiintopiste. Muuten nimittäin F A +1 ( ) sisältäisi enemmän alkioita kuin joukko A itse. Kutsumme tällöin joukkoa ifp(f ) = F A ( ) kuvauksen F inflatoriseksi kiintopisteeksi. Olkoon nyt τ aakkosto, A aakkoston τ malli ja ϕ(x 1,..., x n, R) jonkin logiikan τ-kaava, missä (R) = n. Nyt ϕ indusoi kuvauksen F ϕ,a : P(A n ) P(A n ), F ϕ,a (X) = {(a 1,..., a n ) A = ϕ[a 1,..., a n, X]}. Mielivaltaisella kaavalla ϕ kuvaus F ϕ,a ei välttämättä ole inflatorinen, mutta siirtymällä kaavaan ψ = (R(x 1,..., x n ) ϕ) saamme aina inflatorisen kuvauksen F ψ,a. Lisäämme nyt ensimmäisen kertaluvun logiikkaan mahdollisuuden käsitellä tällaisten kuvausten inflatorisia kiintopisteitä.
23 13 I. PERUSKÄSITTEITÄ Määritelmä I.32. Olkoon ϕ merkkijono, x 1,..., x n ja y 1,..., y n vakiosymboleita sekä R relaatiosymboli, (R) = n. Tällöin saamme inflatorisella kiintopisteoperaattorilla merkkijonon [IFP x1,...,x n,r ϕ](y 1,..., y n ). Määrittelemme τ ( [IFP x1,...,x n,r ϕ](y 1,..., y n ) ) = {y 1,..., y n } (τ(ϕ) \ {x 1,..., x n, R}), ja A = [IFP x1,...,x n,r ϕ](y 1,..., y n ) jos ja vain jos (y A 1,..., y A n ) ifp(f ψ,a ), missä ψ = R(x 1,..., x n ) ϕ ja A = A τ(ϕ) \ {x 1,..., x n, R}. Määritelmä I.33. Ensimmäisen kertaluvun inflatorisen kiintopistelogiikan lauseiden joukko on pienin merkkijonojen kokoelma, joka sisältää atomikaavat ja on suljettu negaation, disjunktion, eksistenssikvantifioinnin ja inflatorisen kiintopisteoperaattorin suhteen. Määrittelemme (ensimmäisen kertaluvun) inflatorisen kiintopistelogiikan FO+IFP seuraavasti: 1. Kaikilla aakkostoilla τ, FO+IFP[τ] koostuu niistä ensimmäisen kertaluvun inflatorisen kiintopistelogiikan logiikan lauseista ϕ, joilla τ(ϕ) τ. 2. Relaatio = FO+IFP on lauseenmuodostussääntöjen määräämä relaatio =. Esimerkki I.34. Olkoon X joukko. Relaation R X 2 transitiivinen sulkeuma on relaatio tc(r) = {(a, b) A 2 on olemassa n N ja alkiot e 1,..., e n A, missä a = e 1, b = e n ja kaikilla i = 1,... n 1 pätee (e i, e i+1 ) R}. Olkoon nyt τ = {E} verkkojen aakkosto ja G = (G, E G ) verkko, kuten esimerkissä I.23. Relaation E G transitiivinen sulkeuma tc(e G ) voidaan määritellä FO+IFP[τ]- kaavalla ϕ(y 1, y 2 ) = [IFP x1,x 2,XE(x 1, x 2 ) z(x(x 1, z) X(z, x 2 ))](y 1, y 2 ), missä (X) = 2. Selvästi nyt G = ϕ[v, u] jos ja vain jos (v, u) tc(e G ) kaikilla v, u G. I.4.3. Toisen kertaluvun logiikka Ensimmäisen kertaluvun logiikassa voimme kvantifioida vain vakiosymboleiden yli. Mahdollistamalla kvantifioinnin myös relaatiosymboleiden yli saamme huomattavasti ilmaisuvoimaisempia logiikoita. Määritelmä I.35. Jos ϕ on merkkijono ja X on relaatiosymboli, toisen kertaluvun eksintenssikvantifioinnilla saamme merkkijonon Xϕ. Tällöin määrittelemme τ( Xϕ) = τ(ϕ) \ {X}, ja A = Xϕ jos ja vain jos on olemassa mallin A τ(ϕ) \ {X} laajennos aakkoston τ(ϕ) malliksi A, jolle A = ϕ.
24 I.5. DESKRIPTIIVINEN VAATIVUUSTEORIA 14 Määritelmä I.36. Toisen kertaluvun logiikan lauseiden joukko on pienin merkkijonojen kokoelma, joka sisältää atomikaavat ja on suljettu negaation, disjunktion, eksistenssikvantifioinnin ja toisen kertaluvun eksistenssikvantifioinnin suhteen. Määrittelemme toisen kertaluvun logiikan SO seuraavasti: 1. Kaikilla aakkostoilla τ, SO[τ] koostuu niistä toisen kertaluvun logiikan lauseista ϕ, joilla τ(ϕ) τ. 2. Relaatio = SO on lauseenmuodostussääntöjen määräämä relaatio =. Toisen kertaluvun logiikka SO on itse asiassa liian ilmaisuvoimainen tarpeisiimme. Tulemmekin jatkossa käyttämään logiikan FO+IFP lisäksi lähinnä seuraavaa logiikan SO fragmenttia. Määritelmä I.37. Toisen kertaluvun logiikan lause ϕ on Σ 1 1-lause, jos se on muotoa X 1... X n ψ, missä ψ on ensimmäisen kertaluvun logiikan lause. Määrittelemme toisen kertaluvun logiikan alilogiikan Σ 1 1 seuraavasti: 1. Kaikilla aakkostoilla τ, Σ 1 1[τ] koostuu Σ 1 1-lauseista ϕ, joilla τ(ϕ) τ. 2. Relaatio = Σ 1 1 on lauseenmuodostussääntöjen määräämä relaatio =. I.5. Deskriptiivinen vaativuusteoria Sidomme nyt esittämiämme käsitteitä yhteen ja esitämme peruskäsitteitä logiikan hyödyntämisestä laskennan vaativuusteoriassa. Tulemme yleistämään tässä esitettävää teoriaa luvussa II. I.5.1. Mallit Turingin koneiden syötteinä Turingin koneet käsittelevät merkkijonoja, mutta haluaisimme nyt tutkia malleihin liittyvää laskettavuutta. Kuten jo totesimme luvussa I.1, voimme kuitenkin koodata muita matemaattisia objekteja merkkijonoiksi. Yksinkertaisuuden vuoksi käsittelemme nyt vain järjestettyjä malleja. Olkoon siis τ aakkosto, < τ. Oletetaan lisäksi, että τ = {R 1,..., R m, x 1,..., x n }, missä < = R i jollain i m, eli että meillä on kiinnitetty järjestys aakkoston τ symboleille. Jos nyt A Ord[τ], niin koodaamme mallin A merkkijonoksi w(a) {0, 1} seuraavasti. 1. Merkkijonon w(a) alussa on A kappaletta merkkiä 1, ja näiden jälkeen yksi merkki Seuraavaksi merkkijonossa w(a) on jokaista relaatiosymbolia R i kohden osajono, jonka pituus on A (Ri). Tämän osajonon j:s merkki on 1, jos järjestyksen < mukaisessa sanakirjajärjestyksessä j:s alkio (a 1,..., a (R) ) A (R) kuuluu relaatioon Ri A, ja muuten se on Tämän jälkeen merkkijonossa w(a) esitetään jokaisen vakiosymbolin x i tulkinta koodattuna samaan tapaan kuin yksipaikkaiset relaatiot yllä. Selvästi on olemassa vain aakkostosta τ riippuva N-kertoiminen polynomi p, jolla w(a) p( A ). Huomaamme lisäksi, että jos A ja B ovat kaksi isomorfista τ- mallia, niin w(a) = w(b).
25 15 I. PERUSKÄSITTEITÄ Käyttämällä esitettyä koodausta voimme nyt käsitellä Turingin koneita, jotka ottavat syötteenään τ-malleja. Oletamme siis jatkossa, että käsittelemämme Turingin koneet ottavat syötteenään τ-malleja. Lisäksi voimme olettaa, että tällaiset koneet hylkäävät kaikki merkkijonot, jotka eivät ole jonkin struktuurin koodeja. Kieli {w(a) {0, 1} A Ord[τ]} on nimittäin selvästi ratkeava. Vastaavasti kuin Turingin koneiden määritelmissä alunperin, sanomme, että kone M hyväksyy τ-mallin A, jos se hyväksyy sanan w(a). Vastaavasti M hylkää mallin A, jos se hylkää sanan w(a). Edelleen sanomme, että kone tunnistaa tai ratkaisee malliluokan K Ord[τ], jos se tunnistaa tai ratkaisee kielen L(K) = {w(a) {0, 1} A K}. Määrittelemme nyt kaksi malliluokkien kokoelmaa. Määritelmä I.38. Luokka P koostuu niistä malliluokista K, joilla K Ord[τ] jollain aakkostolla τ sekä on olemassa N-kertoiminen polynomi p ja ajassa p toimiva deterministinen Turingin kone M, joka ratkaisee luokan K. Jos K P, niin sanomme, että K on polynomiaalisessa ajassa ratkeava. Määritelmä I.39. Luokka NP koostuu niistä malliluokista K, joilla K Ord[τ] jollain aakkostolla τ sekä on olemassa N-kertoiminen polynomi p ja ajassa p toimiva epädeterministinen Turingin kone M, joka ratkaisee luokan K. Jos K NP, niin sanomme, että K on epädeterministisesti polynomiaalisessa ajassa ratkeava. Samaan tapaan kuin luokkien P ja NP tapauksessa, havaitsemme, että P NP. Nyt olemme määritelleet kieliluokkien kokoelman P ja tietyssä mielessä vastaavan malliluokkien kokoelman P. Olkoon K Ord[τ] jollain aakkostolla τ. Suoraan annetuista määritelmistä seuraa, että K P jos ja vain jos L(K) P. Siis malliluokka K voidaan samaistaa sen kieliesityksen L(K) kanssa. Toisaalta olkoon L Σ + jollain aakkostolla Σ. Esimerkin I.25 mukaisesti merkitsemme K w = {B Str[τ(Σ)] B on sanan w sanamalli} kaikilla sanoilla w Σ +. Merkitsemme lisäksi K(L) = w L K w. Sanan w sanamallin B merkkijonoesityksestä w(b) pystymme helposti rakentamaan sanan w Turingin koneella polynomiaalisessa ajassa, ja vastaavasti sanasta w pystytään rakentamaan polynomiaalisessa ajassa rakentamaan sanan w kaikkia sanamalleja B esittävä yksikäsitteinen merkkijono w(b). Siis L P jos ja vain jos K(L) P. Jälleen voimme siis samaistaa kielen L Σ + malliluokan K(L) kanssa. Selvästi samat havainnot koskevat myös luokkia NP ja NP. Siis erityisesti, jos P = NP, niin K P L(K) P L(K) NP K NP kaikilla K Ord[τ], eli P = NP. Kääntäen, jos P = NP, niin kaikilla L Σ + eli P = NP. L P K(L) P K(L) NP L NP
26 I.5. DESKRIPTIIVINEN VAATIVUUSTEORIA 16 Näiden havaintojen nojalla jatkossa samaistamme luokat P ja P. Käytämme polynomiaalisessa ajassa ratkeavien malliluokkien kokoelmasta myös nimeä P. Vastaavasti samaistamme myös luokat NP ja NP. I.5.2. Aikavaativuusluokkien karakterisointi Nyt pääsemme käsittelemään aikavaativuusluokkien loogista karakterisointia. Esitämme nyt keskeisen deskriptiivisen vaativuusteorian perustuloksen koskien luokkia P ja NP. Lause I.40. Olkoon τ aakkosto ja K Ord[τ]. Tällöin 1. K P jos ja vain jos K on aksiomatisoitavissa logiikassa FO+IFP, ja 2. K NP jos ja vain jos K on aksiomatisoitavissa logiikassa Σ 1 1. Sivuutamme todistuksen. Todistus on melko tekninen, muttei kuitenkaan erityisen vaikea. Todistuksessa rakennetaan jokaista FO+IFP- tai Σ 1 1-lausetta kohden sopiva Turingin kone, joka testaa kaavan toteutumista annetussa mallissa. Toinen suunta hoidetaan rakentamalla Turingin konetta simuloiva FO+IFP- tai Σ 1 1-lause. Lauseen I.40 kohta 2. tunnetaan Faginin teoreemana ja se todistettiin alunperin vuonna 1974 [10]. Kohta 1. puolestaan tunnetaan ILV-teoreemana. Sen todistivat toisistaan riippumattomasti Immerman [18], Livchak [21] ja Vardi [25] 1980-luvulla. Esittämiemme tulosten valossa teemme vielä havainnon näiden loogisten karakterisaatioiden yhteydestä P-NP-kysymykseen. Seuraava korollaari seuraa välittömästi lauseesta I.40. Korollaari I.41. Seuraavat ehdot ovat yhtäpitäviä. 1. Kaikilla aakkostoilla τ ja malliluokilla K Ord[τ], K on aksiomatisoitavissa logiikassa FO+IFP jos ja vain jos K on aksiomatisoitavissa logiikassa Σ P = NP. Lauseesta I.40 myös tietysti seuraa, että mikä tahansa logiikassa FO+IFP aksiomatisoitavissa oleva luokka K Ord[τ] on myös aksiomatisoitavissa logiikassa Σ 1 1.
27 17 II Luokan P looginen karakterisointi Näimme jo lauseessa I.40 erään tavan karakterisoida laskennan vaativuutta logiikoiden avulla. Kyseisessä lauseessa kuitenkin käsiteltiin vain järjestettyjä malleja. Tässä luvussa tavoitteenamme onkin kehittää yleisempää teoriaa aikavaativuusluokkien loogisesta karakterisoinnista. Määrittelemme yleisempiä käsitteitä logiikoiden ja aikavaativuusluokkien vastaavuudesta sekä käsittelemme näihin liittyviä perustuloksia. Nämä perustulokset toimivat myöhemmin myös pohjana työllemme luvussa III. Erityisesti pyrimme siis vain käsittelemään perusteoriaa, joten emme paneudu syvällisesti erinäisiin mielenkiintoisiin sivupolkuihin. Pohjana tämän luvun esitykselle toimii jälleen pitkälti Ebbinghausin ja Flumin Finite Model Theory [8], mutta vaikutteita on otettu myös muista lähteistä [15, 20]. Erityisesti käytämme jokseenkin selkeämpiä muotoiluja erinäisistä määritelmistä. II.1. Vaativuusluokkien karakterisointi Aloitamme, luonnollisesti, määrittelemällä millä tavalla haluamme käyttää logiikoita aikavaativuusluokkien karakterisoinnissa. Jatkamme työskentelyä luvussa I.5 esitetyssä kehyksessä, eli käsittelemme Turingin koneita, joiden syötteet ovat merkkijonoiksi koodattuja malleja. Haluamme nyt kuitenkin yleistää käsittelyämme, ja sallia syötteeksi minkä tahansa mallin A, sen sijaan että käsittelisimme vain järjestettyjä malleja kuten aikaisemmin. Tähän liittyy kuitenkin tekninen haaste; määrittelemämme merkkijonokoodaus malleille nojautui oleellisesti järjestyksen olemassaoloon. Ratkaisemme tämän ongelman lisäämällä malleihin aina jonkin järjestyksen ennen koodausta, kuten seuraavassa esitämme. Olkoon τ aakkosto. Olkoon lisäksi < τ kaksipaikkainen relaatiosymboli, joka ei kuulu aakkostoon τ. Merkitsemme nyt τ < = τ {< τ }. Jos A on aakkoston τ malli ja < on järjestys joukolla A, tarkoitamme merkinnällä (A, <) mallin A laajennosta aakkostoon τ <, missä < A τ =<. Tällöin (A, <) on järjestetty malli esimerkin I.24 mielessä, kun relaatiosymbolia < τ käytetään esimerkin I.24 symbolin < roolissa. Määritelmä II.1. Olkoon τ aakkosto ja K Str[τ] luokka malleja. Luokan K järjestettyjen esitysten luokka on K < = {(A, <) A K ja < on järjestys joukolla A}. Nyt jos haluamme tutkia luokkaa K Str[τ] laskettavuuden kannalta, niin siirrymme käsittelemään luokkaa K < Ord[τ < ]. Erityisesti huomaamme, että mallin (A, <) kuuluminen luokkaan K < riippuu vain mallin A omasta struktuurista, eikä järjestyksestä <. Nimittäin jos A Str[τ] sekä < 1 ja < 2 ovat järjestyksiä
28 II.1. VAATIVUUSLUOKKIEN KARAKTERISOINTI 18 joukolla A, niin (A, < 1 ) K < jos ja vain jos (A, < 2 ) K <. Huomautus II.2. Tämän kehyksen käyttäminen johtaa tiettyihin outoihin yksityiskohtiin, kun käsittelemme järjestettyjä malleja. Jos K Ord[τ], niin luokan K < malleissa on itse asiassa kaksi järjestystä: alkuperäinen mallin järjestys sekä uuden symbolin < τ tulkinta. Tämä ei kuitenkaan aiheuta merkittäviä ongelmia. Määrittelemme nyt täsmällisesti, millä tavalla haluaisimme käyttää logiikoita aikavaativuusluokkien karakterisointiin. Seuraava määritelmä on peräisin Gurevichiltä [16]. Määritelmä II.3. Olkoon L logiikka. Sanomme, että logiikka L vastaa vaativuusluokkaa P, jos kaikilla aakkostoilla τ 1. L[τ] on ratkeava, 2. jokainen K Str[τ], jolla K < P, on aksiomatisoitavissa logiikassa L, ja 3. on olemassa laskettava funktio, joka kuvaa jokaisen lauseen ϕ L[τ] pariksi (M, p), missä p on N-kertoiminen polynomi ja M on luokan Mod(ϕ) < ratkaiseva deterministinen ajassa p toimiva Turingin kone. Jälleen voimme tehdä vastaavan määritelmän myös koskien luokkaa NP. Määritelmä II.4. Olkoon L logiikka. Sanomme, että logiikka L vastaa vaativuusluokkaa NP, jos kaikilla aakkostoilla τ 1. L[τ] on ratkeava, 2. jokainen K Str[τ], jolla K < NP, on aksiomatisoitavissa logiikassa L, ja 3. on olemassa laskettava funktio, joka kuvaa jokaisen lauseen ϕ L[τ] pariksi (M, p), missä p on N-kertoiminen polynomi ja M on luokan Mod(ϕ) < ratkaiseva epädeterministinen ajassa p toimiva Turingin kone. Huomautus II.5. Määritelmistä seuraa, että jos logiikka L vastaa vaativuusluokkaa C, missä C = P tai C = NP, niin kaikilla aakkostoilla τ ja kaikilla K Str[τ] pätee K < C jos ja vain jos K on aksiomatisoitavissa logiikassa L. Olemme nyt luonnollisesti kiinnostuneita löytämään luokkia P ja NP vastaavia logiikoita. Selvästi kaikilla aakkostoilla τ lausejoukot FO+IFP[τ] ja Σ 1 1[τ] ovat ratkeavia. Itse asiassa lisäksi logiikka FO+IFP toteuttaa ehdon 3. määritelmästä II.3 ja vastaavasti logiikka Σ 1 1 toteuttaa ehdon 3. määritelmästä II.4. Lemma II.6. Olkoon τ aakkosto. 1. On olemassa laskettava funktio, joka kuvaa jokaisen lauseen ϕ L[τ] pariksi (M, p), missä p on N-kertoiminen polynomi ja M on luokan Mod(ϕ) < ratkaiseva deterministinen ajassa p toimiva Turingin kone. 2. On olemassa laskettava funktio, joka kuvaa jokaisen lauseen ϕ L[τ] pariksi (M, p), missä p on N-kertoiminen polynomi ja M on luokan Mod(ϕ) < ratkaiseva epädeterministinen ajassa p toimiva Turingin kone.
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ää,
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
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.
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,
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
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
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
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,
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
1.1. Määritelmä. a) Termit ovat merkkijonoja, jotka muodostuvat induktiivisesti. k 1
Tähän mennessä aakkoston rooli on jäänyt mallin käsitteessä hivenen irralliseksi seikaksi, sillä symboleita on käytetty lähinnä mallin rakenneosien (funktioiden, relaatioiden ja vakioiden) indeksoimiseen.
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
Logiikan kertausta. TIE303 Formaalit menetelmät, kevät Antti-Juhani Kaijanaho. Jyväskylän yliopisto Tietotekniikan laitos.
TIE303 Formaalit menetelmät, kevät 2005 Logiikan kertausta Antti-Juhani Kaijanaho antkaij@mit.jyu.fi Jyväskylän yliopisto Tietotekniikan laitos TIE303 Formaalit mentetelmät, 2005-01-27 p. 1/17 Luento2Luentomoniste
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ää 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
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
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.
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):
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.
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
1. Universaaleja laskennan malleja
1. Universaaleja laskennan malleja Laskenta datan käsittely annettuja sääntöjä täsmällisesti seuraamalla kahden kokonaisluvun kertolasku tietokoneella, tai kynällä ja paperilla: selvästi laskentaa entä
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
Büchin lause ja transitiivisen sulkeuman logiikat
TAMPEREEN YLIOPISTO Matematiikan Pro Gradu -tutkielma Outi Vatula Büchin lause ja transitiivisen sulkeuman logiikat Matematiikan, tilastotieteen ja filosofian laitos Matematiikka Joulukuu 2005 TAMPEREEN
(Interaktiivisen tietokoneohjelman tapauksessa tietenkin syötteet ja tulosteet vuorottelevat.
"!#$ Edellisissä luvuissa on ollut esimerkkejä malleista: toisaalta puhtaasti matemaattisia objekteja, kuten ryhmiä, lineaarijärjestettyjä joukkoja ja verkkoja, toisaalta sellaisia malleja, kuten suomalaisten
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,
Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista
Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista Antti-Juhani Kaijanaho 15. maaliskuuta 2012 1 Apumääritelmä Määritelmä 1. Olkoon Σ merkistö, jolla on olemassa täydellinen järjestys ( ) Σ 2.
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
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:
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
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
3. Laskennan vaativuusteoriaa
3. Laskennan vaativuusteoriaa tähän asti puhuttu siitä, mitä on mahdollista laskea äärellisessä ajassa siirrytään tarkastelemaan laskemista kohtuullisessa ajassa vaihtoehtoisesti voidaan laskenta-ajan
(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
Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja
582206 Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja 1. Esitä tilakaaviona NFA N = (Q, Σ, δ, q 0, F ), missä Q = { q 0, q 1, q 2, q 3, q 4, q 5, q 6, q 7 }, Σ = { a, b, c }, F = { q 4 } ja δ on
Ratkeavuus ja efektiivinen numeroituvuus
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
TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 12. marraskuuta 2015
TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 12. marraskuuta 2015 Sisällys Muistathan A B -konstruktion 0 k 1 i 2 s 3 s 4 a 5 0 k 1 o 2 i 3 r 4 a 5 00 k 11 i
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
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 Γ
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
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,
Automaatit. Muodolliset kielet
Automaatit Automaatit ovat teoreettisia koneita, jotka käsittelevät muodollisia sanoja. Automaatti lukee muodollisen sanan kirjain kerrallaan, vasemmalta oikealle, ja joko hyväksyy tai hylkää sanan. Täten
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ää
Epästandardit reaaliluvut
Kandidaatintutkielma Epästandardit reaaliluvut Janne Korhonen 11. tammikuuta 2007 Sisältö 1 Reaalilukujen epästandardimalli 5 1.1 Kompaktisuuslause........................ 5 1.2 Epästandardimallin olemassaolo.................
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
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
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
Ää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ää
Hahmon etsiminen syotteesta (johdatteleva esimerkki)
Hahmon etsiminen syotteesta (johdatteleva esimerkki) Unix-komennolla grep hahmo [ tiedosto ] voidaan etsia hahmon esiintymia tiedostosta (tai syotevirrasta): $ grep Kisaveikot SM-tulokset.txt $ ps aux
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/
Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus
Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus 1 / 51 Lineaarikombinaatio Johdattelua seuraavaan asiaan (ei tarkkoja määritelmiä): Millaisen kuvan muodostaa joukko {λv λ R, v R 3 }? Millaisen
14. Juurikunnat Määritelmä ja olemassaolo.
14. Juurikunnat Mielivaltaisella polynomilla ei välttämättä ole juuria tarkasteltavassa kunnassa. Tässä luvussa tutkitaan sellaisia algebrallisia laajennoksia, jotka saadaan lisäämällä polynomeille juuria.
Insinöörimatematiikka A
Insinöörimatematiikka A Mika Hirvensalo mikhirve@utu.fi Matematiikan ja tilastotieteen laitos Turun yliopisto 2018 Mika Hirvensalo mikhirve@utu.fi Luentoruudut 3 1 of 23 Kertausta Määritelmä Predikaattilogiikan
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
MS-A0402 Diskreetin matematiikan perusteet
MS-A040 Diskreetin matematiikan perusteet Osa : Relaatiot ja funktiot Riikka Kangaslampi 017 Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Relaatiot Relaatio Määritelmä 1 Relaatio joukosta A
Lukualueiden laajentamisesta
Lukualueiden laajentamisesta Tuomas Korppi 1 Poleeminen johdanto Opettaja! Oletko opettanut lukualueiden laajentamista koskevat asiat väärin? Lue tämä ja päivitä tietämystäsi. Aina aika-ajoin törmää nimittäin
2. Minkä joukon määrittelee kaava P 0 (x 0 ) P 1 (x 0 ) mallissa M = ({0, 1, 2, 3}, P M 0, P M 1 ), kun P M 0 = {0, 1} ja P M 1 = {1, 2}?
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan II, syksy 2018 Harjoitus 4 Ratkaisuehdotukset 1. Mitkä muuttujat esiintyvät vapaina kaavassa x 2 ( x 0 R 0 (x 1, x 2 ) ( x 3 R 0 (x 3, x 0
Äärellisten mallien teoria
Äärellisten mallien teoria Harjoituksen 7 ratkaisut (Hannu Niemistö) Tehtävä 1 Olkoot G ja H äärellisiä verkkoja, joilla kummallakin on l yhtenäistä komponenttia Olkoot G i, i {0,,l 1}, verkon G ja H i,
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/
Säännöllisten kielten sulkeumaominaisuudet
Säännöllisten kielten sulkeumaominaisuudet Osoitamme nyt, että säännöllisten kielten joukko on suljettu yhdisteen, konkatenaation ja tähtioperaation suhteen. Toisin sanoen jos A ja B ovat säännöllisiä,
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ä:
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 19. tammikuuta 2012
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 19. tammikuuta 2012 Sisällys Sisällys Muistathan A B -konstruktion 0 k 1 i 2 s 3 s 4 a 5 0 k 1 o 2 i 3 r 4
Pinoautomaatit. TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 6. kesäkuuta 2013 TIETOTEKNIIKAN LAITOS. Pinoautomaatit.
TIEA241 Automaatit ja kieliopit, kesä 2013 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 6. kesäkuuta 2013 Sisällys Aikataulumuutos Tämänpäiväinen demotilaisuus on siirretty maanantaille klo 14:15 (Ag Delta).
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
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
Tietojenkäsittelyteorian alkeet, osa 2
TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 12. syyskuuta 2016 Sisällys vs Ovat eri asioita! Älä sekoita niitä. Funktiot Funktio f luokasta A luokkaan B, merkitään
LUKU II HOMOLOGIA-ALGEBRAA. 1. Joukko-oppia
LUKU II HOMOLOGIA-ALGEBRAA 1. Joukko-oppia Matematiikalle on tyypillistä erilaisten objektien tarkastelu. Tarkastelu kohdistuu objektien tai näiden muodostamien joukkojen välisiin suhteisiin, mutta objektien
P? = NP Kysymys ratkaisun keksimisestä ja sen tarkistamisesta
P? = NP Kysymys ratkaisun keksimisestä ja sen tarkistamisesta Juha Nurmonen Matematiikan laitos Helsingin yliopisto Ajatellaanpa esimerkiksi kauppamatkustajan jokapäiväistä ongelmaa: Kauppamatkustajan
δ : (Q {q acc, q rej }) (Γ k {, }) Q (Γ k {, }) {L, R}.
42 Turingin koneiden laajennuksia 1 oniuraiset koneet Sallitaan, että Turingin koneen nauha koostuu k:sta rinnakkaisesta urasta, jotka kaikki kone lukee ja kirjoittaa yhdessä laskenta-askelessa: Koneen
Lokaalisuus ja määriteltävyys
TAMPEREEN YLIOPISTO Pro gradu -tutkielma Heini Lehtipuu Lokaalisuus ja määriteltävyys Luonnontieteiden tiedekunta Matematiikka Toukokuu 2017 2 Tampereen yliopisto Luonnontieteiden tiedekunta LEHTIPUU,
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
TAMPEREEN YLIOPISTO Pro gradu -tutkielma. Roosa Niemi. Riippuvuuslogiikkaa
TAMPEREEN YLIOPISTO Pro gradu -tutkielma Roosa Niemi Riippuvuuslogiikkaa Informaatiotieteiden yksikkö Matematiikka Syyskuu 2011 Tampereen yliopisto Informaatiotieteiden yksikkö ROOSA NIEMI: Riippuvuuslogiikkaa
SAT-ongelman rajoitetut muodot
SAT-ongelman rajoitetut muodot olemme juuri osoittaneet että SAT on NP-täydellinen perusidea on nyt osoittaa joukolle kiinnostavia ongelmia A NP että SAT p m A, jolloin kyseiset A myös ovat NP-täydellisiä
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.
Ehrenfeucht-Fraïssé-pelistä
TAMPEREEN YLIOPISTO Pro gradu -tutkielma Hanna Sulonen Ehrenfeucht-Fraïssé-pelistä Informaatiotieteiden yksikkö Matematiikka 2012 2 Tampereen yliopisto Informaatiotieteiden yksikkö SULONEN, HANNA: Ehrenfeucht-Fraïssé-pelistä
Hieman joukko-oppia. A X(A a A b A a b).
Hieman joukko-oppia Seuraavassa esittelen hieman alkeellista joukko-oppia. Päämääränäni on saada käyttöön hyvinjärjestyslause, jota tarvitsemme myöhemmin eräissä todistuksissa. Esitykseni on aika, vaikkei
T Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet )
T-79144 Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet 11-22) 26 29102004 1 Ilmaise seuraavat lauseet predikaattilogiikalla: a) Jokin porteista on viallinen
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
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).
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
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
1. Universaaleja laskennan malleja
1. Universaaleja laskennan malleja Esimerkkinä universaalista laskennan mallista tarkastellaan Turingin konetta muunnelmineen. Lyhyesti esitellään myös muita malleja. Tämän luvun jälkeen opiskelija tuntee
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
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ä
verkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari
Tehtävä 9 : 1 Merkitään kirjaimella G tehtäväpaperin kuvan vasemmanpuoleista verkkoa sekä kirjaimella H tehtäväpaperin kuvan oikeanpuoleista verkkoa. Kuvan perusteella voidaan havaita, että verkko G on
Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg
Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA Karoliina Ljungberg 16.04.2009 Ohjaajat: Ari Venäläinen, Jouni Räisänen
Satunnaisalgoritmit. Topi Paavilainen. Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Satunnaisalgoritmit Topi Paavilainen Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Helsinki, 23. helmikuuta 2014 1 Johdanto Satunnaisalgoritmit ovat algoritmeja, joiden
Äärellisten mallien teoria
Äärellisten mallien teoria Harjoituksen 4 ratkaisut Tehtävä 1. Määritä suurin aste k, johon saakka kuvan verkot G ja G ovat osittaisesti isomorfisia: Ratkaisu 1. Huomataan aluksi, että G =4 G : Ehrenfeucht-Fraïssé
Muunnelmia Turingin koneista sekä muita vaihtoehtoisia malleja
sekä muita TIEA241 Automaatit ja kieliopit, kesä 2013 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 19. kesäkuuta 2013 Sisällys Chomskyn hierarkia (ja vähän muutakin) kieli säännöllinen LL(k) LR(1) kontekstiton
Induktiotodistus: Tapaus n = 0 selvä; ol. väite pätee kun n < m.
Väite: T (n) (a + b)n 2 + a. Induktiotodistus: Tapaus n = 0 selvä; ol. väite pätee kun n < m. Huomaa että funktion x x 2 + (m 1 x) 2 kuvaaja on ylöspäin aukeava paraabeli, joten funktio saavuttaa suurimman
HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty
HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty Laitos Institution Department Matemaattis-luonnontieteellinen Tekijä Författare Author Aleksi
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ä
Luonnollisten lukujen ja kokonaislukujen määritteleminen
Luonnollisten lukujen ja kokonaislukujen määritteleminen LuK-tutkielma Jussi Piippo Matemaattisten tieteiden yksikkö Oulun yliopisto Kevät 2017 Sisältö 1 Johdanto 2 2 Esitietoja 3 2.1 Joukko-opin perusaksioomat...................
15. Laajennosten väliset homomorfismit
15. Laajennosten väliset homomorfismit Rakenteiden väliset homomorfismit auttavat selvittämään rakenteiden suhteita toisiinsa. Rakenteen sisäiset isomorfismit niin sanotut automorfismit auttavat vastaavasti
ja λ 2 = 2x 1r 0 x 2 + 2x 1r 0 x 2
Johdatus diskreettiin matematiikkaan Harjoitus 4, 7.10.2015 1. Olkoot c 0, c 1 R siten, että polynomilla r 2 c 1 r c 0 on kaksinkertainen juuri. Määritä rekursioyhtälön x n+2 = c 1 x n+1 + c 0 x n, n N,
on Abelin ryhmä kertolaskun suhteen. Tämän joukon alkioiden lukumäärää merkitään
5. Primitiivinen alkio 5.1. Täydennystä lukuteoriaan. Olkoon n Z, n 2. Palautettakoon mieleen, että kokonaislukujen jäännösluokkarenkaan kääntyvien alkioiden muodostama osajoukko Z n := {x Z n x on kääntyvä}
Tarkastelemme ensin konkreettista esimerkkiä ja johdamme sitten yleisen säännön, joilla voidaan tietyissä tapauksissa todeta kielen ei-säännöllisyys.
Ei-säännöllisiä kieliä [Sipser luku 1.4] Osoitamme, että joitain kieliä ei voi tunnistaa äärellisellä automaatilla. Tulos ei sinänsä ole erityisen yllättävä, koska äärellinen automaatti on äärimmäisen
Pinoautomaatit. Pois kontekstittomuudesta
TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 3. joulukuuta 2015 Sisällys Pinoautomaatti NFA:n yleistys automaatilla on käytössään LIFO-muisti 1 eli pino Pino
Pinoautomaatit. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 6. lokakuuta 2016 TIETOTEKNIIKAN LAITOS
.. TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 6. lokakuuta 2016 Sisällys. Harjoitustehtävätilastoja Tilanne 6.10.2016 klo 8:28 passed potential redo submitters
Säännölliset kielet. Sisällys. Säännölliset kielet. Säännölliset operaattorit. Säännölliset kielet
TIEA241 Automaatit ja kieliopit, kesä 2013 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 24. toukokuuta 2013 Sisällys Formaalit kielet On tapana sanoa, että merkkijonojen joukko on (formaali) kieli. Hieman
Relaation ominaisuuksia. Ominaisuuksia koskevia lauseita Sulkeumat. Joukossa X määritelty relaatio R on. (ir) irrefleksiivinen, jos x Rx kaikilla x X,
Relaation Joukossa X määritelty relaatio R on (r) refleksiivinen, jos xrx kaikilla x X, (ir) irrefleksiivinen, jos x Rx kaikilla x X, Relaation Joukossa X määritelty relaatio R on (r) refleksiivinen, jos
Joukossa X määritelty relaatio R on. (ir) irrefleksiivinen, jos x Rx kaikilla x X,
Relaation Joukossa X määritelty relaatio R on (r) refleksiivinen, jos xrx kaikilla x X, (ir) irrefleksiivinen, jos x Rx kaikilla x X, (s) symmetrinen, jos xry yrx, (as) antisymmetrinen, jos xry yrx x =
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