# Boolean Algebra CHAPTER 15

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 CHAPTER 15 Boolean Algebra 15.1 INTRODUCTION Both sets and propositions satisfy similar laws, which are listed in Tables 1 1 and 4 1 (in Chapters 1 and 4, respectively). These laws are used to define an abstract mathematical structure called a Boolean algebra, which is named after the mathematician George Boole ( ) BASIC DEFINITIONS Let B be a nonempty set with two binary operations + and, a unary operation, and two distinct elements 0 and 1. Then B is called a Boolean algebra if the following axioms hold where a, b, c are any elements in B: [B 1 ] Commutative laws: (1a) a + b = b + a (1b) a b = b a [B 2 ] Distributive laws: (2a) a + (b c) = (a + b) (a + c) (2b) a (b + c) = (a b) + (a c) [B 3 ] Identity laws: (3a) a + 0 = a (3b) a 1 = a [B 4 ] Complement laws: (4a) a + a = 1 (4b) a a = 0 We will sometimes designate a Boolean algebra by B, +,,, 0, 1 when we want to emphasize its six parts. We say 0 is the zero element, l, is the unit element, and a is the complement of a. We will usually drop the symbol and use juxtaposition instead. Then (2b) is written a(b + c) = ab + ac which is the familiar algebraic identity of rings and fields. However, (2a) becomes a + bc = (a + b)(a + c), which is certainly not a usual identity in algebra. The operations +,, and are called sum, product, and complement, respectively. We adopt the usual convention that, unless we are guided by parentheses, has precedence over, and has precedence over +. For example, a + b c means a + (b c) and not (a + b) c; a b means a (b ) and not (a b) Of course when a + b c is written a + bc then the meaning is clear. EXAMPLE 15.1 (a) Let B = {0, 1}, the set of bits (binary digits), with the binary operations of + and and the unary operation defined by Fig Then B is a Boolean algebra. (Note simply changes the bit, i.e., 1 = 0 and 0 = 1.) 368

2 CHAP. 15] BOOLEAN ALGEBRA 369 Fig (b) Let B n = B B B (n factors) where the operations of +,, and are defined componentwise using Fig For notational convenience, we write the elements of B n as n bit sequences without commas, e.g., x = and y = belong to B n. Hence x + y = , x y = , x = Then B n is a Boolean algebra. Here 0 = is the zero element, and 1 = is the unit element. We note that B n has 2 n elements. (c) Let D 70 = {1, 2, 5, 7, 10, 14, 35, 70}, the divisors of 70. Define +,, and on D 70 by a + b = lcm(a, b), a b = gcd(a, b), a = 70 a Then D 70 is a Boolean algebra with 1 the zero element and 70 the unit element. (d) Let C be a collection of sets closed under the set operations of union, intersection, and complement. Then C is a Boolean algebra with the empty set as the zero element and the universal set U as the unit element. Subalgebras, Isomorphic Boolean Algebras Suppose C is a nonempty subset of a Boolean algebra B. We say C is a subalgebra of B if C itself is a Boolean algebra (with respect to the operations of B). We note that C is a subalgebra of B if and only if C is closed under the three operations of B, i.e., +,, and. For example, {1, 2, 35, 70} is a subalgebra of D 70 in Example 15.1(c). Two Boolean algebras B and B are said to be isomorphic if there is a one to one correspondence f: B B which preserves the three operations, i.e., such that, for any elements, a, b in B, f (a + b) = f (a) + f (b), f (a b) = f (a) f (b) and f (a ) = f (a) 15.3 DUALITY The dual of any statement in a Boolean algebra B is the statement obtained by interchanging the operations + and, and interchanging their identity elements 0 and 1 in the original statement. For example, the dual of (1 + a) (b + 0) = b is (0 a) + (b 1) = b Observe the symmetry in the axioms of a Boolean algebra B. That is, the dual of the set of axioms of B is the same as the original set of axioms. Accordingly, the important principle of duality holds in B. Namely, Theorem 15.1 (Principle of Duality): The dual of any theorem in a Boolean algebra is also a theorem. In other words, if any statement is a consequence of the axioms of a Boolean algebra, then the dual is also a consequence of those axioms since the dual statement can be proven by using the dual of each step of the proof of the original statement.

3 370 BOOLEAN ALGEBRA [CHAP BASIC THEOREMS Using the axioms [B 1 ] through [B 4 ], we prove (Problem 15.5) the following theorem. Theorem 15.2: Let a, b, c be any elements in a Boolean algebra B. (i) Idempotent laws: (5a) a + a = a (5b) a a = a (ii) Boundedness laws: (6a) a + 1 = 1 (6b) a 0 = 0 (iii) Absorption laws: (7a) a + (a b) = a (7b) a (a + b) = a (iv) Associative laws: (8a) (a + b) + c = a + (b + c) (8b) (a b) c = a (b c) Theorem 15.2 and our axioms still do not contain all the properties of sets listed in Table 1 1. The next two theorems give us the remaining properties. Theorem 15.3: Let a be any element of a Boolean algebra B. (i) (Uniqueness of Complement) If a + x = 1 and a x = 0, then x = a. (ii) (Involution law) (a ) = a. (iii) (9a) 0 = 1. (9b) 1 = 0. Theorem 15.4 (DeMorgan s laws): (10a) (a + b) = a b. (10b) (a b) = a + b. We prove these theorems in Problems 15.6 and BOOLEAN ALGEBRAS AS LATTICES By Theorem 15.2 and axiom [B 1 ], every Boolean algebra B satisfies the associative, commutative, and absorption laws and hence is a lattice where + and are the join and meet operations, respectively. With respect to this lattice, a + 1 = 1 implies a 1 and a 0 = 0 implies 0 a, for any element a B. Thus B is a bounded lattice. Furthermore, axioms [B 2 ] and [B 4 ] show that B is also distributive and complemented. Conversely, every bounded, distributive, and complemented lattice L satisfies the axioms [B 1 ] through [B 4 ]. Accordingly, we have the following Alternate Definition: A Boolean algebra B is a bounded, distributive and complemented lattice. Since a Boolean algebra B is a lattice, it has a natural partial ordering (and so its diagram can be drawn). Recall (Chapter 14) that we define a b when the equivalent conditions a + b = b and a b = a hold. Since we are in a Boolean algebra, we can actually say much more. Theorem 15.5: The following are equivalent in a Boolean algebra: (1) a + b = b, (2) a b = a, (3) a + b = 1, (4) a b = 0 Thus in a Boolean alegbra we can write a b whenever any of the above four conditions is known to be true. EXAMPLE 15.2 (a) Consider a Boolean algebra of sets. Then set A precedes set B if A is a subset of B. Theorem 15.4 states that if A B then the following conditions hold: (1) A B = B (2) A B = A (3) A c B = U (4) A B c =

4 CHAP. 15] BOOLEAN ALGEBRA 371 (b) Consider the Boolean algebra D 70. Then a precedes b if a divides b. In such a case, lcm(a, b) = b and gcd(a, b) = a. For example, let a = 2 and b = 14. Then the following conditions hold: (1) lcm(2, 14) = 14. (3) lcm(2, 14) = lcm(35, 14) = 70. (2) gcd(2, 14) = 2. (4) gcd(2, 14 ) = gcd(2, 5) = REPRESENTATION THEOREM Let B be a finite Boolean algebra. Recall (Section 14.10) that an element a in B is an atom if a immediately succeeds 0, that is if 0 a. Let A be the set of atoms of B and let P(A) be the Boolean algebra of all subsets of the set A of atoms. By Theorem 14.8, each x = 0 in B can be expressed uniquely (except for order) as the sum ( join) of atoms, i.e., elements of A. Say, x = a 1 + a a r is such a representation. Consider the function f: B P(A) defined by f (x) = {a 1, a 2,..., a r } The mapping is well defined since the representation is unique. Theorem 15.6: The above mapping f: B P(A) is an isomorphism. Thus we see the intimate relationship between set theory and abstract Boolean algebras in the sense that every finite Boolean algebra is structurally the same as a Boolean algebra of sets. If a set A has n elements, then its power set P(A) has 2 n elements. Thus the above theorem gives us our next result. Corollary 15.7: A finite Boolean algebra has 2 n elements for some positive integer n. EXAMPLE 15.3 Consider the Boolean algebra D 70 = {1, 2, 5,..., 70} whose diagram is given in Fig. 15 2(a). Note that A = {2, 5, 7} is the set of atoms of D 70. The following is the unique representation of each nonatom by atoms: 10 = 2 5, 14 = 2 7, 35 = 5 7, 70 = Figure 15 2(b) gives the diagram of the Boolean algebra of the power set P(A) of the set A of atoms. Observe that the two diagrams are structurally the same. Fig SUM OF PRODUCTS FORM FOR SETS This section motivates the concept of the sum of products form in Boolean algebra by an example of set theory. Consider the Venn diagram in Fig of three sets A, B, and C. Observe that these sets partition the

