Arvostelu OHJ Johdatus tietojenkäsittelyteoriaan syksy op. Viikkoharjoitukset. Materiaali. Kurssista voi selvitä parhaalla mahdollisella

Samankaltaiset tiedostot
2.2 Automaattien minimointi

Olkoon. M = (Q, Σ, δ, q 0, F)

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

Laskennan mallit (syksy 2007) Harjoitus 5, ratkaisuja

Olkoon. äärellinen automaatti. Laajennetaan M:n siirtymäfunktio yksittäisistä syötemerkeistä merkkijonoihin: jos q Q, x Σ, merkitään

2.6 SÄÄNNÖLLISET LAUSEKKEET Automaattimalleista poikkeava tapa kuvata yksinkertaisia kieliä. Olkoot A ja B aakkoston Σ kieliä. Perusoperaatioita:

T Syksy 2002 Tietojenkäsittelyteorian perusteet Harjoitus 5 Demonstraatiotehtävien ratkaisut. ja kaikki a Σ ovat säännöllisiä lausekkeita.

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

Automaatin tunnistama kieli on sen hyväksymien merkkijonojen joukko. Täsmällinen muotoilu: δ,q 0,{q 2,q 3,q 6 }), missä

Automaattimalleista poikkeava tapa kuvata yksinkertaisia kieliä. Olkoot A ja B aakkoston Σ kieliä. Perusoperaatioita:

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

ICS-C2000 Tietojenkäsittelyteoria Kevät 2015

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

Laskennan mallit (syksy 2010) 1. kurssikoe, ratkaisuja

OHJ-2300 Johdatus tietojenkäsittelyteoriaan Syksy 2008

Kuvausta f sanotaan tällöin isomorfismiksi.

Laskennan perusmallit (LAP)

LAP: Laskennan perusmallit

Laskennan mallit Erilliskoe , ratkaisuja (Jyrki Kivinen)

Laskennan perusmallit (LAP)

Q = {q 1, q 2, q 3, q 4 } Σ = {a, b} F = {q 4 },

Matematiikan johdantokurssi, syksy 2017 Harjoitus 6, ratkaisuista. 1. Onko jokin demojen 5 tehtävän 3 relaatioista

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

Output. Input Automaton

Kertausta 1. kurssikokeeseen

Kertausta: kielet ja automaatit. ICS-C2000 Tietojenkäsittelyteoria. Alue ja aiheet. Äärelliset automaatit

TAMPEREEN YLIOPISTO Valinnaisten opintojen syventäviin opintoihin kuuluva tutkielma. Lauri Kumpulainen. Büchin automaateista

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

Pysähtymisongelman ratkeavuus [Sipser luku 4.2]

Diskreetin matematiikan perusteet Laskuharjoitus 6 / vko 13

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

T /2 Tietojenkäsittelyteorian perusteet T/Y

Laskennan perusmallit 2013: Kertausta

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

2.5 Säännöllisten kielten rajoituksista

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

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

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

T /1002 Tietojenkäsittelyteorian perusteet T/Y

3.3 KIELIOPPIEN JÄSENNYSONGELMA Ratkaistava tehtävä: Annettu yhteydetön kielioppi G ja merkkijono x. Onko

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

Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja

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

Mutta esimerkiksi 0-kertaisesti pumpattaessa: Siten L ei voi olla säännöllinen.

Yhteydettömän kieliopin jäsennysongelma

TEHTÄVÄ 1. Olkoon (f n ) jono jatkuvia funktioita f n : [a, b] R, joka suppenee välillä [a, b] tasaisesti kohti funktiota f : [a, b] R.

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

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

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

Q on automaatin tilojen äärellinen joukko; Σ on automaatin syöteaakkosto; δ : Q Σ Q on automaatin siirtymäfunktio; q 0 Q on automaatin alkutila;

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

Lyhyt johdatus joukko-oppiin ja relaatioihin

T /1002 Tietojenkäsittelyteorian perusteet T/Y

Automaattiteoria diskreetin signaalinkäsittelyn perusmallit ja -menetelmät ( diskreettien I/O-kuvausten yleinen teoria)

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

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

TIEA241 Automaatit ja kieliopit

S Laskennallinen systeemibiologia

6.2 Algoritmin määritelmä

5 Epäoleellinen integraali

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

5.3 Ratkeavia ongelmia

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

3 Integraali ja derivaatta

a = x 0 < x 1 < x 2 < < x n = b f(x) dx = I. lim f(x k ) x k=1

1. Universaaleja laskennan malleja

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

ANALYYSI I, kevät 2009

