Predicate Calculus Semantics

The truth value of predicate calculus expressions depends on the mapping of constants, variables, predicates, and functions into objects and relations in the domain of discourse. That is, the truth value of an expression depends on its interpretation.

Formal Definition of Interpretation

Let the domain D be a nonempty set of objects. An interpretation over D is an assignment of the entities of D to each of the constant, variable, predicate, and functions symbols of a predicate calculus expression, such that:

Rules for Evaluating Predicate Calculus Expressions

Assume an expression E and an interpretation I for E over a nonempty domain D. The truth value for E is determined by:

Some Examples

Suppose the domain is the D is the set of nonnegative integers, {0, 1, 2, 3, ...}. Let's also assume the normal interpretation I of the integers. This includes such facts as 2 + 3 = 5, 2 < 3, and so on. Given this domain and interpretation, let's evaluate the following expressions:

Some Useful Equivalences

Inference Rules

An inference rule is a mechanical means of producing new predicate calculus sentences from a given set of sentences. Of course, we only want to use inference rules that are sound -- that is, rules that produce true sentence, if the original set of sentences was true.

Some Definitions

For a predicate calculus expression S and an interpretation I:

Proof Procedure

A proof procedure is a combination of an inference rule and an algorithm for applying that rule to a set of logical expressions to generate new sentences.

Some Inference Rules

These rules let us prove the correctness of the following famous syllogism:
All humans are mortal.
Socrates is a human.
------------------
Therefore, Socrates is mortal.

Proof:

Line Premise Justification
1 ∀X ( human(X) -> mortal(X) ) Given
2 human(socrates) Given
3 human(socrates) -> mortal(socrates) From 1, by UI
4 mortal(socrates) From 2, 3 by MP