SlideShare a Scribd company logo
Sindh Madressatul Islam
University, Karachi
Department of Computer Science
Discrete Structure 3rd Semester
Section E
Predicate Logic and Quantifies
in Discrete Structure
Outline
• Introduction
• Terminology:
– Propositional functions; arguments; arity; universe of
discourse
• Quantifiers
– Definition; using, mixing, negating them
• Logic Programming (Prolog)
• Transcribing English to Logic
• More exercises
Introduction
• Consider the statements:
x>3, x=y+4, x+y=z
• The symbols >, +, = denote relations between x and 3, x, y, and
4, and x,y, and z, respectively
• These relations may hold or not hold depending on the values
that x, y, and z may take.
• A predicate is a property that is affirmed or denied about the
subject (in logic, we say ‘variable’ or ‘argument’) of a statement
• Consider the statement : ‘x is greater than 3’
– ‘x’ is the subject
– ‘is greater than 3’ is the predicate
Propositional Functions (1)
• To write in Predicate Logic ‘x is greater than 3’
– We introduce a functional symbol for the predicate and
– Put the subject as an argument (to the functional symbol):
P(x)
• Terminology
– P(x) is a statement
– P is a predicate or propositional function
– x as an argument
Propositional Functions (2)
• Examples:
– Father(x): unary predicate
– Brother(x,y): binary predicate
– Sum(x,y,z): ternary predicate
– P(x,y,z,t): n-ary predicate
Propositional Functions (3)
• Definition: A statement of the form P(x1,x2,…, xn) is
the value of the propositional symbol P.
• Here: (x1,x2,…, xn) is an n-tuple and P is a predicate
• We can think of a propositional function as a
function that
– Evaluates to true or false
– Takes one or more arguments
– Expresses a predicate involving the argument(s)
– Becomes a proposition when values are assigned to the
arguments
Propositional Functions: Example
• Let Q(x,y,z) denote the statement ‘x2+y2=z2’
– What is the truth value of Q(3,4,5)?
– What is the truth value of Q(2,2,3)?
– How many values of (x,y,z) make the predicate
true?
Q(3,4,5) is true
There are infinitely many values that make the proposition true,
how many right triangles are there?
Q(2,2,3) is false
Universe of Discourse
• Consider the statement ‘x>3’, does it make
sense to assign to x the value ‘blue’?
• Intuitively, the universe of discourse is the set
of all things we wish to talk about; that is the
set of all objects that we can sensibly assign to
a variable in a propositional function.
• What would be the universe of discourse for
the propositional function below be:
EnrolledCSE235(x)=‘x is enrolled in CSE235’
Universe of Discourse: Multivariate functions
• Each variable in an n-tuple (i.e., each argument) may
have a different universe of discourse
• Consider an n-ary predicate P:
P(r,g,b,c)= ‘The rgb-values of the color c is (r,g,b)’
• Example, what is the truth value of
– P(255,0,0,red)
– P(0,0,255,green)
• What are the universes of discourse of (r,g,b,c)?
Outline
• Introduction
• Terminology:
– Propositional functions; arguments; arity; universe of
discourse
• Quantifiers
– Definition; using, mixing, negating them
• Logic Programming (Prolog)
• Transcribing English to Logic
• More exercises
Quantifiers: Introduction
• The statement ‘x>3’ is not a proposition
• It becomes a proposition
– When we assign values to the argument: ‘4>3’ is false, ‘2<3’ is true, or
– When we quantify the statement
• Two quantifiers
– Universal quantifier ∀ $forall$
the proposition is true for all possible values in the universe of
discourse
– Existential quantifier∃ $exists$
the proposition is true for some value(s) in the universe of discourse
Universal Quantifier: Definition
• Definition: The universal quantification of a
predicate P(x) is the proposition ‘P(x) is true for all
values of x in the universe of discourse.’ We use the
notation: ∀ x P(x), which is read ‘for all x’.
• If the universe of discourse is finite, say {n1,n2,…,nk},
then the universal quantifier is simply the
conjunction of the propositions over all the elements
∀ x P(x) ⇔ P(n1) ∧ P(n2) ∧ … ∧ P(nk)
Universal Quantifier: Example 1
• Let P(x): ‘x must take a discrete mathematics course’ and Q(x):
‘x is a CS student.’
• The universe of discourse for both P(x) and Q(x) is all UNL
students.
• Express the statements:
– “Every CS student must take a discrete mathematics course.”
– “Everybody must take a discrete mathematics course or be a CS
student.”
– “Everybody must take a discrete mathematics course and be a CS
student.”
∀ x Q(x) → P(x)
∀ x ( P(x) ∨ Q(x) )
∀ x ( P(x) ∧ Q(x) )
Are these statements true or false?
Universal Quantifier: Example 2
• Express the statement: ‘for every x and every
y, x+y>10’
• Answer:
– Let P(x,y) be the statement x+y>10
– Where the universe of discourse for x, y is the set
of integers
– The statement is: ∀x ∀y P(x,y)
• Shorthand: ∀x,y P(x,y)
Existential Quantifier: Definition
• Definition: The existential quantification of a
predicate P(x) is the proposition ‘There exists a value
x in the universe of discourse such that P(x) is true.’
We use the notation: ∃ x P(x), which is read ‘there
exists x’.
• If the universe of discourse is finite, say {n1,n2,…,nk},
then the existential quantifier is simply the
disjunction of the propositions over all the elements
∃ x P(x) ⇔ P(n1) ∨ P(n2) ∨ … ∨ P(nk)
Existential Quantifier: Example 1
• Let P(x,y) denote the statement ‘x+y=5’
• What does the expression ∃x ∃y P(x,y) mean?
• Which universe(s) of discourse make it true?
Existential Quantifier: Example 2
• Express the statement: ‘there exists a real solution to ax2+bx-
c=0’
• Answer:
– Let P(x) be the statement x= (-b±√(b2-4ac))/2a
– Where the universe of discourse for x is the set of real numbers. Note
here that a, b, c are fixed constants.
– The statement can be expressed as ∃x P(x)
• What is the truth value of ∃x P(x)?
– It is false. When b2<4ac, there are no real number x that can satisfy
the predicate
• What can we do so that ∃x P(x)is true?
– Change the universe of discourse to the complex numbers, C
Quantifiers: Truth values
• In general, when are quantified statements
true or false?
Statement True when… False when...
∀x P(x) P(x) is true for every x
There is an x for which
P(x) is false
∃x P(x)
There is an x for which
P(x) is true
P(x) is false for every x
Mixing quantifiers (1)
• Existential and universal quantifiers can be used
together to quantify a propositional predicate. For
example:
∀x ∃y P(x,y)
is perfectly valid
• Alert:
– The quantifiers must be read from left to right
– The order of the quantifiers is important
– ∀x ∃y P(x,y) is not equivalent to ∃y ∀x P(x,y)
Mixing quantifiers (2)
• Consider
– ∀x ∃y Loves (x,y): Everybody loves somebody
– ∃y ∀x Loves(x,y): There is someone loved by everyone
• The two expressions do not mean the same thing
• (∃y ∀x Loves(x,y)) → (∀x ∃y Loves (x,y)) but the
converse does not hold
• However, you can commute similar quantifiers
– ∀x ∀y P(x,y) is equivalent to ∀y ∀x P(x,y) (thus, ∀x,y P(x,y))
– ∃x ∃y P(x,y) is equivalent to ∃y ∃x P(x,y) (thus ∃x,y P(x,y))
Mixing Quantifiers: Truth values
Statement True when... False when...
∀x∀y P(x,y)
P(x,y) is true for every
pair x,y
There is at least one pair
x,y for which P(x,y) is false
∀x∃y P(x,y) For every x, there is a y
for which P(x,y) is true
There is an x for which
P(x,y) is false for every y
∃x∀y P(x,y) There is an x for which
P(x,y) is true for every y
For every x, there is a y for
which P(x,y) is false
∃x∃yP(x,y)
There is at least one pair
x,y for which P(x,y) is true
P(x,y) is false for every pair
x,y
Outline
• Introduction
• Terminology:
– Propositional functions; arguments; arity; universe of
discourse
• Quantifiers
– Definition; using, mixing, biding, negating them
• Logic Programming (Prolog)
• Transcribing English to Logic
• More exercises
Binding Variables
• When a quantifier is used on a variable x, we say that
x is bound
• If no quantifier is used on a variable in a predicate
statement, the variable is called free
• Examples
– In ∃x∀yP(x,y), both x and y are bound
– In ∀xP(x,y), x is bound but y is free
• A statement is called a well-formed formula, when all
variables are properly quantified
Binding Variables: Scope
• The set of all variables bound by a common
quantifier is called the scope of the quantifier
• For example, in the expression ∃x,y∀zP(x,y,z,c)
– What is the scope of existential quantifier?
– What is the scope of universal quantifier?
– What are the bound variables?
– What are the free variables?
– Is the expression a well-formed formula?
Negation
• We can use negation with quantified expressions as
we used them with propositions
• Lemma: Let P(x) be a predicate. Then the followings
hold:
¬(∀x P(x)) ≡ ∃x ¬P(x)
¬ (∃x P(x)) ≡ ∀x ¬P(x)
• This is essentially the quantified version of De
Morgan’s Law (when the universe of discourse is
finite, this is exactly De Morgan’s Law)
Negation: Truth
Truth Values of Negated Quantifiers
Statement True when… False when...
¬∃x P(x) ≡
∀x ¬P(x)
P(x) is false for every x
There is an x for which
P(x) is true
¬∀x P(x) ≡
∃x ¬P(x)
There is an x for which
P(x) is false
P(x) is true for every x
Outline
• Introduction
• Terminology:
– Propositional functions; arguments; arity; universe of
discourse
• Quantifiers
– Definition; using, mixing, negating them
• Logic Programming (Prolog)
• Transcribing English to Logic
• More exercises
Prolog (1)
• Prolog (Programming in Logic) is a
programming language based on (a restricted
form of) Predicate Logic (a.k.a. Predicate
Calculus and FOL)
• It was developed by the logicians of the
Artificial Intelligence community for symbolic
reasoning
Prolog (2)
• Prolog allows the users to express facts and rules
• Facts are propositional functions: student(mia),
enrolled(mia,cse235), instructor(patel,cse235), etc.
• Rules are implications with conjunctions:
teaches(X,Y) :- instructor(X,Z), enrolled(Y,Z)
• Prolog answers queries such as:
?enrolled(mia,cse235)
?enrolled(X,cse476)
?teaches(X,mia)
by binding variables and doing theorem proving (i.e., applying
inference rules) as we will see in Section 1.5
English into Logic
• Logic is more precise than English
• Transcribing English into Logic and vice versa can be tricky
• When writing statements with quantifiers, usually the correct
meaning is conveyed with the following combinations:
Use ∀ with ⇒
∀x Lion(x) ⇒ Fierce(x): Every lion is fierce
∀x Lion(x) ∧ Fierce(x): Everyone is a lion, and everyone is fierce
Use ∃ with ∧
∃ x Lion(x) ∧ Vegan(x): Holds when you have at least one vegan lion
∃ x Lion(x) ⇒ Vegan(x): Holds when you have vegan people in the
universe of discourse (even though there is no vegan lion in the
universe of discourse )

