Computes the Set of all unique Facts used by Derivations.
Computes the Set of all unique Facts used by Derivations.
all available Derivations
a Set containing all unique input Facts
Computes the Set of all unique Facts produced by Derivations.
Computes the Set of all unique Facts produced by Derivations. It also enforces uniqueness between Derivations, since we do not allow multiple Derivations to produce the same Fact.
all available Derivations
a Set containing all unique output Facts
Constructs a Dependency graph for the provided list of Derivations.
Constructs a Dependency graph for the provided list of Derivations. Each Derivation will yield a Node describing its output and other Nodes requiring its output.
a List of all possible Derivations
a Set of Nodes which reference their dependent Nodes
Determines the order in which Facts should be calculated, based on their inputs.
Determines the order in which Facts should be calculated, based on their inputs. It takes a Derivation-graph as constructed by FactEngine.constructGraph and orders them in levels. Each level contains Derivation-nodes for which the inputs will have been determined in an earlier level. Following these levels while running a derivation cycle will guarantee correct causality between individual Derivations.
the Set of Nodes describing the dependency graph between Derivations
a List of levels that produce facts required for subsequent levels. Each level is a list of Nodes that can be evaluated once all previous levels have been evaluated