Prolog
- When I first moved to England (1997), the British AI people programmed
in Prolog, while the American AI people programmed in Lisp.
- Now we all program in whatever is needed.
- Prolog is based on a subset of FOPL which is Turing Complete.
- You define rules (if then clauses), and give it a list of facts.
- This would mean in general, it is NP-complete, but you program by
making rules that say how you derive new facts.
- The cut operator is really useful, and can make a prolog program
much more efficient.
- The cut operator says give up, and stop looking for alternatives.
- This means that some proofs (and thus true facts) may not be
derivable.
- It's really a different way to program.