5 372 BOOLEAN ALGEBRA [CHAP. 15 Fig rectangle (universal set) into eight numbered sets which can be represented as follows: (1) A B C (3) A B c C (5) A B c C c (7) A c B c C (2) A B C c (4) A c B C (6) A c B C c (8) A c B c C c Each of these eight sets is of the form A B C where: A = A or A c, B = B or B c, C = C or C c Consider any nonempty set expression E involving the sets A, B, and C, say, E = [(A B c ) c (A c C c )] [(B c C) c (A C c )] Then E will represent some area in Fig and hence will uniquely equal the union of one or more of the eight sets. Suppose we now interpret a union as a sum and an intersection as a product. Then the above eight sets are products, and the unique representation of E will be a sum (union) of products. This unique representation of E is the same as the complete sum of products expansion in Boolean algebras which we discuss below SUM OF PRODUCTS FORM FOR BOOLEAN ALGEBRAS Consider a set of variables (or letters or symbols), say x 1, x 2,..., x n. A Boolean expression E in these variables, sometimes written E(x 1,..., x n ), is any variable or any expression built up from the variables using the Boolean operations +,, and. (Naturally, the expression E must be well formed, that is, where + and are used as binary operations, and is used as a unary operation.) For example, E 1 = (x + y z) + (xyz + x y) and E 2 = ((xy z + y) + x z) are Boolean expressions in x, y, and z. A literal is a variable or complemented variable, such as x, x, y, y, and so on. A fundamental product is a literal or a product of two or more literals in which no two literals involve the same variable. Thus xz, xy z, x, y, x yz are fundamental products, but xyx z and xyzy are not. Note that any product of literals can be reduced to either 0 or a fundamental product, e.g., xyx z = 0 since xx = 0 (complement law), and xyzy = xyz since yy = y (idempotent law). A fundamental product P 1 is said to be contained in (or included in) another fundamental product P 2 if the literals of P 1 are also literals of P 2. For example, x z is contained in x yz, but x z is not contained in xy z since x is not a literal of xy z. Observe that if P 1 is contained in P 2, say P 2 = P 1 Q, then, by the absorption law, Thus, for instance, x z + x yz = x z. P 1 + P 2 = P 1 + P 1 Q = P 1

6 CHAP. 15] BOOLEAN ALGEBRA 373 Definition 15.1: A Boolean expression E is called a sum of products expression if E is a fundamental product or the sum of two or more fundamental products none of which is contained in another. Definition 15.2: Let E be any Boolean expression. A sum of products form of E is an equivalent Boolean sum of products expression. EXAMPLE 15.4 Consider the expressions E 1 = xz + y z + xyz and E 2 = xz + x yz + xy z Although the first expression E 1 is a sum of products, it is not a sum of products expression. Specifically, the product xz is contained in the product xyz. However, by the absorption law, E 1 can be expressed as E 1 = xz + y z + xyz = xz + xyz + y z = xz + y z This yields a sum of products form for E 1. The second expression E 2 is already a sum of products expression. Algorithm for Finding Sum of Products Forms Figure 15 4 gives a four step algorithm which uses the Boolean algebra laws to transform any Boolean expression into an equivalent sum of products expression. Fig EXAMPLE 15.5 Suppose Algorithm 15.1 is applied to the following Boolean expression: E = ((xy) z) ((x + z)(y + z )) Step 1. Using DeMorgan s laws and involution, we obtain E = (xy + z )((x + z) + (y + z ) ) = (xy + z )(xz + yz) E now consists only of sums and products of literals. Step 2. Using the distributive laws, we obtain E = xyxz + xyyz + xz z + yzz E now is a sum of products. Step 3. Using the commutative, idempotent, and complement laws, we obtain E = xyz + xyz + xz + 0 Each term in E is a fundamental product or 0.

7 374 BOOLEAN ALGEBRA [CHAP. 15 Step 4. The product xz is contained in xyz ; hence, by the absorption law, xz + (xz y) = xz Thus we may delete xyz from the sum. Also, by the identity law for 0, we may delete 0 from the sum. Accordingly, E = xyz + xz E is now represented by a sum of products expression. Complete Sum of Products Forms A Boolean expression E = E(x 1, x 2,..., x n ) is said to be a complete sum of products expression if E is a sum of products expression where each product P involves all the n variables. Such a fundamental product P which involves all the variables is called a minterm, and there is a maximum of 2 n such products for n variables. The following theorem applies. Theorem 15.8: Every nonzero Boolean expression E = E(x 1, x 2,..., x n ) is equivalent to a complete sum of products expression and such a representation is unique. The above unique representation of E is called the complete sum of products form of E. Algorithm 15 1 in Fig tells us how to transform E into a sum of products form. Figure 15 5 contains an algorithm which transforms a sum of products form into a complete sum of products form. Fig EXAMPLE 15.6 Express E(x, y, z) = x(y z) into its complete sum of products form. (a) Apply Algorithm 15.1 to E so E is represented by a sum of products expression: (b) Now apply Algorithm 15.2 to obtain: E = x(y z) = x(y + z ) = xy + xz E = xy(z + z ) + xz (y + y ) = xyz + xyz + xyz + xy z = xyz + xyz + xy z Now E is reprsented by its complete sum of products form. Warning: The terminology in this section has not been standardized. The sum of products form for a Boolean expression E is also called the disjunctive normal form or DNF of E. The complete sum of products form for E is also called the full disjunctive normal form, or the disjunctive canonical form, or the minterm canonical form of E.

8 CHAP. 15] BOOLEAN ALGEBRA MINIMAL BOOLEAN EXPRESSIONS, PRIME IMPLICANTS There are many ways of representing the same Boolean expression E. Here we define and investigate a minimal sum of products form for E. We must also define and investigate prime implicants of E since the minimal sum of products involves such prime implicants. Other minimal forms exist, but their investigation lies beyond the scope of this text. Minimal Sum of Products Consider a Boolean sum of products expression E. Let E L denote the number of literals in E (counted according to multiplicity), and let E S denote the number of summands in E. For instance, suppose E = xyz + x y t + xy z t + x yzt Then E L = = 14 and E S = 4. Suppose E and F are equivalent Boolean sum of products expressions. We say E is simpler than F if: (i) E L < F L and E S F L, or (ii) E L F L and E S < F L We say E is minimal if there is no equivalent sum of products expression which is simpler than E. We note that there can be more than one equivalent minimal sum of products expressions. Prime Implicants A fundamental product P is called a prime implicant of a Boolean expression E if P + E = E but no other fundamental product contained in P has this property. For instance, suppose One can show (Problem 15.15) that: Thus xz is a prime implicant of E. The following theorem applies. E = xy + xyz + x yz xz + E = E but x + E = E and z + E = E Theorem 15.9: A minimal sum of products form for a Boolean expression E is a sum of prime implicants of E. The following subsections give a method for finding the prime implicants of E based on the notion of the consensus of fundamental products. This method can then be used to find a minimal sum of products form for E. Section gives a geometric method for finding such prime implicants. Consensus of Fundamental Products Let P 1 and P 2 be fundamental products such that exactly one variable, say x k, appears uncomplemented in one of P 1 and P 2 and complemented in the other. Then the consensus of P 1 and P 2 is the product (without repetitions) of the literals of P 1 and the literals of P 2 after x k and x k are deleted. (We do not define the consensus of P 1 = x and P 2 = x.) The following lemma (proved in Problem 15.19) applies. Lemma 15.10: Suppose Q is the consensus of P 1 and P 2. Then P 1 + P 2 + Q = P 1 + P 2. EXAMPLE 15.7 Find the consensus Q of P 1 and P 2 where: (a) P 1 = xyz s and P 2 = xy t. Delete y and y and then multiply the literals of P 1 and P 2 (without repetition) to obtain Q = xz st.

