COMP 426 Automated Reasoning
Lecture 22: Tabled Logic Programming

Although logic programming is a nice idea, many programs are not executable and will loop. In this lecture, we will give a brief introduction to tabled logic programming, where we memoize subgoals to re-use their results later. The resulting search procedure is complete and terminates for programs with the bounded-term size property. Tabled logic programming for horn clauses has been integrated into the XSB system, which is a powerful extension of Prolog. The idea of tabling extends to hereditary harrop formulas, however memoizing sub-goals is more challenging.

We will also discuss proof terms for hereditary harrop formulas and how they can be generated during proof search.

  • Reading: in preparation
  • Code: in preparation
  • Previous lecture: Week 11

[ Home | Schedule | Assignments | Projects | Handouts | Software | Overview ]

bp@cs.mcgill.ca
Brigitte Pientka