15.11 Review

The following are the main points you should have learned from this chapter:

  • In domains characterized by individuals and relations, constants denoting individuals and predicate symbols denoting relations can be reasoned with to determine what is true in the domain.

  • Datalog is a logical language with constants, universally quantified variables, relations, and rules.

  • Substitutions are used to make instances of atoms and rules. Unification makes atoms identical for use in proofs.

  • Function symbols are used to denote a possibly infinite set of individuals described in terms of other individuals. Function symbols can be used to build data structures.

  • Definite-clause grammars can be used for flexible language natural language processing in cases where the language used can be controlled, such as natural language interfaces to databases.

  • Equality between terms means that the terms denote the same individual.

  • Clark’s completion can be used to define the semantics of negation as failure under the complete knowledge assumption.

  • Logic programming is useful for creating specifications, parsers, and formal scientific hypotheses.