ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

Samankaltaiset tiedostot
ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

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

ICS-C2000 Tietojenkäsittelyteoria Kevät 2015

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

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

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

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:

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

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:

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

Laskennan mallit (syksy 2010) 1. kurssikoe, ratkaisuja

Laskennan mallit (syksy 2007) Harjoitus 5, ratkaisuja

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

OSA 1: POLYNOMILASKENNAN KERTAUSTA, BINOMIN LASKUSÄÄNTÖJÄ JA YHTÄLÖNRATKAISUA

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

Kuvausta f sanotaan tällöin isomorfismiksi.

2.2 Automaattien minimointi

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

2.5 Säännöllisten kielten rajoituksista

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

Matematiikan tukikurssi

Laskennan mallit Erilliskoe , ratkaisuja (Jyrki Kivinen)

Esimerkki 8.1 Määritellään operaattori A = x + d/dx. Laske Af, kun f = asin(bx). Tässä a ja b ovat vakioita.

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

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

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

LINSSI- JA PEILITYÖ TEORIAA. I Geometrisen optiikan perusaksioomat

x k 1 Riemannin summien käyttö integraalin approksimointiin ei ole erityisen tehokasta; jatkuvasti derivoituvalle funktiolle f virhe b

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

Riemannin integraali

4 DETERMINANTTI JA KÄÄNTEISMATRIISI

Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista

II.1. Suppeneminen., kun x > 0. Tavallinen lasku

Riemannin integraalista

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

Neliömatriisin A determinantti on luku, jota merkitään det(a) tai A. Se lasketaan seuraavasti: determinantti on

7.lk matematiikka. Geometria 1

Laskennan perusmallit 2013: Kertausta

2.4 Pienimmän neliösumman menetelmä

Syksyn 2015 Pitkän matematiikan YO-kokeen TI-Nspire CAS -ratkaisut

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

// Tulostetaan liukulukutyyppinen muuttuja riviä vaihtamatta // yhden desimaalin tarkkuudella. System.out.printf("%.

Differentiaali- ja integraalilaskenta 1 (CHEM) Laskuharjoitus 4 / vko 47, mallivastaukset

Kognitiivinen mallintaminen I, kevät Harjoitus 1. Joukko-oppia. MMIL, luvut 1-3 Ratkaisuehdotuksia, MP

6.2 Algoritmin määritelmä

2.1 Vaillinaiset yhtälöt

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

Rajoittamattomat kieliopit

Turingin koneen laajennuksia

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

Pythagoraan lause. Pythagoras Samoslainen. Pythagoraan lause

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

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

Kieli, merkitys ja logiikka, kevät 2011 HY, Kognitiotiede. Vastaukset 2.

Riemannin integraalista

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

5 Epäoleellinen integraali

Kertymäfunktio. Kertymäfunktio. Kertymäfunktio: Mitä opimme? 2/2. Kertymäfunktio: Mitä opimme? 1/2. Kertymäfunktio: Esitiedot

θ 1 θ 2 γ γ = β ( n 2 α + n 2 β = l R α l s γ l s 22 LINSSIT JA LINSSIJÄRJESTELMÄT 22.1 Linssien kuvausyhtälö

ANALYYSI I, kevät 2009

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

Sarjaratkaisun etsiminen Maplella

Rekursiiviset palautukset [HMU 9.3.1]

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

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

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

Muunnelmia Turingin koneista sekä muita vaihtoehtoisia malleja

Matematiikan tukikurssi

7 Funktiosarjoista. 7.1 Funktiosarjojen suppeneminen

2. Laadi regexp, jonka avulla egrep-ohjelma löytää tekstitiedostosta kaikki

VALTIOTIETEELLINEN TIEDEKUNTA TILASTOTIETEEN VALINTAKOE Ratkaisut ja arvostelu

Diskreetin matematiikan perusteet Laskuharjoitus 6 / vko 13

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

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

6 Integraalilaskentaa

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

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

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

T Kevät 2009 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (Predikaattilogiikka )

Laskennan mallit (syksy 2009) Harjoitus 11, ratkaisuja

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

Ristitulo ja skalaarikolmitulo

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

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

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

3 Integraali ja derivaatta

L 0 L. (a) Entropian ääriarvo löydetään derivaatan nollakohdasta, dl = al 0 L )

