Alityypitys. TIES542 Ohjelmointikielten periaatteet, kevät Antti-Juhani Kaijanaho. Jyväskylän yliopisto Tietotekniikan laitos
|
|
- Elsa Juusonen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Alityypitys TIES542 Ohjelmointikielten periaatteet, kevät 2007 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 5. maaliskuuta 2007
2 Muistatko tietueet? {I 1 = E 1,..., I n = E n } : {I 1 : T 1,..., I n : T n } {real = 3.0, imag = 5.0} : {real : Real, imag : Real} i, j {1,..., n} : i j I i I j Γ E 1 : T 1 Γ E n : T n Γ {I 1 = E 1,..., I n = E n} : {I n : T 1,..., I n : T n} 1 k n Γ {I 1 = E 1,..., I k = E k,..., I n = E n} : {I n : T 1,..., I k : T k,..., I n : T n} Γ {I 1 = E 1,..., I k = E k,..., I n = E n}.i k : T k
3 Kysymys Onko seuraava lauseke hyvin tyypitetty? (λr : {x : Int, y : Int}.r.x){x = 0, y = 1} Vastaus 1. x ja y ovat eri nimet 2. r.x on sallittu, koska r:ssä on kenttä x 3. lauseke itse on sallittu, jos argumentilla ja parametrilla on sama tyyppi 4. argumentin tyyppi on {x : Int, y : Int} 5. parametrin tyyppi on {x : Int, y : Int} 6. Vastaus on siis: lauseke on hyvin tyypitetty.
4 Kysymys Onko seuraava lauseke hyvin tyypitetty? (λr : {x : Int}.r.x){x = 0, y = 1} Vastaus 1. x ja y ovat eri nimet 2. r.x on sallittu, koska r:ssä on kenttä x 3. lauseke itse on sallittu, jos argumentilla ja parametrilla on sama tyyppi 4. argumentin tyyppi on {x : Int, y : Int} 5. parametrin tyyppi on {x : Int} 6. Vastaus on siis: lauseke ei ole hyvin tyypitetty.
5 Pitäisikö se sallia? Lausekkeen (λr : {x : Int}.r.x){x = 0, y = 1} laskeminen onnistuu tyypityksen vääryydestä huolimatta: (λr : {x : Int}.r.x){x = 0, y = 1} {x = 0, y = 1}.x 0 Tyypityksen asettama rajoitus on siten turha! Yksi ratkaisu on luopua tyypityksestä mutta miten tyypitys korjattaisiin?
6 Määritelmä (Subsumptioperiaate) Tyyppi T 1 kelpaa tyypiksi T 2, jos kaikki lausekkeet E : T 1 ovat (semanttisesti) käytettävissä siellä, missä T 2 :n lausekkeita voidaan käyttää, eli seuraavat kaksi väitettä pätevät kaikilla lausekkeilla E, E 1 : T 1 ja E 2 : T 2 1. Jos E[x := E 2 ] : U 2 ja E[x := E 1 ] : U 1, niin U 1 <: U Jos E[x := E 2 ] ei jää jumiin, niin E[x := E 1 ] ei jää jumiin. Huomautus Jos T 1 kelpaa tyypiksi T 2, sanotaan, että T 1 on T 2 :n alityyppi (engl. subtype) ja merkitään T 1 <: T 2. Alityyppirelaatiota kutsutaan myös subsumptiorelaatioksi.
7 Riittää laajentaa tyypityssääntöjä seuraavalla lisäsäännöllä (subsumptiosääntö): Γ E : T 1 T 1 <: T 2 Γ E : T 2
8 Määritelmä Merkitään tyypin T arvojen joukkoa V(T ). Väite (Osajoukkotulkinta) Jos T 1 <: T 2 niin V(T 1 ) V(T 2 ). Todistus. Seuraa subsumptioperiaatteesta, subsumptiosäännöstä ja siitä, että tyypin arvot ovat (ainakin luennoilla tarkastelluissa λ-laskennon laajennuksissa) tyypin lausekkeita.
9 Lienee selvää, että alityypitys on refleksiivinen ja transitiivinen: T <: T T 1 <: T 2 T 2 <: T 3 T 1 <: T 3
10 Tarkastellaan lauseketta E.I k. Sen tyyppi riippuu ainoastaan E:n I k -kentän tyypistä Tietuetyypin lopusta saadaan unohtaa kenttiä vapaasti: n m {I 1 : T 1,..., I n : T n } <: {I 1 : T 1,..., I m : T m } Tietuetyypin kentät saavat alityypittyä vapaasti: T 1 <: T 1 T n <: T n {I 1 : T 1,..., I n : T n } <: {I 1 : T 1,..., I n : T n}
11 Saako kenttiä permutoida, ts. onko seuraava hyväksyttävä sääntö? f : {1,..., n} {1,..., n} f on bijektio {I 1 : T 1,..., I n : T n } <: {I f (1) : T f (1),..., I f (n) : T f (n) } Formaalin semantiikan kautta tulkittuna subsumptiosääntö sallii tämän. Jos sääntö hyväksytään, (<:) ei ole antisymmetrinen eikä siten myöskään osittaisjärjestys. Kääntäjän toteutus menee hankalaksi Ilman permutaatiosääntöä kentän etäisyys tietueen alusta on käännösaikainen vakio. Permutaation kanssa kenttä pitää etsiä joka kerta erikseen, koska sen paikka ei ole etukäteen tiedossa. Tietueisiin pitää tallettaa tieto siitä, missä mikäkin kenttä on.
12 Kysymys Onko seuraava lauseke hyvin tyypitetty? (λr : {x : Int}.r.x){x = 0, y = 1} Vastaus 1. x ja y ovat eri nimet 2. r.x on sallittu, koska r:ssä on kenttä x 3. lauseke itse on sallittu, jos argumentilla ja parametrilla on sama tyyppi 4. argumentin tyyppi on {x : Int, y : Int} 5. argumentin tyyppi on myös {x : Int} (susumptiosääntö) 6. parametrin tyyppi on {x : Int} 7. Vastaus on siis: lauseke on hyvin tyypitetty.
13 Kysymys Milloin T 1 T 2 <: T 1 T 2? Vastaus 1. Olkoon f : T 1 T 2 ja f : T 1 T Kysymys on siitä, milloin f kelpaa f :n paikalle? 3. Sen tulee ottaa vastaan ainakin kaikki f :lle kelpaavat argumentit, mutta enemmänkin saa sille kelvata: T 1 <: T 1. alityypitys on parametrin osalta kontravariantti 4. Se saa palauttaa mitä vain mitä f palauttaa, mutta ei enempää; se saa toke palauttaa vähemmän: T 2 <: T 2 alityypitys on paluutyypin osalta kovariantti 5. Näin ollen: T 1 <: T 1 T 2 <: T 2 T 1 T 2 <: T 1 T 2
14 Kysymys Milloin variantti on toisen variantin alityyppi? Vastaus Keskeinen kysymys on case-lausekkeen käyttäytyminen: case E of I 1 = I 1 E 1,..., I 1 = I 1 E n vaatii, että E:llä on enintään kentät I 1,..., I n. Kenttiä saadaan lisätä: n m I 1 : T 1,..., I n : T n <: I 1 : T 1,..., I m : T m Kentät saavat alityypittyä vapaasti: T 1 <: T 1 T n <: T n I 1 : T 1,..., I n : T n <: I 1 : T 1,..., I n : T n
15 Permutaatio f : {1,..., n} {1,..., n} f on bijektio I 1 : T 1,..., I n : T n <: I f (1) : T f (1),..., I f (n) : T f (n) on varianttien kanssa melko välttämätön. Kääntäjäteknistä ongelmaa ei ole: variantin kentät alkavat aina samasta kohtaa Permutaatio rikkoo edelleen antisymmetrian ja siten osittaisjärjestys-ominaisuuden Yksi ratkaisu tähän on käyttää eksplisiittistä tyyppiyhtäläisyysrelaatiota T 1 T 2 ja määritellä se seuraavasti: T 1 <: T 2 T 2 <: T 1 T 1 T 2
16 Top Top-tyyppi on hyödyllinen laajennus: tällöin kaikilla lausekepareilla on yhteinen tyyppi (niiden tyyppien join). Top-tyyppisellä arvolla ei voi juuri mitään tehdä. T ::= Top T <: Top
17 Bottom Bottom-tyyppi on myös hyödyllinen laajennus: se kelpaa kaikkiin konteksteihin Bottom-tyypissä ei ole arvoja Bottom-tyyppinen lauseke jää ikuiseen silmukkaan tai keskeyttää ohjelman Bottom-tyypin palauttava funktio ei koskaan palaa Monimutkaistaa tyyppitarkastusta T ::= Bottom T <: Bottom
18 Askriptio Muistathan: E : T on lauseke, joka väittää, että E:n tyyppi on T Varianttien kanssa oli pakollinen, ei enää Lauseke a = 5 voidaan tyypittää rauhassa a : Int Alityypitys huolehtii siitä, että se kelpaa sinne minne pitääkin ilman askriptiota Alityypityksen kanssa askriptio on ns. upcast: sillä saa tehdä tyyppimuunnoksen tyypistä sen ylityyppiin Myös downcast on mahdollinen valinta, mutta se vaatii ajonaikaisen tyyppitarkastuksen: Γ E : T 1 T 2 <: T 1 Γ (E : T 2 ) : T 2
Oliot ja tyypit. TIES542 Ohjelmointikielten periaatteet, kevät Antti-Juhani Kaijanaho. Jyväskylän yliopisto Tietotekniikan laitos
Oliot ja tyypit TIES542 Ohjelmointikielten periaatteet, kevät 2007 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 19. maaliskuuta 2007 Olion tyyppi? attribuutti on oikeastaan metodi,
LisätiedotGeneeriset tyypit. TIES542 Ohjelmointikielten periaatteet, kevät Antti-Juhani Kaijanaho. Jyväskylän yliopisto Tietotekniikan laitos
Geneeriset tyypit TIES542 Ohjelmointikielten periaatteet, kevät 2007 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 6. maaliskuuta 2007 Kysymys Mitä yhteistä on seuraavilla funktioilla?
LisätiedotYksinkertaiset tyypit
Yksinkertaiset tyypit TIES542 Ohjelmointikielten periaatteet, kevät 2007 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 13. helmikuuta 2007 Tyypitön puhdas λ-laskento E ::= I E 1 E 2
LisätiedotRekursiiviset tyypit
Rekursiiviset tyypit TIES542 Ohjelmointikielten periaatteet, kevät 2007 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 20. helmikuuta 2007 Hiloista Kiintopisteet (Ko)rekursio Rekursiiviset
LisätiedotLuku 15. Parametripolymorfismi Kumitus
Luku 15 Parametripolymorfismi Lähes kaikessa ohjelmoinnissa tarvitaan säilöjä (engl. containers) ja niitä käsitteleviä operaatioita. Aiemmissa monisteissa esiteltiin NumList, joka oli numeroita sisältävä
Lisätiedotsemantiikasta TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho 5. lokakuuta 2009 TIETOTEKNIIKAN LAITOS Ohjelmointikielten staattisesta
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 5. lokakuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe B tiistai 6.10. klo 10 selaaja ja jäsentäjä toimivat Vaihe
LisätiedotTietojenkä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
LisätiedotSilmukkaoptimoinnista
sta TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. joulukuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe F maanantai 14.12. klo 12 rekisteriallokaatio Arvostelukappale
LisätiedotTIES542 kevät 2009 Tyyppijärjestelmän laajennoksia
TIES542 kevät 2009 Tyyppijärjestelmän laajennoksia Antti-Juhani Kaijanaho 16. helmikuuta 2009 Tyypitetyt ohjelmointikielet sisältävät paljon muitakin konstruktioita kuin yksinkertaisesti tyypitetyn lambda-kielen,
LisätiedotTIEA241 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
LisätiedotMS-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
LisätiedotTIEA241 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
LisätiedotMS-A0401 Diskreetin matematiikan perusteet
MS-A0401 Diskreetin matematiikan perusteet Osa 2: Relaatiot ja funktiot Riikka Kangaslampi Syksy 2017 Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Relaatiot Relaatio Määritelmä 1 Relaatio joukosta
Lisätiedot14.1 Rekursio tyypitetyssä lambda-kielessä
Luku 14 Rekursiiviset tyypit Edellisessä luvussa esitetyt tietue- ja varianttityypit eivät yksinään riitä kovin mielenkiintoisten tietorakenteiden toteuttamiseen. Useimmissa ohjelmissa tarvitaan erilaisia
LisätiedotTIES542 kevät 2009 Rekursiiviset tyypit
TIES542 kevät 2009 Rekursiiviset tyypit Antti-Juhani Kaijanaho 17. helmikuuta 2009 Edellisessä monisteessa esitetyt tietue- ja varianttityypit eivät yksinään riitä kovin mielenkiintoisten tietorakenteiden
LisätiedotSamanaikaisuuden hallinta
Samanaikaisuuden hallinta TIES542 Ohjelmointikielten periaatteet, kevät 2007 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 20. maaliskuuta 2007 Samanaikaisuus engl. concurrency useampaa
LisätiedotTIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 10 Todistamisesta Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 21. tammikuuta 2008 Samuuden todistaminen usein onnistuu ihan laskemalla
LisätiedotYdin-Haskell Tiivismoniste
Ydin-Haskell Tiivismoniste Antti-Juhani Kaijanaho 8. joulukuuta 2005 1 Abstrakti syntaksi Päätesymbolit: Muuttujat a, b, c,..., x, y, z,... Tyyppimuuttujat α, β, γ,... Koostimet (data- ja tyyppi-) C, D,...,
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 27. lokakuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 27. lokakuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe D tiistai 10.11. klo 10 välikielen generointi Kääntäjän rakenne
LisätiedotTIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 8. maaliskuuta 2012
TIEA241 Automaatit ja kieliopit, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. maaliskuuta 2012 Sisällys Ongelma-analyysiä Sisällys Ongelma-analyysiä Hypoteettinen ongelma The Elite Bugbusters
LisätiedotTIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 4 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 17. tammikuuta 2008 Modulin viimeistelyä module Shape ( Shape ( Rectangle, E l l i p
Lisätiedottään painetussa ja käsin kirjoitetussa materiaalissa usein pienillä kreikkalaisilla
2.5. YDIN-HASKELL 19 tään painetussa ja käsin kirjoitetussa materiaalissa usein pienillä kreikkalaisilla kirjaimilla. Jos Γ ja ovat tyyppilausekkeita, niin Γ on tyyppilauseke. Nuoli kirjoitetaan koneella
LisätiedotSää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
LisätiedotLisää 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
LisätiedotMS-A0402 Diskreetin matematiikan perusteet Esimerkkejä, todistuksia ym., osa I
MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä, todistuksia ym., osa I G. Gripenberg Aalto-yliopisto 3. huhtikuuta 2014 G. Gripenberg (Aalto-yliopisto) MS-A0402 Diskreetin matematiikan perusteetesimerkkejä,
LisätiedotMS-A0402 Diskreetin matematiikan perusteet Esimerkkejä, todistuksia ym., osa I
MS-A040 Diskreetin matematiikan perusteet Esimerkkejä, todistuksia ym., osa I G. Gripenberg Aalto-yliopisto 3. huhtikuuta 014 G. Gripenberg (Aalto-yliopisto) MS-A040 Diskreetin matematiikan perusteetesimerkkejä,
LisätiedotTIEA241 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:
LisätiedotTIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 26. tammikuuta 2012
TIEA241 Automaatit ja kieliopit, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 26. tammikuuta 2012 Sisällys Luennon pähkinä Millä tavalla voidaan rakentaa tietokoneohjelma (tai kirjasto), joka
LisätiedotTIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA34 Funktio-ohjelmointi, kevät 2008 Luento 3 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 2. tammikuuta 2008 Ydin-Haskell: Syntaksi Lausekkeita (e) ovat: nimettömät funktiot: \x
LisätiedotTIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 16. toukokuuta 2011
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 16. toukokuuta 2011 Sisällys engl. random-access machines, RAM yksinkertaistettu nykyaikaisen (ei-rinnakkaisen)
Lisätiedotvaihtoehtoja 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ätiedotTuringin 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
Lisätiedot12. Monimuotoisuus 12.1
12. Monimuotoisuus 12.1 Sisällys Johdanto. Periytymismekanismi määrittää alityypityksen. Viitteiden sijoitus ja vertailu. Staattinen ja dynaaminen luokka. Myöhäinen ja aikainen sidonta. Parametrinvälitys
LisätiedotOletetaan, että funktio f on määritelty jollakin välillä ]x 0 δ, x 0 + δ[. Sen derivaatta pisteessä x 0 on
Derivaatta Erilaisia lähestymistapoja: geometrinen (käyrän tangentti sekanttien raja-asentona) fysikaalinen (ajasta riippuvan funktion hetkellinen muutosnopeus) 1 / 19 Derivaatan määritelmä Määritelmä
LisätiedotTaas laskin. TIES341 Funktio ohjelmointi 2 Kevät 2006
Taas laskin TIES341 Funktio ohjelmointi 2 Kevät 2006 Rakennepuutyyppi data Term = C Rational T F V String Term :+: Term Term : : Term Term :*: Term Term :/: Term Term :==: Term Term :/=: Term Term :
LisätiedotNumeeriset menetelmät TIEA381. Luento 6. Kirsi Valjus. Jyväskylän yliopisto. Luento 6 () Numeeriset menetelmät / 33
Numeeriset menetelmät TIEA381 Luento 6 Kirsi Valjus Jyväskylän yliopisto Luento 6 () Numeeriset menetelmät 4.4.2013 1 / 33 Luennon 6 sisältö Interpolointi ja approksimointi Polynomi-interpolaatio: Vandermonden
LisätiedotTIEA241 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/
LisätiedotMS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I
MS-A040 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I G. Gripenberg Aalto-yliopisto. maaliskuuta 05 G. Gripenberg (Aalto-yliopisto) MS-A040 Diskreetin matematiikan perusteet Esimerkkejä. ym.,
LisätiedotRekursiiviset tyypit - teoria
Rekursiiviset tyypit - teoria Samppa Saarela Helsinki 1999/04/14 Tyyppiteoria ja ohjelmointikielet - seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö i 1 Johdanto 1 2 Esimerkkkejä
LisätiedotLogiikan 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
LisätiedotMS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I
MS-A040 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I G. Gripenberg Aalto-yliopisto. maaliskuuta 05 G. Gripenberg (Aalto-yliopisto) MS-A040 Diskreetin matematiikan perusteet Esimerkkejä. ym.,
LisätiedotLaskennan teoria
581336-0 Laskennan teoria luennot syyslukukaudella 2003 Jyrki Kivinen tietojenkäsittelytieteen laudatur-kurssi, 3 ov pakollinen tietojenkäsittelytieteen suuntautumisvaihtoehdossa esitiedot käytännössä
LisätiedotJohdatus matematiikkaan
Johdatus matematiikkaan Luento 7 Mikko Salo 11.9.2017 Sisältö 1. Funktioista 2. Joukkojen mahtavuus Funktioista Lukiomatematiikassa on käsitelty reaalimuuttujan funktioita (polynomi / trigonometriset /
LisätiedotDIFFERENTIAALI- JA INTEGRAALILASKENTA I.1. Ritva Hurri-Syrjänen/Syksy 1999/Luennot 6. FUNKTION JATKUVUUS
DIFFERENTIAALI- JA INTEGRAALILASKENTA I.1 Ritva Hurri-Syrjänen/Syksy 1999/Luennot 6. FUNKTION JATKUVUUS Huomautus. Analyysin yksi keskeisimmistä käsitteistä on jatkuvuus! Olkoon A R mielivaltainen joukko
LisätiedotTIEA241 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
LisätiedotTietuetyypin määrittely toteutetaan C-kielessä struct-rakenteena seuraavalla tavalla:
KERTAUSTEHTÄVIÄ Tietue Tietuetyypin määrittely toteutetaan C-kielessä struct-rakenteena seuraavalla tavalla: struct henkilotiedot char nimi [20]; int ika; char puh [10]; ; Edellä esitetty kuvaus määrittelee
LisätiedotMS-A0102 Differentiaali- ja integraalilaskenta 1
MS-A0102 Differentiaali- ja integraalilaskenta 1 Riikka Korte (Pekka Alestalon kalvojen pohjalta) Aalto-yliopisto 24.10.2016 Sisältö Derivaatta 1.1 Derivaatta Erilaisia lähestymistapoja: I geometrinen
Lisätiedot815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset
815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset Harjoituksen aiheena on funktionaalinen ohjelmointi Scheme- ja Haskell-kielillä. Voit suorittaa ohjelmat osoitteessa https://ideone.com/
LisätiedotTIEA255 Tietotekniikan teemaseminaari ohjelmointikielet ja kehitysalustat. Antti-Juhani Kaijanaho. 16. helmikuuta 2011
TIEA255 Tietotekniikan teemaseminaari ohjelmointikielet ja kehitysalustat Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 16. helmikuuta 2011 Sisällys Sisällys Ohjelmointikieli? programming language n. a
LisätiedotMatematiikan peruskurssi 2
Matematiikan peruskurssi Tentti, 9..06 Tentin kesto: h. Sallitut apuvälineet: kaavakokoelma ja laskin, joka ei kykene graaseen/symboliseen laskentaan Vastaa seuraavista viidestä tehtävästä neljään. Saat
LisätiedotLaskennan 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.
LisätiedotITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 20. huhtikuuta 2018 Vastaa kaikkiin tehtäviin. Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä.
LisätiedotTIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 14: Monadit Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 21. tammikuuta 2008 Tyyppien tyypit eli luonteet engl. kind tyyppinimet, kuten
LisätiedotTIEA241 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
Lisätiedot0 kun x < 0, 1/3 kun 0 x < 1/4, 7/11 kun 1/4 x < 6/7, 1 kun x 1, 1 kun x 6/7,
HY / Matematiikan ja tilastotieteen laitos Todennäköisyyslaskenta II, syksy 07 Harjoitus Ratkaisuehdotuksia Tehtäväsarja I. Mitkä seuraavista funktioista F, F, F ja F 4 ovat kertymäfunktioita? Mitkä niistä
LisätiedotIV. TASAINEN SUPPENEMINEN. f(x) = lim. jokaista ε > 0 ja x A kohti n ε,x N s.e. n n
IV. TASAINEN SUPPENEMINEN IV.. Funktiojonon tasainen suppeneminen Olkoon A R joukko ja f n : A R funktio, n =, 2, 3,..., jolloin jokaisella x A muodostuu lukujono f x, f 2 x,.... Jos tämä jono suppenee
LisätiedotJohdatus matemaattiseen päättelyyn
Johdatus matemaattiseen päättelyyn Maarit Järvenpää Oulun yliopisto Matemaattisten tieteiden laitos Syyslukukausi 2015 1 Merkintöjä 2 Todistamisesta 3 Joukko-oppia 4 Funktioista Funktio eli kuvaus on matematiikan
LisätiedotMS-A010{3,4} (ELEC*) Differentiaali- ja integraalilaskenta 1 Luento 4: Derivaatta
MS-A010{3,4} (ELEC*) Differentiaali- ja integraalilaskenta 1 Luento 4: Derivaatta Pekka Alestalo, Jarmo Malinen Aalto-yliopisto, Matematiikan ja systeemianalyysin laitos 21.9.2016 Pekka Alestalo, Jarmo
LisätiedotTIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 16. maaliskuuta 2011
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 16. maaliskuuta 2011 Sisällys Sisällys Väitelauseet lause (tai virke), joka sanoo jonkin asian pitävän paikkaansa
LisätiedotELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
LisätiedotCantorin joukon suoristuvuus tasossa
Cantorin joukon suoristuvuus tasossa LuK-tutkielma Miika Savolainen 2380207 Matemaattisten tieteiden laitos Oulun yliopisto Syksy 2016 Sisältö Johdanto 2 1 Cantorin joukon esittely 2 2 Suoristuvuus ja
LisätiedotKuvauksista ja relaatioista. Jonna Makkonen Ilari Vallivaara
Kuvauksista ja relaatioista Jonna Makkonen Ilari Vallivaara 20. lokakuuta 2004 Sisältö 1 Esipuhe 2 2 Kuvauksista 3 3 Relaatioista 8 Lähdeluettelo 12 1 1 Esipuhe Joukot ja relaatiot ovat periaatteessa äärimmäisen
LisätiedotSeurauksia. Seuraus. Seuraus. Jos asteen n polynomilla P on n erisuurta nollakohtaa x 1, x 2,..., x n, niin P on muotoa
Seurauksia Seuraus Jos asteen n polynomilla P on n erisuurta nollakohtaa x 1, x 2,..., x n, niin P on muotoa P(x) = a n (x x 1 )(x x 2 )... (x x n ). Seuraus Astetta n olevalla polynomilla voi olla enintään
Lisätiedottietueet eri tyyppisiä tietoja saman muuttujan arvoiksi
tietueet eri tyyppisiä tietoja saman muuttujan arvoiksi ero taulukkoon taulukossa alkiot samantyyppisiä tietueessa alkiot voivat olla erityyppisiä tiedot kuitenkin yhteen kuuluvia ohjelmoinnin perusteet,
LisätiedotApprobatur 3, demo 5, ratkaisut
Approbatur 3, demo 5, ratkaisut 51 Tehtävänä on luetella kaikki joukon S 4 alkiot eli neljän alkion permutaatiot Tämä tarkoittaa kaikkia eri tapoja kuvata joukko {1, 2, 3, 4} bijektiivisesti itselleen
LisätiedotTIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 12. lokakuuta 2016
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
LisätiedotMS-A0402 Diskreetin matematiikan perusteet Yhteenveto, osa I
MS-A0402 Diskreetin matematiikan perusteet Yhteenveto, osa I G. Gripenberg Aalto-yliopisto 3. huhtikuuta 2014 G. Gripenberg (Aalto-yliopisto) MS-A0402 Diskreetin matematiikan perusteetyhteenveto, 3. osahuhtikuuta
LisätiedotPinoautomaatit. 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
LisätiedotPinoautomaatit. 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
LisätiedotJohdatus diskreettiin matematiikkaan Harjoitus 1,
Johdatus diskreettiin matematiikkaan Harjoitus 1, 15.9.2014 1. Hahmottele tasossa seuraavat relaatiot: a) R 1 = {(x, y) R 2 : x y 2 } b) R 2 = {(x, y) R 2 : y x Z} c) R 3 = {(x, y) R 2 : y > 0 and x 2
Lisätiedotf(x 1, x 2 ) = x x 1 k 1 k 2 k 1, k 2 x 2 1, 0 1 f(1, 1)h 1 = h = h 2 1, 1 12 f(1, 1)h 1 h 2
HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi I, syksy 7 Harjoitus 6 Ratkaisuehdotukset 6.. Olkoon f : G R, G = {(x, x ) R x > }, f(x, x ) = x x. Etsi differentiaalit d k f(, ), k =,,. Ratkaisu:
LisätiedotToispuoleiset raja-arvot
Toispuoleiset raja-arvot Määritelmä Funktiolla f on oikeanpuoleinen raja-arvo a R pisteessä x 0 mikäli kaikilla ɛ > 0 löytyy sellainen δ > 0 että f (x) a < ɛ aina kun x 0 < x < x 0 + δ; ja vasemmanpuoleinen
LisätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kertausluento 2. välikokeeseen Toisessa välikokeessa on syytä osata ainakin seuraavat asiat:. Potenssisarjojen suppenemissäde, suppenemisväli ja suppenemisjoukko. 2. Derivaatan
LisätiedotTIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015
TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 30. marraskuuta 2015 Sisällys t Väitöstilaisuus 4.12.2015 kello 12 vanhassa juhlasalissa S212 saa tulla 2 demoruksia
LisätiedotMiten osoitetaan joukot samoiksi?
Miten osoitetaan joukot samoiksi? Määritelmä 1 Joukot A ja B ovat samat, jos A B ja B A. Tällöin merkitään A = B. Kun todistetaan, että A = B, on päättelyssä kaksi vaihetta: (i) osoitetaan, että A B, ts.
LisätiedotInsinöö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
LisätiedotTIEA241 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
LisätiedotDerivaatat lasketaan komponenteittain, esimerkiksi E 1 E 2
MS-C50 Osittaisdifferentiaaliyhtälöt Harjoitukset syksy 07. Oletetaan että vektorikenttä E E E E : R R on kaksi kertaa jatkuvasti derivoituva E C R. Näytä että E E. Derivaatat lasketaan komponenteittain
LisätiedotRelaation 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
Lisätiedot12. Monimuotoisuus 12.1
12. Monimuotoisuus 12.1 Sisällys Johdanto. Periytymismekanismi määrittää alityypityksen. Viitteiden sijoitus ja vertailu. Staattinen ja dynaaminen luokka. Parametrinvälitys eräs monimuotoisuuden sovellus.
LisätiedotTIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 9 Kombinaattoreista Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 21. tammikuuta 2008 Currying Haskell-funktio ottaa aina vain yhden
LisätiedotLUKU 3. Ulkoinen derivaatta. dx i 1. dx i 2. ω i1,i 2,...,i k
LUKU 3 Ulkoinen derivaatta Olkoot A R n alue k n ja ω jatkuvasti derivoituva k-muoto alueessa A Muoto ω voidaan esittää summana ω = ω i1 i 2 i k dx i 1 dx i 2 1 i 1
LisätiedotTIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 5 Ympärysmitta. Puut. Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 21. tammikuuta 2008 CASE: YMPÄRYSMITTA Lasketaan kuvioiden ympärysmittoja
LisätiedotJoukossa 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 =
LisätiedotTäydellisyysaksiooman kertaus
Täydellisyysaksiooman kertaus Luku M R on joukon A R yläraja, jos a M kaikille a A. Luku M R on joukon A R alaraja, jos a M kaikille a A. A on ylhäältä (vast. alhaalta) rajoitettu, jos sillä on jokin yläraja
LisätiedotKielioppia: toisin kuin Javassa
Object Pascal Pascal kielen oliolaajennus (Inprise/Borland:n oma) luokat Voit uudelleenkäyttää luomiasi objekteja esim. komponentteja Periytyminen Kielioppia: toisin kuin Javassa Ei eroa isojen ja pienien
Lisätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 4. Joukot, relaatiot ja funktiot Osa 3: Funktiot 4.3 Funktiot Olkoot A ja B joukkoja. Funktio joukosta A joukkoon B on sääntö, joka liittää yksikäsitteisesti määrätyn
LisätiedotTIEA241 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
Lisätiedot3.2.2 Tikhonovin regularisaatio
3 Tikhonovin regularisaatio Olkoon x 0 R n tuntematon, M R m n teoriamatriisi ja y Mx + ε R m (316 annettu data Häiriöherkässä ongelmassa pienimmän neliösumman miniminormiratkaisu x M + y Q N (M x + M
LisätiedotICS-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.
Lisätiedotjäsennyksestä TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho 29. syyskuuta 2016 TIETOTEKNIIKAN LAITOS Kontekstittomien kielioppien
TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 29. syyskuuta 2016 Sisällys Harjoitustehtävätilastoa Tilanne 29.9.2016 klo 8:41 (lähes kaikki kommentoitu) passed
LisätiedotLaskennan teoria
581336-0 Laskennan teoria luennot syyslukukaudella 2004 Jyrki Kivinen tietojenkäsittelytieteen laudatur-kurssi, 3 ov pakollinen tietojenkäsittelytieteen suuntautumisvaihtoehdossa, opettajan suuntautumisvaihtoehdossa
LisätiedotITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat
Lisätiedot802320A LINEAARIALGEBRA OSA III
802320A LINEAARIALGEBRA OSA III Tapani Matala-aho MATEMATIIKKA/LUTK/OULUN YLIOPISTO SYKSY 2016 LINEAARIALGEBRA 1 / 56 Määritelmä Määritelmä 1 Olkoot V ja W lineaariavaruuksia kunnan K yli. Kuvaus L : V
LisätiedotMS-A0401 Diskreetin matematiikan perusteet Yhteenveto, osa I
MS-A0401 Diskreetin matematiikan perusteet Yhteenveto, osa I G. Gripenberg Aalto-yliopisto 30. syyskuuta 2015 G. Gripenberg (Aalto-yliopisto) MS-A0401 Diskreetin matematiikan perusteet Yhteenveto, 30.
Lisätiedot2.4 Normaalimuoto, pohja ja laskentajärjestys 2.4. NORMAALIMUOTO, POHJA JA LASKENTAJÄRJESTYS 13
2.4. NORMAALIMUOTO, POHJA JA LASKENTAJÄRJESTYS 13 Toisinaan voi olla syytä kirjoittaa α- tai β-kirjain yhtäsuuruusmerkin yläpuolelle kertomaan, mitä muunnosta käytetään. Esimerkki 4 1. (λx.x)y β = y 2.
LisätiedotFORMAALI SYSTEEMI (in Nutshell): aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus
FORMAALI SYSTEEMI (in Nutshell): Formaali kieli: aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus esim. SSM:n tai EBNF:n avulla Semantiikka:
LisätiedotRatkaisuehdotukset LH 3 / alkuvko 45
Ratkaisuehdotukset LH 3 / alkuvko 45 Tehtävä : Olkoot A, B, X R n n, a, b R n ja jokin vektorinormi. Kätetään vektorinormia vastaavasta operaattorinormista samaa merkintää. Nätä, että. a + b a b, 2. A
LisätiedotTIEA241 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
LisätiedotTIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 10. kesäkuuta 2013
TIEA241 Automaatit ja kieliopit, kesä 2013 etenevä Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 10. kesäkuuta 2013 Sisällys etenevä etenevä Chomskyn hierarkia (ja muutakin) kieli säännöllinen LL(k) LR(1)
Lisätiedot