More Related Content

What's hot (20)

PPT
Predicate &amp; quantifier
University of Potsdam
 
PPTX
Unit 1-logic
raksharao
 
PPTX
Quantifiers and its Types
HumayunNaseer4
 
PDF
Formal Logic - Lesson 1 - Introduction to Logic
Laguna State Polytechnic University
 
PPTX
Predicates and quantifiers presentation topics
R.h. Himel
 
PPTX
Fuzzy logic
KristantoMath
 
PDF
Fixed points of contractive and Geraghty contraction mappings under the influ...
IJERA Editor
 
PPTX
Fuzzy logic and application in AI
Ildar Nurgaliev
 
PDF
Quantum Search and Quantum Learning
Jean-Christophe Lavocat
 
PPTX
FUZZY COMPLEMENT
Bhavanachoudhary11
 
PDF
Potentialist reflection
jamesstudd
 
PDF
Formal Logic - Lesson 8 - Predicates and Quantifiers
Laguna State Polytechnic University
 
PPT
2.2.ppt.SC
AMIT KUMAR
 
PPT
Introduction to Artificial Intelligence
Manoj Harsule
 
PDF
Course notes2summer2012
Von Adam Martinez
 
PPTX
FUZZY LOGIC
Sri vidhya k
 
PDF
Fuzzy random variables and Kolomogrov’s important results
inventionjournals
 
