Section outline

  • Introduction to Logic Programming (WS 2013/14)

    326.028


    Time: Wednesday 16:15-18:00. Room: T 212. Lecturer: Temur Kutsia. Language: English. Start: October 9, 2013.


    Goals

    • Introduction to logic programming.
    • Understanding logical foundations and computational model.
    • Learning practical programming in Prolog.

    The final grade will depend on the assignment results and on the final exam at the end of the semester (solving assignments is a necessary precondition to be admitted to the exam).


    Registration

    Please register for the course via the KUSSS system. To submit exercises via moodle, you have to login there and register as a course participant.


    Contents

    • Logical foundations. Introduction to Prolog programming.
    • Questions, variables, conjunctions, rules, goals.
    • Prolog syntax. Characters, operators, equality and matching, arithmetic.
    • Using data structures. Programming techniques on Prolog (Mapping, recursion, accumulators, difference structures).
    • Backtracking, generating multiple solutions, the cut.
    • Selected examples.
    • Unification, computational model of logic programs.
    • Constraint logic programming.
    • Grammar rules (DCG).
    • Efficiency issues.

  • Assignments are for individual work. There will be three assignments in total. The preferred method of submission is via moodle. If you experience a problem with it, please send me an email.