9 376 BOOLEAN ALGEBRA [CHAP. 15 (b) P 1 = xy and P 2 = y. Deleting y and y yields Q = x. (c) P 1 = x yz and P 2 = x yt. No variable appears uncomplemented in one of the products and complemented in the other. Hence P 1 and P 2 have no consensus. (d) P 1 = x yz and P 2 = xyz. Each of x and z appear complemented in one of the products and uncomplemented in the other. Hence P 1 and P 2 have no consensus. Consensus Method for Finding Prime Implicants Figure 15 6 contains an algorithm, called the consensus method, which is used to find the prime implicants of a Boolean expression E. The following theorem gives the basic property of this algorithm. Theorem 15.11: The consensus method will eventually stop, and then E will be the sum of its prime implicants. Fig EXAMPLE 15.8 Let E = xyz + x z + xyz + x y z + x yz. Then: E = xyz + x z + xyz + x y z (x yz includes x z ) = xyz + x y + xyz + x y z + xy (consensus of xyz and xyz ) = x z + x y z + xy (xyz and xyz include xy) = x z + x y z + xy + x y (consensus of x z and x y z) = x z + xy + x y (x y z includes x y ) = x z + xy + x y + yz (consensus of x z and xy) Now neither step in the consensus method will change E. Thus E is the sum of its prime implicants, which appear in the last line, that is, x z, xy, x y, and yz. Finding a Minimal Sum of Products Form The consensus method (Algorithm 15.3) is used to express a Boolean expression E as a sum of all its prime implicants. Figure 15 7 contains an algorithm which uses such a sum to find a minimal sum of products form for E.

10 CHAP. 15] BOOLEAN ALGEBRA 377 Fig EXAMPLE 15.9 We apply Algorithm 15.4 to the following expression E which (by Example 15.8) is now expressed as the sum of all its prime implicants: E = x z + xy + x y + yz Step 1. Express each prime implicant of E as a complete sum of products to obtain: x z = x z (y + y ) = x yz + x y z xy = xy(z + z ) = xyz + xyz x y = x y (z + z ) = x y z + x y z yz = yz (x + x ) = xyz + x yz Step 2. The summands of x z are x yz and x y z which appear among the other summands. Thus delete x z to obtain E = xy + x y + yz The summands of no other prime implicant appear among the summands of the remaining prime implicants, and hence this is a minimal sum of products form for E. In other words, none of the remaining prime implicants is superfluous, that is, none can be deleted without changing E LOGIC GATES AND CIRCUITS Logic circuits (also called logic networks) are structures which are built up from certain elementary circuits called logic gates. Each logic circuit may be viewed as a machine L which contains one or more input devices and exactly one output device. Each input device in L sends a signal, specifically, a bit (binary digit), 0 or 1 to the circuit L, and L processes the set of bits to yield an output bit. Accordingly, an n bit sequence may be assigned to each input device, and L processes the input sequences one bit at a time to produce an n bit output sequence. First we define the logic gates, and then we investigate the logic circuits. Logic Gates There are three basic logic gates which are described below. We adopt the convention that the lines entering the gate symbol from the left are input lines and the single line on the right is the output line. (a) OR Gate: Figure 15 8(a) shows an OR gate with inputs A and B and output Y = A + B where addition is defined by the truth table in Fig. 15 8(b). Thus the output Y = 0 only when inputs A = 0 and B = 0. Such an OR gate may, have more than two inputs. Figure 15 8(c) shows an OR gate with four inputs, A, B, C, D, and output Y = A + B + C + D. The output Y = 0 if and only if all the inputs are 0.

11 378 BOOLEAN ALGEBRA [CHAP. 15 Fig Suppose, for instance, the input data for the OR gate in Fig (c) are the following 8 bit sequences: A = , B = , C = , The OR gate only yields 0 when all input bits are 0. This occurs only in the 2nd, 5th, and 7th positions (reading from left to right). Thus the output is the sequence Y = (b) AND Gate: Figure 15 9(a) shows an AND gate with inputs A and B and output Y = A B (or simply Y = AB) where multiplication is defined by the truth table in Fig. 15 9(b). Thus the output Y = 1 when inputs A = 1 and B = 1; otherwise Y = 0. Such anand gate may have more than two inputs. Figure 15 9(c) shows an AND gate with four inputs, A, B, C, D, and output Y = A B C D. The output Y = 1 if and only if all the inputs are 1. Suppose, for instance, the input data for the AND gate in Fig. 15 9(c) are the following 8 bit sequences: A = , B = , C = , D = The AND gate only yields 1 when all input bits are 1. This occurs only in the 2nd, 3rd, and 7th positions. Thus the output is the sequence Y = Fig (c) NOT Gate: Figure 15 10(a) shows a NOT gate, also called an inverter, with input A and output Y = A where inversion, denoted by the prime, is defined by the truth table in Fig (b). The value of the output Y = A is the opposite of the input A; that is, A = 1 when A = 0 and A = 0 when A = 1. We emphasize that a NOT gate can have only one input, whereas the OR andand gates may have two or more inputs. Fig

12 CHAP. 15] BOOLEAN ALGEBRA 379 Suppose, for instance, a NOT gate is asked to process the following three sequences: A 1 = , A 2 = , A 3 = The NOT gate changes 0 to 1 and 1 to 0. Thus A 1 = , A 2 = , A 3 = are the three corresponding outputs. Logic Circuits A logic circuit L is a well formed structure whose elementary components are the above OR, AND, and NOT gates. Figure is an example of a logic circuit with inputs A, B, C and output Y. A dot indicates a place where the input line splits so that its bit signal is sent in more than one direction. (Frequently, for notational convenience, we may omit the word from the interior of the gate symbol.) Working from left to right, we express Y in terms of the inputs A, B, C as follows. The output of the AND gate is A B, which is then negated to yield (A B). The output of the lower OR gate is A + C, which is then negated to yield (A + C). The output of the OR gate on the right, with inputs (A B) and (A + C), gives us our desired representation, that is, Y = (A B) + (A + C) Fig Logic Circuits as a Boolean Algebra Observe that the truth tables for the OR, AND, and NOT gates are respectively identical to the truth tables for the propositions p q (disjunction, p or q ), p q (conjunction, p and q ), and p (negation, not p ), which appear in Section 4.3. The only difference is that 1 and 0 are used instead of T and F. Thus the logic circuits satisfy the same laws as do propositions and hence they form a Boolean algebra. We state this result formally. Theorem 15.12: Logic circuits form a Boolean Algebra. Accordingly, all terms used with Boolean algebras, such as, complements, literals, fundamental products, minterms, sum of products, and complete sum of products, may also be used with our logic circuits. AND OR Circuits The logic circuit L which corresponds to a Boolean sum of products expression is called an AND OR circuit. Such a circuit L has several inputs, where: (1) Some of the inputs or their complements are fed into each AND gate. (2) The outputs of all the AND gates are fed into a single OR gate. (3) The output of the OR gate is the output for the circuit L. The following illustrates this type of a logic circuit.

13 380 BOOLEAN ALGEBRA [CHAP. 15 EXAMPLE Figure is a typical AND OR circuit with three inputs, A, B, C and output Y. We can easily express Y as a Boolean expression in the inputs A, B, C as follows. First we find the output of each AND gate: (a) The inputs of the first AND gate are A, B, C; hence A B C is the output. (b) The inputs of the second AND gate are A, B, C; hence A B C is the output. (c) The inputs of the third AND gate are A and B; hence A B is the output. Then the sum of the outputs of the AND gates is the output of the OR gate, which is the output Y of the circuit. Thus: Y = A B C + A B C + A B Fig NAND and NOR Gates There are two additional gates which are equivalent to combinations of the above basic gates. (a) A NAND gate, pictured in Fig (a), is equivalent to an AND gate followed by a NOT gate. (b) A NOR gate, pictured in Fig (b), is equivalent to an OR gate followed by a NOT gate. The truth tables for these gates (using two inputs A and B) appear in Fig (c). The NAND and NOR gates can actually have two or more inputs just like the corresponding AND and OR gates. Furthermore, the output of a NAND gate is 0 if and only if all the inputs are 1, and the output of a NOR gate is 1 if and only if all the inputs are 0. Fig Observe that the only difference between the AND and NAND gates between the OR and NOR gates is that the NAND and NOR gates are each followed by a circle. Some texts also use such a small circle to indicate a complement before a gate. For example, the Boolean expressions corresponding to two logic circuits in Fig are as follows: (a) Y = (A B), (b) Y = (A + B + C)

14 CHAP. 15] BOOLEAN ALGEBRA 381 Fig TRUTH TABLES, BOOLEAN FUNCTIONS Consider a logic circuit L with n = 3 input devices A, B, C and output Y, say Y = A B C + A B C + A B Each assignment of a set of three bits to the inputs A, B, C yields an output bit for Y. All together there are 2 n = 2 3 = 8 possible ways to assign bits to the inputs as follows: 000, 001, 010, 011, 100, 101, 110, 111 The assumption is that the sequence of first bits is assigned to A, the sequence of second bits to B, and the sequence of third bits to C. Thus the above set of inputs may be rewritten in the form A = , B = , C = We emphasize that these three 2 n = 8 bit sequences contain the eight possible combinations of the input bits. The truth table T = T (L) of the above circuit L consists of the output sequence Y that corresponds to the input sequences A, B, C. This truth table T may be expressed using fractional or relational notation, that is, T may be written in the form T (A, B, C) = Y or T (L) = [A, B, C; Y] This form for the truth table forlis essentially the same as the truth table for a proposition discussed in Section 4.4. The only difference is that here the values for A, B, C, and Y are written horizontally, whereas in Section 4.4 they are written vertically. Consider a logic circuitlwithninput devices.there are many ways to formninput sequencesa 1, A 2,..., A n so that they contain the 2 n different possible combinations of the input bits. (Note that each sequence must contain 2 n bits.) One assignment scheme is as follows: A 1 : Assign 2 n 1 bits which are 0 s followed by 2 n 1 bits which are 1 s. A 2 : Repeatedly assign 2 n 2 bits which are 0 s followed by 2 n 2 bits which are 1 s. A 3 : Repeatedly assign 2 n 3 bits which are 0 s followed by 2 n 3 bits which are 1 s. And so on. The sequences obtained in this way will be called special sequences. Replacing 0 by 1 and 1 by 0 in the special sequences yields the complements of the special sequences. Remark: Assuming the input are the special sequences, we frequently do not need to distinguish between the truth table and the output Y itself. T (L) = [A 1, A 2,..., A n ;Y]

