This course provides an in-depth introduction to answer set programming (ASP) — a constraint programming paradigm that emerged in the 90s (see an overview article for a brief introduction). The ASP paradigm is based on a new interpretation of logical rules: a set of answer sets is associated with each set of rules viewed as constraints. The idea is that a problem at hand is solved by first describing its solutions using rules so that answer sets capture the solutions of the problem. Then, the solution(s) of the problem can be searched for using special-purpose search engines called answer set solvers.
The success of ASP is much due to efficient answer set solvers available today (see e.g. CLASP, DLV, and WASP). Moreover, the expressive power of rules strictly exceeds that of propositional clauses, i.e., the input language of SAT solvers, and favors succinct representations of knowledge in a number of domains. A wide range of applications of ASP has emerged as a result of solving challenging computational problems using ASP techniques. In this respect, it is worth mentioning examples of applications such as
- automatic music composition (the Anton system),
- Linux package configuration (the aspcud system),
- optimizing phylogenetic supertrees, and
- repairing biological networks.
The aim of the course is to familiarize students with the art of declarative problem solving, knowledge representation, and reasoning in the context of ASP. The course introduces ASP, its theoretical background, basic methodology, applications, as well as tools. Moreover, practical programming skills are sought for. The course spans over the first two periods and it consists of a lecture and a tutorial every week. The course requirements include an exam and three compulsory programming assignments. Each of them will involve declarative problem solving using methods and tools presented during the course.
Background: This major-level course is offered by the Computational Logic group at the Department of Computer Science, one of the pioneering groups of ASP in the world. The proof-of-concept implementation of ASP (consisting of the LPARSE grounder and the SMODELS solver) was developed in the group. Recent ASP-related tools can be found here.
The course starts on Friday, the 16th of September, 2016 and the lectures are given by Docent Tomi Janhunen.