PDF
CPSC 125 Ch 1 sec 3
David Wood
 
PPTX
Classical Sets & fuzzy sets
Dr.Ashvini Chaudhari Bhongade
 
PPT
Extension principle
Savo Delić
 
Predicate &amp; quantifier
University of Potsdam
 
Unit 1-logic
raksharao
 
Quantifiers and its Types
HumayunNaseer4
 
Formal Logic - Lesson 1 - Introduction to Logic
Laguna State Polytechnic University
 
Predicates and quantifiers presentation topics
R.h. Himel
 
Fuzzy logic
KristantoMath
 
Fixed points of contractive and Geraghty contraction mappings under the influ...
IJERA Editor
 
Fuzzy logic and application in AI
Ildar Nurgaliev
 
Quantum Search and Quantum Learning
Jean-Christophe Lavocat
 
FUZZY COMPLEMENT
Bhavanachoudhary11
 
Potentialist reflection
jamesstudd
 
Formal Logic - Lesson 8 - Predicates and Quantifiers
Laguna State Polytechnic University
 
2.2.ppt.SC
AMIT KUMAR
 
Introduction to Artificial Intelligence
Manoj Harsule
 
Course notes2summer2012
Von Adam Martinez
 
FUZZY LOGIC
Sri vidhya k
 