15 382 BOOLEAN ALGEBRA [CHAP. 15 EXAMPLE (a) Suppose a logic circuit L has n = 4 input devices A, B, C, D. The 2 n = 2 4 = 16 bit special sequences for A, B, C, D follow: That is: A = , C = B = , D = (1) A begins with eight 0 s followed by eight 1 s. (Here 2 n 1 = 2 3 = 8.) (2) B begins with four 0 s followed by four 1 s, and so on. (Here 2 n 2 = 2 2 = 4.) (3) C begins with two 0 s followed by two 1 s, and so on. (Here 2 n 3 = 2 1 = 2.) (4) D begins with one 0 followed by one 1, and so on. (Here 2 n 4 = 2 0 = 1.) (b) Suppose a logic circuit L has n = 3 input devices A, B, C. The 2 n = 2 3 = 8 bit special sequences for A, B, C and their complements A, B, C are as follows: A = , B = , C = A = , B = , C = Figure contains a three step algorithm for finding the truth table for a logic circuit L where the output Y is given by a Boolean sum of products expression in the inputs. Fig EXAMPLE Algorithm 15.5 is used to find the truth table T = T (L) of the logic circuit L in Fig or, equivalently, of the above Boolean sum of products expression Y = A B C + A B C + A B (1) The special sequences and their complements appear in Example 15.14(b). (2) The products are as follows: A B C = , A B C = , A B = (3) The sum is Y = Accordingly, T ( , , ) = or simply T (L) = where we assume the input consists of the special sequences.

16 CHAP. 15] BOOLEAN ALGEBRA 383 Boolean Functions Let E be a Boolean expression with n variables x 1, x 2,..., x n. The entire discussion above can also be applied to E where now the special sequences are assigned to the variables x 1, x 2,..., x n instead of the input devices A 1, A 2,..., A n. The truth table T = T (E) of E is defined in the same way as the truth table T = T (L) for a logic circuit L. For example, the Boolean expression E = xyz + xy z + x y which is analogous to the logic circuit L in Example 15.12, yields the truth table T ( , , ) = or simply T (E) = , where we assume the input consists of the special sequences. Remark: The truth table for a Boolean expression E = E(x 1, x 2,..., x n ) with n variables may also be viewed as a Boolean function from B n into B. (The Boolean algebras B n and B = {0, 1} are defined in Example 15.1.) That is, each element in B n is a list of n bits which when assigned to the list of variables in E produces an element in B. The truth table T (E) of E is simply the graph of the function. EXAMPLE (a) Consider Boolean expressions E = E(x, y, z) with three variables. The eight minterms (fundamental products involving all three variables) are as follows: xyz, xyz, xy z, x yz, xy z, x yz, x y z The truth tables for these minterms (using the special sequences for x, y, z) follow: xyz = , xyz = , xy z = , x yz = xy z = , x yz = , x y z = , x y z = Observe that each minterm assumes the value 1 in only one of the eight positions. (b) Consider the Boolean expression E = xyz + x yz + x y z. Note that E is a complete sum of products expression containing three minterms. Accordingly, the truth table T = T (E) for E, using the special sequences for x, y, z, can be easily obtained from the sequences in part (a). Specifically, the truth table T (E) will contain exactly three 1 s in the same positions as the 1 s in the three minterms in E. Thus or simply T (E) = T ( , , ) = KARNAUGH MAPS Karnaugh maps, where minterms involving the same variables are represented by squares, are pictorial devices for finding prime implicants and minimal forms for Boolean expressions involving at most six variables. We will only treat the cases of two, three, and four variables. In the context of Karnaugh maps, we will sometimes use the terms squares and minterm interchangeably. Recall that a minterm is a fundamental product which involves all the variables, and that a complete sum of products expression is a sum of minterms. First we need to define the notion of adjacent products. Two fundamental products P 1 and P 2 are said to be adjacent if P 1 and P 2 have the same variables and if they differ in exactly one literal. Thus there must be an uncomplemented variable in one product and complemented in the other. In particular, the sum of two such adjacent products will be a fundamental product with one less literal.

17 384 BOOLEAN ALGEBRA [CHAP. 15 EXAMPLE Find the sum of adjacent products P 1 and P 2 where: (a) P = xyz and P 2 = xy z. (b) P 1 = x yzt and P 2 = x yz t. (c) P 1 = x yzt and P 2 = xyz t. P 1 + P 2 = xyz + xy z = xz (y + y ) = xz (1) = xz P 1 + P 2 = x yzt + x yz t = x yt(z + z ) = x yt(1) = x yt Here P 1 and P 2 are not adjacent since they differ in two literals. In particular, (d) P 1 = xyz and P 2 = xyzt. P 1 + P 2 = x yzt + xyz t = (x + x)y(z + z )t = (1)y(1)t = yt Here P 1 and P 2 are not adjacent since they have different variables. Thus, in particular, they will not appear as squares in the same Karnaugh map. Case of Two Variables The Karnaugh map corresponding to Boolean expressions E = E(x, y) with two variables x and y is shown in Fig (a). The Karnaugh map may be viewed as a Venn diagram where x is represented by the points in the upper half of the map, shaded in Fig (b), and y is represented by the points in the left half of the map, shaded in Fig (c). Thus x is represented by the points in the lower half of the map, and y is represented by the points in the right half of the map. Accordingly, the four possible minterms with two literals, xy, xy, x y, x y are represented by the four squares in the map, as labeled in Fig (d). Note that two such squares are adjacent, as defined above, if and only if the squares are geometrically adjacent (have a side in common). Fig Any complete sum of products Boolean expression E(x, y) is a sum of minterms and hence can be represented in the Karnaugh map by placing checks in the appropriate squares. A prime implicant of E(x, y) will be either a pair of adjacent squares in E or an isolated square, i.e., a square which is not adjacent to any other square of E(x, y). A minimal sum of products form for E(x, y) will consist of a minimal number of prime implicants which cover all the squares of E(x, y) as illustrated in the next example. EXAMPLE Find the prime implicants and a minimal sum of products form for each of the following complete sum of products Boolean expressions: (a) E 1 = xy + xy ; (b) E 2 = xy + x y + x y ; (c) E 3 = xy + x y

18 CHAP. 15] BOOLEAN ALGEBRA 385 This can be solved by using Karnaugh maps as follows: (a) Check the squares corresponding to xy and xy as in Fig (a). Note that E 1 consists of one prime implicant, the two adjacent squares designated by the loop in Fig (a). This pair of adjacent squares represents the variable x, so x is a (the only) prime implicant of E 1. Consequently, E 1 = x is its minimal sum. Fig (b) Check the squares corresponding to xy, x y, and x y as in Fig (b). Note that E 2 contains two pairs of adjacent squares (designated by the two loops) which include all the squares ofe 2. The vertical pair represents y and the horizontal pair represents x ; hence y and x are the prime implicants of E 2. Thus E 2 = x + y is its minimal sum. (c) Check the squares corresponding to xy and x y as in Fig (c). Note that E 3 consists of two isolated squares which represent xy and x y ; hence xy and x y are the prime implicants of E 3 and E 3 = xy + x y is its minimal sum. Case of Three Variables The Karnaugh map corresponding to Boolean expressions E = E(x, y, z) with three variables x, y, z is shown in Fig (a). Recall that there are exactly eight minterms with three variables: xyz, xyz, xy z, xy z, x yz, x yz, x y z, x y z These minterms are listed so that they correspond to the eight squares in the Karnaugh map in the obvious way. Furthermore, in order that every pair of adjacent products in Fig (a) are geometrically adjacent, the right and left edges of the map must be identified. This is equivalent to cutting out, bending, and gluing the map along the identified edges to obtain the cylinder pictured in Fig (b) where adjacent products are now represented by squares with one edge in common. Fig Viewing the Karnaugh map in Fig (a) as a Venn diagram, the areas represented by the variables x, y, and z are shown in Fig Specifically, the variable x is still represented by the points in the upper half of the map, as shaded in Fig (a), and the variable y is still represented by the points in the left half of the map, as shaded in Fig (b). The new variable z is represented by the points in the left and right quarters of