SARJAT JA DIFFERENTIAALIYHTÄLÖT Funktiojonot 1

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

S BAB ABA A aas bba B bbs c

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

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.

1. Universaaleja laskennan malleja

6 Kertausosa. 6 Kertausosa

Numeeriset menetelmät TIEA381. Luento 9. Kirsi Valjus. Jyväskylän yliopisto. Luento 9 () Numeeriset menetelmät / 29

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

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

A-Osio. Valitse seuraavista kolmesta tehtävästä kaksi, joihin vastaat. A-osiossa ei saa käyttää laskinta.

Transkriptio:

ICS-C Tietojenkäsittelyteori Kevät 6 Kierros 8, 7.. mliskuut Demonstrtiotehtävien rtkisut D: Määrittele Turingin koneen stndrdimllin muunnelm, joss koneen työnuh on molempiin suuntiin ääretön, j osoit että tällisill koneill voidn tunnist täsmälleen smt kielet kuin stndrdimllisillkin. Rtkisu: Turingin kone, jonk nuh on khteen suuntn ääretön, toimii muuten smoin kuin tvllinen, mutt nyt nuhn lkumerkki ei ole kiinteä, j kone voi siirtää sitä smn tpn kuin loppumerkkiäkin. Nuhn pikt indeksoidn kokonisluvuill, j luku osoitt lkumerkin pikk lskennn luss. Tällist Turingin konett voidn simuloid kksiurisell koneell. Koneen nuh jtelln jetuksi khteen osn, ylä- j lpuoleen. Yläos käytetään nuhn pikkojen i > tllettmiseen, los pikoille i. Esimerkiksi nuhn sisältö: - esitetään -urisell koneell seurvsti: - - - Yksiurisell stndrdikoneell nuhn jkminen uriin tphtuu korvmll nuh-kkosto Γ uudell kkostoll Γ = (Γ {}) (Γ {}), missä on uusi merkki, jok ei esiinny lkuperäisen Turingin koneen nuh-kkostoss. Kukin Γ :n merkki vst näin kht lkuperäisen kkoston merkkiä. Ylläolev esimerkki muodostuukin seurvnliseksi:,,,, Vielä trvitn tp osoitt kump nuhn puolisko käsitellään. Helpoiten tämä onnistuu määrittelemällä kikille koneen tiloille q peilikuvtil q. Kun kone on tilss q, se tekee siirtons inostn ylemmän urn merkkien perusteell (lukupää on nolln oikell puolell), j tilss q siirrytään lemmn urn mukisesti (lukupää nolln vsemmll puolell). Kosk lempi ur on käänteisessä järjestyksessä, täytyy sitä käsitellessä kääntää lukupään siirto-opertiot myös peilikuviksi. Ain kun kone lukee nuhn idon lkumerkin, se viht käsiteltävää ur.