Fuzzy random variables and Kolomogrov’s important results
inventionjournals
 
CPSC 125 Ch 1 sec 3
David Wood
 
Classical Sets & fuzzy sets
Dr.Ashvini Chaudhari Bhongade
 
Extension principle
Savo Delić
 

Similar to Discrete Structure Lecture #5 & 6.pdf (20)

PPTX
Chapter 1.4.pptx Chapter 1.4.pptx DISCREATE MATH
JessylyneSophia
 
PDF
Chapter 01 - p2.pdf
smarwaneid
 
PPT
1606751772-ds-lecture-6.ppt
TejasAditya2
 
PPTX
Discreate structure presentation introduction
yashirraza123
 
PPT
PredicateLogic (1).ppt
keerthana592112
 
PPTX
PredicateLogic.pptx
santhosh sriprada
 
PPTX
Module_5_1.pptx
DrKalaavathiBuvanesh
 
PPTX
Predicates and quantifiers
Istiak Ahmed
 
PPTX
Lecture in the topic of Predicate Calculus.pptx
Kamal El-Saady
 
PPT
Lecture in predecate logical propostions
Kamal El-Saady
 
PPT
predicate logic proposition logic FirstOrderLogic.ppt
SuryaBasnet3
 
PPT
Knowledge Representation with predicate knoledgeFirstOrderLogic.ppt
SuryaBasnet3
 
PPTX
Lecture in the predicates-quantifiers.pptx
Kamal El-Saady
 
PPT
X02PredCalculus.ppt
MalligaarjunanN
 
PPTX
predicate and appliedmathemeticsfour.pptx
PallaviPandey64
 
PDF
Predicate Logic and Propositional Logic in Discrete Structure
raazdoss
 
PPTX
Predicates Logic.pptx
MohammadFaizanAnsari3
 
PDF
Discrete Mathematics: Lecture 2 - Predicate Logic
saharsoussa
 
PPTX
SESSION-11 PPT.pptx
NaniSarath
 
PPT
Per3 logika
Evert Sandye Taasiringan
 
Chapter 1.4.pptx Chapter 1.4.pptx DISCREATE MATH
JessylyneSophia
 
Chapter 01 - p2.pdf
smarwaneid
 
1606751772-ds-lecture-6.ppt
TejasAditya2
 
Discreate structure presentation introduction
yashirraza123
 
PredicateLogic (1).ppt
keerthana592112
 
PredicateLogic.pptx
santhosh sriprada
 
Module_5_1.pptx
DrKalaavathiBuvanesh
 
Predicates and quantifiers
Istiak Ahmed
 
Lecture in the topic of Predicate Calculus.pptx
Kamal El-Saady
 
Lecture in predecate logical propostions
Kamal El-Saady
 
predicate logic proposition logic FirstOrderLogic.ppt
SuryaBasnet3
 
Knowledge Representation with predicate knoledgeFirstOrderLogic.ppt
SuryaBasnet3
 
Lecture in the predicates-quantifiers.pptx
Kamal El-Saady
 
X02PredCalculus.ppt
MalligaarjunanN
 
predicate and appliedmathemeticsfour.pptx
PallaviPandey64
 
Predicate Logic and Propositional Logic in Discrete Structure
raazdoss
 
Predicates Logic.pptx
MohammadFaizanAnsari3
 
Discrete Mathematics: Lecture 2 - Predicate Logic
saharsoussa
 
SESSION-11 PPT.pptx
NaniSarath
 
Ad

More from MuhammadUmerIhtisham (14)

PDF
LECT 10, 11-DSALGO(Hashing).pdf
MuhammadUmerIhtisham
 