19 386 BOOLEAN ALGEBRA [CHAP. 15 Fig the map, as shaded in Fig (c). Thus x, y, and z are represented, respectively, by points in the lower half, right half, and middle two quarters of the map. By a basic rectangle in the Karnaugh map with three variables, we mean a square, two adjacent squares, or four squares which form a one by four or a two by two rectangle. These basic rectangles correspond to fundamental products of three, two, and one literal, respectively. Moreover, the fundamental product represented by a basic rectangle is the product of just those literals that appear in every square of the rectangle. Suppose a complete sum of products Boolean expression E = E(x, y, z) is represented in the Karnaugh map by placing checks in the appropriate squares. A prime implicant of E will be a maximal basic rectangle of E, i.e., a basic rectangle contained in E which is not contained in any larger basic rectangle in E. A minimal sum ofproducts form for E will consist of a minimal cover of E, that is, a minimal number of maximal basic rectangles of E which together include all the squares of E. EXAMPLE Find the prime implicants and a minimal sum of products form for each of the following complete sum of products Boolean expressions: (a) E 1 = xyz + xyz + x yz + x y z. (b) E 2 = xyz + xyz + xy z + x yz + x y z. (c) E 3 = xyz + xyz + x yz + x y z + x y z. This can be solved by using Karnaugh maps as follows: (a) Check the squares corresponding to the four summands as in Fig (a). Observe that E 1 has three prime implicants (maximal basic rectangles), which are circled; these are xy, yz, and x y z. All three are needed to cover E 1 ; hence the minimal sum for E 1 is E 1 = xy + yz + x y z (b) Check the squares corresponding to the five summands as in Fig (b). Note that E 2 has two prime implicants, which are circled. One is the two adjacent squares which represents xy, and the other is the two by two square (spanning the identified edges) which represents z. Both are needed to cover E 2, so the minimal sum for E 2 is E 2 = xy + z Fig

20 CHAP. 15] BOOLEAN ALGEBRA 387 (c) Check the squares corresponding to the five summands as in Fig (c). As indicated by the loops, E 3 has four prime implicants, xy, yz, x z, and x y. However, only one of the two dashed ones, i.e., one of yz or x z, is needed in a minimal cover of E 3. Thus E 3 has two minimal sums: E 3 = xy + yz + x y = xy + x z + x y EXAMPLE Design a three input minimal AND OR circuit L with the following truth table: T = [A, B, C; L] = [ , , ; ] From the truth table we can read off the complete sum of products form for L (as in Example 15.10): L = A B C + A B C + AB C + AB C + ABC The associated Karnaugh map is shown in Fig (a). Observe that L has two prime implicants, B and AC, in its minimal cover; hence L = B + AC is a minimal sum for L. Figure 15 21(b) gives the corresponding minimal AND OR circuit for L. Fig Case of Four Variables The Karnaugh map corresponding to Boolean expressions E = E(x, y, z, t) with four variables x, y, z, t is shown in Fig Each of the 16 squares corresponds to one of the 16 minterms with four variables, xyzt, xyzt, xyz t, xyz t,..., x yz t as indicated by the labels of the row and column of the square. Observe that the top line and the left side are labeled so that adjacent products differ in precisely one literal. Again we must identify the left edge with the right edge (as we did with three, variables) but we must also identify the top edge with the bottom edge. (These identifications give rise to a donut shaped surface called a torus, and we may view our map as really being a torus.) Fig

21 388 BOOLEAN ALGEBRA [CHAP. 15 A basic rectangle in a four variable Karnaugh map is a square, two adjacent squares, four squares which form a one by four or two by two rectangle, or eight squares which form a two by four rectangle. These rectangles correspond to fundamental products with four, three, two, and one literal, respectively. Again, maximal basic rectangles are the prime implicants. The minimization technique for a Boolean expression E(x, y, z, t) is the same as before. EXAMPLE Find the fundamental product P represented by the basic rectangle in the Karnaugh maps shown in Fig In each case, find the literals which appear in all the squares of the basic rectangle; P is the product of such literals. (a) xy, and z appear in both squares; hence P = xy z. (b) Only y and z appear in all four squares; hence P = yz. (c) Only t appears in all eight squares; hence P = t. Fig EXAMPLE Use a Karnaugh map to find a minimal sum of products form for E = xy + xyz + x y z + x yzt Check all the squares representing each fundamental product. That is, check all four squares representing xy, the two squares representing xyz, the two squares representing x y z, and the one square representing x yzt, as in Fig A minimal cover of the map consists of the three designated maximal basic rectangles. Fig

22 CHAP. 15] BOOLEAN ALGEBRA 389 The two by two squares represent the fundamental products xz and y z, and the two adjacent squares (on top and bottom) represents yzt. Hence E = xz + y z + yzt is a minimal sum for E. Solved Problems BOOLEAN ALGEBRAS Write the dual of each Boolean equation: (a) (a 1) (0 + a ) = 0; (b) a + a b = a + b. (a) To obtain the dual equation, interchange + and, and interchange 0 and 1. Thus (a + 0) + (1 a ) = 1 (b) First write the equation using to obtain a + (a b) = a + b. Then the dual is a (a + b) = a b, which can be written as a(a + b) = ab Recall (Chapter 14) that the set D m of divisors of m is a bounded, distributive lattice with a + b = a b = lcm(a, b) and a b = a b = gcd(a, b). (a) Show that D m is a Boolean algebra if m is square free, i.e., if m is a product of distinct primes. (b) Find the atoms of D m. (a) We need only show that D m is complemented. Let x be in D m and let x = m/x. Since m is a product of distinct primes, x and x have different prime divisors. Hence x x = gcd(x, x ) = 1 and x + x = 1cm(x, x ) = m. Recall that 1 is the zero element (lower bound) of D m and that m is the identity element (upper bound) of D m. Thus x is a complement of x, and so D m is a Boolean algebra. (b) The atoms of D m are the prime divisors of m Consider the Boolean algebra D 210. (a) List its elements and draw its diagram. (b) Find the set A of atoms. (c) Find two subalgebras with eight elements. (d) Is X = {1, 2, 6, 210} a sublattice of D 210? A subalgebra? (e) Is Y = {1, 2, 3, 6} a sublattice of D 210? A subalgebra? (a) The divisors of 210 are 1, 2, 3, 5, 6, 7, 10, 14, 15, 21, 30, 35, 42, 70, 105, and 210. The diagram of D 210 appears in Fig (b) A = {2, 3, 5, 7}, the set of prime divisors of 210. (c) B = {1, 2, 3, 35, 6, 70, 105, 210} and C = {1, 5, 6, 7, 30, 35, 42, 210} are subalgebras of D 210. (d) X is a sublattice since it is linearly ordered. However, X is not a subalgebra since 35 is the complement of 2 in D 210 but 35 does not belong to X. (In fact, no Boolean algebra with more than two elements is linearly ordered.) (e) Y is a sublattice of D 210 since it is closed under + and. However, Y is not a subalgebra of D 210 since it is not closed under complements in D 210, e.g., 35 = 2 does not belong to Y. (We note that Y itself is a Boolean algebra; in fact, Y = D 6.)

23 390 BOOLEAN ALGEBRA [CHAP. 15 Fig Find the number of subalgebras of D 210. A subalgebra of D 210 must contain two, four, eight or sixteen elements. (i) There can be only one two element subalgebra which consists of the upper bound 210 and lower bound 1, i.e., {1, 210}. (ii) Since D 210 contains sixteen elements, the only sixteen element subalgebra is D 210 itself. (iii) Any four element subalgebra is of the form {1, x, x, 210}, i.e., consists of the upper and lower bounds and a nonbound element and its complement. There are fourteen nonbound elements in D 210 and so there are 14/2 = 7 pairs {x, x }. Thus D 210 has seven four element subalgebras. (iv) Any eight element subalgebra S will itself contain three atoms s 1, s 2, s 3. We can choose s 1 and s 2 to be any two of the four atoms of D 210 and then s 3 must be the product of the other two atoms, e.g., we can let s 1 = 2, s 2 = 3, s 3 = 5 7 = 35 (which determines the subalgebra B above), or we can let s 1 = 5, s 2 = 7, s 3 = 2 3 = 6 (which determines the subalgebra C above). There are ( 4 2) = 6 ways to choose s1 and s 2 from the four atoms of D 210 and so D 210 has six eight element subalgebras. Accordingly, D 210 has = 15 subalgebras Prove Theorem 15.2: Let a, b, c be any element in a Boolean algebra B. (i) Idempotent laws: (5a) a + a = a (5b) a a = a (ii) Boundedness laws: (6a) a + 1 = 1 (6b) a 0 = 0 (iii) Absorption Laws: (7a) a + (a b) = a (7b) a (a + b) = a (iv) Associative Laws: (5b) (5a) (8a) (a + b) + c = a + (b + c) (8b) (a b) c = a (b c) a = a 1 = a (a + a ) = (a a) + (a a ) = (a a) + 0 = a a Follows from (5b) and duality. (6b) a 0 = (a 0) + 0 = (a 0) + (a a ) = a (0 + a ) = a (a + 0) = a a = 0 (6a) (7b) (7a) Follows from (6b) and duality. a (a + b) = (a + 0) (a + b) = a + (0 b) = a + (b 0) = a + 0 = a Follows from (7b) and duality. (8b) Let L = (a b) c and R = a (b c). We need to prove that L = R. We first prove that a + L = a + R. Using the absorption laws in the last two steps, a + L = a + ((a b) c) = (a + (a b)) (a + c) = a (a + c) = a

24 CHAP. 15] BOOLEAN ALGEBRA 391 Also, using the absorption law in the last step, a + R = a + (a (b c)) = (a + a) (a + (b c)) = a (a + (b c)) = a Thus a + L = a + R. Next we show that a + L = a + R. We have, Also, a + L = a + ((a b) c) = (a + (a b)) (a + c) Thus a + L = a + R. Consequently, = ((a + a) (a + b)) (a + c) = (1 (a + b)) (a + c) = (a + b) (a + c) = a + (b c) a + R = a + (a (b c)) = (a + a) (a + (b c)) = 1 (a + (b c)) = a + (b c) L = 0 + L = (a a ) + L = (a + L) (a + L) = (a + R) (a + R) = (a a ) + R = 0 + R = R (8a) Follows from (8b) and duality Prove Theorem 15.3: Let a be any element of a Boolean algebra B. (i) (Uniqueness of Complement) If a + x = 1 and a x = 0, then x = a. (ii) (Involution Law) (a ) = a (iii) (9a) 0 = 1; (9b) 1 = 0. (i) We have: Also, a = a + 0 = a + (a x) = (a + a) (a + x) = 1 (a + x) = a + x x = x + 0 = x + (a a ) = (x + a) (x + a ) = 1 (x + a ) = x + a Hence x = x + a = a + x = a. (ii) By definition of complement, a + a = 1 and a a = 0. By commutativity, a + a = 1 and a a = 0. By uniqueness of complement, a is the complement of a, that is, a = (a ). (iii) By boundedness law (6a), = 1, and by identity axiom (3b), 0 1 = 0. By uniqueness of complement, 1 is the complement of 0, that is, 1 = 0. By duality, 0 = Prove Theorem 15.4: (DeMorgan s laws): (10a) (a + b) = a b. (10b) (a b) = a + b. (10a) We need to show that (a + b) + (a b ) = 1 and (a + b) (a b ) = 0; then by uniqueness of complement, a b = (a + b ). We have: Also, (a + b) + (a b ) = b + a + (a b ) = b + (a + a ) (a + b ) Thus a b = (a + b). = b + 1 (a + b ) = b + a + b = b + b + a = 1 + a = 1 (a + b) (a b ) = ((a + b) a ) b (10b) Principle of duality (Theorem 15.1). = ((a a ) + (b a )) b = (0 + (b a )) b = (b a ) b = (b b ) a = 0 a = 0

