This file is part of:

AT&T Bell Laboratories and University of Pittsburgh CLASSIC Knowledge Representation System Tutorial

Copyright AT&T and University of Pittsburgh 1994

Classic Assignment 1 - Due Sept. 14, 1995

The purpose of this assignment is to familiarize you with the classic knowledge representation system by walking you through the development of a fairly sophisticated knowledge base (KB) and asking you to add to it in several ways.

This assignment assumes that you have read through the classic documentation (i.e., the paper “Living with classic” and the reference manual) so that you are familiar with the basic concepts and capabilities of classic. Going through this assignment will let you practice using classic constructs and draw your attention to subtleties that may not be obvious from the documentation. Because the knowledge base is fairly large, we have provided a few pictures to make clear what structures are being built and will refer to these in the course of the assignment.

The materials that we are have been tested, but the subject is complicated. So you may find errors, and areas where you think that there is room for improvement. We ask you to keep a list of these, and to send them to dlm@research.att.com and thomason@pogo.isp.pitt.edu.

Where to find the Assignment

The actual assignment consists of a series of five modules, called “asg1.txt”, through “asg5.txt”.

You will start working on “lab-asg1.txt”. Refer to local instructions for the directory in which it can be found.

The same directory should contain the postcript files with the figures that show the KB being built. The files will be referenced in the modules.

Customization

You can either just read and load the files from the directory where they are stored, or you can copy the entire subdirectory into your working space and customize the path names.

The organization of the files used in this assignment is as follows: there is a top-level directory containing the assignment files lab-asg*.tex, the file lab-asg-handout.ps containing this handout, the postcript files containing the KB figures, and a file called Customize.lisp. There are two subdirectories of the kr-lab directory, Helper and Recover, that contain files that build the KB and help you recover to a known state if you make a mistake and can’t get yourself back on track.

Customize.lisp sets the value of the top-level directory for loading files and defines a function, lload, which knows where to look for files. In most places you will be using lload instead of load to load files. By default, the top-level directory, stored in variable *topdir*, is the directory where the assignment files are stored (kr-lab) and lload will look for files in subdirectories of *topdir*. If you want, you can copy the entire kr-lab directory to your file space. Then change *topdir* in your local version of Customize.lisp to whatever directory in your space you have copied the assignment to.

How to Get Through the Assignment

Each of the files “asg*.txt” contains step-by-step instructions for getting through that module. The first thing to do is to load the classic system. We have created images of lisp with classic already loaded, so the only thing you need to do is to type:

   classic

Next, open an editor window on lab-asg1.txt and follow directions.

What to Turn In

You must turn in evidence indicating that you have worked through lab-asg1.txt. In order to do this, use the commands:

      (dribble "<filename>") ; to start writing to a log file
      (dribble)              ; to close the filename

If you go through the assignment in more than one session, be careful not to overwrite the previous dribble files. Following instructions in each of the modules, should help avoid doing that.

Turn in your dribble files.