PDF
LEC 12-DSALGO-GRAPHS(final12).pdf
MuhammadUmerIhtisham
 
PDF
Lect 13, 14 (final)AVL Tree and Rotations.pdf
MuhammadUmerIhtisham
 
PDF
LEC4-DS ALGO.pdf
MuhammadUmerIhtisham
 
PDF
LEC3-DS ALGO(updated).pdf
MuhammadUmerIhtisham
 
PDF
LEC 7-DS ALGO(expression and huffman).pdf
MuhammadUmerIhtisham
 
PDF
LEC 8-DS ALGO(heaps).pdf
MuhammadUmerIhtisham
 
PDF
LEC 5-DS ALGO(updated).pdf
MuhammadUmerIhtisham
 
PDF
LEC 6-DS ALGO(updated).pdf
MuhammadUmerIhtisham
 
PDF
lect 1-ds algo(final)_2.pdf
MuhammadUmerIhtisham
 
PDF
lect 2-DS ALGO(online).pdf
MuhammadUmerIhtisham
 
PDF
SMIU Discrete Structure Lecture 3 Section 3E.pdf
MuhammadUmerIhtisham
 
PDF
Discrete Structure Lecture #7 & 8.pdf
MuhammadUmerIhtisham
 
PDF
SMIU Lecture #1 & 2 Introduction to Discrete Structure and Truth Table.pdf
MuhammadUmerIhtisham
 
LECT 10, 11-DSALGO(Hashing).pdf
MuhammadUmerIhtisham
 
LEC 12-DSALGO-GRAPHS(final12).pdf
MuhammadUmerIhtisham
 
Lect 13, 14 (final)AVL Tree and Rotations.pdf
MuhammadUmerIhtisham
 
LEC4-DS ALGO.pdf
MuhammadUmerIhtisham
 
LEC3-DS ALGO(updated).pdf
MuhammadUmerIhtisham
 
LEC 7-DS ALGO(expression and huffman).pdf
MuhammadUmerIhtisham
 
LEC 8-DS ALGO(heaps).pdf
MuhammadUmerIhtisham
 
LEC 5-DS ALGO(updated).pdf
MuhammadUmerIhtisham
 
LEC 6-DS ALGO(updated).pdf
MuhammadUmerIhtisham
 
lect 1-ds algo(final)_2.pdf
MuhammadUmerIhtisham
 
lect 2-DS ALGO(online).pdf
MuhammadUmerIhtisham
 
SMIU Discrete Structure Lecture 3 Section 3E.pdf
MuhammadUmerIhtisham
 
Discrete Structure Lecture #7 & 8.pdf
MuhammadUmerIhtisham
 
SMIU Lecture #1 & 2 Introduction to Discrete Structure and Truth Table.pdf
MuhammadUmerIhtisham
 
Ad

Recently uploaded (20)

PDF
Aprendendo Arquitetura Framework Salesforce - Dia 03
Mauricio Alexandre Silva
 
PPTX
DAY 1_QUARTER1 ENGLISH 5 WEEK- PRESENTATION.pptx
BanyMacalintal
 
PPTX
ENGlish 8 lesson presentation PowerPoint.pptx
marawehsvinetshe
 
PDF
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
PDF
Is Assignment Help Legal in Australia_.pdf
thomas19williams83
 
PDF
epi editorial commitee meeting presentation
MIPLM
 
PDF
Mahidol_Change_Agent_Note_2025-06-27-29_MUSEF
Tassanee Lerksuthirat
 
PPTX
Nitrogen rule, ring rule, mc lafferty.pptx
nbisen2001
 
PPTX
Post Dated Cheque(PDC) Management in Odoo 18
Celine George
 
PPTX
Universal immunization Programme (UIP).pptx
Vishal Chanalia
 
PDF
Workbook de Inglés Completo - English Path.pdf
shityouenglishpath
 
PDF
STATEMENT-BY-THE-HON.-MINISTER-FOR-HEALTH-ON-THE-COVID-19-OUTBREAK-AT-UG_revi...
nservice241
 
PDF
AI-Powered-Visual-Storytelling-for-Nonprofits.pdf
TechSoup
 
PDF
IMPORTANT GUIDELINES FOR M.Sc.ZOOLOGY DISSERTATION
raviralanaresh2
 
PPTX
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
PPTX
ENG8_Q1_WEEK2_LESSON1. Presentation pptx
marawehsvinetshe
 