25 392 BOOLEAN ALGEBRA [CHAP Prove Theorem 15.5: The following are equivalent in a Boolean algebra: (1) a + b = b; (2) a b = a; (3) a + b = 1; (4) a b = 0. By Theorem 14.4, (1) and (2) are equivalent. We show that (1) and (3) are equivalent. Suppose (1) holds. Then Now suppose (3) holds. Then Thus (1) and (3) are equivalent. a + b = a + (a + b) = (a + a) + b = 1 + b = 1 a + b = 1 (a + b) = (a + b) (a + b) = (a a) + b = 0 + b = b We next show that (3) and (4) are equivalent. Suppose (3) holds. By DeMorgan s law and involution, Conversely, if (4) holds then 0 = 1 = (a + b ) = a b = a b 1 = 0 = (a b ) = a + b = a + b Thus (3) and (4) are equivalent. Accordingly, all four are equivalent Prove Theorem 15.6: The mapping f: B P(A) is an isomorphism where B is a Boolean algebra, P(A) is the power set of the set A of atoms, and f (x) = {a 1, a 2,..., a n } where x = a a n is the unique representation of a as a sum of atoms. Recall (Chapter 14) that if the a s are atoms then a 2 i = a i but a i a j = 0 for a i = a j. Suppose x, y are in B and suppose x = a a r + b b s y = b b s + c c t where A = {a 1,..., a r, b 1,..., b s, c 1,..., c t, d 1,..., d k } is the set of atoms of B. Then x + y = a a r + b b s + c c t xy = b 1 + b s Hence f (x + y) = {a 1,..., a r, b 1,..., b s, c 1,..., c t } = {a 1,..., a r, b 1,..., b s } {b 1,..., b s, c 1,..., c t } = f (x) f (y) f (xy) = {b 1,..., b s } = {a 1,..., a r, b 1,..., b s } {b 1,..., b s, c 1,..., c t } = f (x) f (y) Let y = c c t + d d k. Then x + y = 1 and xy = 0, and so y = x Thus f (x ) = {c 1,..., c t, d 1,..., d k } = {a 1,..., a r, b 1,..., b s } c = (f (x)) c Since the representation is unique, f is one to one and onto. Hence f is a Boolean algebra isomorphism.

### BOOLEAN ALGEBRA & LOGIC GATES

BOOLEAN ALGEBRA & LOGIC GATES Logic gates are electronic circuits that can be used to implement the most elementary logic expressions, also known as Boolean expressions. The logic gate is the most basic

### 4 BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION

4 BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION BOOLEAN OPERATIONS AND EXPRESSIONS Variable, complement, and literal are terms used in Boolean algebra. A variable is a symbol used to represent a logical quantity.

### Elementary Number Theory We begin with a bit of elementary number theory, which is concerned

CONSTRUCTION OF THE FINITE FIELDS Z p S. R. DOTY Elementary Number Theory We begin with a bit of elementary number theory, which is concerned solely with questions about the set of integers Z = {0, ±1,

### Analog & Digital Electronics Course No: PH-218

Analog & Digital Electronics Course No: PH-218 Lec-29: Combinational Logic Modules Course Instructor: Dr. A. P. VAJPEYI Department of Physics, Indian Institute of Technology Guwahati, India 1 Combinational

### Logic in Computer Science: Logic Gates

Logic in Computer Science: Logic Gates Lila Kari The University of Western Ontario Logic in Computer Science: Logic Gates CS2209, Applied Logic for Computer Science 1 / 49 Logic and bit operations Computers

### Boolean Algebra Part 1

Boolean Algebra Part 1 Page 1 Boolean Algebra Objectives Understand Basic Boolean Algebra Relate Boolean Algebra to Logic Networks Prove Laws using Truth Tables Understand and Use First Basic Theorems

### CS61c: Representations of Combinational Logic Circuits

CS61c: Representations of Combinational Logic Circuits J. Wawrzynek October 12, 2007 1 Introduction In the previous lecture we looked at the internal details of registers. We found that every register,

### A set is a Many that allows itself to be thought of as a One. (Georg Cantor)

Chapter 4 Set Theory A set is a Many that allows itself to be thought of as a One. (Georg Cantor) In the previous chapters, we have often encountered sets, for example, prime numbers form a set, domains

### Applications of Methods of Proof

CHAPTER 4 Applications of Methods of Proof 1. Set Operations 1.1. Set Operations. The set-theoretic operations, intersection, union, and complementation, defined in Chapter 1.1 Introduction to Sets are

### CSEE 3827: Fundamentals of Computer Systems. Standard Forms and Simplification with Karnaugh Maps

CSEE 3827: Fundamentals of Computer Systems Standard Forms and Simplification with Karnaugh Maps Agenda (M&K 2.3-2.5) Standard Forms Product-of-Sums (PoS) Sum-of-Products (SoP) converting between Min-terms

### Simplifying Logic Circuits with Karnaugh Maps

Simplifying Logic Circuits with Karnaugh Maps The circuit at the top right is the logic equivalent of the Boolean expression: f = abc + abc + abc Now, as we have seen, this expression can be simplified

Some Definitions about Sets Definition: Two sets are equal if they contain the same elements. I.e., sets A and B are equal if x[x A x B]. Notation: A = B. Recall: Sets are unordered and we do not distinguish

### The equation for the 3-input XOR gate is derived as follows

The equation for the 3-input XOR gate is derived as follows The last four product terms in the above derivation are the four 1-minterms in the 3-input XOR truth table. For 3 or more inputs, the XOR gate

### Chapter 1. Logic and Proof

Chapter 1. Logic and Proof 1.1 Remark: A little over 100 years ago, it was found that some mathematical proofs contained paradoxes, and these paradoxes could be used to prove statements that were known

### 4. Number Theory (Part 2)

4. Number Theory (Part 2) Terence Sim Mathematics is the queen of the sciences and number theory is the queen of mathematics. Reading Sections 4.8, 5.2 5.4 of Epp. Carl Friedrich Gauss, 1777 1855 4.3.

### Unit 2: Number Systems, Codes and Logic Functions

Unit 2: Number Systems, Codes and Logic Functions Introduction A digital computer manipulates discrete elements of data and that these elements are represented in the binary forms. Operands used for calculations

### Switching Algebra and Logic Gates

Chapter 2 Switching Algebra and Logic Gates The word algebra in the title of this chapter should alert you that more mathematics is coming. No doubt, some of you are itching to get on with digital design

### 1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.

File: chap04, Chapter 04 1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. 2. True or False? A gate is a device that accepts a single input signal and produces one

### Logic Design 2013/9/5. Introduction. Logic circuits operate on digital signals

Introduction Logic Design Chapter 2: Introduction to Logic Circuits Logic circuits operate on digital signals Unlike continuous analog signals that have an infinite number of possible values, digital signals

### Basic Logic Gates Richard E. Haskell

BASIC LOGIC GATES 1 E Basic Logic Gates Richard E. Haskell All digital systems are made from a few basic digital circuits that we call logic gates. These circuits perform the basic logic functions that

### CSE 220: Systems Fundamentals I Unit 7: Logic Gates; Digital Logic Design: Boolean Equations and Algebra

CSE 220: Systems Fundamentals I Unit 7: Logic Gates; Digital Logic Design: Boolean Equations and Algebra Logic Gates Logic gatesare simple digital circuits that take one or more binary inputs and produce

### Boolean Algebra. Boolean Algebra. Boolean Algebra. Boolean Algebra

2 Ver..4 George Boole was an English mathematician of XIX century can operate on logic (or Boolean) variables that can assume just 2 values: /, true/false, on/off, closed/open Usually value is associated

### So let us begin our quest to find the holy grail of real analysis.

1 Section 5.2 The Complete Ordered Field: Purpose of Section We present an axiomatic description of the real numbers as a complete ordered field. The axioms which describe the arithmetic of the real numbers

### It is time to prove some theorems. There are various strategies for doing

CHAPTER 4 Direct Proof It is time to prove some theorems. There are various strategies for doing this; we now examine the most straightforward approach, a technique called direct proof. As we begin, it

### . 0 1 10 2 100 11 1000 3 20 1 2 3 4 5 6 7 8 9

Introduction The purpose of this note is to find and study a method for determining and counting all the positive integer divisors of a positive integer Let N be a given positive integer We say d is a

### CONTENTS 1. Peter Kahn. Spring 2007

CONTENTS 1 MATH 304: CONSTRUCTING THE REAL NUMBERS Peter Kahn Spring 2007 Contents 2 The Integers 1 2.1 The basic construction.......................... 1 2.2 Adding integers..............................

### Sets and functions. {x R : x > 0}.

Sets and functions 1 Sets The language of sets and functions pervades mathematics, and most of the important operations in mathematics turn out to be functions or to be expressible in terms of functions.

### Introduction to Logic Circuits

April 5, 999 4:05 g02-ch2 Sheet number Page number 7 black chapter 2 Introduction to Logic Circuits 2. d2 d4, d7 d5 7 April 5, 999 4:05 g02-ch2 Sheet number 2 Page number 8 black 8 CHAPTER 2 Introduction

### Basics of Digital Systems. Boolean algebra Truth tables Karnaugh maps

Basics of Digital Systems Boolean algebra Truth tables Karnaugh maps Boolean Algebra In digital systems we deal with the binary number system. This means that the value of an element can be either 0 or

### Points Addressed in this Lecture. Standard form of Boolean Expressions. Lecture 5: Logic Simplication & Karnaugh Map

Points Addressed in this Lecture Lecture 5: Logic Simplication & Karnaugh Map Professor Peter Cheung Department of EEE, Imperial College London (Floyd 4.5-4.) (Tocci 4.-4.5) Standard form of Boolean Expressions

### Theorem (The division theorem) Suppose that a and b are integers with b > 0. There exist unique integers q and r so that. a = bq + r and 0 r < b.

Theorem (The division theorem) Suppose that a and b are integers with b > 0. There exist unique integers q and r so that a = bq + r and 0 r < b. We re dividing a by b: q is the quotient and r is the remainder,

### SUM OF TWO SQUARES JAHNAVI BHASKAR

SUM OF TWO SQUARES JAHNAVI BHASKAR Abstract. I will investigate which numbers can be written as the sum of two squares and in how many ways, providing enough basic number theory so even the unacquainted

### APPLICATIONS OF THE ORDER FUNCTION

APPLICATIONS OF THE ORDER FUNCTION LECTURE NOTES: MATH 432, CSUSM, SPRING 2009. PROF. WAYNE AITKEN In this lecture we will explore several applications of order functions including formulas for GCDs and

### EXPERIMENT NO.1:INTRODUCTION TO BASIC GATES AND LOGIC SIMPLIFICATION TECHNIQUES

DEPARTMENT OF ELECTRICAL AND ELECTROINC ENGINEERING BANGLADESH UNIVERSITY OF ENGINEERING & TECHNOLOGY EEE 304 : Digital Electronics Laboratory EXPERIMENT NO.1:INTRODUCTION TO BASIC GATES AND LOGIC SIMPLIFICATION

### Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement

### Computer Organization I. Lecture 8: Boolean Algebra and Circuit Optimization

Computer Organization I Lecture 8: Boolean Algebra and Circuit Optimization Overview The simplification from SOM to SOP and their circuit implementation Basics of Logic Circuit Optimization: Cost Criteria

### The Mathematics of Origami

The Mathematics of Origami Sheri Yin June 3, 2009 1 Contents 1 Introduction 3 2 Some Basics in Abstract Algebra 4 2.1 Groups................................. 4 2.2 Ring..................................

### Sets and Logic. Chapter Sets

Chapter 2 Sets and Logic This chapter introduces sets. In it we study the structure on subsets of a set, operations on subsets, the relations of inclusion and equality on sets, and the close connection

### Digital Logic Design

Digital Logic Design ENGG1015 1 st Semester, 2010 Dr. Kenneth Wong Dr. Hayden So Department of Electrical and Electronic Engineering Determining output level from a diagram Implementing Circuits From Boolean

### SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT Mathematics Numbers. Factors 2. Multiples 3. Prime and Composite Numbers 4. Modular Arithmetic 5. Boolean Algebra 6. Modulo 2 Matrix Arithmetic 7. Number Systems

### Digital Logic Circuits

Digital Logic Circuits Digital describes any system based on discontinuous data or events. Typically digital is computer data or electronic sampling of an analog signal. Computers are digital machines

### 1. Digital Logic Circuits

1 Digital Logic ircuits 1. Digital Logic ircuits Many scientific, industrial and commercial advances have been made possible by the advent of computers. Digital Logic ircuits form the basis of any digital

### 8 Divisibility and prime numbers

8 Divisibility and prime numbers 8.1 Divisibility In this short section we extend the concept of a multiple from the natural numbers to the integers. We also summarize several other terms that express

### a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.

Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given

### Sets. A set is a collection of (mathematical) objects, with the collection treated as a single mathematical object.

Sets 1 Sets Informally: A set is a collection of (mathematical) objects, with the collection treated as a single mathematical object. Examples: real numbers, complex numbers, C integers, All students in

### CHAPTER 2. Inequalities

CHAPTER 2 Inequalities In this section we add the axioms describe the behavior of inequalities (the order axioms) to the list of axioms begun in Chapter 1. A thorough mastery of this section is essential

### The set consisting of all natural numbers that are in A and are in B is the set f1; 3; 5g;

Chapter 5 Set Theory 5.1 Sets and Operations on Sets Preview Activity 1 (Set Operations) Before beginning this section, it would be a good idea to review sets and set notation, including the roster method

### Switching Circuits & Logic Design

Switching Circuits & Logic Design Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 23 2 oolean lgebra 2 Outline Introduction asic operations oolean expressions

### Basics of Digital Logic Design

CSE 675.2: Introduction to Computer Architecture Basics of Digital Logic Design Presentation D Study: B., B2, B.3 Slides by Gojko Babi From transistors to chips Chips from the bottom up: Basic building

### Chapter 6. Number Theory. 6.1 The Division Algorithm

Chapter 6 Number Theory The material in this chapter offers a small glimpse of why a lot of facts that you ve probably nown and used for a long time are true. It also offers some exposure to generalization,

### Lecture 1: Elementary Number Theory

Lecture 1: Elementary Number Theory The integers are the simplest and most fundamental objects in discrete mathematics. All calculations by computers are based on the arithmetical operations with integers

### MATH REVIEW KIT. Reproduced with permission of the Certified General Accountant Association of Canada.

MATH REVIEW KIT Reproduced with permission of the Certified General Accountant Association of Canada. Copyright 00 by the Certified General Accountant Association of Canada and the UBC Real Estate Division.

### PART I. THE REAL NUMBERS

PART I. THE REAL NUMBERS This material assumes that you are already familiar with the real number system and the representation of the real numbers as points on the real line. I.1. THE NATURAL NUMBERS

### Karnaugh Maps. Circuit-wise, this leads to a minimal two-level implementation

Karnaugh Maps Applications of Boolean logic to circuit design The basic Boolean operations are AND, OR and NOT These operations can be combined to form complex expressions, which can also be directly translated

### CHAPTER 2. Logic. 1. Logic Definitions. Notation: Variables are used to represent propositions. The most common variables used are p, q, and r.

CHAPTER 2 Logic 1. Logic Definitions 1.1. Propositions. Definition 1.1.1. A proposition is a declarative sentence that is either true (denoted either T or 1) or false (denoted either F or 0). Notation:

### Just the Factors, Ma am

1 Introduction Just the Factors, Ma am The purpose of this note is to find and study a method for determining and counting all the positive integer divisors of a positive integer Let N be a given positive

### Introduction to mathematical arguments

Introduction to mathematical arguments (background handout for courses requiring proofs) by Michael Hutchings A mathematical proof is an argument which convinces other people that something is true. Math

### MAT2400 Analysis I. A brief introduction to proofs, sets, and functions

MAT2400 Analysis I A brief introduction to proofs, sets, and functions In Analysis I there is a lot of manipulations with sets and functions. It is probably also the first course where you have to take

### 4.203 Write the truth table for each of the following logic functions:

3e4.5 4.201 According to DeMorgan s theorem, the complement of X + Y Z is X Y +Z. Yet both functions are 1 for XYZ = 110. How can both a function and its complement be 1 for the same input combination?

### Students in their first advanced mathematics classes are often surprised

CHAPTER 8 Proofs Involving Sets Students in their first advanced mathematics classes are often surprised by the extensive role that sets play and by the fact that most of the proofs they encounter are

### INTRODUCTION TO PROOFS: HOMEWORK SOLUTIONS

INTRODUCTION TO PROOFS: HOMEWORK SOLUTIONS STEVEN HEILMAN Contents 1. Homework 1 1 2. Homework 2 6 3. Homework 3 10 4. Homework 4 16 5. Homework 5 19 6. Homework 6 21 7. Homework 7 25 8. Homework 8 28

### 10. Graph Matrices Incidence Matrix

10 Graph Matrices Since a graph is completely determined by specifying either its adjacency structure or its incidence structure, these specifications provide far more efficient ways of representing a

### Review for Final Exam

Review for Final Exam Note: Warning, this is probably not exhaustive and probably does contain typos (which I d like to hear about), but represents a review of most of the material covered in Chapters

### Further linear algebra. Chapter I. Integers.

Further linear algebra. Chapter I. Integers. Andrei Yafaev Number theory is the theory of Z = {0, ±1, ±2,...}. 1 Euclid s algorithm, Bézout s identity and the greatest common divisor. We say that a Z divides

### CHAPTER 3 Boolean Algebra and Digital Logic

CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4

### 2.1.1 Examples of Sets and their Elements

Chapter 2 Set Theory 2.1 Sets The most basic object in Mathematics is called a set. As rudimentary as it is, the exact, formal definition of a set is highly complex. For our purposes, we will simply define

### Partitioning edge-coloured complete graphs into monochromatic cycles and paths

arxiv:1205.5492v1 [math.co] 24 May 2012 Partitioning edge-coloured complete graphs into monochromatic cycles and paths Alexey Pokrovskiy Departement of Mathematics, London School of Economics and Political

### Mathematics of Cryptography

CHAPTER 2 Mathematics of Cryptography Part I: Modular Arithmetic, Congruence, and Matrices Objectives This chapter is intended to prepare the reader for the next few chapters in cryptography. The chapter

### CSE140: Midterm 1 Solution and Rubric

CSE140: Midterm 1 Solution and Rubric April 23, 2014 1 Short Answers 1.1 True or (6pts) 1. A maxterm must include all input variables (1pt) True 2. A canonical product of sums is a product of minterms

### Finite Sets. Theorem 5.1. Two non-empty finite sets have the same cardinality if and only if they are equivalent.

MATH 337 Cardinality Dr. Neal, WKU We now shall prove that the rational numbers are a countable set while R is uncountable. This result shows that there are two different magnitudes of infinity. But we

### INCIDENCE-BETWEENNESS GEOMETRY

INCIDENCE-BETWEENNESS GEOMETRY MATH 410, CSUSM. SPRING 2008. PROFESSOR AITKEN This document covers the geometry that can be developed with just the axioms related to incidence and betweenness. The full

### Interactive Math Glossary Terms and Definitions

Terms and Definitions Absolute Value the magnitude of a number, or the distance from 0 on a real number line Additive Property of Area the process of finding an the area of a shape by totaling the areas

### Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits J.J. Shann Chapter Overview 2-1 Binary Logic and Gates 2-2 Boolean Algebra 2-3 Standard Forms 2-4 Two-Level Circuit Optimization 2-5 Map Manipulation 補 充 資 料 :Quine-McCluskey

### Sets and Cardinality Notes for C. F. Miller

Sets and Cardinality Notes for 620-111 C. F. Miller Semester 1, 2000 Abstract These lecture notes were compiled in the Department of Mathematics and Statistics in the University of Melbourne for the use

### Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March

### Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

### Chapter 3. Cartesian Products and Relations. 3.1 Cartesian Products

Chapter 3 Cartesian Products and Relations The material in this chapter is the first real encounter with abstraction. Relations are very general thing they are a special type of subset. After introducing

### Prime Numbers. Chapter Primes and Composites

Chapter 2 Prime Numbers The term factoring or factorization refers to the process of expressing an integer as the product of two or more integers in a nontrivial way, e.g., 42 = 6 7. Prime numbers are

### Karnaugh Map. Alternative way to Boolean Function Simplification. Karnaugh Map. Description of Kmap & Terminology

Alternative way to Boolean Function Simplification Karnaugh Map CIT 595 Spring 2010 Simplification of Boolean functions leads to simpler (and usually faster) digital circuits Simplifying Boolean functions

### MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS 1. SYSTEMS OF EQUATIONS AND MATRICES 1.1. Representation of a linear system. The general system of m equations in n unknowns can be written a 11 x 1 + a 12 x 2 +

### Lattice Point Geometry: Pick s Theorem and Minkowski s Theorem. Senior Exercise in Mathematics. Jennifer Garbett Kenyon College

Lattice Point Geometry: Pick s Theorem and Minkowski s Theorem Senior Exercise in Mathematics Jennifer Garbett Kenyon College November 18, 010 Contents 1 Introduction 1 Primitive Lattice Triangles 5.1

### 2. Propositional Equivalences

2. PROPOSITIONAL EQUIVALENCES 33 2. Propositional Equivalences 2.1. Tautology/Contradiction/Contingency. Definition 2.1.1. A tautology is a proposition that is always true. Example 2.1.1. p p Definition

### Definition: Group A group is a set G together with a binary operation on G, satisfying the following axioms: a (b c) = (a b) c.

Algebraic Structures Abstract algebra is the study of algebraic structures. Such a structure consists of a set together with one or more binary operations, which are required to satisfy certain axioms.

### Ex. Convert the Boolean function F = x + y z into a sum of minterms by using a truth table.

Section 3.5 - Minterms, Maxterms, Canonical Fm & Standard Fm Page 1 of 5 3.5 Canonical Fms In general, the unique algebraic expression f any Boolean function can be obtained from its truth table by using

### The Language of Mathematics

CHPTER 2 The Language of Mathematics 2.1. Set Theory 2.1.1. Sets. set is a collection of objects, called elements of the set. set can be represented by listing its elements between braces: = {1, 2, 3,

### Axiom A.1. Lines, planes and space are sets of points. Space contains all points.

73 Appendix A.1 Basic Notions We take the terms point, line, plane, and space as undefined. We also use the concept of a set and a subset, belongs to or is an element of a set. In a formal axiomatic approach

### Chapter 4. Gates and Circuits. Chapter Goals. Chapter Goals. Computers and Electricity. Computers and Electricity. Gates

Chapter Goals Chapter 4 Gates and Circuits Identify the basic gates and describe the behavior of each Describe how gates are implemented using transistors Combine basic gates into circuits Describe the

### Fundamentals of Mathematics Lecture 6: Propositional Logic

Fundamentals of Mathematics Lecture 6: Propositional Logic Guan-Shieng Huang National Chi Nan University, Taiwan Spring, 2008 1 / 39 Connectives Propositional Connectives I 1 Negation: (not A) A A T F

### TYPES OF NUMBERS. Example 2. Example 1. Problems. Answers

TYPES OF NUMBERS When two or more integers are multiplied together, each number is a factor of the product. Nonnegative integers that have exactly two factors, namely, one and itself, are called prime

### MATH 433 Applied Algebra Lecture 13: Examples of groups.

MATH 433 Applied Algebra Lecture 13: Examples of groups. Abstract groups Definition. A group is a set G, together with a binary operation, that satisfies the following axioms: (G1: closure) for all elements

### ECE Digital Logic Design. Laboratory Manual

ECE 1315 Digital Logic Design Laboratory Manual Guide to Assembling your Circuits Dr. Fernando Ríos-Gutiérrez Dr. Rocio Alba-Flores Dr. Chris Carroll Department of Electrical and Computer Engineering University

### Math 3000 Running Glossary

Math 3000 Running Glossary Last Updated on: July 15, 2014 The definition of items marked with a must be known precisely. Chapter 1: 1. A set: A collection of objects called elements. 2. The empty set (

### 3. Equivalence Relations. Discussion

3. EQUIVALENCE RELATIONS 33 3. Equivalence Relations 3.1. Definition of an Equivalence Relations. Definition 3.1.1. A relation R on a set A is an equivalence relation if and only if R is reflexive, symmetric,

### Class One: Degree Sequences

Class One: Degree Sequences For our purposes a graph is a just a bunch of points, called vertices, together with lines or curves, called edges, joining certain pairs of vertices. Three small examples of

### Logic gate implementation and circuit minimization

Logic gate implementation and circuit minimization Lila Kari The University of Western Ontario Logic gate implementation and circuit minimization CS2209, Applied Logic for Computer Science 1 / 48 Why binary?

### Sect Properties of Real Numbers and Simplifying Expressions

Sect 1.6 - Properties of Real Numbers and Simplifying Expressions Concept #1 Commutative Properties of Real Numbers Ex. 1a.34 + 2.5 Ex. 1b 2.5 + (.34) Ex. 1c 6.3(4.2) Ex. 1d 4.2( 6.3) a).34 + 2.5 = 6.84

### Introduction Number Systems and Conversion

UNIT 1 Introduction Number Systems and Conversion Objectives 1. Introduction The first part of this unit introduces the material to be studied later. In addition to getting an overview of the material

### Karnaugh Maps & Combinational Logic Design. ECE 152A Winter 2012

Karnaugh Maps & Combinational Logic Design ECE 52A Winter 22 Reading Assignment Brown and Vranesic 4 Optimized Implementation of Logic Functions 4. Karnaugh Map 4.2 Strategy for Minimization 4.2. Terminology