Enrolment options

Prerequisite:CSE203

The course will present the paradigm of Constraint Logic Programming from its logical foundations for programming with relations, to its current applications. From logic programming and the early days of artificial intelligence, towards the holy grail of programming simply by modelling, the students will learn how to use a recent  dialect of Prolog for relational databases, knowledge representation, automated deduction and combinatorial problem solving. The balance between declarative programming and efficiency, between clean semantics and expressiveness will be of particular interest, and will lead us into looking at how things work internally in a Prolog  bytecode compiler (Warren Abstract Machine, indexing…) on practical examples. 




The course will present the paradigm of Constraint Logic Programming from its logical foundations for programming with relations, to its current applications. From logic programming and the early days of artificial intelligence, towards the holy grail of programming simply by modelling, the students will learn how to use a recent dialect of Prolog for relational databases, knowledge representation, automated deduction and combinatorial problem solving. The balance between declarative programming and efficiency, between clean semantics and expressiveness will be of particular interest, and will lead us into looking at how things work internally in a Prolog bytecode compiler (Warren Abstract Machine, indexing, …) on practical examples.

Guests cannot access this course. Please log in.