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

Samankaltaiset tiedostot
Pinoautomaatit. Pois kontekstittomuudesta

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

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

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

Rajoittamattomat kieliopit

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

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

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

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

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

Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista

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

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

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

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

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. 12. marraskuuta 2015

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

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

Yhteydettömät kieliopit [Sipser luku 2.1]

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

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

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

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

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

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

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

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

Chomskyn hierarkia ja yhteysherkät kieliopit

Attribuuttikieliopit

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

2. Yhteydettömät kielet

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

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

Ei-yhteydettömät kielet [Sipser luku 2.3]

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

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

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

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

Laskennan mallit (syksy 2010) Harjoitus 8, ratkaisuja

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

Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen:

T Syksy 2006 Tietojenkäsittelyteorian perusteet T Harjoitus 7 Demonstraatiotehtävien ratkaisut

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

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 12. kesäkuuta 2013

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

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

Esimerkki 2.28: Tarkastellaan edellisen sivun ehdot (1) (3) toteuttavaa pinoautomaattia, jossa päätemerkit ovat a, b ja c ja pinoaakkoset d, e ja $:

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

Osoitamme, että jotkut kielet eivät ole säännöllisiä eli niitä ei voi tunnistaa äärellisellä automaatilla.

S BAB ABA A aas bba B bbs c

Täydentäviä muistiinpanoja jäsennysalgoritmeista

Säännöllisten kielten sulkeumaominaisuudet

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

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

Rajoittamattomat kieliopit (Unrestricted Grammars)

ICS-C2000 Tietojenkäsittelyteoria. Tähän mennessä: säännölliset kielet. Säännöllisten kielten pumppauslemma M :=

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

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

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

Muunnelmia Turingin koneista sekä muita vaihtoehtoisia malleja

T Syksy 2002 Tietojenkäsittelyteorian perusteet Harjoitus 8 Demonstraatiotehtävien ratkaisut

ICS-C2000 Tietojenkäsittelyteoria

Yhteydettömän kieliopin jäsennysongelma

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

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

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

TIEA341 Funktio-ohjelmointi 1, kevät 2008

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

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

Muita universaaleja laskennan malleja

Kaikki mitä olet aina halunnut tietää pumppauslemmoista, mutta mitä et ole kehdannut kysyä

5.3 Ratkeavia ongelmia

Täydentäviä muistiinpanoja laskennan rajoista

Rekursiivinen Derives on periaatteessa aivan toimiva algoritmi, mutta erittäin tehoton. Jos tarkastellaan esim. kieliopinpätkää

Jäsennys. TIEA341 Funktio ohjelmointi 1 Syksy 2005

Olkoon G = (V,Σ,P,S) yhteydetön kielioppi. Välike A V Σ on tyhjentyvä, jos A. NULL := {A V Σ A ε on G:n produktio};

Tietojenkäsittelyteorian alkeet, osa 2

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

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

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

LR-jäsennys. Antti-Juhani Kaijanaho. 3. lokakuuta 2016


Automaatit. Muodolliset kielet

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

Luonnolliset vs. muodolliset kielet

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

TKT20005 Laskennan mallit (syksy 2018) Kurssikoe, malliratkaisut

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

Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja

S uay uvaxy uv 2 Ax 2 y... uv i Ax i y uv i wx i y.

Kontekstittomat jäsennysmenetelmät

Tehtävä 2: Säännölliset lausekkeet

Ydin-Haskell Tiivismoniste

11.4. Context-free kielet 1 / 17

Aloitus. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 9. lokakuuta 2016 TIETOTEKNIIKAN LAITOS. Aloitus. Meta.

Säännöllisten operaattoreiden täydentäviä muistiinpanoja

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

Rekursiiviset tyypit

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

Transkriptio:

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

Sisällys