Chomskyn hierarkia ja yhteysherkät kieliopit

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

MS-A010{3,4} (ELEC*) Differentiaali- ja integraalilaskenta 1 Luento 7: Integraali ja analyysin peruslause

Käydään läpi: ääriarvo tarkastelua, L Hospital, integraalia ja sarjoja.

Kertausta ja täydennystä

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

Aiheet. ICS-C2000 Tietojenkäsittelyteoria M := Äärelliset automaatit vs. säännölliset lausekkeet. Äärelliset automaatit

8. Kieliopit ja kielet

MS-A010{2,3,4,5} (SCI,ELEC*, ENG*) Differentiaali- ja integraalilaskenta 1 Luento 7: Integraali ja analyysin peruslause

Säännöllisten kielten sulkeumaominaisuudet

MS-A010{3,4} (ELEC*) Differentiaali- ja integraalilaskenta 1 Luento 8: Integraalifunktio ja epäoleellinen integraali

ICS-C2000 Tietojenkäsittelyteoria

Diskreetin matematiikan perusteet Ratkaisut 4 / vko 11

Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

Laskennan teoria

MS-A010{2,3,4,5} (SCI, ELEC*, ENG*) Differentiaali- ja integraalilaskenta 1 Luento 8: Integraalifunktio ja epäoleellinen integraali

Riemannin integraalista

Automaatit. Muodolliset kielet

Riemannin integraali

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

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

Laskennan teoria

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

Johdatus matematiikkaan

Reaalinen lukualue. Millainen on luku, jossa on päättymätön ja jaksoton desimaalikehitelmä?

Täydentäviä muistiinpanoja epädeterministisistä äärellisistä automaateista

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

Määritelmä Olkoon C R m yksinkertainen kaari ja γ : [a, b] R m sen yksinkertainen parametriesitys, joka on paloittain C 1 -polku.

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

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

58131 Tietorakenteet ja algoritmit (kevät 2015) Toinen välikoe, malliratkaisut

Transkriptio:

OHJ-300 Johtus tietojenkäsittelyteorin syksy 006 6 op Luennot: prof Tpio Elom j DI Jussi Kujl m, to 6 T B 8 8 3 - työmtkt 6 9 j 6 309 - perioituko 9 3 0 Viikkohrjoitukset 59 Teknyo Timo Aho ti 0 sli T C3 Koe to 30 mrrskuut 006 Arvostelu: 30 + 8 = 38 Arvostelu Kurssist voi selvitä prhll mhollisell rvosnll pelkällä tentillä, mutt tentti (mx 30 p) ei ole ivn helppo siksi knntt osllistu viikottisiin lskuhrjoituksiin, joist s lisäpisteitä (mx 8 p) j joien tehtäviä itsenäisesti rtkomll oppii kurssin näennäisesti vikeit sioit Arvosn määräytyy oletettvsti seurvsti: pisteet 5 8 7 rvosn 3 5 3 Viikkohrjoitukset Viikkohrjoituksiin osllistuminen on erittäin suositeltv Vlmiuest esittää tulull vstus kysymykseen s kustkin merkinnän Kusskin hrjoituksiss on n 6 tehtävää kikkin merkintöjä voi kerätä n 6 0 = 60 kpplett Merkintöjä Lisäpisteet 0% (n ) 30% (n 8) 0% (n ) 3 80% (n 8) 7 90% (n 5) 8 Mterili Tällä toteutuskerrll oppikirj on Michel Sipser: Introuction to the Theory of Computtion, Secon E (Interntionl E), Thomson, 006 Melkein mikä thns iheen oppikirj ktt kurssill käsitellyt sit Vlmist monistett ei ole, luentoklvot pnnn verkkoon luentojen thtiin wwwcstutfi/kurssit/ohj-300/ / elom/opetus/ohj-300/ Tentti perustuu luentoihin (ei siis yksinomn klvoihin)