PDF
Stokey: A Jewish Village by Rachel Kolsky
History of Stoke Newington
 
PDF
Week 2 - Irish Natural Heritage Powerpoint.pdf
swainealan
 
PDF
Horarios de distribución de agua en julio
pegazohn1978
 
PPTX
Introduction to Indian Writing in English
Trushali Dodiya
 
Aprendendo Arquitetura Framework Salesforce - Dia 03
Mauricio Alexandre Silva
 
DAY 1_QUARTER1 ENGLISH 5 WEEK- PRESENTATION.pptx
BanyMacalintal
 
ENGlish 8 lesson presentation PowerPoint.pptx
marawehsvinetshe
 
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
Is Assignment Help Legal in Australia_.pdf
thomas19williams83
 
epi editorial commitee meeting presentation
MIPLM
 
Mahidol_Change_Agent_Note_2025-06-27-29_MUSEF
Tassanee Lerksuthirat
 
Nitrogen rule, ring rule, mc lafferty.pptx
nbisen2001
 
Post Dated Cheque(PDC) Management in Odoo 18
Celine George
 
Universal immunization Programme (UIP).pptx
Vishal Chanalia
 
Workbook de Inglés Completo - English Path.pdf
shityouenglishpath
 
STATEMENT-BY-THE-HON.-MINISTER-FOR-HEALTH-ON-THE-COVID-19-OUTBREAK-AT-UG_revi...
nservice241
 
AI-Powered-Visual-Storytelling-for-Nonprofits.pdf
TechSoup
 
IMPORTANT GUIDELINES FOR M.Sc.ZOOLOGY DISSERTATION
raviralanaresh2
 
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
ENG8_Q1_WEEK2_LESSON1. Presentation pptx
marawehsvinetshe
 
Stokey: A Jewish Village by Rachel Kolsky
History of Stoke Newington
 
Week 2 - Irish Natural Heritage Powerpoint.pdf
swainealan
 
Horarios de distribución de agua en julio
pegazohn1978
 
Introduction to Indian Writing in English
Trushali Dodiya
 