Harjoitustehtävät loppukurssilla luentojen 14 18 harjoitustehtävistä on tehtävä yksi tehtävä hyväksytysti per luento saat valita vapaasti minkä tehtävän miltäkin luennolta ei koske lopputentillä tai kirjatentillä suorittavia harjoitustehtävien ratkaisut palautettava 31.10.2016 mennessä määräaikaa voidaan siirtää perustellusta syystä pyyntö perusteluineen esitettävä luennoijalle ennen määräajan päättymistä määräaikaan mennessä palautetun tehtävän saa korjata määräajan päätyttyä viikon sisällä palautteen vastaanottamisesta ja enintään kerran, ellei erikseen ole muuta sovittu

Toisesta välikokeesta keskiviikkona 19.10.2016 klo 12 14 Ag Auditorio 3 (luennon paikalla) ei tarvitse ilmoittautua pyydän valitsemaan suoritustavaksi välikokeet Korpissa jos ja vain jos aiot tulla kokeeseen järjestelyt samanlaiset kuin ensimmäisessä välikokeessa opiskelijat, joille järjestettiin ensimmäinen välikoe erillisessä koetilaisuudessa lääketieteellisistä syistä: sama paikka ja samat järjestelyt kuin viimeksi ei tarvitse sopia erikseen

Harjoitustyöstä lue http://users.jyu.fi/~antkaij/opetus/ auki/2016/harjoitustyo.html tarkoin! Ohjelmointityön tulee olla tietokoneohjelma, jossa keskeistä roolia näyttelevät sekä säännöllisten että kontekstittomien kielten tekniikat (esim. äärelliset automaatit, säännölliset lausekkeet, kontekstittomat kieliopit, jäsennystekniikat tai pinoautomaatit). aiheesta on syytä sopia minun kanssani työ palautettava 7.12.2016 klo 16:00 määräaikaa voidaan siirtää perustellusta syystä pyyntö perusteluineen esitettävä luennoijalle ennen määräajan päättymistä määräaikaan mennessä palautetut työt arvioidaan 22.12.2016 mennessä

lemma (kontekstittomat kielet) Lause Olkoon A Σ kontekstiton kieli. Tällöin on olemassa luku p (pumppauspituus), jolle kaikilla s A, s p, on olemassa u, v, w, x, y Σ, joille s = uvwxy ja 1. vx = ε 2. vwx p 3. uv i wx i y A kaikilla i N pätevät. Todistus Jälkiprujussa.

Esimerkki A = { a i b i c i i N }

Kontekstiset kieliopit Kontekstinen (engl. context-sensitive) kielioppi on kontekstittomien kielioppien yleistys Produktiot ovat muotoa ω ω tai S ε ω, ω (V Σ) +, ω ω S on aloitussymboli Jos kieliopissa on S ε, niin S ei saa esiintyä minkään produktion oikealla puolella. Nimi kontekstinen tulee normaalimuodosta, jossa produktiot ovat muotoa ω 1 Aω 2 ω 1 ωω 2 tai S ε ω 1, ω 2 (V Σ), ω (V Σ) + ω 1 ja ω 2 muodostavat produktion kontekstin Kontekstisen kieliopin tuottama kieli määritellään johtojen käsitteen avulla kuten kontekstittomissa kieliopeissa. Kieli, joka voidaan tuottaa jollakin kontekstisella kieliopilla on kontekstinen kieli.

Esimerkki S abc aabc ε Ab ba Ac Bbcc bb Bb ab aa aaa

Yleinen eli rajoittamaton kielioppi on kontekstittomien kielioppien yleistys. Kuten kontekstittomissa kieliopeissa: välikesymbolien joukko V, päätesymbolien joukko Σ ja aloitussymboli S. Produktiot ovat muotoa ω 1 ω 2 ω 1 (V Σ) + nuolen vasemmallakin puolella saa siis olla mitä vain (paitsi ei tyhjää)! ω 2 (V Σ) Kieliopin tuottama kieli määritellään johtojen käsitteen avulla tavanomaiseen tapaan. Kieli, joka voidaan tuottaa jollakin yleisellä kieliopilla on laskettavasti lueteltava (engl. computably enumerable). 1 1 Historiallisista syistä myös termiä rekursiivisesti lueteltava (engl. recursively enumerable) käytetään.

Esimerkki taululla Laaditaan kielioppi, joka tuottaa kielen { a 2n n N }.