UNIT 4 Predicate Logic
UNIT 4 Predicate Logic
For example, the assertion "x is greater than 1", where x is a variable, is not a proposition
because you can not tell whether it is true or false unless you know the value of x. Thus
the propositional logic can not deal with such sentences. However, such assertions
appear quite often in mathematics and we want to do inferencing on those assertions.
Also the pattern involved in the following logical equivalences can not be captured by the
propositional logic:
Each of those propositions is treated independently of the others in propositional logic. For
example, if P represents "Not all birds fly" and Q represents "Some integers are not even", then
there is no mechanism inpropositional logic to find out whether or not P is equivalent to Q.
Hence to be used in inferencing, each of these equivalences must be listed individually rather
than dealing with a general formula that covers all these equivalences collectively and
instantiating it as they become necessary, if only propositional logic is used.
Thus we need more powerful logic to deal with these and other problems. The predicate logic is
one of such logic and it addresses these issues among others.
Predicate
Subjects to be Learned
● predicate
Contents
To cope with deficiencies of propositional logic we introduce two new features: predicates and
quantifiers.
A predicate is a verb phrase template that describes a property of objects, or a relationship
among objects represented by the variables.
For example, the sentences "The car Tom is driving is blue", "The sky is blue", and "The cover
of this book is blue" come from the template "is blue" by placing an appropriate noun/noun
phrase in front of it. The phrase "is blue" is a predicate and it describes the property of being
blue. Predicates are often given a name. For example any of "is_blue", "Blue" or "B" can be
used to represent the predicate "is blue" among others. If we adopt B as the name for the
predicate "is_blue", sentences that assert an object is blue can be represented as "B(x)", where
x represents an arbitrary object. B(x) reads as "x is blue".
Similarly the sentences "John gives the book to Mary", "Jim gives a loaf of bread to Tom", and
"Jane gives a lecture to Mary" are obtained by substituting an appropriate object for variables x,
y, and z in the sentence "x gives y to z". The template "... gives ... to ..." is a predicate and it
describes a relationship among three objects. This predicate can be represented by Give( x, y, z
) or G( x, y, z ), for example.
Note: The sentence "John gives the book to Mary" can also be represented by another
predicate such as "gives a book to". Thus if we use B( x, y ) to denote this predicate, "John
gives the book to Mary" becomes B( John, Mary ). In that case, the other sentences, "Jim gives
a loaf of bread to Tom", and "Jane gives a lecture to Mary", must be expressed with other
predicates.
Contents
A predicate with variables is not a proposition. For example, the statement x > 1 with variable x
over the universe of real numbers is neither true nor false since we don't know what x is. It can
be true or false depending on the value of x.
More generally, a predicate with variables (called an atomic formula) can be made a
proposition by applying one of the following two operations to each of its variables:
1. assign a value to the variable
2. quantify the variable using a quantifier (see below).
For example, x > 1 becomes 3 > 1 if 3 is assigned to x, and it becomes a true statement, hence
a proposition.
In general, a quantification is performed on formulas of predicate logic (called wff ), such as x >
1 or P(x), by using quantifiers on variables. There are two types of quantifiers: universal
quantifier and existential quantifier.
The universal quantifier turns, for example, the statement x > 1 to "for every object x in the
universe, x > 1", which is expressed as " x x > 1". This new statement is true or false in the
universe of discourse. Hence it is a proposition once the universe is specified.
Similarly the existential quantifier turns, for example, the statement x > 1 to "for some object x
in the universe, x > 1", which is expressed as " x x > 1." Again, it is true or false in the universe
of discourse, and hence it is a proposition once the universe is specified.
Universe of Discourse
The universe of discourse, also called universe, is the set of objects of interest. The
propositions in the predicate logic are statements on objects of a universe. The universe is thus
the domain of the (individual) variables. It can be the set of real numbers, the set of integers, the
set of all cars on a parking lot, the set of all students in a classroom etc. The universe is often
left implicit in practice. But it should be obvious from the context.
The expression: x P(x), denotes the universal quantification of the atomic formula P(x).
Translated into the English language, the expression is understood as: "For all x, P(x) holds",
"for each x, P(x) holds" or "for every x, P(x) holds". is called the universal quantifier, and x
means all the objects x in the universe. If this is followed by P(x) then the meaning is that P(x) is
true for every object x in the universe. For example, "All cars have wheels" could be
transformed into the propositional form, x P(x), where:
For example, in the above example of x P(x), if we knew that there were only 4 cars in our
universe of discourse (c1, c2, c3 and c4) then we could also translate the statement as: P(c1)
P(c2) P(c3) P(c4)
The Existential Quantifier
The expression: xP(x), denotes the existential quantification of P(x). Translated into the
English language, the expression could also be understood as: "There exists an x such that
P(x)" or "There is at least one x such that P(x)" is called the existential quantifier, and x
means at least one object x in the universe. If this is followed by P(x) then the meaning is that
P(x) is true for at least one object x of the universe. For example, "Someone loves you" could be
transformed into the propositional form, x P(x), where:
If all the elements in the universe of discourse can be listed, then the existential quantification
xP(x) is equivalent to the disjunction: P(x1) P(x2) P(x3) ... P(xn).
For example, in the above example of x P(x), if we knew that there were only 5 living
creatures in our universe of discourse (say: me, he, she, rex and fluff), then we could also write
the statement as: P(me) P(he) P(she) P(rex) P(fluff)
For example, in x P(x, y), the variable x is bound while y is free. In x [ y P(x, y) Q(x,
y) ] , x and the y in P(x, y) are bound, while y in Q(x, y) is free, because the scope of y is
P(x, y). The scope of x is [ y P(x, y) Q(x, y) ] .
When reading quantified formulas in English, read them from left to right. x can be read as
"for every object x in the universe the following holds" and x can be read as "there exists an
object x in the universe which satisfies the following" or "for some object x in the universe the
following holds". Those do not necessarily give us good English expressions. But they are
where we can start. Get the correct reading first then polish your English without changing the
truth values.
For example, let the universe be the set of airplanes and let F(x, y) denote "x flies faster than
y". Then
x y F(x, y) can be translated initially as "For every airplane x the following holds: x is faster
than every (any) airplane y". In simpler English it means "Every airplane is faster than every
airplane (including itself !)".
x y F(x, y) can be read initially as "For every airplane x the following holds: for some airplane
y, x is faster than y". In simpler English it means "Every airplane is faster than some airplane".
x y F(x, y) represents "There exist an airplane x which satisfies the following: (or such that)
for every airplane y, x is faster than y". In simpler English it says "There is an airplane which is
faster than every airplane" or "Some airplane is faster than every airplane".
x y F(x, y) reads "For some airplane x there exists an airplane y such that x is faster than y",
which means "Some airplane is faster than some airplane".
When more than one variables are quantified in a wff such as y x P( x, y ), they are applied
from the inside, that is, the one closest to the atomic formula is applied first. Thus y x P( x, y
) reads y [ x P( x, y ) ] , and we say "there exists an y such that for every x, P( x, y ) holds"
or "for some y, P( x, y ) holds for every x".
The positions of the same type of quantifiers can be switched without affecting the truth value as
long as there are no quantifiers of the other type between the ones to be interchanged.
For example x y z P(x, y , z) is equivalent to y x z P(x, y , z), z y x P(x, y ,
z), etc. It is the same for the universal quantifier.
Contents
Not all strings can represent propositions of the predicate logic. Those which produce a
proposition when their symbols are interpreted must follow the rules given below, and they are
called wffs(well-formed formulas) of the first order predicate logic.
A predicate name followed by a list of variables such as P(x, y), where P is a predicate name,
and x and y are variables, is called an atomic formula.
Wffs are constructed using the following rules:
(Note : More generally, arguments of predicates are something called a term. Also variables
representing predicate names (called predicate variables) with a list of variables can form
atomic formulas. But we do not get into that here.
For example, "The capital of Virginia is Richmond." is a specific proposition. Hence it is a wff by
Rule 2.
Let B be a predicate name representing "being blue" and let x be a variable. Then B(x) is an
atomic formula meaning "x is blue". Thus it is a wff by Rule 3. above. By applying Rule 5. to
B(x), xB(x) is a wff and so is xB(x). Then by applying Rule 4. to them x B(x) x B(x) is
seen to be a wff. Similarly if R is a predicate name representing "being round". Then R(x) is an
atomic formula. Hence it is a wff. By applying Rule 4 to B(x) and R(x), a wff B(x) R(x) is
obtained.
In this manner, larger and more complex wffs can be constructed following the rules given
above.
Note, however, that strings that can not be constructed by using those rules are not wffs. For
example, xB(x)R(x), and B( x ) are NOT wffs, NOR are B( R(x) ), and B( x R(x) ) .
One way to check whether or not an expression is a wff is to try to state it in English. If
you can translate it into a correct English sentence, then it is a wff.
More examples: To express the fact that Tom is taller than John, we can use the atomic formula
taller(Tom, John), which is a wff. This wff can also be part of some compound statement such
as taller(Tom, John) taller(John, Tom), which is also a wff.
However, taller( x,John) and taller(Tom Mary, Jim), for example, are NOT wffs.
UNIT 4 - ACTIVITY 1
1. Let Q(x, y) denote the statement "x is greater than y." What are the truth values of the
following?
a. Q (4, 2)
b. Q (7, 7)
c. Q (9, -9)
d. Q (28, 256)
2. Let P(x) be the statement "x is happy," where the universe of discourse for x is the set of
students. Express each of the following quantifications in English.
a. x P(x)
b. x P(x)
c. x P(x)
d. x P(x)
3. Let P(x) be the statement " x > x2." If the universe of discourse is the set of real numbers,
what are the truth values of the following?
a. P(0)
b. P(1/4)
c. P(5)
d. P(-1)
e. x P(x)
f. x P(x)
4. Suppose that the universe of discourse of the atomic formula P(x,y) is {1, 2, 3}. Write out the
following propositions using disjunctions andconjunctions.
a. x P(x, 2)
b. y P(3, y)
c. x y P(x, y)
d. \ x y P(x, y)
e. x y P(x, y)
f. y x P(x, y)
Contents
Interpretation
A wff is, in general, not a proposition. For example, consider the wff x P(x). Assume that P(x)
means that x is non-negative (greater than or equal to 0). This wff is true if the universe is the
set {1, 3, 5}, the set {2, 4, 6} or the set of natural numbers, for example, but it is not true if the
universe is the set {-1, 3, 5}, or the set of integers, for example.
Further more the wff x Q(x, y), where Q(x, y) means x is greater than y, for the universe {1, 3,
5} may be true or false depending on the value of y.
As one can see from these examples, the truth value of a wff is determined by the universe,
specific predicates assigned to the predicate variables such as P and Q, and the values
assigned to the free variables. The specification of the universe and predicates, and an
assignment of a value to each free variable in a wff is called an interpretation for the wff.
For example, specifying the set {1, 3, 5} as the universe and assigning 0 to the variable y, for
example, is an interpretation for the wff x Q(x, y), where Q(x, y) means x is greater than y. x
Q(x, y) with that interpretation reads, for example, "Every number in the set {1, 3, 5} is greater
than 0".
As can be seen from the above example, a wff becomes a proposition when it is given an
interpretation.
There are, however, wffs which are always true or always false under any interpretation. Those
and related concepts are discussed below.
For example, x N(x), where N(x) means that x is non-negative, is satisfiable. For if the
universe is the set of natural numbers, the assertion x N(x) is true, because all natural
numbers are non-negative. Similarly x N(x) is also satisfiable.
However, x [N(x) N(x)] is not satisfiable because it can never be true. A wff is called
invalid or unsatisfiable, if there is no interpretation that makes it true.
For example, the wff x P(x) x P(x) is valid for any predicate name P , because x P(x)
is the negation of x P(x).
Note that a wff is not valid iff it is unsatisfiable for a valid wff is equivalent to true. Hence its
negation is false.
Equivalence
Two wffs W1 and W2 are equivalent if and only if W1 W2 is valid, that is if and only if W1
W2 is true for all interpretations.
For example x P(x) and x P(x) are equivalent for any predicate name P . So are x
[ P(x) Q(x) ] and [ x P(x) x Q(x) ] for any predicate names P and Q .
*
To be precise, it is not for every interpretation but for the ones that "make sense". For example
you don't consider the universe of set of people for the predicate x > 1 as an interpretation.
Contents
English sentences appearing in logical reasoning can be expressed as a wff. This makes the
expressions compact and precise. It thus eliminates possibilities of misinterpretation of
sentences. The use of symbolic logic also makes reasoning formal and mechanical, contributing
to the simplification of the reasoning and making it less prone to errors.
Transcribing English sentences into wffs is sometimes a non-trivial task. In this course we are
concerned with the transcription using given predicate symbols and the universe.
To transcribe a proposition stated in English using a given set of predicate symbols, first
restate in English the proposition using the predicates, connectives, and quantifiers. Then
replace the English phrases with the corresponding symbols.
Example: Given the sentence "Not every integer is even", the predicate "E(x)" meaning x is
even, and that the universe is the set of integers,
first restate it as "It is not the case that every integer is even" or "It is not the case that for every
object x in the universe, x is even."
Then "it is not the case" can be represented by the connective " ", "every object x in the
universe" by " x", and "x is even" by E(x).
This given sentence can also be interpreted as "Some integers are not even". Then it can be
restated as "For some object x in the universe, x is not even". Then it becomes x E(x).
More examples: A few more sentences with corresponding wffs are given below. The universe
is assumed to be the set of integers, E(x) represents x is even, and O(x), x is odd.
"Some integers are even and some are odd" can be translated as
x E(x) x O(x)
x E(x)
x[ E(x) O(x)]
"2 is even" is
E(2)
More difficult translation: In these translations, properties and relationships are mentioned for
certain type of elements in the universe such as relationships between integers in the universe
of numbers rather than the universe of integers. In such a case the element type is specified as
a precondition using if_then construct.
Examples: In the examples that follow the universe is the set of numbers including real
numbers, and complex numbers. I(x), E(x) and O(x) representing "x is an integer", "x is even",
and "x is odd", respectively.
x [ I(x) E(x)]
It is first restated as "For every object in the universe (meaning for every numnber in this case) if
it is integer, then it is even". Here we are interested in not any arbitrary object(number) but a
specific type of objects, that is integers. But if we write x it means "for any object in the
universe". So we must say "For any object, if it is integer .." to narrow it down to integers.
"Some integers are odd" can be restated as "There are objects that are integers and odd",
which is expressed as
x [ I(x) O(x)]
x [ E(x) I(x)]
"Only integers are even" is equivalent to "If it is even, then it is integer". Thus it is translated to
x [ E(x) I(x)]
UNIT 4 - ACTIVITY 2
1. Let L(x, y) be the predicate "x likes y," and let the universe of discourse be the set of all
people. Use quantifiers to express each of the following statements.
a) Everyone likes everyone.
2. Let S(x) be the predicate "x is a student," B(x) the predicate "x is a book, " and H(x,y) the
predicate "x has y, " where the universe of discourse is the universe, that is the set of all
objects. Use quantifiers to express each of the following statements.
3. Let B(x), E(x) and G(x) be the statements "x is a book, " "x is expensive, "and "x is good, "
respectively. Express each of the following statements using quantifiers; logical connectives;
and B(x), E(x) and G(x),where the universe of discourse is the set of all objects.
4. Let G(x), F(x), Z(x), and M(x) be the statements "x is a giraffw, " "x is 15 feet or higher, ""x is
in this zoo, " and "x belongs to me," respectively. Suppose that the universe of discourse is the
set of animals. Express each of the following statements using quantifiers; logical connectives;
and G(x), F(x), Z(x), and M(x).
Contents
Predicate logic is more powerful than propositional logic. It allows one to reason about
properties and relationships of individual objects. In predicate logic, one can use some
additional inference rules, which are discussed below, as well as those for propositional logic
such as the equivalences, implications and inference rules.
The following four rules describe when and how the universal and existential quantifiers can be
added to or deleted from an assertion.
1. Universal Instantiation:
x P(x)
-------
P(c)
where c is some arbitrary element of the universe.
Rule:
x P(x)
-------
P(c)
Restrictions:
If c is a variable, then it must not already be quantified somewhere in P(x) --- see Explanation
and Note below.
Explanation:
What this rule says is that from x P(x) one can infer P(c) for any object in the universe
represented by the variable c, thus stripping off the universal quantifier. It should be noted that P
holds for any specifc object in the universe in this case. This rule follows because x P(x) says
that P(x) holds true for all objects in the universe. Note that P(x), in general, may be a
compound wff invloving a number of predicates, variables, and quantifiers. Thus c in P(c) must
not be a variable which is quantified within P(x). See Note below for an example of what can
happen c is not properly chosen.
Example:
For example, the following argument can be proven correct using the Universal Instantiation:"No
humans can fly. John Doe is human. Therefore John Doe can not fly."
The proof is
2. H(d) Hypothesis
Note:
If the restriction on the Universal Instantiation does not exist, then y x P(x,y) may become
x P(x,x), that is x has been substituted for y by the Universal Instantiation, which is not
correct.
2. Universal Generalization:
P(c)
----------
x P(x)
where P(c) holds for every element c of the universe of discourse.
Rule:
P(c)
----------
x P(x)
Restrictions:
Explanation:
What this rule says is that if P(c) holds for any arbitrary element c of the universe, then we can
conclude that x P(x).
If, however, c is supposed to represent some specific element of the universe that has the
property P, then one can not generalize it to all the elements. For example, if P(x) means "x is
fast", then all it means is that an unspecified element represented by x is fast. It does not
necessarily mean that everything in the universe is fast.
This rule is something we can use when we want to prove that a certain property holds for every
element of the universe. That is when we want to prove x P(x), we take an abrbitrary element
x in the universe and prove P(x). Then by this Universal Generalization we can conclude x
P(x).
Example:
For example, consider the following argument: For every number x if x > 1, then x - 1 > 0. Also
for every number x, x > 1. (Here we are making a hypothetical argument. We know, of course,
every number is not greater than 1.)
2. x P(x) Hypothesis
Note:
Without the restriction on Universal Generalization, one may deduce x P(x) from P(x).
However, this deduction is not correct. For, what P(x) means is P(x) holds for an unspecified
element x, but it does not necessarily mean that P(x) holds for all x.
3. Existential Instantiation:
x P(x)
-------
P(c)
where c is some element of the universe of discourse. It is not arbitrary but must be one
for which P(c) is true.
Rule:
x P(x)
-------
P(c)
where c is some element of the universe of discourse. It is not arbitrary but must be one for
which P(c) is true.
Restrictions:
Explanation:
What this rule says is that if P holds for some element of the universe, then we can give that
element a name such as c (or x, y, a etc). When selecting symbols, one must select them one at
a time and must not use a symbol that has already been selected within the same
reasoning/proof.
Example:
For example, if x P(x) x Q(x) is true, then select a name for P, say c, then for Q, say d.
One must NOT select c for Q as well as for P.
Consider the following argument: If you get 95 on the fianl exam for CS 398, then you get an A
for the course. Someone, call him/her say c, gets 95 on the final exam. Therefore c gets an A
for CS398. This argument uses Existential Instantiation as well as a couple of others as can be
seen below.
Let the universe be the set of all people in the world, let N(x) mean that x gets 95 on the final
exam of CS398, and let A(x) represent that x gets an A for CS398.
2. x N(x) Hypothesis
In step 3 above, a specific person with property N was given the name c. For that same person
c, the statement [ N(c) A(c) ] holds by the universal instantiation.
P(c)
----------
x P(x)
where c is an element of the universe.
Rule:
P(c)
----------
x P(x)
Restrictions:
Explanation:
What this rule says is that if there is some element c in the universe that has the property P,
then we can say that there exists something in the universe that has the property P.
Example:
For example the statement "if everyone is happy then someone is happy" can be proven correct
using this existential generalization rule.
To prove it, first let the universe be the set of all people and let H(x) mean that x is happy.
x H(x) x H(x)
The proof is
1. x H(x) Hypothesis
Note:
Without the restriction that x must not appear free in P(c), one may produce an incorrect formula
by existential generalization. For example, x Q(x, x) may be derived from Q(x,c) by existential
generalization. But Q(x,c) x Q(x, x) is not valid, as you can see if Q(x,y) means "x is not
equal to y", or "x > y", for example.
x P(x) x P(x)
This, for example, shows that if P(x) represnts x is happy and the universe is the set of people,
then "There does not exist a person who is happy" is equivalent to "Everyone is not happy".
Thus the left side can be substituted for the right side whenever necessary in reasoning and
vice versa.
Example:
As an example of inference using these rules, let us consider the following reasoning:
A check is void if it has not been cashed for 30 days. This check has not been cashed for
30 days. Therefore this check is void. You can not cash a check which is void. Therefore
you can not cash this check. We now have a check which can not be cashed.
This can be put into symbolic form using the following predicates assuming the universe is the
set of all objects:
C(x): x is a check.
V(x): x is void.
This_check represents a specific object in the universe which corresponds to "this check".
T( This_check )
-----------------------------------
V( This_check )
-----------------------------------------------
S( This_check )
-----------------------------------------------
x [ C(x) S(x) ] .
Hence
[ C( This_check ) T( This_check ) ]
---------------------------------------------------------
V( This_check )
by Modus Ponens.
[ C( This_check ) V( This_check ) ]
----------------------------------------------------
S( This_check )
by Modus Ponens.
S( This_check )
C( This_check )
----------------------------------------------------
C( This_check ) S( This_check )
UNIT 4 - ACTIVITY 3
1. Show that the statements x y P(x, y) and x y P(x, y) have the same truth value.
2. For each of the following arguments, explain which rules of inference are used for each step.
The universe is the set of people.
a. "John, a student in this class, is 16 years old. Everyone who is 16 years old can get a
driver's liscence. Therefore, someone in this class can get a driver's liscence."
b. "Someboday in this class enjoys hiking. Every person who enjoys hiking also likes
biking. Therefore, there is a person in this class who likes biking."
c. "Every student in this class owns a personal computer. Everyone who owns a personal
computer can use the Internet. Therefore, John, a student in this class, can use the
Internet."
d. "Everyone in this class owns a personal computer. Someone in this class has never
used the Internet. Therefore, someone who owns a personal computer has never used
the Internet."
3. Determine whether each of the following arguments is valid. If an argument is correct, what
rule of inference is being used? If it is not, what fallacy occurs?
a. " If n is a real number with n > 1, then n2 > 1. Suppose that n2 <= 1. Then n <= 1.
b. " If n is a real number with n > 1, then n2 > 1. Suppose that n2 > 1. Then n > 1.
UNIT 4 - ACTIVITY 4
1. Show that x P(x) x Q(x) and x(P(x) Q(x)) are not logically equivalent.