0% found this document useful (0 votes)
54 views47 pages

Boolean Logic ينايلوبلا قطنملا: Epp, sections 1.1 and 1.2

The study showed a correlation between p and q, but did not prove that one caused the other. The announcer's conclusions went beyond what the study showed by claiming causation.

Uploaded by

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

Boolean Logic ينايلوبلا قطنملا: Epp, sections 1.1 and 1.2

The study showed a correlation between p and q, but did not prove that one caused the other. The announcer's conclusions went beyond what the study showed by claiming causation.

Uploaded by

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

Boolean Logic

‫المنطق البولياني‬
Epp, sections 1.1 and 1.2

Dr. Iyad Hatem 1


Applications of Boolean
logic
• Computer programs
• And computer addition
• Logic problems
• Sudoku

Dr. Iyad Hatem 2


Boolean propositions
• A proposition is a statement that can be
either true or false
– “The sky is blue”
– “I is a Engineering major”
– “x == y”
• Not propositions:
– “Are you Bob?”
– “x := 7”

Dr. Iyad Hatem 3


Boolean variables
• We use Boolean variables to refer to
propositions
– Usually are lower case letters starting with p
(i.e. p, q, r, s, etc.)
– A Boolean variable can have one of two
values true (T) or false (F)
• A proposition can be…
– A single variable: p
– An operation of multiple variables: p(qr)
Dr. Iyad Hatem 4
Introduction to Logical
Operators
• About a dozen logical operators
– Similar to algebraic operators + * - /
• In the following examples,
– p = “Today is Friday”
– q = “Today is my birthday”

Dr. Iyad Hatem 5


Logical operators: Not
• A not operation switches (negates) the truth value
• Symbol:  or ~ p p
• In C++ and Java, T F
the operand is ! F T
• p = “Today is not Friday”

Dr. Iyad Hatem 6


Logical operators: And
• An and operation is true if both operands are true
• Symbol: 
p q pq
– It’s like the ‘A’ in And
T T T
• In C++ and Java,
T F F
the operand is &&
F T F
• pq = “Today is Friday and
F F F
today is my birthday”

Dr. Iyad Hatem 7


Logical operators: Or
• An or operation is true if either operands are true
• Symbol:  p q pq
• In C++ and Java, T T T
the operand is || T F T
F T T
• pq = “Today is Friday or
F F F
today is my birthday (or
possibly both)”

Dr. Iyad Hatem 8


Logical operators: Exclusive Or
• An exclusive or operation is true if one of the operands
are true, but false if both are true
• Symbol:  p q pq
• Often called XOR T T F
• pq  (p  q)  ¬(p  q) T F T
• In Java, the operand is ^ F T T
(but not in C++)
F F F
• pq = “Today is Friday or today
is my birthday, but not both”

Dr. Iyad Hatem 9


Inclusive Or versus
Exclusive Or
• Do these sentences mean inclusive or
exclusive or?
– Experience with C++ or Java is required
– Lunch includes soup or salad
– To enter the country, you need a passport or
a driver’s license
– Publish or perish

Dr. Iyad Hatem 10


Logical operators: Nand and Nor
• The negation of And and Or, respectively
• Symbols: | and ↓, respectively
– Nand: p|q  ¬(pq)
– Nor: p↓q  ¬(pq)

p q pq pq p|q pq


T T T T F F
T F F T T F
F T F T T F
F F F F T T
Dr. Iyad Hatem 11
Logical operators: Conditional 1
• A conditional means “if p then q”
• Symbol: 
p q pq ¬pq
• pq = “If today is
Friday, then today T T T T
is my birthday” T F F F
• p→q  ¬pq F T T T
F F T T
the the
antecedent consequence

Dr. Iyad Hatem 12


