Logic Programming Tutorial
Pyke is an inference engine that applies rules to facts to establish additional facts (through forward-chaining rules), and/or to prove goals and optionally assemble Python functions into customized call graphs, called plans (through backward-chaining rules).
Pyke may then be reset, deleting the last set of facts, so that the cycle may be repeated. For each cycle a different rule base may be activated.
The plan capability allows the postponement of code execution until the top-level goal has been completely proven. This shields the code from blind alleys and the backtracking that occurs within the rules.
Once a plan has been created, it may be executed multiple times with different arguments. It may also be pickled, and later run again only requiring one small Pyke module.
Pyke also provides an end user question capability, as well as the capability to run commands on the local system to guide the inferencing.