I Deklarativ programmering studeras programmering i språk som skiljer sig från C, C++ och Java genom att programmen uttrycker Vad som gäller och inte Hur ett problem löses steg för steg.

Logic programming och Functional programming är exempel på deklarativa programmeringsspråk. Logic programming har fått sin syntax och beräkningen av resultaten från logiken (predikatlogiken och resolutionsmetoden) och Functional programming har fått sin syntax och beräkningen av resultaten från matematiken (funktioner och lambdakalkylen).

I den här kursen kommer du att skriva stora och små program i logikprogrammeringsspråket Prolog. Begrepp som unifiering, mönstermatchning, atomatiserad bevisföring, alternativa svar ingår i kursen liksom träning i att dela upp problem i delproblem och användning av listor och rekursion.

Deklarativa språk är typiska AI-språk och har använts i lösningar inom AI i fyra decennier varför AI-frågor kommer upp på olika sätt i kursen.

Kursbok: Bratko, I. (2011), Prolog programming for Artificial Intelligence, 4. ed.