next up previous
Next: About this document

Building a Formal Interpreter for the Operator Model

This page defines a mechanism for analysing this structure of our operator model to see what behaviours it will allow. The basic support tree is constructed by nesting the following terms:

We now need a mechanism for generating this support tree for any operator's output - which should be possible whenever the conditions for the corresponding operator are satisfied. We use the predicate to determine whether a support tree, , exists for the output, X, of operator, Op. It acts as a bridge to the predicate which does the real work: , where D is the maximum number of steps we are allowed to take between operators; is the set of initial operator outputs appearing in the pool of output streams; and is the final pool of output streams when X has been obtained. The use of D is to limit the length of each chain of operator applications - otherwise we might find that our mechanism gets bogged down in repeating similar operator sequences ad infinitum. There are a variety of other ways of limiting search but it would be a digression to discuss these here. For our example, a convenient number for D is 4. We also stipulate to be , denoting that there are initially no outputs in the pool.

We can generate a support tree, T, for the output, X, of operator, Op, if X is a possible output, given no initial outputs in the pool of streams and no sequence of operators longer than 4.

 

X is a possible output for operator Op, given the current output streams, , if either of the following hold.

  

We can satisfy a condition, C, with current output streams , giving final output streams and support tree if any of the following hold:

    

We can now use definitions 1 to 7 to determine which outputs can be generated by the operators in our system. The most interesting output is the final loan decision from the loan department, which we can test by finding solutions to the goal:

where P will be instantiated to the name of a person, R will be instantiated to a loan decision for that person (which will either be agree or disagree) and will be the corresponding support tree - allowing us to analyse how the result was obtained. A diagrammatic version of one legitimate support tree appears in Figure 2.7.





next up previous
Next: About this document



Dave Stuart Robertson
Tue Jul 7 10:26:55 BST 1998