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

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

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

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

Täydentäviä muistiinpanoja laskennan rajoista

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

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

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

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

Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista

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

Muunnelmia Turingin koneista sekä muita vaihtoehtoisia malleja

5.3 Ratkeavia ongelmia

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

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

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

Pinoautomaatit. Pois kontekstittomuudesta

Rekursiiviset palautukset [HMU 9.3.1]

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

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

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

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

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

Lisää pysähtymisaiheisia ongelmia

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

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

2. Laskettavuusteoriaa

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

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

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

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

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

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

Pysähtymisongelman ratkeavuus [Sipser luku 4.2]

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

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

Säännöllisen kielen tunnistavat Turingin koneet

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

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

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

Rajoittamattomat kieliopit

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

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

Chomskyn hierarkia ja yhteysherkät kieliopit

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

2. Laskettavuusteoriaa

1. Universaaleja laskennan malleja

δ : (Q {q acc, q rej }) (Γ k {, }) Q (Γ k {, }) {L, R}.

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

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

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

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

Laskennan mallit (syksy 2009) Harjoitus 11, ratkaisuja

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

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

ICS-C2000 Tietojenkäsittelyteoria

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

Entscheidungsproblem

Algoritmin määritelmä [Sipser luku 3.3]

Turingin koneen laajennuksia

Ratkeavuus ja efektiivinen numeroituvuus

Rajoittamattomat kieliopit (Unrestricted Grammars)

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

Entscheidungsproblem

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

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

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

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

ICS-C2000 Tietojenkäsittelyteoria


Muita vaativuusluokkia

1. Universaaleja laskennan malleja

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