Konstruktio formlisti Olkoon M = (Q,Σ,Γ,δ,q,q cc,q rej ) Turingin kone, joll on khteen suuntn ääretön nuh. Muodostetn stndrdimllinen Turingin kone M seurvsti: M = (Q,Σ,Γ,δ,q,q cc,q rej ) Q = Q {q q Q} Γ = (Γ {}) (Γ {}) Tilnsiirtofunktio δ muodostetn seurvsti: δ = {(q,,γ ) (q,,γ, ) (q,) (q,, ) δ,γ (Γ {})} {(q, ) (q,,, ) (q, ) (q,, ) δ} {(q, ) (q,,,l) (q, ) (q,,l) δ} {(q,,γ ) (q,,γ,l) (q, ) (q,,l) δ,γ (Γ {})} {(q,,γ ) (q,,γ, ) (q, ) (q,, ) δ,γ (Γ {})} {(q, γ, ) (q, γ,, ) (q,) (q,, ) δ,γ (Γ {})} {(q, ) (q,,, ) (q,) (q,, ) δ} {(q, ) (q,,,l) (q,) (q,,r) δ} {(q, γ, ) (q, γ,, ) (q,) (q,, ) δ,γ (Γ {})} {(q, γ, ) (q, γ,,l) (q,) (q,,r) δ,γ (Γ {})} {(q,) (q,,r),(q,) (q,,r) q Q} missä, Γ, L = R j R = L. D: Ldi stndrdimlliset Turingin koneet NEXT j DUP, jotk suorittvt seurvt tehtävät: () NEXT korv nuhll olevn merkkijonon knonisess (leksikogrfisess) järjestyksessä seurvll; () DUP kirjoitt nuhll olevn merkkijonon perään sen kopion (esim. jono korvtn jonoll ). Rtkisu: () Joukon Σ yli muodostettv leksikogrfinen järjestys < L määritellään käyttäen pun kkoston Σ lkioiden välille määriteltyä järjestystä <. Yleensä järjestyksenä < käytetään joko kkosjärjestystä ti numerojärjestystä. Esim: Jos Σ ={,...,z}, niin < < c < < z Jos Σ ={,}, niin < Leksikogrfinen järjestys < L määritellään seurvsti: Olkoon x,y Σ, x = x x n j y = y y m. Nyt x < L y mikäli toinen ll olevist ehdoist toteutuu:

(i) n < m, ti (ii) n = m j on olemss i n siten, että x i < y i j kikill j < i, x j = y j. Esimerkiksi kkoston {,} snojen leksikogrfinen järjestys on seurvnlinen: ε,,,,,,,,,,,,,... Rtkisuss lditn Turingin kone, jok toimii kkostoll Σ = {,, c}. Rtkisun voi kuitenkin yleistää mille thns kkostolle (yksityiskohdt myöhemmin). Jott rtkisu olisi yksinkertisempi, niin oletetn myös että merkkijono on nuhll käänteisenä, eli merkkijonon vähiten merkitsevä kirjin on ensimmäisenä: c/,r s x/x,l when x /,L /c,l /,L s /,R cc Kone toimii siten, että tilss s muutetn kikki snn vähiten merkitsevässä päässä olevt c-kirjimet -kirjimiksi. Kun löydetään ensimmäinen kirjin σ < c, korvtn se kkosjärjestyksessä seurvll kirjimell, siirretään lukupää tkisin nuhn lkuun j pysähdytään. (Lukupään pluttmisen trkoituksen on tehdä Turingin koneiden yhdistämisestä helpomp). Trkstelln, miten kone hkee seurjn merkkijonolle cc: (q,cc) (q,c) (q,) (q,) (q,) (q,) (q cc,) Tulokseksi sttin, niin kuin pitikin. Jos thdottisiin rtkisun toimivn silloin, kun merkkijono ei ole nuhll käänteisenä, voitisiin ensin trkist, koostuuko merkkijono pelkistä c-kirjimist. Jos näin on, korvtn merkkijono pelkistä -kirjimist koostuvll yhtä pidemmällä merkkijonoll (kosk esim. merkkijono ccc seur knonisess järjestyksessä merkkijono ). Muutoin mennään nuhn loppuun j toimitn kuten utomtin tiloiss s j s mutt oikelt vsemmlle. Rtkisun yleistäminen Olkoon nnettun äärellinen kkosto Σ j täysjärjestys < Σ Σ. Kosk Σ on äärellinen, on < hyvin järjestetty, joten sillä on olemss sekä minimi min j mksimi mx. Määritellään seurjfunktio f : (Σ { mx }) Σ seurvsti: f () = < c : < c c <

