0% found this document useful (0 votes)
37 views

Logic Note

This document provides an introduction to predicate logic, including: - Defining predicates as functions that take variables as arguments and return true or false, in contrast to propositions which do not take variables. - Explaining how assigning values to the variables of a predicate results in a proposition. - Introducing universal and existential quantification as ways to convert predicates into propositions by specifying whether a predicate is true for all or some variables. - Providing examples of translating between logical formulas using predicates and natural language sentences, and vice versa. - Noting that the order of quantifiers can impact the truth value in nested quantifier statements.

Uploaded by

nicholasflixy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views

Logic Note

This document provides an introduction to predicate logic, including: - Defining predicates as functions that take variables as arguments and return true or false, in contrast to propositions which do not take variables. - Explaining how assigning values to the variables of a predicate results in a proposition. - Introducing universal and existential quantification as ways to convert predicates into propositions by specifying whether a predicate is true for all or some variables. - Providing examples of translating between logical formulas using predicates and natural language sentences, and vice versa. - Noting that the order of quantifiers can impact the truth value in nested quantifier statements.

Uploaded by

nicholasflixy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Predicate Logic

CSE 191, Class Note 02:


Predicate Logic
Computer Sci & Eng Dept
SUNY Buffalo

c Xin He (University at Buffalo) CSE 191 Discrete Structures 1 / 22

From Proposition to Predicate


3 + 2 = 5 is a proposition. But is X + 2 = 5 a proposition?
Because it has a variable X in it, we cannot say it is T or F.
So, it is not a proposition. It is called a predicate.

Definition
A predicate is a function. It takes some variable(s) as arguments; it
returns either True or False (but not both) for each combination of the
argument values.

In contrast, a proposition is not a function. It does not have any


variable as argument. It is either True or False (but not both).
The variables are always associated with a universe (or domain)
of discourse, which tells us what combinations of the argument
values are allowed.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 3 / 22


Predicate vs. Proposition

Suppose P(x) is a predicate, where the universe of discourse for x


is {1, 2, 3}. Then P(x) is not a proposition, but P(1) is a proposition.
In general, a predicate is not a proposition. But when you assign
values to all its argument variables, you get a proposition.

Example:
P(x, y) : “x + 2 = y” is a predicate.
It has two variables x and y;
Universe of Discourse: x is in {1, 2, 3}; y is in {4, 5, 6}.

P(1, 4) : 1 + 2 = 4 is a proposition (it is F);


P(2, 4) : 2 + 2 = 4 is a proposition (it is T);
P(2, 3): meaningless (in this example), because 3 is not in the
specified universe of discourse for y.
c Xin He (University at Buffalo) CSE 191 Discrete Structures 4 / 22

Example

Example
Suppose Q(x, y) : “x + y > 4”, where the universe of discourse is all
integer pairs.

Which of the following are predicates? Which are propositions?


Q(1, 2)
Q(1000, 2)
Q(x, 2)
Q(1000, y)
Q(x, y)

c Xin He (University at Buffalo) CSE 191 Discrete Structures 5 / 22


Universal quantification

Universal quantification is another way of converting a predicate into a


proposition.

Definition
Suppose P(x) is a predicate on some universe of discourse.
The universal quantification of P(x) is the proposition:
“P(x) is true for all x in the universe of discourse”.
We write ∀xP(x), and say ”for all x, P(x)”.
∀xP(x) is TRUE if P(x) is true for every single x.
∀xP(x) is FALSE if there is an x for which P(x) is false.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 6 / 22

Universal quantification example

Example:
P(x) : “x + 2 = 5, universe of discourse: {1, 2, 3}.

∀ x P(x) means: ”for all x in {1, 2, 3}, x + 2 = 5”.


In other words, it means: ”1+2=5, 2+2=5, and 3+2=5”, which is false.
So it is a proposition.

More example:
A(x) : “x = 1” B(x) : “x > 2” C(x) : “x < 2”
Universe of discourse is {1, 2, 3}.

True or False?
a) ∀ x (C(x) → A(x))
b) ∀ x (C(x) ∨ B(x))

c Xin He (University at Buffalo) CSE 191 Discrete Structures 7 / 22


Existential quantification

Existential quantification is yet another way of converting a predicate


into a proposition.