M =(K, Σ, Γ,, s, F ) Σ ={a, b} Γ ={c, d} = {( (s, a, e), (s, cd) ), ( (s, e, e), (f, e) ), (f, e, d), (f, e)

Kertausta 1. kurssikokeeseen

Yhteydettömän kieliopin jäsennysongelma

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

Muita universaaleja laskennan malleja

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

Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja

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

Säännöllisten kielten sulkeumaominaisuudet

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

Output. Input Automaton

TKT20005 Laskennan mallit (syksy 2018) Kurssikoe, malliratkaisut

Tietojenkäsittelyteorian alkeet, osa 2

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

Laskennan teoria

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

6.1 Rekursiiviset palautukset

TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 7. joulukuuta 2009

formalismeja TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho 15. joulukuuta 2015 TIETOTEKNIIKAN LAITOS

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

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

Jos sekaannuksen vaaraa ei ole, samastamme säännöllisen lausekkeen ja sen esittämän kielen (eli kirjoitamme R vaikka tarkoitammekin L(R)).

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

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 3. joulukuuta 2015

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

Hahmon etsiminen syotteesta (johdatteleva esimerkki)

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

Transkriptio:

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 muotoa Onko x:llä ominaisuus P(x)? Rajoitutaan tarkastelemaan, joissa kaikilla relevanteilla x:illä on olemassa äärellinen esitys (merkkijonona). Määritellään ominaisuutta vastaava kieli L(P) = { x Σ P(x) }. Päätösongelma onko x:llä ominaisuus P(x) voidaan siten muotoilla muotoon: Kuuluuko merkkijono x kieleen L(P)?

Esimerkkejä päätösongelmista Sopiiko merkkijono w säännölliseen lausekkeeseen s? Onko jono (w 1,..., w n ) aakkosjärjestyksessä? Onko lauselogiikan kaava ϕ tautologia? Onko predikaattilogiikan kaava ϕ tautologia? Onko rekursiivisesti lueteltava kieli A tyhjä? Pysähtyykö Turingin kone M syötteellä w?

Päätösongelman ratkeavuus Päätösongelma on puoliratkeava (engl. semidecidable), jos on olemassa Turingin kone M, joka tunnistaa sitä vastaavan kielen. toisin sanoen: jos sitä vastaava kieli on rekursiivisesti lueteltava Päätösongelma on ratkeava (engl. decidable), jos on olemassa Turingin kone M, joka ratkaisee sitä vastaavan kielen. toisin sanoen: jos sitä vastaava kieli on rekursiivinen

Ratkeavia päätös Kuuluuko annettu merkkijono tiettyyn kontekstittomaan kieleen? Kuuluuko annettu merkkijono kieleen { a i b i c i i N }?

Turingin koneen tutkiminen Turingin koneella Joissakin tilanteissa voi olla hyvä pystyä antamaan Turingin koneelle syötteenä Turingin kone. Kone pitää kuitenkin ensiksi muuttaa Turingin koneen luettavaan muotoon eli merkkijonoksi. Yksinkertaisuuden vuoksi rajoitutaan TM:iin, joiden syötemerkistö on {0, 1}.

Turingin koneen binäärikoodaus Olkoon M = (Q, {0, 1}, Γ,, δ, q 0, q yes, q no ) standardimuotoinen 1 Turingin kone. Numeroidaan tilat: q 1 = q yes q 2 = q no {q3,..., q Q 1 } = Q \ {q 0, q yes, q no } Numeroidaan nauhamerkit: {c 0,..., c Γ 1 } = Γ. Numeroidaan suunnat: 0 = L ja 1 = R. Koodataan tilasiirtymä δ(q i, c j ) = (q k, c l, m ) binäärijonona w i,j = 0 i+1 10 j+1 10 k+1 10 l+1 10 m+1. M voidaan koodata binäärijonoksi w M = 111w 0,0 11w 0,1 11 11w 0, Γ 1 11 11w Q 3, Γ 1 111 Huomaa, että samalla koneella on useita binäärikoodauksia. Tällä ei ole jatkossa olennaista merkitystä. 1 Jos kone ei ole standardimuotoinen, se on ensiksi muutettava sellaiseksi.

Huomioita Kaikilla k {0, 1} joille on olemassa M, jolle pätee k = w M, merkitään M k = M. Kaikilla k {0, 1} joille ei ole olemassa M, jolle pätisi k = w M, merkitään M k :lla TM:ää, joka hylkää kaikki syötteet.

Diagonaalikieli Lause Päätösongelma Onko k {0, 1} sellaisen TM:n M binäärikoodaus, joka ei hyväksy omaa koodaustaan? ei ole (puoli)ratkeava.

Sisällys

Universaalikieli Lause Päätösongelma Onko merkkijono w esitettävissä muodossa w = w M v, missä M on standardimallinen TM, joka hyväksyy syötteen v? on puoliratkeava mutta ei ratkeava. Huomautuksia Kyseistä ongelmaa vastaa ns. universaalikieli U = { kv v L(M k ) }. Turingin kone M, jolle pätee L(U) = M, on universaalikone. Universaalikone on Turingin koneen binääriesityksen (metasirkulaarinen) tulkki.

Universaalikone Tähän mennessä aina kun halutaan ratkaista uusi ongelma, on pitänyt luoda uusi Turingin kone tai RA-kone. Olisiko mahdollista luoda Turingin kone (tai RA-kone), joka saa tehtävänkuvauksen syötteenään? Sellaista sanotaan universaalikoneeksi. Tarkastellaan kysymystä Turingin koneiden näkökulmasta. Universaalikoneen syöte on w M v, missä M on ongelmakuvauksena toimiva Turingin kone ja v on sille tarkoitettu syöte. Universaalikone sitten käyttäytyy kuten M syötteellä v. Merkitään mielivaltaista universaalikonetta M U.

Eräs kolminauhainen universaalikone 1. Pysähdy ja hylkää syöte, jos sen alussa ei ole minkään Turingin koneen binäärikoodausta. 2. Kopioi syötteen loppuosa kakkosnauhalle käyttäen koodausta c j 0 j+1 1. 3. Kirjoita kolmosnauhalle merkki 0. 4. Siirrä kaikki lukupäät kunkin nauhan alkuun. 5. Olkoon 0 i+1 kolmosnauhan sisältö ja olkoon 0 j+1 1 kakkosnauhan lukupään kohdalla. 6. Jos i = 1, pysähdy ja hyväksy syöte. 7. Jos i = 2, pysähdy ja hylkää syöte. 8. Etsi 1. nauhalta 110 i+1 10 j+1 10 k+1 10 l+1 10 m+1. 9. Kirjoita kolmosnauhan alkuun 0 k+1. 10. Korvaa 0 j+1 1 nauhan 2 lukupään kohdalla 0 l+1 1:llä. 11. Siirrä kakkosnauhan lukupää yksi koodattu merkki vasemmalle (m = 0) tai oikealle (m = 1). 12. Hyppää askeleeseen 5.

Mikään universaalikone ei pysähdy aina Taululla.

Sisällys

Turingin koneiden pysähtymisongelma Lause Päätösongelma Pysähtyykö standardimallinen TM M syötteellä w? on puoliratkeava mutta ei ratkeava.

Epätyhjyysongelma Lause Päätösongelma Onko standardimallisen TM:n tunnistama kieli epätyhjä? on puoliratkeava mutta ei ratkeava.