Page Numbers: Yes First Page: 1
Heading:
June 16, 1977 12:12 PM [IVY]<KRL>document>stray-june77
Status: Up to date as of the time in the heading
Listing of the current specification documents for KRL-1
This is a list of the documents I have been preparing for the implementation. Sooner or later all this will be merged with the previous set of .doc files (those whose first names are numbers corresponding to chapters in the KRL-1 document).
Files as of June 16:
Name: WrittenPages:
-------- ------------ ------
accesscompile.doc14-jun-77 11:282
attachment.doc14-jun-77 12:034
categories.doc14-jun-77 11:398
collections.doc16-jun-77 11:20109
commands.doc14-jun-77 11:426
compaction.doc16-jun-77 10:3633
compiling.doc16-jun-77 10:4137
datatypes.doc16-jun-77 10:4521
describe.doc16-jun-77 11:093
implementation.doc14-jun-77 12:1668
index.doc14-jun-77 11:5114
inference.doc16-jun-77 10:482
interface.doc2-jun-77 23:0543
interpreter.doc16-jun-77 10:537
logic.doc16-jun-77 11:383
process.doc16-jun-77 10:562
productions.doc16-jun-77 11:0140
seekmatch.doc16-jun-77 11:0582
specifications.doc16-jun-77 11:5822
strategies.doc16-jun-77 11:332
syntax.doc16-jun-77 11:2577
unit.doc16-jun-77 11:283
worlds.doc16-jun-77 11:57117
Note: These dates and times are the write times for my Alto disk. Therefore they do not correspond exactly either to the time written in the file (which precedes them by some small amount) or the write time on MAXC2 (which follows them by some amount).
Summary of the files
accessCompile.doc
Contents: This will describe the functioning of the access compiler, and give an up-to-date version of the things it recognizes
Status: unwritten and subject to discussions with Rich
attachment.doc
Contents: Describes how the notions of procedural attachment are represented in KRL-1, and gives the set of descriptors currently recognized
Status: to be written
categories.doc
Contents: Description of the general hierarchy mechanism and its application to category hirerarchies. This hierarchy mechanism is also used in other parts of the system, such as the production mechanism and the worlds mechanism.
Status: very rough outline plus fragments of old stuff (not consistent!)
collections.doc
Contents: The mechanisms for sets and sequences, along with a full specification of the units and functionals recognized by the sytem
Status: Currently in the form designed for the ultimate KRL-1 document. It therefore is a mixture of philosophy, specification, etc. The specifications are wrong in one important way -- their treatment of quoted forms is out of line with our current notions, which emphasize protyotypes instead. I will get in and fix this up, but in the meantime, the general outline stands, and the detailed functional and unit names are more or less right. All of the lambda stuff will also go away, through the use of unit constructors (see <KRL>unit.doc)
commands.doc
Contents: Description and summary of the KRL-1 commands and the command interpreter
Status: Fragments only
compaction.doc
Contents: Details of the compaction declarations and the form of compacted structures
Status: More or less done -- needs updating to include memory-sequence stuff, and is therefore not yet consistent. Also needs something on what is in the catalogue, and detail on how records are actually accessed in memory (i.e. Henry’s access functions)
compiling.doc
Contents: This is a general document describing the notions of compaction and access compiling, and the way they fit into the sytem as a whole.
Status: This is the old version, and has not been updated to reflect the current implementation. It probably needs substantial modification, but the basic ideas are still the same
datatypes.doc
Contents: Description of the actual data types manipulated by the system and the commands and functions for using them
Status: Needs revising to handle memory-sequences and units (meta-units?) for things like pattern units. Also needs details of functions for accessing and manipulating data types.
describe.doc
Contents: This covers a family of functions exemplified by Describe, including specialized ones for modifying existing collection descriptions, and dealing with changing values and simple uses of worlds. It includes the consistency checking process, and the triggering of demons at various levels.
Status: Not written.
implementation.doc
Contents: The listing of tasks for the entire project (the PERT chart)
Status: Up to date, but continually changing
index.doc
Contents: Description of the indexing mechanism and the standard things indexed by the system
Status: unfinished draft
inference.doc
Contents: A description of the incorporation and inference rules used in working with belief structures. This is the "strategy-free" part of the reasoner.
Status: Martin is working on a draft
interface.doc
Contents: Description of the interface between LISP programs and variables and KRL-1 structures and commands.
Status: Draft -- more or less done but subject to review and revision
interpreter.doc
Contents: A tutorial introduction and explanation
Status: lots of stray pieces but not put together -- this will probably not get written for a while.
logic.doc
Contents: There is a whole class of descriptors which are really instructions to the reasoner. These include some special forms (such as "using"), but mostly are represented as standard functionals and/or footnotes recognized by the sytem. These include the Booleans (And, Or, Not, Implies), contingencies, default, and quantifiers. They also include a class of footnotes which indicate things such as which slots are necessarily filled in an instance of a unit, and which descriptors must be satisfied in order to establish that an entity is an instance (Criterial). This document gives a semantic basis for them, and the detailed specification of the units and functionals recognized by the system.
Status: to be written.
process.doc
Contents: A description of the process creation and scheduling mechanisms for the goal-driven part of programming (i.e. not the event-driven stuff).
Status: Draft being worked on by Mitch
productions.doc
Contents: A description of the production mechanism for event-driven programming
Status: unfinished draft. Needs detailed specification of the form for productions and production sets.
seekmatch.doc
Contents: Description of the seek and match processes -- the syntax for using them, not the theoretical description of what they do
Status: rough draft -- not to be trusted. In particular, the process description stuff is missing, the method of specifying grounding will be slightly different, and the "pattern units" will become part of a more general notion of "unit constructors".
specifications.doc
Contents: This document
Status: Up to date, but continually changing
strategies.doc
Contents: This is a description of the actual operation of the reasoner, including its use of agendas and goal networks, and the means of specifying heuristics for guiding its search
Status: To be written with David
syntax.doc
Contents: The complete syntax specification
Status: This is the old version and needs to be updated to handle: the meta-unit notions; unit constructors; the new notions of quotation; constructors and surrogates; possibly other things I can’t remember
system.doc
Contents: This document provides an overview of the documentation, debugging, and file manipulation packages available to the implementers of KRL-1.
Status: The version as of February. I’m sure it needs a lot of updating
unit.doc
Contents: Description of the semantics of units, meta-units, and unit constructors. It will include the notions of further specification and clusters
Status: Not yet written
worlds.doc
Contents: Description of the concepts and mechanisms for dealing with worlds and multiple knowledge bases.
Status: This is a version as of February. It needs all sorts of modifications to fit in with our current scheme of things. However, it does provide a kind of top-down overview of the concepts. Don’t trust anything in detail