# Forward Chaining Algorithm

(Redirected from forward chaining)

A Forward Chaining Algorithm is a reasoning algorithm that continually applies modus ponens,

## References

### 2009

• (Wikipedia, 2009) ⇒ http://en.wikipedia.org/wiki/Forward_chaining
• Forward chaining is one of the two main methods of reasoning when using inference rules (in artificial intelligence). It is referred in philosophical circle as modus ponens. The opposite of forward chaining is backward chaining.
• Forward chaining starts with the available data and uses inference rules to extract more data (from an end user for example) until a goal is reached. An inference engine using forward chaining searches the inference rules until it finds one where the antecedent (If clause) is known to be true. When found it can conclude, or infer, the consequent (Then clause), resulting in the addition of new information to its data.
• Inference engines will iterate through this process until a goal is reached.

### 2004

• Jean-François Baget. (2004). “Improving the Forward Chaining Algorithm for Conceptual Graphs Rules.” In: Proceedings of Principles of Knowledge Representation and Reasoning KR 2004.
• ABSTRACT: Simple Conceptual Graphs (SGs) are used to represent entities and relations between these entities: they can be translated into positive, conjunctive, existential first-order logics, without function symbols. Sound and complete reasonings w.r.t. associated logic formulas are obtained through a kind of graph homomorphism called projection.

Conceptual Graphs Rules (or CG rules) are a standard extension to SGs, keeping sound and complete reasonings w.r.t. associated logic formulas (they have the same form as tuple generating dependencies in database): these graphs represent knowledge of the form “IF … THEN”.

We present here an optimization of the natural forward chaining algorithm for CG rules. Generating a graph of rules dependencies makes the following sequences of rule applications far more efficient, and the structure of this graph can be used to obtain new decidability results.