bild
Skolan för
datavetenskap
och kommunikation
KTH / CSC / Kurser / DD1350 / logik09 / Kursanalys

Logik för dataloger, logik09

Kursanalys

Kursdata

Kurs: DD1350 Logik för dataloger 6,0 hp. Genomfördes VT 2009 i period 4.

Kursledare var Dilian Gurov, med övrig föreläsare Johan Karlander och övningsassistenter Andreas Lundblad och Karl Palmskog.

Antal undervisningstimmar: föreläsningar 30 h, övningar 14 h och laborationer 8 h. Antal övningsgrupper: 4

Antal registrerade elever: 211,  antal direkt avhoppade elever (elever som valt kursen eller checkat in på kursen men som hoppade av så tidigt att de inte registrerades på den) 22.

Kurslitteratur: Michael Huth, Mark Ryan Logic in Computer Science.

Kursmoment: LAB1 - Laborationer 2,0 hp, TEN1 - Tentamen, 4,0 hp.

Antal elever som klarat LAB1: 150 elever.
Antal elever som klarat TEN1: 135 elever (inkl. Fx-komplettering).

Prestationsgrad efter första examinationstillfället: 61%.
Examinationsgrad efter första examinationstillfället: 55%.

Mål

Kursens mål är huvudsakligen att lära sig formella bevis - hur matematisk-logisk resonemang formaliseras med hjälp av formella logiska system och hur formella bevis konstrueras och granskas. Olika logiker och logiska system betraktas i kursen, orienterade på systemspecifikation och verifikation inom datalogin.

Förändringar inför denna kursomgång

Kursen är en ny kurs om matematisk logik anpassad till dataloger.

Sammanfattning

Det var spännande att se att en sådan kurs som introducerar avancerade logiska tekniker kan fungera t.o.m. i första studieåret. Det är ändå positivt att kursen flyttas till årskurs II där den kan synkroniseras med Paradigmkursen angående Prologprogrammering och med Diskretmattekursen angående modeller.  Innehållsmässig verkade kursen fungera bra och viktigaste begrepp och tekniker blev inlärda. Organisationsmässig däremot finns det ett antal aspekter att förbättra till nästa omgång, speciellt angående labbplanering och examination (se nedan).

Undervisningen

Undervisningen består av föreläsningar som introducerar materialet, övningar där begreppen fördjupas,  typiska bevistekniker övas och hemtalen kamraträttas, och labbar där två bevistekniker utvecklas på verktygsnivå. Upplägget verkar rimligt och produktivt, fast förbättringar planeras för att öka samspelet mellan alla undervisningsaktiviteter.

Examination

Labbdelen är P/F och bidrar inte till slutbetyget annars än att den är obligatorisk. Examinationen består av två "midterm exams" i form av kontrollskrivningar (som inte var obligatoriska men krävdes för att kunna gå muntliga kompletteringen), av en skriftlig tentamen bestående huvudsakligen av räknetal med kamraträttning i slutet (betyg C-F), och en inte obligatorisk muntlig komplettering bestående av räknetal och teoretiska frågor (för högre betyg). Systemet var för krångligt och kommer att lättas inför nästa kursomgång.

Kurslitteratur

Kursboken är Michael Huth, Mark Ryan Logic in Computer Science, kanske den enda passande moderna boken till vår kurs. På kurswebbsidan finns föreläsningsanteckningar och fler material från övnigar, kontrollskrivningar och hemtal. Föreläsningsanteckningarna är speciellt nödvändiga till föreläsningarna om Prolog, strukturell induktion och CTL modellprovning som inte betraktas i tillräklig detalj i boken.

Elevenkät

Här är en sammanfattning sammanställd av kursassistenterna.

Kursens belastning för eleverna

Arbetsbelastningen har varit rimligt för en 6,0 hp kurs, fast vissa moment i kursen betraktades av många studenter som svåra och tidskrävande, speciellt första labben. Detta kommer att förbättras betydligt när kursen flyttas till åk II.

Förkunskaper

Inga särkilda förkunskapskrav var absolut nödvändiga, fast kursens material skulle komma igenom betydligt lättare om eleverna redan hade ett bra förståelse om Prologprogrammering, diskretmatematiska strukturer som mängder och relationer, och hur enkla program och datorsystem beter sig. Detta kommer kommer också att förbättras betydligt när kursen flyttas till åk II.

Verkligt kursinnehåll

Finns här.

Övrigt

Min största problem i kursen var att hantera studieattityden hos några elever som tydligen inte förstår skillnaden på hur undervisningen fungerar på en högskola jämfört med på en gymnasium. Ett betydligt antal elever använde kursboken antigen aldrig eller så bara i enstaka fall. Antalet elever som kom regulärt på föreläsningarna och på övningarna efter hemtalsrättningen var oroande litet. Som examinationsgraden visar räcker detta ofta för godkänt, fast jag betraktar detta som alarmerande som principiell studieattityd.

Planerade förändringar

Ett antal förändringar planeras inför nästa omgång HT10.
  • Innehållet
    • Bättre sammanhang mellan olika delarna, speciellt programtillstånd som omgivningar i predikatlogikens semantik (t.ex. specifiera och utvärdera egenskap av programkontrolpunkter)
    • Bättre samband mellan formell och semi-formell bevis i naturlig deduktion (t.ex. med exempel från ADK kursen)
    • Nämna formella teorier
    • Mer detaljerade föreläsningsanteckningar om strukturell induktion och CTL modellprovaren
    • Bevisverktyg borde nämnas: Theorem Provers, SPIN, ESC/Java
  • Övningar
    • Förbereda övningskompendium
    • Fler övningar om strukturell induktion
  • Hemtalen
    • Införa högre krav på tolkningen av vad borde räknas som en "rimlig försök" till lösning
  • Labbar
    • Förbättra första labbuppgiften
    • Införa fler hjälptillfällen
  • Examination: Dela kursen i 2 delar och ha:
    • Skriftlig tentamen på varje del (s.k. midterm + final exam) med efterföljande kamraträttning (betyg C-F), med bonuspoäng från respektive hemtalen, och med Fx-komplettering
    • Muntlig komplettering med krav minst C på en kursdel (för högre betyg)
    • Slytbetyget är minimumet av betygen på båda kursdelar
Copyright © Sidansvarig: Dilian Gurov <dilian@csc.kth.se>
Uppdaterad 2009-05-25