The data held in each store is represented by the weights of the arcs exiting the node. An arc of weight zero is functionally equivalent to the absence of an arc. The user of a Tamerlane program may submit messages to the program at runtime. The program object's interface exposes a query method to the user, which is to be considered runtime-polymorphic. Using this message-passing mechanism, queries are submitted by the user to a running Tamerlane program, much as queries would be submitted to a running Prolog program.
Queries have their own syntax and semantics.
Each time a further query is submitted, each rule which has been introduced into the graph, disappears from the node it was working on, and is transmitted to the adjacent node with the lowest positive weight value. If there is a tie for lowest weight, the rule is transmitted to all of the adjacent nodes with the same lowest weight. For efficacy we can consider the user able to submit a nop query. This would not introduce any new rules into the graph, but it would cause all active rules to propogate to new nodes on the graph. So assume the user submits nop .