CSE 311: Foundations of Computing Lecture 3: Digital Circuits & - - PowerPoint PPT Presentation

cse 311 foundations of computing
SMART_READER_LITE
LIVE PREVIEW

CSE 311: Foundations of Computing Lecture 3: Digital Circuits & - - PowerPoint PPT Presentation

CSE 311: Foundations of Computing Lecture 3: Digital Circuits & Equivalence Homework #1 You should have received An e-mail from [cse311] with information pointing you to Canvas to submit HW An e-mail from UW Canvas with a


slide-1
SLIDE 1

CSE 311: Foundations of Computing

Lecture 3: Digital Circuits & Equivalence

slide-2
SLIDE 2

Homework #1

  • You should have received

– An e-mail from [cse311] with information pointing you to Canvas to submit HW – An e-mail from UW Canvas with a notification about the homework assignment. Click on “Assignments” to see all the questions If you haven’t received one, send e-mail to cse311-staff@cs.washington.edu

slide-3
SLIDE 3

Last class: Logical Equivalence A ≡ B

A ≡ B is an assertion that two propositions two propositions two propositions two propositions A and B always have the same truth values. A ≡ B and (A ↔ B) ≡ T T T T have the same meaning. p ∧ q ≡ q ∧ p p ∧ q ≢ q ∨ p

When p=T and q=F, p ∧ q is false, but q ∨ p is true

p q p ∧ ∧ ∧ ∧ q q ∧ ∧ ∧ ∧ p (p ∧ ∧ ∧ ∧ q) ↔ ↔ ↔ ↔(q ∧ ∧ ∧ ∧ p)

T T T T T T F F F T F T F F T F F F F T

tautology

slide-4
SLIDE 4

Last class: De Morgan’s Laws ¬ ∧ ≡ ¬ ∨ ¬ ∨ ≡ ¬ ∧ De Morgan’s Laws

slide-5
SLIDE 5

Last class: Equivalences Related to Implication

Law of Implication → ≡ ∨ Contrapositive → ≡ → Biconditional ↔ ≡ → ∧ ( → )

slide-6
SLIDE 6

Last class: Properties of Logical Connectives

slide-7
SLIDE 7

One more easy equivalence

p ¬ ¬ ¬ ¬ p ¬ ¬ ¬ ¬ ¬ ¬ ¬ ¬ p p ↔ ↔ ↔ ↔ ¬ ¬ ¬ ¬ ¬ ¬ ¬ ¬ p

T F T T F T F T

Double Negation ≡ ¬ ¬

slide-8
SLIDE 8

Last class: Digital Circuits

Computing With Logic

– T T T T corresponds to 1 or “high” voltage – F F F F corresponds to 0 or “low” voltage

Gates Gates Gates Gates

– Take inputs and produce outputs (functions) – Several kinds of gates – Correspond to propositional connectives (most

  • f them)
slide-9
SLIDE 9

Last class: AND, OR, NOT Gates

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

OUT

1 1 1 1 1

AND Gate

p

OUT AND

q

OR Gate

p q

OUT

1 1 1 1 1 1 1

p

OUT OR

q

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

NOT Gate

p

OUT

1 1

p

OUT NOT

p

¬ ¬ ¬ ¬ p

T F F T

slide-10
SLIDE 10

Combinational Logic Circuits

Values get sent along wires connecting gates

NOT OR AND AND NOT

p q r s

OUT

slide-11
SLIDE 11

Combinational Logic Circuits

Values get sent along wires connecting gates

NOT OR AND AND NOT

p q r s

OUT

slide-12
SLIDE 12

Combinational Logic Circuits

Wires can send one value to multiple gates!

OR AND NOT AND

p q r

OUT

slide-13
SLIDE 13

Combinational Logic Circuits

Wires can send one value to multiple gates!

OR AND NOT AND

p q r

OUT

∧ ∨ ( ∧ )

slide-14
SLIDE 14

Other Useful Gates

NAND ( ∧ ) NOR ( ∨ ) XOR ⊕ XNOR ↔

p q

  • ut

p q

  • ut

1 1 1 1 1 1 1 p q

  • ut

1 1 1 1 1

  • ut

p q p q

  • ut

p q

  • ut

1 1 1 1 1 1 p q

  • ut

1 1 1 1 1 1

  • ut

p q

slide-15
SLIDE 15

Understanding logic and circuits

When do two logic formulas mean the same thing? When do two circuits compute the same function? What logical properties can we infer from other

  • nes?
slide-16
SLIDE 16

Basic rules of reasoning and logic

  • Allow manipulation of logical formulas

– Simplification – Testing for equivalence

  • Applications

– Query optimization – Search optimization and caching – Artificial Intelligence – Program verification