Logical operators:
Conditional 2
• Let p = “I am elected” and q = “I will lower taxes”
• I state: p  q = “If I
p q pq
am elected, then I
T T T
will lower taxes”
T F F
• Consider all
F T T
possibilities
F F T
• Note that if p is false, then
the conditional is true regardless of whether q is
true or false
Dr. Iyad Hatem 13
Logical operators:
Conditional 3
Conditional Inverse Converse Contra-
positive
p q p q pq pq qp 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

Dr. Iyad Hatem 14


Logical operators:
Conditional 4
• Alternate ways of stating a conditional:
– p implies q
– If p, q
– p is sufficient for q
– q if p
– q whenever p
– q is necessary for p
– p only if q I don’t like this one

Dr. Iyad Hatem 15


Logical operators: Bi-conditional 1
• A bi-conditional means “p if and only if q”
• Symbol: 
p q pq
• Alternatively, it means
“(if p then q) and T T T
(if q then p)” T F F
• pq  pq  qp F T F
• Note that a bi-conditional F F T
has the opposite truth values
of the exclusive or

Dr. Iyad Hatem 16


Logical operators: Bi-
conditional 2
• Let p = “You take this class” and q = “You get a
grade”
• Then pq means p q pq
“You take this class if T T T
and only if you get a T F F
grade” F T F
• Alternatively, it means “If F F T
you take this class, then
you get a grade and if you get a grade then you
take (took) this class”
Dr. Iyad Hatem 17
Boolean operators
summary
not not and or xor nand nor conditional bi-
conditional
p q p q pq pq pq p|q pq pq pq
T T F F T T F F F T T
T F F T F T T T F F F
F T T F F T T T F T F
F F T T F F F T T T T

• Learn what they mean, don’t just


memorize the table!
Dr. Iyad Hatem 18
Precedence of operators
• Just as in algebra, operators have
precedence
– 4+3*2 = 4+(3*2), not (4+3)*2
• Precedence order (from highest to lowest):
¬→↔
– The first three are the most important
• This means that p  q  ¬r → s ↔ t
yields: (p  (q  (¬r))) ↔ (s → t)
• Not is always performed before any other
operation Dr. Iyad Hatem 19
Translating English
Sentences
• Problem:
– p = “It is below freezing”
– q = “It is snowing”

• It is below freezing and it is snowing pq


• It is below freezing but not snowing p¬q
• It is not below freezing and it is not snowing ¬p¬q
• It is either snowing or below freezing (or both) pq
• If it is below freezing, it is also snowing p→q
• It is either below freezing or it is snowing, (pq)(p→¬q)
but it is not snowing if it is below freezing
• That it is below freezing is necessary and p↔q
sufficient for it to be snowing
Dr. Iyad Hatem 20
Translation Example 1
• Heard on the radio:
– A study showed that there was a correlation
between the more children ate dinners with
their families and lower rate of substance
abuse by those children
– Announcer conclusions:
• If children eat more meals with their family, they
will have lower substance abuse
• If they have a higher substance abuse rate, then
they did not eat more meals with their family
Dr. Iyad Hatem 21
Translation Example 1
• Let p = “Child eats more meals with family”
• Let q = “Child has less substance abuse
• Announcer conclusions:
– If children eat more meals with their family,
they will have lower substance abuse
• pq
– If they have a higher substance abuse rate,
then they did not eat more meals with their
family
• q  p Dr. Iyad Hatem 22
Translation Example 1
• Let p = “Child eats more meals with family”
• Let q = “Child has less substance abuse”
• Remember that the study showed a
correlation, not a causation

p q result conclusion
T T T T
T F ? F
F T ? T
F F T T
Dr. Iyad Hatem 23
Translation Example 2
• “I have neither given nor received help on
this exam”
– Rephrased: “I have not given nor received …”
– Let p = “I have given help on this exam”
– Let q = “I have received help on this exam”
• Translation
p is: pq
q p pq
T T F F
T F F T
F T T F
F F Dr. Iyad Hatem T F 24
Translation Example 2
• What they mean is “I have not given and I
have not received help on this exam”
– Or “I have not (given nor received) help on
this exam”
p q pq (pq)
T T F F
T F F F
F T F F
F F T T