Luentoiktulu Johnto () Kertust: utomtit, kieliopit j kielet ( 3) Säännölliset kielet Kontekstittomt kielet 3 Lskettvuusteori ( 7) Lskennn mllej Rtkevuus Plutukset Eistyneitä iheit Lskennn vtivuusteori (8 ) Aikvtivuus Tilvtivuus Käytännöllinen rtkevuus Eistyneitä iheit 5 Lskennlliset ongelmt Lskennllinen ongelm voin mllint tietokoneell rtkistvksi; esim ritmetiikk, kkostminen, plknlskent, kurssikirjnpito, Ongelmn rtkisev ohjelm yleisempi esitys usein ymmärrettävämpi j mhollist esim nlysoinnin Ongelmll on tpuksi (= syötteitä), rtkisu on lgoritmi, jok liittää kuhunkin tpukseen vstuksen (= tulosteen) Tpus j sen vstus ovt äärellisesti (esim ittijonoin) esitettäviä Tpuksi voi oll ääretön määrä Lskennllinen ongelm on kuvus äärellisesti esitettävien tpusten joukost äärellisesti esitettävien vstusten joukkoon 7 Johnto Tällä kurssill nnetn johtus tietojenkäsittelyn mtemttis-teoreettiseen perustn Tietojenkäsittelijöien yleissivistykseen kuuluv tieto Tvoitteen on s perusymmärtämys siitä minkä tyyppisiä ongelmi tietokoneell voi peritteess rtkist Vielä tärkeämpää on hvit mille rtkevist ongelmist voi ohjelmoi tehokkn rtkisun Kurssill trkstellut tulokset ovt funmentlisi, tulevien vuosien tehonlisäykset tietokoneiss eivät tule poistmn näien tulosten merkitystä 6 Esitykset Äärellinen esitys = kkoston merkkijono Akkosto on äärellinen, epätyhjä joukko symoleit Esim inäärikkosto { 0, } j ltinlinen kkosto {A,B,,Z} Merkkijono on äärellinen järjestetty jono kkoston merkkejä Esim 0000 j TWILIGHT Merkkijonon x pituus x on siihen sisältyvien merkkien lukumäärä Esim 0000 = 5 j TWILIGHT =8 Tyhjän merkkijonon ε pituus ε = 0 8

Merkkijonojen yhteenliittäminen eli ktentio on niien perusopertio TWILIGHT ZONE = TWILIGHTZONE x = 0, y = 0 xx = 00, xy = 00, yy = 00 j yx = 00 3 Kikill x on xε = εx = x Kikill x, y on xy = x + y Jos w = xy, niin x on w:n lkuos (prefix) j y on sen loppuos (suffix) Akkoston Σ kikkien merkkijonojen joukko on Σ Esim Σ = { 0, } Σ = { ε, 0,, 00, 0, 0,, } Muit merkintöjä: Σ k, Σ k j Kääntäen jokist merkkijonojoukko A vst päätösongelm π A : Σ { 0, },, jos x A; π A (x) = 0, jos x / A Merkkijonojoukko A Σ snotn kkoston Σ (formliksi) kieleksi Vstv päätösongelm π A nimitetään kielen A tunnistusongelmksi Formlit kielet j päätösongelmt voin smist Σ = k N Σ k 9 Päätösongelmt Lskennllinen ongelm π on siis kuvus π : Σ Γ, missä Σ j Γ ovt kkostoj Päätösongelmt ovt tärkeä liluokk; niissä ongelmn tpuksen vstus on kyllä ti ei Ne ovt siis muoto π : Σ { 0, } Jokist päätösongelm π vst niien tpusten joukko, joill vstus on kyllä: A π = { x Σ π(x) = } Lskennllisten ongelmien rtkevuus Snotn, että ohjelm P (x) rtkisee lskennllisen ongelmn π, jos kikill syötteillä x ohjelm P tulost rvon π(x) Voinko kikki mholliset lskennlliset ongelmt rtkist ohjelmin? Ääretön joukko X on numeroituv, jos on olemss ijektio f : N X Myös äärelliset joukot ovt numeroituvi Bijektio = injektio + surjektio Injektio: f(x ) = f(x ) x = x Surjektio: f(a) = B Ääretön joukko, jok ei ole numeroituv on ylinumeroituv 0

Luse Minkä thns kkoston Σ merkkijonojen joukko Σ on numeroituv To Olkoon Σ = {,,, n } Kiinnitetään merkeille kkosjärjestys ; olkoon se < < < n Joukon Σ merkkijonot voin nyt luetell knonisess järjestyksessä: Ensin luetelln 0:n mittset merkkijonot, sitten :n mittiset, :n mittiset jne Kunkin pituusryhmän sisällä merkkijonot luetelln vlituss kkosjärjestyksessä Tällöin ijektio f : N Σ on 0 ε Luse Minkä thns kkoston Σ päätösongelmien joukko on ylinumeroituv To Merkitään Π:llä kikkien Σ:n päätösongelmien kokoelm: Π = { π π on kuvus Σ { 0, } } Oletetn, että Π on numeroituv, so on olemss kikki Π:n lkiot kttv numerointi Π = { π 0, π, π, } Olkoon Σ :n merkkijonot Luseen toistuksen knonisess järjestyksessä lueteltuin x 0, x, x, Muoostetn uusi päätösongelm ˆπ : Σ { 0, }: 3 5 n n n + n n n + 3n n n + n n n n + n + n + n +, jos π i (x i ) = 0; ˆπ(x i ) = 0, jos π i (x i ) = Kosk Π on kikki Σ:n päätösongelmt kttv numerointi, niin ˆπ Π Täten ˆπ = π k jollkin k N Tällöin, jos π k (x k ) = ˆπ(x k ) = 0; ˆπ(x k ) = 0, jos π k (x k ) = ˆπ(x k ) = Tämä on ristiriit, joten tehty oletus (Π on numeroituv) ei voi pitää pikkns Näin ollen Π on ylinumeroituv Toistustekniikk on ns Cntorin igonlirgumentti 6

