Kursplan fastställd 2022-01-27 av programansvarig (eller motsvarande).
Kursöversikt
- Engelskt namnFinite automata and formal languages
- KurskodTMV029
- Omfattning7,5 Högskolepoäng
- ÄgareTKITE
- UtbildningsnivåGrundnivå
- HuvudområdeMatematik
- InstitutionDATA- OCH INFORMATIONSTEKNIK
- BetygsskalaTH - Mycket väl godkänd (5), Väl godkänd (4), Godkänd (3), Underkänd
Kurstillfälle 1
- Undervisningsspråk Engelska
- Anmälningskod 52142
- Sökbar för utbytesstudenterJa
Poängfördelning
Modul | LP1 | LP2 | LP3 | LP4 | Sommar | Ej LP | Tentamensdatum |
---|---|---|---|---|---|---|---|
0122 Inlämningsuppgift 3 hp Betygsskala: UG | 3 hp | ||||||
0222 Tentamen 4,5 hp Betygsskala: TH | 4,5 hp |
|
I program
- TKDAT - DATATEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
- TKITE - INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 2 (valbar)
- TKITE - INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
Examinator
- Nils Anders Danielsson
- Docent, Computing Science, Data- och informationsteknik
Behörighet
Grundläggande behörighet för grundnivåSökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.
Särskild behörighet
Samma behörighet som det kursägande programmet.Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.
Kursspecifika förkunskaper
Kunskaper i diskret matematik och programmering.Syfte
Kursen handlar huvudsakligen om ändliga automater, reguljära uttryck och kontextfria grammatiker. Den innehåller också en kort introduktion till Turingmaskiner.
Lärandemål (efter fullgjord kurs ska studenten kunna)
Kunskap och förståelse:
- Definiera olika begrepp inom automatteori och teorin om formella språk, som (icke-) deterministisk automat, reguljärt uttryck, reguljärt språk, kontextfri grammatik, kontextfritt språk samt Turingmaskin.
- Bevisa egenskaper hos (vissa) språk, grammatiker och automater med rigorösa matematiska metoder.
- Utforma ändliga automater, reguljära uttryck och kontextfria grammatiker som accepterar eller genererar vissa språk.
- Beskriva språket som accepteras av en ändlig automat eller som genereras av ett reguljärt uttryck eller en kontextfri grammatik.
- Transformera beskrivningar av reguljära språk mellan följande formalismer: deterministiska och ickedeterministiska ändliga automater samt reguljära uttryck.
- Förenkla automater och kontextfria grammatiker.
- Avgöra om ett ord hör till ett visst (reguljärt eller kontextfritt) språk.
- Utforma Turingmaskiner för enkla uppgifter.
- Manipulera formella beskrivningar av (vissa) språk, grammatiker och automater.
Innehåll
Ändliga automater och reguljära uttryck är enkla beräkningsmodeller. De används bland annat för lexikalanalys, mönsterigenkänning, och styrning av trafiksignaler. Vidare kan deras teori illustrera grundläggande begrepp inom mängdlära och läran om diskreta strukturer.
Kontextfria grammatiker används för att parsa och analysera både konstgjorda språk (till exempel programmeringsspråk) och naturliga språk.
Turingmaskiner ger en mer uttrycksfull beräkningsmodell. De hjälper dataloger att förstå begränsningarna hos mekaniska beräkningar genom att ge en precis definition av algoritmbegreppet.
Innehåll i lite mer detalj: Bevis. Ändliga automater, reguljära uttryck och relaterade algoritmer. Kontextfria grammatiker. Egenskaper hos reguljära och kontextfria språk. Kort introduktion till Turingmaskiner.
Organisation
Föreläsningar, övningar.
Litteratur
Kurslitteratur kommer att publiceras senast 8 veckor innan kursstart.
Examination inklusive obligatoriska moment
Kursen examineras med individuella inlämningsuppgifter och en individuell skriftlig tentamen.
Kursens examinator får examinera enstaka studenter på annat sätt än vad som anges ovan om särskilda skäl föreligger, till exempel om en student har ett beslut från Chalmers om pedagogiskt stöd på grund av funktionsnedsättning.