Summary of the lecture week 3

I presented the model theory for logic programs.

Important concepts:

Herbrand Universe (or term universe) is the set of objects that the program talks about. It is constructed by forming all possible terms using the constants and functors occurring in the program. This set might be finite or infinite.

Herbrand interpretation (or term interpretation) is a set of atoms formed from the Herbrand (term) universe and the repation symbols of the program.

Least Herbrand model. It is the smallest set (a Herbrand interpretation) containing exactly all true atoms in the program and nothing else.

I presented a method how to construct the Least Herbrand model using a fixpoint computation.

I introduced search trees, proofs and proof trees.

I mentioned the soundness and completeness of the SLD-resolution rule.

We then went over to some actual programs.

- proving some arithmetic axioms

- some simple algorithms over trees

I then introduced lists as a subset of structures

- list syntax

- the append relation and its uses:

1) to concatenate sequences represented as lists

2) using append "backwards" to find the initial (or final)  part of a list constructed by append and another list.

3) to use append to split a list in two parts.Non-deterministic execution giving all possible subdivisions of a list into two.