CSI107
Introduction to Logic
and Logic Programming

Credits 2
Lectures 14 + 14
Tutorials/Practicals 4 + 4
Assessment Test: 100%
Leads To CS205; CSI212
Prerequisites None
Lecturer Michael Rosner
mros@cs.um.edu.mt

Course Objectives

This unit embodies the following main aims:
  1. Introduce logic as the study of valid argumentation.
  2. Present the syntax and semantics of logic languages (propositional and predicate calculus) and associated proof methods..
  3. Explain the relationship between logic and logic programming.
  4. Provide a practical introduction to a logic programming language

First Semester

The first part of the course is centered around the fundamental concepts of entailment and logical equivalence together with related techniques: the use of truth tables and other techniques (semantic tableaux) to determine the validity and consistency of sentences. The notion of a formal deductive system is then introduced and illustrated with natural deduction and resolution based systems. Resolution proof is used as a vehicle for explaining the principles underlying mechanical theorem proving. The last part of the course deals with the main concepts of logic programming in general (eg unification, substitution) and the special case of Prolog. Laboratory sessions will make use of Prolog to illustrate a selection of topics covered in the lectures and to increase familiarity with the language.

Second Semester

The second semester pursues the theme of logic programming by offering a comprehensive introduction to the syntax, semantics and features of Prolog,a well-known logic programming language that has been used extensively in a wide variety of AI applications. The approach will be highly practical, being organised around a series if carefully chosen laboratory exercises.

DOWNLOAD SWI-Prolog

Lecture Slides

Here you can download or view lecture slides. Those in HTML format can be viewed directly. To view those in .ps format you can either print them on a PostScript printer or use a ps viewer such as gs, or ghostview.

DOWNLOAD ghostview

N.B. Items in italics are (as yet) unrevised versions of 1997/8 lectures.

  1. Basics: Logic, Arguments, Propositions, Atomic Sentences
    Download PostScript; View HTML

  2. Atomic and Complex Sentences
    Download PostScript; View HTML

  3. Negation, Conjunction, Disjunction, truth tables, logical equivalence, negative normal form
    Download PostScript; View HTML

  4. Truth Tables, Tautology, Biconditional, Equivalences
    Download PostScript; View HTML

  5. Logical Implication, Proof by Refutation, Tableau Method
    Download PostScript; View HTML

  6. Normal Forms
    Download PostScript; View HTML

  7. Truth Functional Completeness. Formal Deductive Systems (I)
    Download PostScript; View HTML

  8. Proof; Theorem, System L. Natural Deduction Systems.
    Download PostScript; View HTML

  9. Fitch Style Systems
    Download PostScript; View HTML

  10. Quantification Part I
  11. Quantification Part II
  12. Resolution Part I
  13. Resolution Part II

Bibliography