• The problem:  has a higher precedence


Dr. Iyad Hatem 25
Tautology and
Contradiction
• A tautology is a statement that is always
true
– p  ¬p will always be true (Negation Law)
• A contradiction is a statement that is
always false
– p  ¬p will always be false (Negation Law)
p p  ¬p p  ¬p
T T F
F T Hatem
Dr. Iyad F 26
Logical Equivalence
• A logical equivalence means that the two
sides always have the same truth values
– Symbol is ≡ or 
• We’ll use ≡, so as not to confuse it with the bi-
conditional

Dr. Iyad Hatem 27


Logical Equivalences of And
• pT≡p Identity law
p T pT
T T T
F T F

• pF≡F Domination law

p F pF
T F F
F F
Dr. Iyad Hatem
F 28
Logical Equivalences of And
• pp≡p Idempotent law
p p pp
T T T
F F F
• pq≡qp Commutative law
p q pq qp
T T T T
T F F F
F T F F
F F Dr. Iyad HatemF F 29
Logical Equivalences of And

• (p  q)  r ≡ p  (q  r) Associative law
p q r pq (pq)r qr p(qr)
T T T T T T T
T T F T F F F
T F T F F F F
T F F F F F F
F T T F F T F
F T F F F F F
F F T F F F F
F F F F F F F
Dr. Iyad Hatem 30
Logical Equivalences of Or
• pT≡T Identity law
• pF≡p Domination law
• pp≡p Idempotent law
• pq≡qp Commutative law
• (p  q)  r ≡ p  (q  r) Associative law

Dr. Iyad Hatem 31


Corollary of the
Associative Law
• (p  q)  r ≡ p  q  r
• (p  q)  r ≡ p  q  r
• Similar to (3+4)+5 = 3+4+5
• Only works if ALL the operators are the
same!

Dr. Iyad Hatem 32


Logical Equivalences of Not
• ¬(¬p) ≡ p Double negation law
• p  ¬p ≡ T Negation law
• p  ¬p ≡ F Negation law

Dr. Iyad Hatem 33


DeMorgan’s Law
• Probably the most important logical equivalence
• To negate pq (or pq), you “flip” the sign, and
negate BOTH p and q
– Thus, ¬(p  q) ≡ ¬p  ¬q
– Thus, ¬(p  q) ≡ ¬p  ¬q

pq p q pq (pq) pq pq (pq) pq


TT F F T F F T F F
TF F T F T T T F F
FT T F F T T T F F
FF T T F T T F T T
Dr. Iyad Hatem 34
Yet more equivalences
• Distributive:
p  (q  r) ≡ (p  q)  (p  r)
p  (q  r) ≡ (p  q)  (p  r)

• Absorption
p  (p  q) ≡ p
p  (p  q) ≡ p

Dr. Iyad Hatem 35


How to prove two propositions
are equivalent?
• Two methods:
– Using truth tables
• Not good for long formulae
• In this course, only allowed if specifically stated!
– Using the logical equivalences
• The preferred method

• Example: show that:

( p  r )  (q  r )  ( p  q)  r

Dr. Iyad Hatem 36


Using Truth Tables
( p  r )  (q  r )  ( p  q)  r
p q r p→r q →r (p→r)(q →r) pq (pq) →r
T T T T T T T T
T T F F F F T F
T F T T T T F T
T F F F T T F T
F T T T T T F T
F T F T F T F T
F F T T T T F T
F F F T T T
Dr. Iyad Hatem F T 37
Using Logical Equivalences

( p  r )  (q  r )  ( p  q)  r Original statement

