Discrete Structures
(Discrete Mathematics)
Lecture-2
Applications of Propositional Logic
Logical Equivalence
Applications of Propositional Logic
• Translating English sentences (Formalization)
• System Specifications
• Boolean Searches
• Logic circuits
Translating English Sentences
• Steps to convert an English sentence to a statement in
propositional logic
• Identify atomic propositions and represent using
propositional variables.
• Determine appropriate logical connectives
Translating English Sentences
• “I have neither given nor received help on this exam”
Let p = I have given help on this exam
q = I have received help on this exam
¬p ¬q
• Rephrase: It is not the case that either I have given or
received help on this exams
¬(p ∨ q)
Translating English Sentences
• “If I go to Harry’s or to the country, I will not go shopping.”
• Let p = I go to Harry’s
• q = I go to the country.
• r = I will go shopping.
• If p or q then not r
(p ∨ q) → ¬r
Translating English Sentences
• Let p = It is below freezing
q = It is snowing
a) It is below freezing and it is snowing
b) It is below freezing but not snowing
c) It is not below freezing and it is not snowing
d) It is either snowing or below freezing (or both)
e) If it is below freezing, it is also snowing
f) It is either below freezing or it is snowing (not both), but it
is not snowing if it is below freezing
g) That it is below freezing is necessary and sufficient for it to
be snowing
Translating English Sentences
• “You can access the Internet from campus only if you are
a computer science major or you are not a freshman.”
• Let a = You can access the Internet from campus
c = You are a computer science major
and f = You are a freshman” respectively
• a only if c or not f
a → (c ∨¬f ).
Exercise
• Let p and q be the propositions “The election is decided”
and “The votes have been counted,” respectively. Express
each of these compound propositions as an English
sentence.
1. ¬p
2. p ∨ q
3. ¬p ∧ q
4. q → p
5. ¬q → ¬p
6. ¬p → ¬q
7. p ↔ q
8. ¬q ∨ (p ∧ q)
System Specifications
• System and Software engineers take requirements in
English and express them in a precise specification
language based on logic.
• The automated reply cannot be sent when the file system
is full
p = The automated reply can be sent
q = The system is full
𝑞 ⟶ ¬𝑝
Consistency
• System specifications should be consistent, They should
not contain conflicting requirements that could be used to
derive a contradiction
• When specifications are not consistent, there would be no
way to develop a system that satisfies all specifications
• A list of propositions is consistent if it is possible to
assign truth values to the proposition variables so that
each proposition is true.
Determine whether these system specifications are
consistent:
1. The diagnostic message is stored in the buffer or it is
retransmitted.
2. The diagnostic message is not stored in the buffer.
3. If the diagnostic message is stored in the buffer, then it
is retransmitted.
• Determine whether these system specifications are
consistent:
1. The diagnostic message is stored in the buffer or it is
retransmitted.
2. The diagnostic message is not stored in the buffer.
3. If the diagnostic message is stored in the buffer, then it
is retransmitted.
• p = The diagnostic message is stored in the buffer
• q = The diagnostic message is retransmitted
• 1. 𝒑∨𝒒 2. ¬𝒑 3. 𝒑→𝒒
1. 𝒑 ∨ 𝒒2. ¬𝒑3. 𝒑 → 𝒒
Reasoning
• An assignment of truth values that makes all three
specifications true must have p false to make ¬𝑝true.
• Because we want 𝑝 ∨ 𝑞to be true but 𝑝must be false, q
must be true.
• Because 𝑝 → 𝑞is true when 𝑝is false and 𝑞is true
• we conclude that these specifications are consistent
• Let us do it with truth table now
• Is it remain consistent if the specification
“The diagnostic message is not retransmitted” is
added?
p: The diagnostic message is stored in the buffer
q: The diagnostic message is retransmitted
1. 𝒑 ∨ 𝒒2. ¬𝒑3. 𝒑 → 𝒒
• Is it remain consistent if the specification
“The diagnostic message is not retransmitted” is
added?
p: The diagnostic message is stored in the buffer
q: The diagnostic message is retransmitted
1. 𝒑 ∨ 𝒒2. ¬𝒑3. 𝒑 → 𝒒
4. ¬𝒒
Inconsistent
Propositional Equivalence
• An important type of step used in a mathematical
argument is the replacement of a statement with another
statement with the same truth value
• Propositional Equivalence is extensively used in the
construction of mathematical arguments.
Tautology and Contradiction
• A compound proposition that is always true, no matter
what the truth values of the propositional variables that
occur in it, is called a tautology. A compound proposition
that is always false is called a contradiction.
p ¬p p ∨ ¬p p ∧ ¬p
T F T F
F T T F
• Show that (p ∧ q) p is a tautology.
Logical Equivalence
• Compound propositions that have the same truth values
in all possible cases are called logically equivalent.
• The compound propositions p and q are called logically
equivalent if p ↔ q is a tautology.
• The notation p ≡ q denotes that p and q are logically
equivalent.
Logical Equivalence
p q pq p q ¬p q ¬p
T T T T T F T
T F F T F F F
F T T F T T T
F F T F F T T
Logical Equivalence
• Converse
The proposition q → p is converse of p → q.
• Contrapositive
The contrapositive of p → q is the proposition ¬q →¬p.
• Inverse
The proposition ¬p →¬q is called the inverse of p → q.
Logical Equivalence
Implication Inverse Converse Contrapositive
p q p q pq p q qp q p
T T F F T T T T
T F F T F T T F
F T T F T F F T
F F T T T T T T
Logical Equivalence
Equivalence Name
p∧T≡p Identity laws
p∨F≡p
p∨T≡T Domination laws
p∧F≡F
p∨p≡p Idempotent laws
p∧p≡p
¬(¬p) ≡ p Double negation law
p∨q≡q∨p Commutative laws
p∧q≡q∧p
(p ∨ q) ∨ r ≡ p ∨ (q ∨ r) Associative laws
(p ∧ q) ∧ r ≡ p ∧ (q ∧ r)
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r) Distribution Laws
p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Logical Equivalence
• Distributive: p (q r) (p q) (p r)
p q r q r p (q r) (p q) (p r) (p q) (p
r)
T T T T T T T T
T T F F T T T T
T F T F T T T T
T F F F T T T T
F T T T T T T T
F T F F F T F F
F F T F F F T F
F F F F F F F F
Logical Equivalence
Equivalence Name
¬(p ∧ q) ≡ ¬p ∨¬q De Morgan’s laws
¬(p ∨ q) ≡ ¬p ∧¬q
p ∨ (p ∧ q) ≡ p Absorption laws
p ∧ (p ∨ q) ≡ p
p ∨¬p ≡ T Negation laws
p ∧¬p ≡ F
Logical Equivalence involving Implication
Logical Equivalence involving Implication
p → q ≡ ¬p ∨ q
p → q ≡ ¬q →¬p
p ∨ q ≡ ¬p → q
p ∧ q ≡ ¬(p →¬q)
¬(p → q) ≡ p ∧¬q
(p → q) ∧ (p → r) ≡ p → (q ∧ r)
(p → r) ∧ (q → r) ≡ (p ∨ q) → r
(p → q) ∨ (p → r) ≡ p → (q ∨ r)
(p → r) ∨ (q → r) ≡ (p ∧ q) → r
Logical Equivalence involving Bi-conditional
Logical Equivalence involving Bi-conditional
p ↔ q ≡ (p → q) ∧ (q → p)
p ↔ q ≡ ¬p ↔¬q
p ↔ q ≡ (p ∧ q) ∨ (¬p ∧¬q)
¬(p ↔ q) ≡ p ↔¬q
Proof using Logical Equivalence
• Show that (p q) q p q is logically equivalent.
(p q) q
(p q) q DeMorgan’s
(p q) q Double negation
p (q q) Associative
p q Idempotent
•
Proof using Logical Equivalence
Show that (p q) q is a Tautology.
Proof:
(p q) q
(p q) q Implication
( p q) q De Morgan
p ( q q) Associative
p T Negation
T Dominations
Proof using Logical Equivalence
• Show that [p (p q)] q is a tautology.
[p (p q)] q
[p (p q)] q Substitution for
[(p p) (p q)] q Distributive
[ F (p q)] q Negation
(p q) q Identity
(p q) q Substitution for
(p q) q DeMorgan’s
p (q q ) Associative
p T Negation
T Domination
Proof using Logical Equivalence
Show that ( p (p q )) p q is logically equivalent.
L.H .S ( p (p q ))
p (p q ) DeMorgan's Law
p ((p ) q ) DeMorgan's Law
p ( p q ) Double Negation Law
( p p ) ( p q ) Distributive Law
F ( p q ) Negation Law
( p q ) F Commutative Law
p q Identity Law
R.H .S