Definition
Suppose P(x) is a predicate on some universe of discourse.
The existential quantification of P(x) is the proposition:
“P(x) is true for some x in the universe of discourse.”
We write ∃ x P(x), and say “there exists x, P(x)”.
∃ x P(x) is TRUE if P(x) is true for any x.
∃ x P(x) is FALSE if for every x, P(x) is false.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 8 / 22

Existential quantification example

Example:
P(x) : “x + 2 = 5”, universe of discourse: {1, 2, 3}.

∃ x P(x) means: “for some x in {1, 2, 3}, x + 2 = 5”.


In other words, it means: “1 + 2 = 5, or 2 + 2 = 5, or 3 + 2 = 5” which is
true. So it is a proposition.

More examples on existential quantifier:


A(x) : “x = 1”, B(x) : “x > 5”, C(x) : “x < 5”.
Universe of discourse is {1, 2, 3}.

True or False?
a) ∃ x (C(x) → A(x))
b) ∃ x B(x)

c Xin He (University at Buffalo) CSE 191 Discrete Structures 9 / 22


More examples

Example:
A(x): “x lives in Amherst.”
B(x): “x is a CSE 191 student.”
C(x): “x has a good GPA.”
D(x): “x majors in computer science.”
Universe of discourse: all UB students.

All CSE 191 students have good GPA: ∀ x (B(x) → C(x))


No CSE 191 student lives in Amherst: ¬ ∃ x (B(x) ∧ A(x))
CSE 191 students who do not live in Amherst major in computer
science: ∀x (B(x) ∧ ¬ A(x) → D(x))

c Xin He (University at Buffalo) CSE 191 Discrete Structures 10 / 22

Quantifier negation

Example:
Consider the following two propositions:
Not every UB student majors in computer science: ¬ ∀x D(x).
There is UB student who does not major in computer science:
∃ x ¬ D(x).

Do these two statements have the same meaning? YES.

Example:
Consider the following two propositions:
There is no UB student living in Amherst: ¬ ∃ x A(x).
Every UB student lives in a town other than Amherst: ∀ x ¬ A(x).

Do these two statements have the same meaning? YES.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 11 / 22


Quantifier negation

Quantifier negation: In general we have:


¬ ∀ x P(x) ≡ ∃ x ¬ P(x)
¬ ∃ x P(x) ≡ ∀ x ¬ P(x)

Where ≡ means logical equivalence as we have seen.

Rule: to negate a quantifier:


move the negation to the inside;
and switch ∃ to ∀, ∀ to ∃.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 12 / 22

Nested Quantifier

Sometimes we have more complicated logical formulas that


require nested quantifiers.
“Nested” means one quantifier’s scope contains another quantifier.

∀x∀yP(x, y) = T if P(x, y) = T for all x and y.


∀x∃yP(x, y) = T if for any x there exists y such that P(x, y) = T.
∃x∀yP(x, y) = T if there exists x such that P(x, y) = T for all y.
∃x∃yP(x, y) = T if these exists x and there exists y such that
P(x, y) = T.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 13 / 22