slide-17
SLIDE 17

Computing Equivalence

Given two propositions, can we write an algorithm to determine if they are equivalent? What is the runtime of our algorithm?

slide-18
SLIDE 18

Computing Equivalence

Given two propositions, can we write an algorithm to determine if they are equivalent?

Yes! Generate the truth tables for both propositions and check if they are the same for every entry.

What is the runtime of our algorithm?

Every atomic proposition has two possibilities (T, F). If there are atomic propositions, there are rows in the truth table.

slide-19
SLIDE 19

Another approach: Logical Proofs To show A is equivalent to B

– Apply a series of logical equivalences to sub-expressions to convert A to B

To show A is a tautology

– Apply a series of logical equivalences to sub-expressions to convert A to T T T T

slide-20
SLIDE 20

Another approach: Logical Proofs To show A is equivalent to B

– Apply a series of logical equivalences to sub-expressions to convert A to B

Example: Let A be “ ∨ ( ∧ )”, and B be “”. Our general proof looks like: ∨ ∧ ≡ ( ) ≡

slide-21
SLIDE 21

Another approach: Logical Proofs

Example: Let A be “ ∨ ( ∧ )”, and B be “”. Our general proof looks like: ∨ ∧ ≡ ( ) ≡

slide-22
SLIDE 22

Logical Proofs

Example: Let A be “ ∨ ( ∧ )”, and B be “”. Our general proof looks like: ∨ ∧ ≡ ( ) ≡ ∨

Idempotent Idempotent

slide-23
SLIDE 23

Logical Proofs To show A is a tautology

– Apply a series of logical equivalences to sub-expressions to convert A to T T T T

Example: Let A be “ ∨ ( ∨ )”. Our general proof looks like: ∨ ∨ ≡ ( ) ≡ T T T T

slide-24
SLIDE 24

Logical Proofs

Example: Let A be “ ∨ ( ∨ )”. Our general proof looks like: ∨ ∨ ≡ ( ) ≡ T T T T

slide-25
SLIDE 25

Logical Proofs

Example: Let A be “ ∨ ( ∨ )”. Our general proof looks like: ∨ ∨ ≡ ( ) ≡ T T T T ∨

Idempotent Negation

slide-26
SLIDE 26

Prove these propositions are equivalent: Option 1

∧ ( → ) ∧ ∧ ( → ) ⟷ ∧

T T T T T T T F F F F T F T T F F T F F T F F T

Make a Truth Table and show: ∧ ( → ) ⟷ ∧ ≡ T

Prove: p ∧ (p → q) ≡ p ∧ q

slide-27
SLIDE 27

Prove these propositions are equivalent: Option 2

Prove: p ∧ (p → q) ≡ p ∧ q

∧ → ≡ ≡ ≡ ≡ ≡ ∧

slide-28
SLIDE 28

Prove these propositions are equivalent: Option 2

Prove: p ∧ (p → q) ≡ p ∧ q

∧ → ≡ ∧ ( ∨ ) ≡ ∧ ∨ ( ∧ ) ≡ F ∨ ( ∧ ) ≡ ∧ ∨ F ≡ ∧

Law of Implication Distributive Negation Commutative Identity

slide-29
SLIDE 29

Prove this is a Tautology: Option 1 (p ∧ q) → (q ∨ p)

∨ ∧ → ∨

T T T T T T F F T T F T F T T F F F F T

Make a Truth Table and show: ∧ → ∨ ≡ T

slide-30
SLIDE 30

Prove this is a Tautology: Option 2 (p ∧ q) → (q ∨ p)

Use a series of equivalences like so:

∧ → ∨ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ ≡ T

slide-31
SLIDE 31

Prove this is a Tautology: Option 2 (p ∧ q) → (q ∨ p)

Use a series of equivalences like so:

∧ → ∨ ≡ ∧ ∨ ( ∨ ) ≡ ∨ ∨ ( ∨ ) ≡ ∨ ( ∨ ∨ ) ≡ ∨ ( ∨ ∨ ) ≡ ∨ ( ∨ ∨ ) ≡ ( ∨ ) ∨ ∨ ≡ ( ∨ ) ∨ ∨ ≡ T ∨ T ≡ T

Law of Implication DeMorgan Associative Associative Commutative Associative Commutative (twice) Negation (twice) Domination/Identity

slide-32
SLIDE 32

Logical Proofs of Equivalence/Tautology

  • Not smaller than truth tables when there are only

a few propositional variables...

  • ...but usually much shorter

much shorter much shorter much shorter than truth table proofs when there are many propositional variables

  • A big advantage will be that we can extend them

to a more in-depth understanding of logic for which truth tables don’t apply.