Kosk esim Jv-ohjelmt ovt loppujen lopuksi vin ASCII-merkistön merkkijonoj, niin niitä on Luseen mukn vin numeroituv joukko Lskennllisten ongelmien joukko on kuitenkin Luseen perusteell ylinumeroituv Näin ollen kikist lskennllisist ongelmist voin Jv-ohjelmin rtkist vin häviävän pieni os Sm ongelm on millä thns ohjelmointikielellä Rtkemttomt ongelmt käsittävät myös mielenkiintoisi / käytännöllisiä ongelmi Äärellinen utomtti on viisikko M = (Q, Σ, δ, q 0, F ), missä Q on utomtin tilojen joukko, Σ on utomtin syötekkosto, δ : Q Σ Q on siirtymäfunktio, q 0 Q on lkutil j F Q (hyväksyvien) lopputilojen joukko Automtti M hyväksyy merkkijonon w = w w w n Σ n jos Q:ss on tilojen jono r 0, r,, r n se r 0 = q 0, δ(r i, w i+ ) = r i+, i = 0,, n, r n F Automtin M tunnistm kieli on L(M) = { w Σ M hyväksyy w:n } 7 9 Kertust Äärelliset utomtit Lskentjärjestelmän, joll on vin äärellisen mont mhollist til, toimint voin kuvt äärellisenä utomttin Äärellinen utomtti hvinnollistetn usein tilsiirtymäkvion q q q q 0 3 E q +, E q5 q6 Kieli on säännöllinen, jos jokin äärellinen utomtti tunnist sen Kielten perusopertiot ovt yhiste, ktentio j sulkeum: A B = { x x A x B } A B = { xy x A y B } A = { x x x k k 0 x i A i } Luse 5 Säännöllisten kielten luokk on suljettu yhisteen suhteen Toisin snoen, jos A j A ovt säännöllisiä kieliä, niin silloin myös A A on säännöllinen Luse 6 Säännöllisten kielten luokk on suljettu ktention suhteen 8 0

Automttien minimointi Kksi utomtti, jotk tunnistvt täsmälleen smn kielen ovt keskenään ekvivlenttej Äärellinen utomtti on minimlinen jos se on tilmäärältään pienin ekvivlenttien utomttien joukoss Automtti, joss on enemmän tiloj kuin ekvivlentiss minimlisess utomtiss on reunntti Automttej muoostvt lgoritmit eivät in tuot minimlist utomtti 5 Kullkin tilll q Q olkoon [q] = { q } { r Q q:n j r:n välillä ei ole krt G:ssä } 6 Muoost äärellinen utomtti M = (Q, Σ, δ, q 0, F ), missä Q = { [q] q Q }, (tuplt poisten δ ([q], ) = [δ(q, )], kikill q Q j Σ, 7 Plut M q 0 = [q 0 ] j F = { [q] q F } Minimlisen utomtin käsittely on tehokmp kuin reunntin 3 Algoritmi minimoi Syöte: äärellinen utomtti M = (Q, Σ, δ, q 0, F ) Poist M:n turht tilt ne joihin ei voi päästä lkutilst Muoost suuntmton verkko G, jonk solmuj ovt M:n tilt 3 Lisää G:hen kri kustkin ei-lopputilst kuhunkin lopputiln Toist niin kun kuin G:hen tulee uusi kri: 3 5 () Jokiselle prille q, r Q, q r, j jokiselle Σ: lisää kri (q, r) verkkoon G, jos (δ(q, ), δ(r, )) on kri G:ssä 6

[, 3] [] [, 3] 3 7 3 5 5 5 [, 5] [, 5] 6 Lopputulos Syöteutomtin M knss ekvivlentti äärellinen utomtti M, joss on minimimäärä tiloj Automtti M on tilojen nimeämistä ville yksikäsitteinen 6 3 5 I = {,3} II = {} III = {,5} I II III 8