Examples for translating logic formulas to sentences
Example:
Suppose P(x, y) means: “x (the first variable in P(∗.∗) loves y (the
second variable in (P(∗, ∗)”), where the domain of x is the students in
this class and the domain of y is the courses offered by UB CSE.

Note: The variable is defined by its position in P(∗, ∗). We might use
different names for them. So when we write P(y, w), we are saying y
loves w.
P(Alice, CSE191): Alice loves CSE191.
∃ y P(Alice, y): Alice loves a UB CSE course.
∃ x (P(x, CSE191) ∧ P(x, CSE250)):
A student in this class loves both CSE 191 and CSE 250.
∃ x ∃ y ∀ z ((x 6= y) ∧ (P(x, z) → P(y, z))):
There are two different students x and y in this class such that if x
loves a UB CSE course, then y loves it as well.
c Xin He (University at Buffalo) CSE 191 Discrete Structures 14 / 22

Example for translating sentences to logic formulas

Now we consider translations in the other direction.


Example:
Suppose P(x, y) means: “x loves y”, where the domain of x is the
students in this class and the domain of y is the courses offered by UB
CSE.

Every UB CSE course is loved by some student in this class:


∀ y ∃ x P(x, y).
No student in this class loves both CSE 191 and CSE 250:
¬ ∃ x (P(x, CSE191) ∧ P(x, CSE250)).

c Xin He (University at Buffalo) CSE 191 Discrete Structures 15 / 22


Nested quantifier: examples
Example:
A(x): “x lives in Amherst.”
C(x, y): “x and y are friends.”
D(x): “x majors in computer science.”
Universe of discourse: all UB students.
There is a computer science major who has a friend living in Amherst:
∃ x (D(x) ∧ ∃ y (A(y) ∧ C(x, y)))

Example:
A(x): “x lives in Amherst.”
B(x): “x is a CSE 191 student.”
C(x, y): “x and y are friends.”
D(x): “x majors in computer science.”
Universe of discourse: all UB students.
Either there is a computer science major who has a friend living in Amherst,
or all CSE 191 students major in computer science:
∃ x (D(x) ∧ ∃ y (A(y) ∧ C(x, y))) ∨ ∀ x (B(x) → D(x))
c Xin He (University at Buffalo) CSE 191 Discrete Structures 16 / 22

Compare examples

Example:
A(x): “x lives in Amherst.”
B(x): “x is a CSE 191 student.”
C(x, y): “x and y are friends.”
D(x): “x majors in computer science.”
Universe of discourse: all UB students.
Consider the following two statements:
∀ x ∃y(C(x, y) ∧ B(y)):
All UB students have friends taking CSE191.
∃ y ∀ x (C(x, y) ∧ B(y)):
There is a UB student who is the friend of all UB students and
takes CSE 191.
Do they mean the same thing? NO.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 17 / 22


Order Matters
Difference in orders of quantifiers may lead to difference in truth
values.

Example:
Let the universe of discourse be pairs of real numbers.
∀ x ∃ y (y > x) ≡ True
But
∃ y ∀ x (y > x) ≡ False

In general:
∀x∀yP(x, y) = T iff ∀y∀xP(x, y) = T.
∃x∃yP(x, y) = T iff ∃y∃xP(x, y) = T.
If ∃x∀yP(x, y) = T, then ∀y∃xP(x, y) = T.
If ∀y∃xP(x, y) = T, ∃x∀yP(x, y) might be F.
c Xin He (University at Buffalo) CSE 191 Discrete Structures 18 / 22

Compare examples
Example:
A(x): “x lives in Amherst.”
B(x): “x is a CSE 191 student.”
C(x, y): “x and y are friends.”
D(x): “x majors in computer science.”
Universe of discourse: all UB students.

∃ x D(x) ∧ ∃ x ∃ y (A(y) ∧ C(x, y)):


There is a computer science major and there is a UB student who
has a friend living in Amherst.
Compared with:
∃ x (D(x) ∧ ∃ y (A(y) ∧ C(x, y))):
There is a computer science major who has a friend living in
Amherst.
The meaning of the two statements are different. This is because the
scopes of the variable ∃ x in the two formula are different.
c Xin He (University at Buffalo) CSE 191 Discrete Structures 19 / 22
Scope matters

In general, difference in scopes of quantifiers can lead to


difference in truth values.

Example:
∀ x (P(x) ∨ ¬ P(x)) ≡ True
But the truth value of
∀ x P(x) ∨ ¬ P(x)
depends on the truth value of free variable x. (The second x is not
bounded by any quantifier.) So this formula is not even a
proposition!

c Xin He (University at Buffalo) CSE 191 Discrete Structures 20 / 22

Nested quantifier: more examples

Example:
A(x): “x lives in Amherst.”
B(x): “x is a CSE 191 student.”
C(x): “x has a good GPA.”
D(x): “x majors in computer science.”
Universe of discourse: all UB students.
If all computer science majors have friends taking CSE191, then there
are a pair of friends both taking CSE191.
∀ x (D(x) → ∃ y (B(y) ∧ C(x, y))) → ∃ x ∃ y (B(x) ∧ B(y) ∧ C(x, y))

c Xin He (University at Buffalo) CSE 191 Discrete Structures 21 / 22


Rules for quantifier scope

We have the following important rules:


∀ x (P(x) ∧ Q(y)) ≡ ∀ x P(x) ∧ Q(y)
∀ x (P(x) ∨ Q(y)) ≡ ∀ x P(x) ∨ Q(y)
∃ x (P(x) ∧ Q(y)) ≡ ∃ x P(x) ∧ Q(y)
∃ x (P(x) ∨ Q(y)) ≡ ∃ x P(x) ∨ Q(y)

In general, as long as a subformula does not contain a quantifier’s


bound variable, you can arbitrarily put it into the scope of that
quantifier, or take it out of the scope of that quantifier.

c Xin He (University at Buffalo) CSE 191 Discrete Structures 22 / 22

You might also like