CSCE 781 Spring 2013: Final Project
It is a team project. Team one consists of
Omar, Sakib, and Walker; team two consists of
Arju, McCaslin, and Salvi,
as posted in the
class notes of 2013-03-07.
Implement the
Theorist system
in
SWI Prolog.
The code (or at least most of it) is on p.350 of
D. Poole, R. Goebel and R. Aleliunas,
``Theorist: a logical reasoning system for defaults and diagnosis'',
in N. Cercone and G. McCalla (Eds.)
The Knowledge Frontier: Essays in
the Representation of Knowledge,
Springer Varlag, New York, 1987, pp. 331-352.
Also Research Report CS-86-06, Department of Computer Science,
University of Waterloo, February 1986
(local copy).
Turn a zip file with your code and one or more scripts showing that it
works correctly on the examples of Figures 13-2 and 13-3 of the above
reference.
Update of 2013-04-26.
Dear 781 Teams,
Here is a revision to the term project.
Your new project is to get AILog, which includes a modern implementation of Theorist by its first author (David Poole) to work and process the examples in the old Theorist paper correctly.
Here is a link to the book that, in chapter 5, contains a description of Theorist: http://people.cs.ubc.ca/~poole/aibook/html/ArtInt.html.
There is also a link to AILog, which implements a modern version of Theorist: http://people.cs.ubc.ca/~poole/aibook/code/ailog/ailog_man.html.
In your report to me, you will explain the differences in syntax and
meaning between the original Theorist system of 1987 and the current (2010?)
implementation in AILog. You may find it useful to compare the examples in
Ch.5 of the 2010 book with the ones in the 1987 paper also.
The revised project does not require you to write Prolog code. Please note, however, that AILog is itself an SWI-Prolog program.
If you want, you may carry out the original term project instead.
***************************************************************
***************************************************************
The project will be presented in a meeting of the team with the instructor
to take place on Thursday, May 2, 2013, in the afternoon.