TIES542 kevät 2009 Aliohjelmien formalisointia lambda-kieli
|
|
- Santeri Manninen
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 TIES542 kevät 2009 Aliohjelmien formalisointia lambda-kieli Antti-Juhani Kaijanaho 3. helmikuuta 2009 Lambda-kielen taustalla on 1900-luvun alkuvuosikymmenien matematiikan perusteiden tutkimus ja siihen liittyvä logiikan kehittyminen. Noiden aikojen suuri kysymys oli, voidaanko koko matematiikka formalisoida mekaaniseksi laskentajärjestelmäksi niin, ettei siihen jää piileviä ristiriitoja 1 Alonzo Church oli yksi heistä, joka pyrki tämän ongelman ratkaisemaan. Hänen ratkaisuehdotelmaansa kehittivät eteenpäin myös hänen oppilaansa Stephen C. Kleene ja J. Barkley Rosser. Kleene ja Rosser osoittivat varsin pian, että Churchin järjestelmä on logiikaksi käyttökelvoton (ristiriitainen). Church oli kuitenkin jo oivaltanut, että se kykenee määrittelemään kaikki mekaanisesti laskettavissa olevat funktiot, ja vain ne. Käyttäen tätä ajatusta hyväkseen hän ratkaisi loogiikkoja monta kymmentä vuotta vaivanneen ratkeavuusongelman (ns. Entscheidungsproblem) Church osoitti, että ei ole mahdollista mekaanisesti selvittää, onko jokin mielivaltainen looginen väittämä tosi vai ei. 2 Churchin järjestelmä, kun siitä on siivottu ns. illatiiviset osat eli ne, jotka tarvitaan logiikkapuuhasteluun, on nimeltään lambda-kieli taikka lambda-laskento (engl. lambda calculus), ja se on yksi maailman vanhimmista ohjelmointikielistä kehitetty ennen ohjelmoitavia tietokoneita. Nykyaikana lambda-kieli on yksi teoreettisen ohjelmointikielitutkimuksen päätyökaluista. Esimerkiksi staattisten 1. Edelleen varsin tunnettu, yksi vanhimmista alkuaikojen loogisten järjestelmien piilevistä ristiriidoista on Bertrand Russellin paradoksi: kuuluuko se joukko itseensä, johon kuuluvat kaikki ne joukot, jotka eivät kuulu itseensä? 2. Saman ongelman ratkaisi suunnilleen samoihin aikoihin myös muuan Alan Turing, käyttäen nykyisin Turingin koneena tunnettua formalismia. Church ehti julkaista ensin, mutta Turing saa jostain syystä nykyisin suuremman osan kunniasta. Jopa tuo ongelmatyyppi tunnetaan nykyisin nimellä (Turingin koneen) pysähtymisongelma (engl. halting problem). 1
2 tyyppijärjestelmien teoria on kehittynyt pääosin lambda-kielen ympärille. Funktiokielet ovat puolestaan kaikki olennaisesti laajennettuja lambda-kieliä. Lambda-kielen keskeinen idea on mallittaa matemaattinen funktio (ja samalla myös aliohjelma) ymmärrettynä laskentaohjeena. Kielestä on siivottu pois häiritsemästä kaikki muu. Yllättäen kieli on tästä huolimatta erittäin ilmaisuvoimainen. Klassikkokirjoja lambda-kielestä ovat Church (1985), Curry and Feys (1968). Suhteellisen kattava teos lambda-kielestä on Barendregt (1984). 1 Syntaktiset määritelmät Lambda-kielen abstrakti syntaksi on seuraavanlainen: x, y, z Var t, u Λ t, u ::= x (muuttuja) tu (applikaatio) λxt (abstraktio) Joukon Λ alkioita sanotaan usein (lambda-)termeiksi. Abstraktion λxt intuitiivinen tulkinta on termi t muuttujan x funktiona. Vastaavasti applikaatio tu tarkoittaa intuitiivisesti funktion t arvo kohdassa u. Lambda-kielessä ei ole moniparametrisia funktioita, vaan niitä simuloidaan curry malla (λxλyt)u 1 u 2. Applikaatio tavanomaisesti assosioi vasemmalle ja abstraktio oikealle; applikaatiolla on suurempi presedenssi kuin abstraktiolla. Varsin usein käytetään lyhennysmerkintää λx 1 x 2 x n.t, joka tarkoittaa termiä λx 1 λx 2 λx n t. Huomaa, kuinka lyhennysmerkinnässä muuttujalistan jälkeen tulee piste. Esimerkki λxx on intuitiivisesti identiteettifunktio. Siitä käytetään toisinaan nimeä I. 2. λxy.x on funktio, joka palauttaa vakiofunktion. Siitä käytetään toisinaan nimeä K. 3. λxyz.xz(yz) on nimeltään S. Termit λx.xz ja λy.yz ovat intuitiivisesti samoja, mutta termit λx.xz ja λx.xy eivät ole. Syynä tähän on se, että λn jälkeen tulevan muuttujan nimellä ei ole mitään merkitystä tilanne on sama kuin esimerkiksi integraalissa 2 f(x) dx = 2 f(y) dy 1 1 2
3 Tätä eroa merkitsemään on luotu kaksi termiä vapaa muuttuja (engl. free variable) (kuten y termissä λxxy) ja sidottu muuttuja (engl. bound variable) (kuten x termissä λxxy). Vapaasta muuttujast sanotaan myös, että se esiintyy vapaana (engl. occurs free) termissä. Muuttuja esiintyy vapaana jossain termissä, jos se ylipäätään esiintyy kyseisessä termissä ja ainakin yksi sen esiintymistä ei ole sellaisen λn alla, jonka vieressä kyseinen muuttuja on. Muodollisesti määritellään (meta)funktio 3 F V : Λ P(Var) seuraavasti F V x = {x} F V tu = F V t F V u F V λxt = F V t \ {x} F V t on siis t:ssä esiintyvien vapaiden muuttujien joukko. Jatkossa tullaan tarvitsemaan myös korvausoperaattoria (engl. substitution operator), joka on (meta)funktio Var Λ Λ Lambda. Sen tulosta merkitään tässä monisteessa t[x := u], ja se korvaa kaikki x:n vapaat esiintymät t:ssä u:lla. Muita kirjallisuudessa esiintyviä merkintöjä ovat [x := u]t, t[u/x] ja S x u t. Korvausoperaattorin täsmällinen määritelmä on jokseenkin sotkuinen, koska sen pitää välttää ns. muuttujan kaappausta (engl. variable capture) kyse on olennaisesti paikallisen muuttujan staattisen sidonnan varmistamisesta: y[x := t] = { t y jos x = y jos x y (t 1 t 2 )[x := u] = t 1 [x := u] t 2 [x := u] (2) λyt jos x = y tai x F V t (λyt)[x := u] = λy(t[x := u]) jos x y ja x F V t ja y F V u (3) λz(t[y := z][x := u]) jos x y ja x F V t ja y F V u missä z on uusi muuttuja (engl. fresh variable) eli muuttuja, jota ei ole vielä käytetty mihinkään (oikeastaan riittää z x ja z F V u ). (1) 2 Denotationaalinen semantiikka Lambda-laskennon denotationaalinen semantiikka on erittäin yksinkertainen. Olkoon D sellainen hila, että D sisältää kaikki Scott-jatkuvat funktiot D D 3. Notaatio P(S) tarkoittaa S:n potenssijoukkoa eli sen osajoukkojen joukkoa. 3
4 (tällaisen joukon olemassaolo on todistettu). Nyt voidaan määritellä semanttinen funktio seuraavasti: E : Λ (Var D) D E x σ = σ(x) { E t σ(e u σ) E tu σ = E λxt σ = f jos E t σ D D muuten missä f(a) = E t (σ {(x, a)}) 3 Sievennykset Ns. α-muunnos (engl. α-conversion) sallii sidotun muuttujan nimen vaihtamisen. Se määritellään (pienaskelsemantiikan keinoin) seuraavasti: λxt α λy(t[x := y]) jos y F V t t α t tu α t u u α u tu α tu t α t λxt α λxt Tehtävä 1. Osoita, että ( α ) on ekvivalenssirelaatio. Jos t α u pätee, sanotaan, että t ja u ovat α-ekvivalentteja. Käytännössä niitä pidetään samana terminä toisin sanoen termejä käsitellään α-muunnoksen ekvivalenssiluokkina. Koko lambda-laskennon ydin sisältyy β-sievennykseen (engl. β-reduction), joka 4
5 määritellään seuraavasti: (λxt)u β t[x := u] t β t tu β t u u β u tu β tu t β t λxt β λxt Muotoa (λxt)u sanotaan β-redeksiksi (engl. β-redex). Jos termi ei sisällä yhtään β-redeksiä, sen sanotaan olevan normaalimuoto (engl. normal form). Jos t β u pätee 4 ja u on normaalimuoto, niin u:n sanotaan olevan t:n normaalimuoto. Teoreema 1 (Church ja Rosser). Jos t β u 1 ja t β u 2 pätevät, niin on olemassa α-ekvivalentit normaalimuodot t 1 ja t 2 siten, että u 1 β t 1 ja u 2 β t 2 pätevät. Todistus. Sivuutetaan. Tämä Church Rosser-teoreema sanoo siis, että jos lauseella on ylipäätään normaalimuoto, se on yksikäsitteinen (modulo α-ekvivalenssi). Jos t β u taikka u β t pätee, sanotaan t:n ja u:n olevan β-ekvivalentteja, merkitään t = β u. 4 Churchin koodaukset Yllättäen lambda-laskennosta on muodostunut ohjelmointikielten teorian keskeisimmistä kulmakivistä! Tämän taustalla on muun muassa havainto, että lambdalaskennossa voi tehdä kaikenlaista kivaa. Esimerkiksi voidaan asettaa seuraavat 4. Jos ( ) on relaatio, niin ( ) on sen refleksiivis-transitiivinen sulkeuma, eli t 0 t n tarkoittaa joko, että t 0 ja t n ovat samat tai että on olemassa t 1,..., t n 1 siten, että t i t i+1 pätee kaikilla i = 0,..., n 1. 5
6 lyhennysmerkinnät: zero = λfx.x succ = λnfx.f(nfx) add = λmnfx.mf(nfx) mult = λmnf.m(nf) Laskemalla muutamia esimerkkilaskuja voidaan huomata, että zero tarkoittaa nollaa, succ on funktio, joka lisää argumenttiinsa ykkösen, add on funktio, joka laskee kaksi argumenttiaan yhteen, ja mult on vastaava kertolaskufunktio. Yleisesti, jos meillä on mikä tahansa yhteen- ja kertolaskutehtävä, se voidaan koodata lambda-lausekkeeksi edellä esitettyjen määritelmien avulla, ja tämän lausekkeen normaalimuoto esittää laskutehtävän vastausta! Yleisesti tässä koodauksessa, jota kutsutaan Churchin numeraaleiksi, lukua n vastaa lambda-lauseke eli succ(succ(... (succ(zero)... ) }{{} n kpl λf.λx. f(f... (f x)... ). }{{} n kpl On myös mahdollista asettaa seuraavanlaiset määritelmät: true = λxy.x false = λxy.y if = λx.x Nämä todella käyttäytyvät nimensä mukaisesti totuusarvoina ja if-lausekkeena! Ehkä kuitenkin hätkähdyttävin havainto on, että rekursiota on mahdollista simuloida lambda-laskennossa ilman, että rekursiivisia määritelmiä varsinaisesti sallittaisiin! Ideana on etsiä ns. kiintopisteoperaattori F, jolle seuraava β-ekvivalenssi pätee: F g = β g(f g) Nimensä tällainen (hypoteettinen) kiintopisteoperaattori saa siitä, että ns. kiintopisteyhtälön x = β gx ratkaisuksi x:n suhteen kelpaa aina x = F g. Sattuu olemaan niin, että lambdalaskennossa kiintopisteoperaattoreita on ääretön määrä; yksi niistä on Y-kombinaattoriksi kutsuttu λf(λxf(xx))(λxf(xx)). 6
7 Rekursion simulointi onnistuu kiintopisteoperaattorin avulla seuraavasti: Funktio f määritellään rekursiivisesti antamalla yhtälö f = E jossa f esiintyy myös yhtälön oikealla puolella, siis lausekkeessa E, vapaana. Määritellään apufunktio f = λf.e. Nyt funktio F f, missä F on kiintopisteoperaattori, on funktio f eli edellä annetun rekursioyhtälön ratkaisu! Koska lambda-laskento kykenee esittämään aritmetiikan ja simuloimaan rekursiota, on se Turing-täydellinen. 5 Laskujärjestykset Edellä määritelty β-sievennysrelaatio on epädeterministinen. Vaikka Churchin Rosserin teoreema takaakin, että mahdollinen normaalimuoto on yksikäsitteinen, mikään ei takaa, että mielivaltaisessa järjestyksessä tehty sievennys päättyy. Esimerkki 2. Sievennetään argumentti ensin: (λxy) ((λxxxx)(λxxxx)) β (λxy) ((λxxxx)(λxxxx)(λxxxx)) β (λxy) ((λxxxx)(λxxxx)(λxxxx)(λxxxx)) Sievennetään uloin redeksi ensin: (λxy) ((λxxxx)(λxxxx)) β y Voidaan todistaa, että normaalijärjestys (engl. normal order) ( N ) löytää aina normaalimuodon, jos se on olemassa: (λxt)u N t[x := u] t N t tu N t u jos t ei ole abstraktio u N u tu N tu jos t on normaalimuoto t N t λxt N λxt 7
8 Normaalijärjestys siis valitsee uloimman redeksin, tai jos on useampia uloimpia redeksejä, jotka eivät ole toisiinsa nähden sisäkkäisiä, niistä vasemmanpuolisimman. Normaalijärjestys on siis turvallinen, mutta se on usein tehoton, koska se saattaa aiheuttaa argumentin kopioitumisen ja siten työmäärän tuplautumisen. Käytössä on myös applikatiivinen järjestys (engl. applicative order) ( A ), jolla ei ole vastaavaa tehottomuusongelmaa: (λxt)u A t[x := u] jos t ja u ovat normaalimuotoja t A t tu A t u u A u tu A tu jos t on normaalimuoto t A t λxt A λxt Applikatiivisen järjestyksen heikko (engl. weak) variantti, joka ei sievennä abstraktion sisällä, vastaa ohjelmointikielen aliohjelman argumentin arvovälitystä. Vastaavasti normaalijärjestyksen heikko muoto (joka myöskään ei sievennä abstraktion sisällä) vastaa nimivälitystä. Viitteet H. P. Barendregt. The Lambda Calculus. Its Syntax and Semantics. Number 103 in Studies in logic and the foundation of mathematics. Elsevier, Amsterdam, revised edition, Alonzo Church. The Calculi of Lambda Conversion. Princeton University Press, Haskell B. Curry and Robert Feys. Combinatory Logic, volume 1. North-Holland,
Luku 7. Aliohjelmat. 7.1 Kutsusekvenssit. Aliohjelma (subroutine) on useimpien kielten tärkein kontrollivuon ohjausja abstrahointikeino.
Luku 7 Aliohjelmat Aliohjelma (subroutine) on useimpien kielten tärkein kontrollivuon ohjausja abstrahointikeino. 7.1 Kutsusekvenssit Aliohjelmaan kontrolli siirtyy sen kutsun (call) kautta. Kun aliohjelman
LisätiedotTIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 26. kesäkuuta 2013
ja ja TIEA241 Automaatit ja kieliopit, kesä 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 26. kesäkuuta 2013 Sisällys ja ja on yksi vanhimmista tavoista yrittää mallittaa mekaanista laskentaa. Kurt
Lisätiedotformalismeja TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho 15. joulukuuta 2015 TIETOTEKNIIKAN LAITOS
TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 15. joulukuuta 2015 Sisällys Loppukurssin aikataulu tiistai 15.12.2015 viimeiset demot keskiviikko 16.12.2015 viimeiset
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ä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ätiedotLuku 2. Ohjelmointi laskentana. 2.1 Laskento
Luku 2 Ohjelmointi laskentana Funktio-ohjelmoinnin, olio-ohjelmoinnin ja käskyohjelmoinnin ero on löydettävissä niiden pohjalla olevista laskennan mallista. Automaattisen tietojenkäsittelyn yksi historiallinen
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ä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, 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ä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ä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ä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ätiedotLisää laskentoa. TIEA341 Funktio ohjelmointi 1 Syksy 2005
Lisää laskentoa TIEA341 Funktio ohjelmointi 1 Syksy 2005 Kertausta: Laajennettu aritmetiikka Lasketaan rationaaliluvuilla vakiot yhteen, vähennys, kerto ja jakolasku Laajennetaan sitä määrittelyillä: vakio
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ätiedotUusi näkökulma. TIEA341 Funktio ohjelmointi 1 Syksy 2005
Uusi näkökulma TIEA341 Funktio ohjelmointi 1 Syksy 2005 Aloitetaan alusta... Otetaan uusi näkökulma Haskelliin ohjelmointi laskentana kertausta toisaalta, uusia käsitteitä toisaalta helpottanee sitten
LisätiedotTIES542 kevät 2009 Denotaatio
TIES542 kevät 2009 Denotaatio Antti-Juhani Kaijanaho 27.1.2009 (korjauksia 28.1.2009) Denotationaalisessa merkitysopissa kukin (ohjelmointi)kielen konstrktiolle määritellään matemaattinen otus, jota sanotaan
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ätiedotTIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 8. syyskuuta 2016
TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. syyskuuta 2016 Sisällys a https://tim.jyu.fi/view/kurssit/tie/ tiea241/2016/videoiden%20hakemisto Matemaattisen
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ä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ä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ätiedotJohdatus λ-kalkyyliin
Annika Piiroinen, Kalle Viiri 2014 Johdatus λ-kalkyyliin λ kalkyyli on alunperin Alonzo Chruchin kehittämä Turing täydellinen formaalin laskennan malli. Funktionaaliset ohjelmointikielet perustuvat siihen,
LisätiedotChomskyn hierarkia. tyyppi 0 on juuri esitelty (ja esitellään kohta lisää) tyypit 2 ja 3 kurssilla Ohjelmoinnin ja laskennan perusmallit
Chomskyn hierarkia Noam Chomskyn vuonna 1956 esittämä luokittelu kieliopeille niiden ilmaisuvoiman mukaan tyyppi kieli kielioppi tunnistaminen 0 rekurs. lueteltava rajoittamaton Turingin kone 1 kontekstinen
LisätiedotRekursiiviset palautukset [HMU 9.3.1]
Rekursiiviset palautukset [HMU 9.3.1] Yleisesti sanomme, että ongelma P voidaan palauttaa ongelmaan Q, jos mistä tahansa ongelmalle Q annetusta ratkaisualgoritmista voidaan jotenkin muodostaa ongelmalle
Lisätiedotja λ 2 = 2x 1r 0 x 2 + 2x 1r 0 x 2
Johdatus diskreettiin matematiikkaan Harjoitus 4, 7.10.2015 1. Olkoot c 0, c 1 R siten, että polynomilla r 2 c 1 r c 0 on kaksinkertainen juuri. Määritä rekursioyhtälön x n+2 = c 1 x n+1 + c 0 x n, n N,
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ä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ätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2018-2019 Kertausta toiseen välikokeeseen Yhteenveto Kurssin sisältö 1. Algoritmin käsite 2. Lukujärjestelmät ja niiden muunnokset; lukujen esittäminen tietokoneessa 3. Logiikka
LisätiedotReaaliarvoisen yhden muuttujan funktion raja arvo LaMa 1U syksyllä 2011
Neljännen viikon luennot Reaaliarvoisen yhden muuttujan funktion raja arvo LaMa 1U syksyllä 2011 Perustuu Trench in verkkokirjan lukuun 2.1. Esko Turunen esko.turunen@tut.fi Funktion y = f (x) on intuitiivisesti
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ätiedotStaattinen tyyppijärjestelmä
Luku 12 Staattinen tyyppijärjestelmä [Staattinen t]yyppijärjestelmä on ratkeava, kieliopillinen menetelmä, jota käytetään todistamaan tiettyjen käytösten puuttuminen ohjelmasta luokittelemalla ilmaisuja
LisätiedotTodistus: Aiemmin esitetyn mukaan jos A ja A ovat rekursiivisesti lueteltavia, niin A on rekursiivinen.
Lause: Tyhjyysongelma ei ole osittain ratkeava; ts. kieli ei ole rekursiivisesti lueteltava. L e = { w { 0, 1 } L(M w ) = } Todistus: Aiemmin esitetyn mukaan jos A ja A ovat rekursiivisesti lueteltavia,
LisätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kurssikerta 1 Määrittelyjoukoista Tarkastellaan funktiota, jonka määrittelevä yhtälö on f(x) = x. Jos funktion lähtöjoukoksi määrittelee vaikkapa suljetun välin [0, 1], on funktio
LisätiedotTäydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista
Täydentäviä muistiinpanoja Turingin koneiden vaihtoehdoista Antti-Juhani Kaijanaho 15. maaliskuuta 2012 1 Apumääritelmä Määritelmä 1. Olkoon Σ merkistö, jolla on olemassa täydellinen järjestys ( ) Σ 2.
LisätiedotMatematiikan peruskurssi 2
Matematiikan peruskurssi Demonstraatiot III, 4.5..06. Mikä on funktion f suurin mahdollinen määrittelyjoukko, kun f(x) x? Mikä on silloin f:n arvojoukko? Etsi f:n käänteisfunktio f ja tarkista, että löytämäsi
LisätiedotHY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 5 Ratkaisuehdotukset
HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 5 Ratkaisuehdotukset 1. Päättele resoluutiolla seuraavista klausuulijoukoista: (a) {{p 0 }, {p 1 }, { p 0, p 2 },
LisätiedotDFA:n käyttäytyminen ja säännölliset kielet
säännölliset kielet TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 9. marraskuuta 2015 Sisällys toiminta formaalisti Olkoon M = (Q, Σ, δ, q 0, F) deterministinen
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ä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ätiedotX R Matematiikan johdantokurssi, syksy 2016 Harjoitus 5, ratkaisuista
Matematiikan johdantokurssi, syksy 06 Harjoitus, ratkaisuista. Olkoon perusjoukkona X := {,,,, } ja := {(, ), (, ), (, ), (, )}. Muodosta yhdistetyt (potenssi)relaatiot,,,. Entä mitä on yleisesti n, kun
LisätiedotTuringin koneet. TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 7. joulukuuta 2015 TIETOTEKNIIKAN LAITOS.
TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 7. joulukuuta 2015 Sisällys Vuosi on 1936, eikä tietokoneita ollut. Computer oli ammattinimike. http://www.nasa.gov/centers/dryden/
LisätiedotChomskyn hierarkia ja yhteysherkät kieliopit
Chomskyn hierarkia ja yhteysherkät kieliopit Laskennan teorian opintopiiri Tuomas Hakoniemi 21. helmikuuta 2014 Käsittelen tässä laskennan teorian opintopiirin harjoitustyössäni muodollisten kielioppien
LisätiedotJoukot. Georg Cantor ( )
Joukot Matematiikassa on pyrkimys määritellä monimutkaiset asiat täsmällisesti yksinkertaisempien asioiden avulla. Tarvitaan jokin lähtökohta, muutama yleisesti hyväksytty ja ymmärretty käsite, joista
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ätiedot5.3 Ratkeavia ongelmia
153 5.3 Ratkeavia ongelmia Deterministisen äärellisten automaattien (DFA) hyväksymisongelma: hyväksyykö annettu automaatti B merkkijonon w? Ongelmaa vastaava formaali kieli on A DFA = { B, w B on DFA,
Lisätiedoton rekursiivisesti numeroituva, mutta ei rekursiivinen.
6.5 Turingin koneiden pysähtymisongelma Lause 6.9 Kieli H = { M pysähtyy syötteellä w} on rekursiivisesti numeroituva, mutta ei rekursiivinen. Todistus. Todetaan ensin, että kieli H on rekursiivisesti
LisätiedotDierentiaaliyhtälöistä
Dierentiaaliyhtälöistä Markus Kettunen 4. maaliskuuta 2009 1 SISÄLTÖ 1 Sisältö 1 Dierentiaaliyhtälöistä 2 1.1 Johdanto................................. 2 1.2 Ratkaisun yksikäsitteisyydestä.....................
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ätiedotRajoittamattomat kieliopit (Unrestricted Grammars)
Rajoittamattomat kieliopit (Unrestricted Grammars) Laura Pesola Laskennanteorian opintopiiri 13.2.2013 Formaalit kieliopit Sisältävät aina Säännöt (esim. A -> B C abc) Muuttujat (A, B, C, S) Aloitussymboli
LisätiedotEsko Turunen Luku 9. Logiikan algebralisointi
Logiikan algebralisointi Tässä viimeisessä luvussa osoitamme, miten algebran peruskäsitteitä käytetään logiikan tutkimuksessa. Käsittelemme vain klassista lauselogiikkaa ja sen suhdetta Boolen algebraan,
LisätiedotMatematiikan tukikurssi, kurssikerta 2
Matematiikan tukikurssi kurssikerta 1 Relaatioista Oletetaan kaksi alkiota a ja b. Näistä kumpikin kuuluu johonkin tiettyyn joukkoon mahdollisesti ne kuuluvat eri joukkoihin; merkitään a A ja b B. Voidaan
LisätiedotLineaarinen toisen kertaluvun yhtälö
Lineaarinen toisen kertaluvun yhtälö Keijo Ruotsalainen Mathematics Division Lineaarinen toisen kertaluvun differentiaaliyhtälö Toisen kertaluvun täydellinen lineaarinen yhtälö muotoa p 2 (x)y + p 1 (x)y
LisätiedotDiofantoksen yhtälön ratkaisut
Diofantoksen yhtälön ratkaisut Matias Mäkelä Matemaattisten tieteiden tutkinto-ohjelma Oulun yliopisto Kevät 2017 Sisältö Johdanto 2 1 Suurin yhteinen tekijä 2 2 Eukleideen algoritmi 4 3 Diofantoksen yhtälön
LisätiedotTodistusmenetelmiä Miksi pitää todistaa?
Todistusmenetelmiä Miksi pitää todistaa? LUKUTEORIA JA TO- DISTAMINEN, MAA11 Todistus on looginen päättelyketju, jossa oletuksista, määritelmistä, aksioomeista sekä aiemmin todistetuista tuloksista lähtien
LisätiedotTäydentäviä muistiinpanoja laskennan rajoista
Täydentäviä muistiinpanoja laskennan rajoista Antti-Juhani Kaijanaho 10. joulukuuta 2015 1 Diagonaalikieli Diagonaalikieli on D = { k {0, 1} k L(M k ) }. Lause 1. Päätösongelma Onko k {0, 1} sellaisen
LisätiedotLaskennan teoriasta. Antti-Juhani Kaijanaho. 11. helmikuuta 2016
Laskennan teoriasta Antti-Juhani Kaijanaho 11. helmikuuta 2016 Tarina alkaa vuodesta 1687, jolloin Isaac Newton (1642 1727) julkaisi kirjan Philosophiae Naturalis Principa Mathematica (suomeksi Luonnonfilosofian
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ä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ätiedotmissä on myös käytetty monisteen kaavaa 12. Pistä perustelut kohdilleen!
Matematiikan johdantokurssi Kertausharjoitustehtävien ratkaisuja/vastauksia/vihjeitä. Osoita todeksi logiikan lauseille seuraava: P Q (P Q). Ratkaisuohje. Väite tarkoittaa, että johdetut lauseet P Q ja
LisätiedotEntscheidungsproblem
Entscheidungsproblem Antti-Juhani Kaijanaho 24. kesäkuuta 2013 Entscheidungsproblem eli ratkaisuongelma kysyy, millä mekaanisella menetelmällä voisi selvittää, onko mielivaltainen annettu ensimmäisen kertaluvun
LisätiedotHY, MTO / Matemaattisten tieteiden kandiohjelma Todennäköisyyslaskenta IIa, syksy 2018 Harjoitus 3 Ratkaisuehdotuksia.
HY, MTO / Matemaattisten tieteiden kandiohjelma Todennäköisyyslaskenta IIa, syksy 8 Harjoitus Ratkaisuehdotuksia Tehtäväsarja I. Mitkä seuraavista funktioista F, F, F ja F 4 ovat kertymäfunktioita? Mitkä
LisätiedotDiskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9
Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9 Tuntitehtävät 9-10 lasketaan alkuviikon harjoituksissa ja tuntitehtävät 13-14 loppuviikon harjoituksissa. Kotitehtävät 11-12 tarkastetaan loppuviikon
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ä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ätiedotT Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet )
T-79144 Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet 11-22) 26 29102004 1 Ilmaise seuraavat lauseet predikaattilogiikalla: a) Jokin porteista on viallinen
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ä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ä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ä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ä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ä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ätiedotMatematiikan tukikurssi, kurssikerta 3
Matematiikan tukikurssi, kurssikerta 3 1 Epäyhtälöitä Aivan aluksi lienee syytä esittää luvun itseisarvon määritelmä: { x kun x 0 x = x kun x < 0 Siispä esimerkiksi 10 = 10 ja 10 = 10. Seuraavaksi listaus
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ä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ä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ätiedotEntscheidungsproblem
Entscheidungsproblem Antti-Juhani Kaijanaho 10. joulukuuta 2015 Entscheidungsproblem eli ratkaisuongelma kysyy, millä mekaanisella menetelmällä voisi selvittää, onko mielivaltainen annettu ensimmäisen
LisätiedotTIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 2. helmikuuta 2012
TIEA241 Automaatit ja, kevät 2012 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 2. helmikuuta 2012 Sisällys Sisällys Chomskyn hierarkia kieli säännöllinen kontekstiton kontekstinen rekursiivisesti lueteltava
Lisätiedot(1) refleksiivinen, (2) symmetrinen ja (3) transitiivinen.
Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus. Tietyn ominaisuuden samuus -relaatio on ekvivalenssi; se on (1) refleksiivinen,
LisätiedotJohdatus diskreettiin matematiikkaan Harjoitus 5, Ratkaise rekursioyhtälö
Johdatus diskreettiin matematiikkaan Harjoitus 5, 14.10.2015 1. Ratkaise rekursioyhtälö x n+4 2x n+2 + x n 16( 1) n, n N, alkuarvoilla x 1 2, x 2 14, x 3 18 ja x 4 42. Ratkaisu. Vastaavan homogeenisen
LisätiedotMatematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus.
Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus. Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden
LisätiedotMatematiikan johdantokurssi, syksy 2016 Harjoitus 11, ratkaisuista
Matematiikan johdantokurssi, syksy 06 Harjoitus, ratkaisuista. Valitse seuraaville säännöille mahdollisimman laajat lähtöjoukot ja sopivat maalijoukot niin, että syntyy kahden muuttujan funktiot (ks. monisteen
Lisätiedot1 Määrittelyjä ja aputuloksia
1 Määrittelyjä ja aputuloksia 1.1 Supremum ja infimum Aluksi kerrataan pienimmän ylärajan (supremum) ja suurimman alarajan (infimum) perusominaisuuksia ja esitetään muutamia myöhemmissä todistuksissa tarvittavia
LisätiedotPredikaattilogiikan malli-teoreettinen semantiikka
Predikaattilogiikan malli-teoreettinen semantiikka February 4, 2013 Muistamme, että predikaattilogiikassa aakkosto L koostuu yksilövakioista c 0, c 1, c 2,... ja predikaattisymboleista P, R,... jne. Ekstensionaalisia
LisätiedotJohdantoa INTEGRAALILASKENTA, MAA9
Lyhyehkö johdanto integraalilaskentaan. Johdantoa INTEGRAALILASKENTA, MAA9 Integraalilaskennan lähtökohta 1: Laskutoimitukset + ja ovat keskenään käänteisiä, samoin ja ovat käänteisiä, kunhan ei jaeta
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ätiedotSäännöllisten kielten sulkeumaominaisuudet
Säännöllisten kielten sulkeumaominaisuudet Osoitamme nyt, että säännöllisten kielten joukko on suljettu yhdisteen, konkatenaation ja tähtioperaation suhteen. Toisin sanoen jos A ja B ovat säännöllisiä,
LisätiedotLuonnollisten lukujen ja kokonaislukujen määritteleminen
Luonnollisten lukujen ja kokonaislukujen määritteleminen LuK-tutkielma Jussi Piippo Matemaattisten tieteiden yksikkö Oulun yliopisto Kevät 2017 Sisältö 1 Johdanto 2 2 Esitietoja 3 2.1 Joukko-opin perusaksioomat...................
Lisätiedotr > y x z x = z y + y x z y + y x = r y x + y x = r
HY / Matematiikan ja tilastotieteen laitos Vektorianalyysi I, syksy 018 Harjoitus Ratkaisuehdotukset Tehtävä 1. Osoita, että avoin kuula on avoin joukko ja suljettu kuula on suljettu joukko. Ratkaisu.
LisätiedotAlgoritmin määritelmä [Sipser luku 3.3]
Algoritmin määritelmä [Sipser luku 3.3] Mitä algoritmilla yleensä tarkoitetaan periaatteessa: yksiselitteisesti kuvattu jono (tietojenkäsittely)operaatioita, jotka voidaan toteuttaa mekaanisesti käytännössä:
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ätiedotRekursiivisten ja lambda-määriteltävien funktioiden yhtenevyys
Rekursiivisten ja lambda-määriteltävien funktioiden yhtenevyys Juho Kyyhkynen Pro gradu -tutkielma Helsingin Yliopisto Matemaattis-luonnontieteellinen tiedekunta Matematiikan ja tilastotieteen osasto Marraskuu
Lisätiedot=p(x) + p(y), joten ehto (N1) on voimassa. Jos lisäksi λ on skalaari, niin
FUNKTIONAALIANALYYSI, RATKAISUT 1 KEVÄT 211, (AP) 1. Ovatko seuraavat reaaliarvoiset funktiot p : R 3 R normeja? Ovatko ne seminormeja? ( x = (x 1, x 2, x 3 ) R 3 ) a) p(x) := x 2 1 + x 2 2 + x 2 3, b)
Lisätiedot2. Laskettavuusteoriaa
2. Laskettavuusteoriaa Käymme läpi ratkeamattomuuteen liittyviä ja perustuloksia ja -tekniikoita [HMU luku 9]. Tämän luvun jälkeen opiskelija tuntee joukon keskeisiä ratkeamattomuustuloksia osaa esittää
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ä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ätiedotMatematiikan johdantokurssi, syksy 2017 Harjoitus 8, ratkaisuista
Matematiikan johdantokurssi, sks 07 Harjoitus 8, ratkaisuista. Olkoot f ja g reaalifunktioita. Mitä voidaan sanoa hdistetstä funktiosta g f, jos a) f tai g on rajoitettu? b) f tai g on jaksollinen? Ratkaisu.
LisätiedotDiskreetin matematiikan perusteet Malliratkaisut 2 / vko 38
Diskreetin matematiikan perusteet Malliratkaisut 2 / vko 38 Tuntitehtävät 11-12 lasketaan alkuviikon harjoituksissa ja tuntitehtävät 15-16 loppuviikon harjoituksissa. Kotitehtävät 13-14 tarkastetaan loppuviikon
LisätiedotMATEMATIIKAN JA TILASTOTIETEEN LAITOS Analyysi I Harjoitus alkavalle viikolle Ratkaisuehdotuksia (7 sivua) (S.M)
MATEMATIIKAN JA TILASTOTIETEEN LAITOS Analyysi I Harjoitus 7. 2. 2009 alkavalle viikolle Ratkaisuehdotuksia (7 sivua) (S.M) Luennoilla on nyt menossa vaihe, missä Hurri-Syrjäsen monistetta käyttäen tutustutaan
LisätiedotEpädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna
Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna. q 0 x solmuina laskennan mahdolliset tilanteet juurena alkutilanne lehtinä tilanteet joista ei siirtymää,
LisätiedotTämän vuoksi kannattaa ottaa käytännöksi aina kirjoittaa uuden funktion tyyppi näkyviin, ennen kuin alkaa sen määritemää kirjoittamaan.
3.1. LISTAT 35 destaan pisteittäisesti: init :: [α] [α] init (x : []) = [] init (x : xs) = x : init xs Varuskirjastoon kuuluu myös funktiot take ja drop, jotka ottavat tai tiputtavat pois, funktiosta riippuen,
Lisätiedot