Contents
Page-10
Prev
Next
Page+10
Index
PROLOG
PROLOG is a logic-based programming language.
A PROLOG statement, C ← P1, ..., Pn can be considered
to be a rule. Proofs proceed by backchaining.
Problems:
- Hard to control search.
- The Horn clause restriction prevents some kinds of rules from being
written:
- Rules which conclude a negated conclusion, or have a disjunction (OR)
in the conclusion.
- Rules which depend on a fact being not true. (Some PROLOGs do this
using negation as failure.)
- Backchaining is not logically complete. For example, it cannot do
reasoning by cases.
PROLOG has the advantages that search is built into the language, and that
PROLOG programs can run ``forward'' or ``backward''.