Vid kursens slut skall den studerande uppvisa fördjupad förståelse av grundläggande logiska begrepp samt dess koppling och tillämpning i programmeringssammanhang. Vidare ska den studerande uppvisa färdigheter i logik- och villkorsprogrammering i programmeringsspråket Prolog, samt förmåga att tänka, och lösa problem på ett deklarativt sätt.
Kursinnehåll
Logik, logikprogram, deklarativ och operationell semantik, negation, Prolog, "cut", logik och databaser, logik och grammatiker, sökning och constraint logic programming.
Förutsättningar
Grundläggande kurser i diskret matematik och logik samt någon kurs i grundläggande programmering.