11.1 Boolean Functions
Boolean Algebra An algebra is a set with one or more operations defined on it. A boolean algebra has three main operations, and, or, and not, (typically operating on the set {0,1}). Rules of precedence for Boolean operators: PCoPS- parentheses, complements, products, sums OR+a+b AND∙ab NOTcomplement
Examples:
Laws of Boolean Algebra Double Complement Idempotent Identity Domination
More Laws of Boolean Algebra Commutative Associative Distributive
Laws of Boolean Algebra Concluded DeMorgan’s Laws Absorption Laws Unit Property Zero Property
“Proving” the Laws of Boolean Algebra If the underlying set is just {0,1}, we can prove these laws with truth tables, just as we did with propositional logic.
Duals and the Duality Principle The dual of a boolean expression is obtained by replacing all sums by products, all products by sums, all 0’s by 1’s, and all 1’s by 0’s. Example: The duality principle says that if an equation in a boolean algebra is an identity, i.e. always true no matter what the values of the variables, then the equation obtained by replacing both sides by their duals is also an identity.
Boolean Functions of Degree n on the Boolean algebra {0, 1}
Example: Boolean Function Table
Lattices and Boolean Algebra A lattice is a partially ordered set in which every pair of elements has both a least upper bound (lub) and a greatest lower bound (glb). The supremum a b is defined as lub(a,b) and the infimum a b is defined as glb(a,b) A lattice is said to be distributive if each of and distributes over the other. For a distributive lattice to be a Boolean algebra, there must be (a) a largest element 1, (b) a least element 0, and (c) for each element x a complement with the property that
11.2 Representing Boolean Functions ( n-ary functions on the set {0, 1} )
Disjunctive Normal Form Pick out all the ones in the “function table” column corresponding to the function value. Translate each to an “and” of n literals (a literal is a Boolean variable of the form x or ) Each such product is called a “minterm”. The desired function is the sum of these minterms, and is called the sum-of-products expansion or disjunctive normal form of the function.
Example
Another Example Find the DNF expansion of
Laws of Boolean Algebra Concluded DeMorgan’s Laws Absorption Laws Unit Property Zero Property
Functional Completeness A set of operators on an algebra is said to be functionally complete if any function of any degree on that algebra can be expressed in terms of those operators The set is functionally complete in any boolean algebra. But since, so is Also, since, is also functionally complete
The NAND Operation
The NOR Operation
11.3 Logic Gates Boolean algebra is the algebra of circuits. The elementary operations of the algebra correspond to circuit elements called gates.
Basic Types of Gates
Combinations of gates Branching and multiple inputs
Example Three switches x, y, and z, controlling a light xyzF(x,y,z)
Half-Adder Circuit
Full Adder
11.4 Minimization of Circuits Minimizing a circuit is minimizing the number of gates necessary to achieve the required outputs Equivalent to minimizing the Boolean function, i.e. to finding the least number of Boolean operations needed to compute the function Recall that any such function can be expressed as a sum of minterms –Note that the number of possible minterms is exponential in the number n of variables. –Note also that the number of functions is exponential in the number of minterms.
Karnaugh Maps for Two Variables Variables x and y Label rows with x and x, columns with y and y
Another Example
Karnaugh Maps (K-Maps) for Three Variables Variables x, y, and z Use x and x as row labels Use all possible products of y and z literals, arranged in a Gray code, as column labels The geometric picture is that of a band, since the last and first cells in each row are to be considered adjacent
Examples
Implicants, Prime Implicants, and Essential Prime Implicants
Example
K-Maps for Four Variables Variables w, x, y, and z Use all possible products of w and x literals, arranged in a Gray code, as row labels Use all possible products of y and z literals, arranged in a Gray code, as row labels Geometric picture is that of a torus
Example
Another Example
A light controlled by 4 switches:
The Quine-McCluskey Method Map each min-term into a bit string. E.g. map wxyz to Generate implicants as bit strings with wild card characters, such as 0–01 Prime implicants are those which are not generalized by any other implicant Essential prime implicants are those which generalize a min-term not generalized by any other implicant
Example wxyz, wxyz, wxyz, wxyz, wxyz, wxyz, wxyz
Check with Karnaugh Map
Link