Dataflow

ORION uses both Direct Search and Dataflow to move information around the network. Dataflow is that process by which valid information is driven down appropriate pathways. As an example, if the statement

     A = B + C

exists in the model, and a value is set for C, say of 5, that value will flow from C until it encounters the plus operator, where it will stop. If a value is then set for B, say of 3, that value will flow from B, be combined at the plus operator and flow on to A, and to any structure connected to A. If a new value now becomes available at C, it will replace the values in the network, again by flowing along pathways until stopped by insufficient information at an operator.
The logical states, NYK to TRUE, provide control information as to whether operators can provide new information based on what has flowed into them.

Dataflow in ORION is not limited only to combining of values at an operator. Some operators will modify the network based on values flowing into them. A special marker is placed in the link when data flows to an operator, so that the operator can detect that it has received new information in a particular link. Dataflow is only one form of solving in ORION, as it is quite limited in what it can do unless linked with Consistent Reasoning or Searching.

For Consistent Reasoning, the direction of Dataflow can switch around, that is data (say a range of 10..50) can flow into an operator, and then the same link be used to return a new, consistent, range of 15..20, 27..49.
ORION switches smoothly from Dataflow to Direct Search and back again in its solving, so it is not limited by the shortcomings of Dataflow alone.