Kosk < on täysjärjestys, on f ():n rvo yksikäsitteinen. Syötettä x leksikogrfisesti seurvn syötteen lskev Turingin kone M = (Q, Σ, Γ, δ, q, q cc, q rej ) määritellään seurvsti: Q = {q,q,q cc,q rej } Γ = Σ δ = {(q, mx,q, min,r),(q,<,q, min,l)} {(q,,q, f (),L) (Σ { mx })} {(q,,q,,l) (Σ { })} {(q,,q cc,,r)} Aiemmin esitetty Turingin kone sdn suorn ylläolevst määrittelystä settmll min =, mx = c, f () = j f () = c. () Tässä esitetään rtkisu kkostoll Σ = {, }. Rtkisun yleistäminen muille kkostoille on hyvin suorviivist j sen yksityiskohdt sivuutetn. Rtkisun perite on seurv. Merkkijono kopioidn yksi merkki kerrlln nuhn loppuun. Lskennn kulust pidetään kirj korvmll kulloinkin kopioitv merkki symolill. Merkkijonon kopio kirjoitetn ensin isoill kirjimill {A,B}, kosk muuten ei voitisi huomt, milloin sn loppuu j kopio lk. Lopuksi korvtn isot kirjimet pienillä j plutetn lukupää nuhn lkuun. DUP: /, R /, L q /A, L q /, R q /, R /, R A/, R B/, R /, R A/, R B/, R /, L /, L /, R q 5 q 6 qcc /B, L q q /, R /, L Tilss q on käytetty lyhennysmerkintää muoto /,R trkoittmn kikki niitä siirtymiä, joiss luetn (muttei ylikirjoitet) mikä thns muu merkki kuin j siirrytään oikelle. Trkstelln, miten kone toimii syötteellä : (q,) (q, ) (q, <) (q, A) (q, A) (q,a) (q, A) (q, A<) (q, AB) (q,ab) (q,abb) (q 5,BB) (q 5,<) (q cc,)

D: Osoit, että pinoutomteill, joill on yhden sijn kksi pino, voidn tunnist täsmälleen smt kielet kuin Turingin koneill. Rtkisu: Osoitetn ensin, että pinoutomtill, joss on kksi pino, voidn simuloid Turingin konett. Ainut hnkluus tässä on keksiä, miten khdell pinoll simuloidn Turingin koneen nuh. Tämä onnistuu siten, että toiseen pinoon tlletetn lukupään vsemmll puolell olevt merkit käänteisessä järjestyksessä, toiseen pinoon pään oikell puolell olevt merkit: 5 6 = 7 5 6 7 S S Pinoutomtin toimint jkutuu khteen viheeseen: () Alustus, jolloin utomtti kopioi syötteen pinoon S, mistä se siirtään merkki kerrlln pinoon S lukuunottmtt syötteen ensimmäistä merkkiä. () Vrsininen toimint, jolloin utomtti tekee siirtymän pinon S päällimmäisen merkin perusteell. Mikäli Turingin kone siirtäisi lukupäätä vsemmlle, siirretään pinon S päällimmäinen merkki pinon S päälle. Mikäli ts lukupää siirtyisi oikelle, siirretään S :n päällimmäinen merkki S :n päälle. Näin ldittu pinoutomtti simuloi nnettu Turingin konett. Seurvksi osoitetn, että Turingin koneell voidn simuloid pinoutomtti, joss on kksi pino. Tämä onnistuu trivilisti käyttämällä kksinuhist epädeterministä Turingin konett, joss kumpikin pinoist tlletetn omlle nuhlleen. Formlisti nnettu muunnos Turingin koneest kksipinoiseksi pinoutomtiksi voidn määritellä seurvsti: Olkoon nnettun Turingin kone M = (Q,Σ,Γ,δ,q,q cc,q rej }. Muodostetn -pinoinen 5

pinoutomtti M = (Q,Σ,Γ,δ, p,q cc,q rej ), missä: Q =Q {p, p, p } Σ =Σ { } Γ =Γ {, } δ ={((p,ε,ε,ε),(p,,ε)),((p,,ε,ε),(p,ε, ))} {((p,x,ε,ε),(p,x,ε)) x Σ} {((p,ε,x,ε),(p,ε,x)) x Σ} {((q,ε,,ε),(q,ε,)) (q,,q,,l) δ} {((q,ε,,x),(q,x,ε)) (q,,q,,r) δ,x Γ } 6