TDDD08 Logic Programming
LecturesSubject to modifications and alignments.
The linked files may be corrected/updated without notice. (Cf. the version number and the automatically generated compilation date.) The linked slides are in a form for printing (4 slides per page). Their original form (with hyperlinks) may be found in the same directory.
|#1||Practical matters, objectives,
introduction to logic programming
Handouts: [introduction], [puzzle solving program with a fragment of a trace], [transforming expressions into postfix form program], [grandchild/2 and similar predicates]
|#2||Definite logic programs, declarative
semantics (includes 1st order logic - repetition)
Handouts: [declarative semantics].
|#3,4||Unification. Operational semantics.
[Handouts] on SLD-resolution, [additional slides]. ( [Summary] on soundness and completeness.)
|#5,6||Introduction to Prolog. Example programs.
Handouts: [Prolog], [example programs], [Prolog built-ins, a draft overview], [a summary of list notation of Prolog].
Handouts: [program correctness & completeness], [additional slides, the same with animation], [example correctness proofs]
Handouts: [overview used at the lecture], a more comprehensive [version].
Definite Clause Grammars (DCGs)
Handouts: [difference lists], [DCGs],
(Ch 14 and a supplementary chapter of [Nilsson,Maluszynski])
[Handouts], [example programs puzzle, queens]
Handouts: [informal introduction],
[negation, definite programs] (fragments on compl(P)),
[general programs part 1, the same one slide/page (with animations), errata]
[general programs part 2], [a list of main issues].
|#11,#12||Negation, general programs. Final comments.
Extra: control in Prolog, on termination of definite programs, a note on occur check
Page responsible: Wlodek Drabent
Last updated: 2016-10-20