(p Definition
p)
(r (
r ) ( r ) 
q q pr )q) r ( p pq
of(implication
 )  qr  p  q
DeMorgan’s Law ( p  q)  p  q
Associativity
p  r  q ofrOr (ppr q) (rq  r )  p  r  q  r
Re-arranging
p  q  r  r  p  q  r
p  q 
Idempotent r 
Law p
r q
r r r

Dr. Iyad Hatem 38


Logical Thinking
• At a trial:
– Bill says: “Sue is guilty and Fred is innocent.”
– Sue says: “If Bill is guilty, then so is Fred.”
– Fred says: “I am innocent, but at least one of
the others is guilty.”
• Let b = Bill is innocent, f = Fred is
innocent, and s = Sue is innocent
• Statements are:
– ¬s  f
– ¬b → ¬f
Dr. Iyad Hatem 39
– f  (¬b  ¬s)
Can all of their statements be true?
• Show: (¬s  f)  (¬b → ¬f)  (f  (¬b  ¬s))
b f s ¬b ¬f ¬s ¬sf ¬b→¬f ¬b¬s f(¬b¬s)
T T T F F F F T F F
T T F F F T T T T T
T F T F T F F T F F
T F F F T T F T T F
F T T T F F F F T T
F T F T F T T F T T
F F T T T F F T T F
F F F T T T FDr. Iyad Hatem
T T F 40
Are all of their statements true?
Show values for s, b, and f such that the
equation is true

(s  f )  (b  f )  ( f  (b  s))  T Original statement


(s  f )  (b  f )  ( f  (b  s))  T Definition of implication
s  f  (b  f )  f  (b  s)  T Associativity of AND
s  f  f  (b  f )  (b  s)  T Re-arranging
s  f  (b  f )  (b  s)  T Idempotent law
f  (b  f )  s  (s  b)  T Re-arranging
f  (b  f )  s  T Absorption law

 f  (b  f )  s  T Re-arranging

( f  b)  ( f  f )  s  T Distributive law

( f  b)  F   s  T Negation law
( f  b)  s  T Domination law
f  b  s  T Associativity of AND
Dr. Iyad Hatem 41
What if it weren’t possible to assign
such values to s, b, and f?

(s  f )  (b  f )  ( f  (b  s))  s  T Original statement


(s  f )  (b  f )  ( f  (b  s))  s  T Definition of implication
... (same as previous slide)
( f  b)  s  s  T Domination law

f  b  s  s  T Re-arranging
f b F T Negation law
f F T Domination law
F T Domination law
Contradiction!

Dr. Iyad Hatem 42


Functional completeness
• All the “extended” operators have
equivalences using only the 3 basic
operators (and, or, not)
– The extended operators: nand, nor, xor,
conditional, bi-conditional
• Given a limited set of operators, can you
write an equivalence of the 3 basic
operators?
– If so, then that group of operators is
functionally complete
Dr. Iyad Hatem 43
Exclusive-Or

coffee “or” tea  exclusive-or


How to construct a compound statement for exclusive-or?

Idea 1: Look at the true rows


p q pq
T T F
T F T Idea 2: Look at the false rows

F T T
F F F Idea 3: Guess and check

Dr. Iyad Hatem 44


Logical Equivalence

p q
T T F T F F
T F T T T T
F T T T T T
F F F F T F

Logical equivalence: Two statements have the same truth table

Dr. Iyad Hatem 45


Writing Logical Formula for a Truth Table

Given a truth table, how to write a logical formula with the same function?

First write down a small formula for each row, so that the formula
is true if the inputs are exactly the same as the row.

Then use idea 1 or idea 2. Idea 1: Look at the true rows


p q r output
and take the “or”.
T T T F
T T F T
T F T T
T F F F
F T T T
F T F T
F F T T
The formula is true iff the
F F F F
input is one of the true rows.
Dr. Iyad Hatem 46
Writing Logical Formula for a Truth Table

Digital logic:

Idea 2: Look at the false rows,


p q r output negate and take the “and”.
T T T F
T T F T
T F T T
T F F F
F T T T can be simplified further
F T F T
F F T T The formula is true iff the input
F F F F Hatem
Dr. Iyad is not one of the false row. 47

You might also like