PROLOG

PROLOG is a logic-based programming language. A PROLOG statement, C &larr P1, ..., Pn can be considered to be a rule. Proofs proceed by backchaining.

Problems:

  1. Hard to control search.

  2. The Horn clause restriction prevents some kinds of rules from being written:
    1. Rules which conclude a negated conclusion, or have a disjunction (OR) in the conclusion.

    2. Rules which depend on a fact being not true. (Some PROLOGs do this using the closed world assumption.)

  3. 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''.

Contents    Page-10    Prev    Next    Page+10    Index