Projects in Previous Years

1st Semester 2006/07: Basics of Logic Programming

Sujata Ghosh

If you are interested in this project, please contact Sujata Ghosh by e-mail.
Goal. This course looks into the basic ideas of logic programming, together with several types of semantics that have been proposed. We will also try to give an overview of the present day issues. To be more precise, we are not going to study any programming language, but will try to give an overview of using different type of logics as programming language.
We will start with giving an historical overview of the basic idea - how did it develop through the years. Then we would look into a procedural interpretation of predicate logic. We will deal with the declarative and the procedural aspect of logic programming and give some soundness and completeness results.

Negation plays an important role in logic programming, which will be discussed in an elaborate manner, along with its relation with nonmonotonic reasoning. We also intend to give a short survey about the various semantics that have been proposed over the years. Some present issues of logic programming will also be discussed.

Some homework and a final paper.
  1. Kees Doets, From Logic to Logic Programming, Foundations of Computing Series, MIT Press, 1994.
  2. J.W. Lloyd, Foundations of Logic Programming, Symbolic Computation, Springer Verlag.
  3. M. Fitting, Computability Theory, Semantics and Logic Programming, Oxford Logic Guides: 13, OUP, 1987.
  4. A few published articles (to be mentioned during the course).