Names of functions are located in the package RS-USER
.
Demonstration | Files | Functions | Demonstrates |
---|---|---|---|
Combinatorial Problems/Scheduling |
queens.lisp (n-queens problem) |
queens (backtracking search), queens2 (local search) | backtrack, specialization of added-assumption, assume-slot-values |
su.lisp (Sudoku puzzle generator and solver) |
sugen (local search), susolve (backtracking search) | backtrack, specialization of order-control-disjunction and added-assumption, specialization of validate-combination, assume-slot-values | |
Planning | miss.lisp (missionaries-and-cannibals problem) | miss | solutions, non-monotonic reasoning, :assume qualifier, :count slot option, assume-slot-values |
blocks.lisp (blocks world) | blocks | solutions, non-monotonic reasoning, :assume qualifier, :count slot option, :inverse slot option, assume-slot-values | |
Multiple-Fault Diagnosis | mult.lisp | diagnoses1, diagnoses2 | solutions, non-monotonic reasoning, constraints, composite objects |
Counterfactuals | boris.lisp | if-boris | solutions, non-monotonic reasoning, :assume qualifier |
Temporal Reasoning | career.lisp | career1, career2 | solutions, non-monotonic reasoning, :assume qualifier, :count slot option, composite objects |
Non-monotonic (or defeasible) reasoning is the the norm in practical, everyday problem-solving: it is reasoning under conditions of uncertainty, from incomplete or unreliable information. Such inferences do not carry a guarantee of soundness and may later need to be revised.
The temporal reasoning demonstration clearly illustrates this phenomenon. Assimilating a hiring or promotion event may result in a revision of a inference about a person's employment status made from their employment history.
The ATMS is used to realize non-monotonic reasoning by entirely extra-logical means.
The counterfactuals demonstration concerns statements of the form ‘if such-and-such were the case, then such-and-such would be the case’. It employs a treatment of such statements not simply as implicational rules whose antecedent happens to be false, but as elliptical arguments. One counterfactual can be defeated by another: they sanction conclusions which may be contradicted by subsequently-acquired information.
Diagnosis is also non-monotonic in the sense that different diagnoses may result from an additional observation of the faulty system's behaviour.
The planning demonstrations illustrate the formulation of the actions relevant to (e.g.) a simple ‘blocks world’ problem as axioms whose consequent contradicts their antecedent. The law of contradiction is used to construct a new situation or possible world, given by a set of statements (i.e., slot values), comprising the consequent and all features of a previous situation that are consistent with it: information is ‘carried over’ from one situation to another in the absence of knowledge to the contrary.