Discrete Structure Lecture #5 & 6.pdf

  • 1. Sindh Madressatul Islam University, Karachi Department of Computer Science Discrete Structure 3rd Semester Section E
  • 2. Predicate Logic and Quantifies in Discrete Structure
  • 3. Outline • Introduction • Terminology: – Propositional functions; arguments; arity; universe of discourse • Quantifiers – Definition; using, mixing, negating them • Logic Programming (Prolog) • Transcribing English to Logic • More exercises
  • 4. Introduction • Consider the statements: x>3, x=y+4, x+y=z • The symbols >, +, = denote relations between x and 3, x, y, and 4, and x,y, and z, respectively • These relations may hold or not hold depending on the values that x, y, and z may take. • A predicate is a property that is affirmed or denied about the subject (in logic, we say ‘variable’ or ‘argument’) of a statement • Consider the statement : ‘x is greater than 3’ – ‘x’ is the subject – ‘is greater than 3’ is the predicate
  • 5. Propositional Functions (1) • To write in Predicate Logic ‘x is greater than 3’ – We introduce a functional symbol for the predicate and – Put the subject as an argument (to the functional symbol): P(x) • Terminology – P(x) is a statement – P is a predicate or propositional function – x as an argument
  • 6. Propositional Functions (2) • Examples: – Father(x): unary predicate – Brother(x,y): binary predicate – Sum(x,y,z): ternary predicate – P(x,y,z,t): n-ary predicate
  • 7. Propositional Functions (3) • Definition: A statement of the form P(x1,x2,…, xn) is the value of the propositional symbol P. • Here: (x1,x2,…, xn) is an n-tuple and P is a predicate • We can think of a propositional function as a function that – Evaluates to true or false – Takes one or more arguments – Expresses a predicate involving the argument(s) – Becomes a proposition when values are assigned to the arguments
  • 8. Propositional Functions: Example • Let Q(x,y,z) denote the statement ‘x2+y2=z2’ – What is the truth value of Q(3,4,5)? – What is the truth value of Q(2,2,3)? – How many values of (x,y,z) make the predicate true? Q(3,4,5) is true There are infinitely many values that make the proposition true, how many right triangles are there? Q(2,2,3) is false
  • 9. Universe of Discourse • Consider the statement ‘x>3’, does it make sense to assign to x the value ‘blue’? • Intuitively, the universe of discourse is the set of all things we wish to talk about; that is the set of all objects that we can sensibly assign to a variable in a propositional function. • What would be the universe of discourse for the propositional function below be: EnrolledCSE235(x)=‘x is enrolled in CSE235’
  • 10. Universe of Discourse: Multivariate functions • Each variable in an n-tuple (i.e., each argument) may have a different universe of discourse • Consider an n-ary predicate P: P(r,g,b,c)= ‘The rgb-values of the color c is (r,g,b)’ • Example, what is the truth value of – P(255,0,0,red) – P(0,0,255,green) • What are the universes of discourse of (r,g,b,c)?
  • 11. Outline • Introduction • Terminology: – Propositional functions; arguments; arity; universe of discourse • Quantifiers – Definition; using, mixing, negating them • Logic Programming (Prolog) • Transcribing English to Logic • More exercises
  • 12. Quantifiers: Introduction • The statement ‘x>3’ is not a proposition • It becomes a proposition – When we assign values to the argument: ‘4>3’ is false, ‘2<3’ is true, or – When we quantify the statement • Two quantifiers – Universal quantifier ∀ $forall$ the proposition is true for all possible values in the universe of discourse – Existential quantifier∃ $exists$ the proposition is true for some value(s) in the universe of discourse
  • 13. Universal Quantifier: Definition • Definition: The universal quantification of a predicate P(x) is the proposition ‘P(x) is true for all values of x in the universe of discourse.’ We use the notation: ∀ x P(x), which is read ‘for all x’. • If the universe of discourse is finite, say {n1,n2,…,nk}, then the universal quantifier is simply the conjunction of the propositions over all the elements ∀ x P(x) ⇔ P(n1) ∧ P(n2) ∧ … ∧ P(nk)
  • 14. Universal Quantifier: Example 1 • Let P(x): ‘x must take a discrete mathematics course’ and Q(x): ‘x is a CS student.’ • The universe of discourse for both P(x) and Q(x) is all UNL students. • Express the statements: – “Every CS student must take a discrete mathematics course.” – “Everybody must take a discrete mathematics course or be a CS student.” – “Everybody must take a discrete mathematics course and be a CS student.” ∀ x Q(x) → P(x) ∀ x ( P(x) ∨ Q(x) ) ∀ x ( P(x) ∧ Q(x) ) Are these statements true or false?
  • 15. Universal Quantifier: Example 2 • Express the statement: ‘for every x and every y, x+y>10’ • Answer: – Let P(x,y) be the statement x+y>10 – Where the universe of discourse for x, y is the set of integers – The statement is: ∀x ∀y P(x,y) • Shorthand: ∀x,y P(x,y)
  • 16. Existential Quantifier: Definition • Definition: The existential quantification of a predicate P(x) is the proposition ‘There exists a value x in the universe of discourse such that P(x) is true.’ We use the notation: ∃ x P(x), which is read ‘there exists x’. • If the universe of discourse is finite, say {n1,n2,…,nk}, then the existential quantifier is simply the disjunction of the propositions over all the elements ∃ x P(x) ⇔ P(n1) ∨ P(n2) ∨ … ∨ P(nk)
  • 17. Existential Quantifier: Example 1 • Let P(x,y) denote the statement ‘x+y=5’ • What does the expression ∃x ∃y P(x,y) mean? • Which universe(s) of discourse make it true?
  • 18. Existential Quantifier: Example 2 • Express the statement: ‘there exists a real solution to ax2+bx- c=0’ • Answer: – Let P(x) be the statement x= (-b±√(b2-4ac))/2a – Where the universe of discourse for x is the set of real numbers. Note here that a, b, c are fixed constants. – The statement can be expressed as ∃x P(x) • What is the truth value of ∃x P(x)? – It is false. When b2<4ac, there are no real number x that can satisfy the predicate • What can we do so that ∃x P(x)is true? – Change the universe of discourse to the complex numbers, C
  • 19. Quantifiers: Truth values • In general, when are quantified statements true or false? Statement True when… False when... ∀x P(x) P(x) is true for every x There is an x for which P(x) is false ∃x P(x) There is an x for which P(x) is true P(x) is false for every x
  • 20. Mixing quantifiers (1) • Existential and universal quantifiers can be used together to quantify a propositional predicate. For example: ∀x ∃y P(x,y) is perfectly valid • Alert: – The quantifiers must be read from left to right – The order of the quantifiers is important – ∀x ∃y P(x,y) is not equivalent to ∃y ∀x P(x,y)
  • 21. Mixing quantifiers (2) • Consider – ∀x ∃y Loves (x,y): Everybody loves somebody – ∃y ∀x Loves(x,y): There is someone loved by everyone • The two expressions do not mean the same thing • (∃y ∀x Loves(x,y)) → (∀x ∃y Loves (x,y)) but the converse does not hold • However, you can commute similar quantifiers – ∀x ∀y P(x,y) is equivalent to ∀y ∀x P(x,y) (thus, ∀x,y P(x,y)) – ∃x ∃y P(x,y) is equivalent to ∃y ∃x P(x,y) (thus ∃x,y P(x,y))
  • 22. Mixing Quantifiers: Truth values Statement True when... False when... ∀x∀y P(x,y) P(x,y) is true for every pair x,y There is at least one pair x,y for which P(x,y) is false ∀x∃y P(x,y) For every x, there is a y for which P(x,y) is true There is an x for which P(x,y) is false for every y ∃x∀y P(x,y) There is an x for which P(x,y) is true for every y For every x, there is a y for which P(x,y) is false ∃x∃yP(x,y) There is at least one pair x,y for which P(x,y) is true P(x,y) is false for every pair x,y
  • 23. Outline • Introduction • Terminology: – Propositional functions; arguments; arity; universe of discourse • Quantifiers – Definition; using, mixing, biding, negating them • Logic Programming (Prolog) • Transcribing English to Logic • More exercises
  • 24. Binding Variables • When a quantifier is used on a variable x, we say that x is bound • If no quantifier is used on a variable in a predicate statement, the variable is called free • Examples – In ∃x∀yP(x,y), both x and y are bound – In ∀xP(x,y), x is bound but y is free • A statement is called a well-formed formula, when all variables are properly quantified
  • 25. Binding Variables: Scope • The set of all variables bound by a common quantifier is called the scope of the quantifier • For example, in the expression ∃x,y∀zP(x,y,z,c) – What is the scope of existential quantifier? – What is the scope of universal quantifier? – What are the bound variables? – What are the free variables? – Is the expression a well-formed formula?
  • 26. Negation • We can use negation with quantified expressions as we used them with propositions • Lemma: Let P(x) be a predicate. Then the followings hold: ¬(∀x P(x)) ≡ ∃x ¬P(x) ¬ (∃x P(x)) ≡ ∀x ¬P(x) • This is essentially the quantified version of De Morgan’s Law (when the universe of discourse is finite, this is exactly De Morgan’s Law)
  • 27. Negation: Truth Truth Values of Negated Quantifiers Statement True when… False when... ¬∃x P(x) ≡ ∀x ¬P(x) P(x) is false for every x There is an x for which P(x) is true ¬∀x P(x) ≡ ∃x ¬P(x) There is an x for which P(x) is false P(x) is true for every x
  • 28. Outline • Introduction • Terminology: – Propositional functions; arguments; arity; universe of discourse • Quantifiers – Definition; using, mixing, negating them • Logic Programming (Prolog) • Transcribing English to Logic • More exercises
  • 29. Prolog (1) • Prolog (Programming in Logic) is a programming language based on (a restricted form of) Predicate Logic (a.k.a. Predicate Calculus and FOL) • It was developed by the logicians of the Artificial Intelligence community for symbolic reasoning
  • 30. Prolog (2) • Prolog allows the users to express facts and rules • Facts are propositional functions: student(mia), enrolled(mia,cse235), instructor(patel,cse235), etc. • Rules are implications with conjunctions: teaches(X,Y) :- instructor(X,Z), enrolled(Y,Z) • Prolog answers queries such as: ?enrolled(mia,cse235) ?enrolled(X,cse476) ?teaches(X,mia) by binding variables and doing theorem proving (i.e., applying inference rules) as we will see in Section 1.5
  • 31. English into Logic • Logic is more precise than English • Transcribing English into Logic and vice versa can be tricky • When writing statements with quantifiers, usually the correct meaning is conveyed with the following combinations: Use ∀ with ⇒ ∀x Lion(x) ⇒ Fierce(x): Every lion is fierce ∀x Lion(x) ∧ Fierce(x): Everyone is a lion, and everyone is fierce Use ∃ with ∧ ∃ x Lion(x) ∧ Vegan(x): Holds when you have at least one vegan lion ∃ x Lion(x) ⇒ Vegan(x): Holds when you have vegan people in the universe of discourse (even though there is no vegan lion in the universe of discourse )