Logic Programming

7.5 credits

Syllabus, Master's level, 1DL022

Code
1DL022
Education cycle
Second cycle
Main field(s) of study and in-depth level
Computer Science A1N
Grading system
Pass with distinction (5), Pass with credit (4), Pass (3), Fail (U)
Finalised by
The Faculty Board of Science and Technology, 3 November 2008
Responsible department
Department of Information Technology

Entry requirements

120 credits of which mathematics 15 credits (logic and automata theory are recommended), and computer science 40 credits including a second course in programming, algorithms and data structures. Functional programming I is recommended.

Learning outcomes

In order to pass, the student must be able to

  • list, define and apply the fundamental concepts of logic programming.
  • manually analyse and execute a given simple logic program. The analysis covers correctness and efficiency.
  • formulate simple problems in logic that can be executed as a logic program.
  • implement simple algorithms and data structures as correct logic programs.
  • take advantage of the strengths of logic programming (unification, backtracking and grammar programming) for solving simple combinatiorial problems and for natural language processing.
  • explain how logic programming differs from other programming paradigms.

Ultimately, the goal is to broaden the students' perspective on the nature of programming.

Content

Fundamental concepts: relations, rules, unification, recursion.

Relation between logic and logic programming: semantics, soundness and completeness.

Programming in a logic programming language, such as Prolog.

Encoding of algorithms and data structures; solving search problems and constraint problems.

Similarities and differences with imperative, object-oriented, and functional programming.

Grammar rules.

Implementation techniques: (meta)interpreters and compilation.

Applications in Artificial Intelligence such as problem solving and natural language processing.

Instruction

Lectures, tutorials and labs.

Assessment

Written exam (6 credits) and assignments (1.5 credits). Voluntary exercises can improve the grade.

FOLLOW UPPSALA UNIVERSITY ON

Uppsala University on Facebook
Uppsala University on Instagram
Uppsala University on Youtube
Uppsala University on Linkedin