Goals may contain variables, e.g., knows( defendant, Y). In fact, typing in X and clicking the Query gives all possible derivations from the current program, as the screen below shows.
The tool responses to a query in one of two ways. If the goal fails, it simply returns a 'failed' message. Otherwise, it lists the results on the left pane. A proposition may be listed more than once if there is more than one way to derive it. Clicking on a listed proposition will display its associated clause tree on the right pane. In effect, this provides an explanation for the answer. Each tree is display on its own white, raised area, called a cell. Various ways are provided for changing the display of the trees. A node can be collapsed (e.g., forensic_evidence in the first tree), an entire cell can be collapsed (e.g., the top right cell), or all cells can be collapsed to give a broad view of the entire display.
In contrast to Explore, Query computes the entire tree and displays it at once. The user does not see how the trees are built, only the finished result. On the other hand, Query shows complete information for any given node, whereas Explore only shows whether a node is evident
Results window
The Results window simply lists (in alphabetical order) all derivations that have been calculated so far. Each proposition is listed only once, regardless of the number of possible derivations. Each proposition is also color-coded to show whether it is evident / supported / conflicted.
How the windows interact
A proposition that appears in one window can be sent to either the Query or Explore window and acted upon. For example, the user can right-click on a node in Explore and select Query from the popup menu to query that node. Similarly, note the popup menu in the Results window. Selecting Explore will bring the Explore window to the foreground and spawn a new tree for guilty.
luutran@cs.sci.csupomona.edu