Predicate Logic, Discrete Mathematics
Dr. Mohammad Salah Uddin
Associate Professor
Dept. of CSE
East West University
October 30, 2024
Limitations of Propositional Logic
■ Lack of Expressiveness:
Propositional logic cannot express statements involving variables or
quantifiers. For example, statements like “All humans are mortal”
or “Some dogs are friendly” cannot be represented.
■ No Relations Between Objects:
It cannot express relationships between multiple entities, such as
“John is taller than Sarah.”
■ Scalability Issues:
Propositional logic needs a separate statement for each fact. When
there are many facts to represent, it becomes hard to manage. For
example, describing each person in a large group would require
many individual statements, making it difficult to work with on a
large scale.
■ No Quantifiers:
Propositional logic lacks quantifiers like “for all” (∀) and “there
exists” (∃). Statements involving generalization or existence
2 of 11
Examples of Limitations in Propositional Logic
Example 1: Representing People in a Group
■ To express ”Shanto is a student,” “Urmi is a student,” and ”Wasim
is a student,” propositional logic requires separate statements:
Student Shanto, Student Urmi, Student Wasim
■ With 1000 students, 1000 statements would be needed, making it
hard to manage.
3 of 11
Examples of Limitations in Propositional Logic
(Contd.)
Example 2: Expressing Universal Truths
■ To represent “All dogs are friendly,” propositional logic requires a
statement for each dog:
Friendly Dog1, Friendly Dog2, Friendly Dog3, . . .
■ Predicate logic can simplify this as:
∀x (Dog(x) → Friendly(x))
4 of 11
Examples of Limitations in Propositional Logic
(Contd.)
Example 3: Describing Relationships
■ For statements like “John likes Mary” and “Alam likes Bithi,”
propositional logic needs unique statements for each pair:
Likes John Mary, Likes Alam Bithi
■ Predicate logic allows us to express “likes” as a relationship:
Likes(x, y )
■ This approach avoids listing every possible pair individually.
5 of 11
Predicate Logic (First-Order Logic)
Predicate logic overcomes the limitations of propositional logic by
introducing:
■ Objects and Predicates: Statements are constructed using
objects (e.g., John, Dog) and predicates (e.g., is mortal,
loves).
□ Example: Loves(John, Mary) means “John loves Mary.”
■ Quantifiers:
□ Universal Quantifier (∀): Used for statements true for all members
of a set.
∀x Human(x) → Mortal(x)
Meaning: “All humans are mortal.”
□ Existential Quantifier (∃): Used for statements where at least one
member of a set satisfies a condition.
∃x Dog(x) ∧ Friendly(x)
Meaning: “There exists a dog that is friendly.”
6 of 11
Complex Relationships in Predicate Logic
Predicate logic allows us to express complex relationships between
multiple objects, which is not possible in propositional logic. Here are
some examples:
■ Taller(John, Mary) means “John is taller than Mary.”
■ This relationship involves two objects (John and Mary) and the
predicate “Taller.”
■ Parent(Alice, Bob) means “Alice is a parent of Bob.”
■ Sibling(Bob, Sarah) means “Bob and Sarah are siblings.”
■ Predicate logic allows us to define relationships between family
members clearly.
■ Owns(Alam, BookJava) means “Alam owns java Book.”
■ Owns(John, Car) means “John owns a car.”
7 of 11
Relationships in Predicate Logic
■ WorksFor(Emma, CompanyA) means “Emma works for
CompanyA.”
■ Manages(Sarah, Emma) means “Sarah manages Emma.”
■ Teaches(ProfSmith, Calculus) means “Professor Smith
teaches Calculus.”
■ Studies(StudentX, Calculus) means “Student X studies
Calculus.”
8 of 11
Building Blocks of Predicate Logic
Predicate logic, also known as First-Order Logic, consists of several
key components that allow it to represent complex statements and
relationships. Here are the main building blocks:
■ Objects (Constants):
□ Objects represent specific entities or items within a domain.
□ Examples: John, Alice, Dog1, BookA
■ Predicates:
□ Predicates represent properties of objects or relationships between
objects.
□ Notation: Predicate(Object) or Predicate(Object1, Object2)
□ Examples: Human(John) means “John is a human”; Loves(John,
Mary) means “John loves Mary.”
■ Variables:
□ Variables are placeholders that can represent any object in the domain.
□ Notation: Typically denoted by lowercase letters such as x, y, z.
□ Example: In Loves(x, Mary), x can represent any person who might
love Mary.
9 of 11
Building Blocks of Predicate Logic
■ Quantifiers:
□ Universal Quantifier (∀): Asserts that a statement is true for all
objects in the domain.
∀x (Human(x) → Mortal(x))
Meaning: “All humans are mortal.”
□ Existential Quantifier (∃): Asserts that a statement is true for at
least one object in the domain.
∃x (Dog(x) ∧ Friendly(x))
Meaning: “There exists a dog that is friendly.”
■ Logical Connectives:
□ Connectives are used to form complex statements.
■ Conjunction (∧): And
■ Disjunction (∨): Or
■ Negation (¬): Not
■ Implication (→): If-then
□ Example: Human(x) ∧ Mortal(x) means “x is both human and
10 of 11
mortal.”
Identifying Predicates in Predicate Logic
In predicate logic, a predicate is an expression that represents a
property of objects or a relationship between objects. It takes one or
more arguments (objects or variables) and returns true or false.
■ Predicates (Valid):
□ Human(John) - Represents the property ”John is a human.”
□ Loves(Alice, Bob) - Represents the relationship ”Alice loves Bob.”
□ GreaterThan(x, y) - Represents the relationship ”x is greater than
y.”
□ Dog(D) - Represents the property ”D is a dog.”
■ Not Predicates (Invalid):
□ John - This is simply a constant representing an object, not a
predicate.
□ Human - Without any argument, it does not convey a complete
meaning (no specific object is described as human).
□ Loves(Alice) - Predicates require the correct number of arguments;
”Loves” expects two arguments to complete the relationship.
□ 3 + 4 - This is an arithmetic expression; it does not convey a
11 of 11 property or relationship that can be true or false.