1 / 17

Discrete Mathematics CS 2610

Discrete Mathematics CS 2610. September 26. Equal Boolean Functions. Two Boolean functions F and G of degree n are equal iff for all (x 1 ,..x n )  B n , F (x 1 ,..x n ) = G (x 1 ,..x n )

addison
Download Presentation

Discrete Mathematics CS 2610

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Discrete Mathematics CS 2610 September 26

  2. Equal Boolean Functions • Two Boolean functions F and G of degree n are equal iff for all (x1,..xn)  Bn, F(x1,..xn) = G(x1,..xn) • Example: F(x,y,z) = x(y+z), G(x,y,z) = xy + xz, and F=G (recall the “truth” table we put on the board yesterday) • Also, note the distributive property: x(y+z) = xy + xz via the distributive law

  3. x1 x2 x3 F(x1,x2,x3) 0 0 0 1 F(x1,x2,x3) = x1(x2+x3)+x1x2x3 0 0 1 0 F(x1,x2,x3) = x1x2+x1x3+x1x2x3 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 Boolean Functions • Two Boolean expressions e1and e2 that represent the exact same function F are called equivalent

  4. Boolean Functions • More equivalent Boolean expressions: (x + y)z = xyz + xyz + xyz (x + y)z = xz + yz distributive = x1z + 1yz identity = x(y + y)z + (x + x)yz unit = xyz + xyz + xyz + xyz distributive = xyz + xyz + xyz idempotent We’ve expanded the initial expression into its sum of products form.

  5. Boolean Functions • More equivalent Boolean expressions: xy + z = ?? = xy1 + 11z identity = xy(z + z) + (x + x)1z unit = xyz + xyz + x1z + x1z distributive = xyz + xyz + x(y + y)z + x(y + y)z unit = xyz + xyz + xyz + xyz + xyz + xyz distributive = xyz + xyz + xyz + xyz + xyz idempotent The example from yesterday.

  6. x y z 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 Representing Boolean Functions • How to construct a Boolean expression that represents a Boolean Function ? F F(x, y, z) = 1 if and only if: (-x)(y)(-z) + (-x)yz + x(-y)z + xyz

  7. x y z 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 Representing Boolean Functions • How to construct a Boolean expression that represents a Boolean Function ? F F(x, y, z) = x·y·z + x·y·z + x·y·z + x·y·z

  8. Boolean Identities • Double complement: x = x • Idempotent laws: x + x = x, x · x = x • Identity laws: x + 0 = x, x · 1 = x • Domination laws: x + 1 = 1, x · 0 = 0 • Commutative laws: x + y = y + x, x · y = y · x • Associative laws: x + (y + z) = (x + y) + z x· (y · z) = (x· y) · z • Distributive laws: x + y·z = (x + y)·(x + z) x · (y + z) = x·y + x·z • De Morgan’s laws: (x · y) = x + y, (x + y) = x · y • Absorption laws: x + x·y = x, x · (x + y) = x the Unit Property: x + x = 1 and Zero Property: x·x =0

  9. Boolean Identities • Absorption law: • Show that x·(x + y)=x • x·(x + y)= (x + 0) ·(x + y) identity • = x + 0 ·y distributive • = x + y· 0 commutative • = x + 0 domination • = x identity

  10. Dual Expression (related to identity pairs) • The dualed of a Boolean expression e is obtained by exchanging + with , and 0 with 1 in e. Example: e = xy + zw e = x + y + 0 ed=(x + y)(z + w) ed= x · y · 1 Duality principle:e1e2iffe1de2d x (x + y) = x iff x + xy = x (absorption)

  11. Dual Function • The dual of a Boolean function F represented by a Boolean expression is the function represented by the dual of this expression. • The dual function of F is denoted by Fd • The dual function, denoted by Fd, does not dependon the particular Boolean expression used to represent F.

  12. Recall: Boolean Identities • Double complement: x = x • Idempotent laws: x + x = x, x · x = x • Identity laws: x + 0 = x, x · 1 = x • Domination laws: x + 1 = 1, x · 0 = 0 • Commutative laws: x + y = y + x, x · y = y · x • Associative laws: x + (y + z) = (x + y) + z x· (y · z) = (x· y) · z • Distributive laws: x + y·z = (x + y)·(x + z) x · (y + z) = x·y + x·z • De Morgan’s laws: (x · y) = x + y, (x + y) = x · y • Absorption laws: x + x·y = x, x · (x + y) = x the Unit Property: x + x = 1 and Zero Property: x·x =0

  13. Boolean Expressions  Sets  Propositions • Identity Laws x  0 = x, x  1 = x • Complement Laws x  x = 1, x  x = 0 • Associative Laws (x  y)  z = x  (y  z) (x  y)  z = x  (y  z) • Commutative Laws xy = yx, xy = yx • Distributive Laws x(yz) = (x  y)  (x  z) x(yz) = (x  y)  (x  z) A Boolean Algebra is a set B with operations ,, and elements 0 and 1 such that the above properties hold for all x, y, and z in B.

  14. minterms x y z + x y z + x y z DNF: Disjunctive Normal Form • A literal is a Boolean variable or its complement. • A minterm of Boolean variables x1,…,xn is a Boolean product of n literals y1…yn, where yi is either the literal xior its complement xi. Example: Disjunctive Normal Form: sum of products We have seen how to develop a DNF expression for a function if we’re given the function’s “truth” table.

  15. maxterms  (x + y + z)  (x + y +z) (x +y + z) CNF: Conjunctive Normal Form • A literal is a Boolean variable or its complement. • A maxterm of Boolean variables x1,…,xn is a Boolean sum of n literals y1…yn, where yi is either the literal xior its complement xi. Example: Conjuctive Normal Form: product of sums

  16. F x y z F F = x·y·z + x·y·z + x·y·z + x·y·z 0 0 0 1 0 F = (x·y·z) · (x·y·z) · (x·y·z) · (x·y·z) 0 0 1 0 1 = (x+y+z) · (x+y+z) · (x+y+z) · (x+y+z) 0 1 0 1 0 0 1 1 1 0 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 Conjunctive Normal Form • To find the CNF representation of a Boolean function F • Find the DNF representation of its complement F • Then complement both sides and apply DeMorgan’s laws to get F: How do you build the CNF directly from the table ?

  17. xy = (x+y) Functional Completeness • Since every Boolean function can be expressed in terms of ,+,¯, we say that the set of operators {,+,¯} is functionally complete. • {+, ¯} is functionally complete • {, ¯} is functionally complete (note: x + y = xy) • NAND | and NOR ↓ are also functionally complete, each by itself (as a singleton set). • Recall x NAND y is true iff x or y (or both) are false and x NOR y is true iff both x and y are false.

More Related