Professional Documents
Culture Documents
Section 10.1: Boolean Functions
Section 10.1: Boolean Functions
Boolean Functions
1
Computers & Boolean Algebra
• Circuits in computers have inputs whose values
are either 0 or 1
• Mathematician George Boole set forth basic
rules of logic, which subsequently were
adapted to define basic circuits; these rules
form basis of Boolean algebra
• Operation of a circuit is defined by a Boolean
function that specifies the output for each set of
inputs
2
Boolean algebra
• Boolean algebra provides operations and rules
for working with set {0,1}
• Most common operations are:
– complement (NOT)
– Boolean sum (OR)
– Boolean product (AND)
• Rules of precedence: 1) complement, 2)
product, 3) sum
3
Notation for Boolean algebra
Complement is denoted by bar: 0 = 1 and 1 =0
4
Example 1
=0
5
Boolean algebra & logical
operations
• Boolean algebraic operations correspond to
logical operations:
– complement =
– sum =
– product =
– 0 = F, 1 = T
• Results of Boolean algebra can be directly
translated into results about propositions, and
vice-versa
6
Boolean functions
• Let B = {0, 1}
– a variable x is a Boolean variable if it assumes values
only from B
– a function from Bn = {(x1, x2, … xn) | xi B, 1<=i<= n}
to B is a Boolean function of degree n
• Values of a Boolean function are often displayed
in tables resembling truth tables
7
Boolean expressions
• Boolean functions can be represented using expressions
made up from the variables and Boolean operations
• Boolean expressions in the variables x1, x2, … xn are
defined recursively as:
– 0, 1, x1, x2, …. ,xn are Boolean expressions;
– if E1 and E2 are Boolean expressions, then their complements,
(E1E2) and (E1+E2) are Boolean expressions
• Each Boolean expression represents a Boolean function;
values of the function are obtained by substituting 0 and 1
for variables in the expression
8
Example 2
Find the values of the Boolean function represented by
F(x,y,z) = xy + z
x y z xy z F(x,y,z)
1 1 1 1 0 1
1 1 0 1 1 1
1 0 1 0 0 0
1 0 0 0 1 1
0 1 1 0 0 0
0 1 0 0 1 1
0 0 1 0 0 0
0 0 0 0 1 1 9
Properties & Operations on
Boolean Functions
• Boolean functions F and G of n variables
are equal if and only if F(b1, b2, … bn) =
G(b1, b2, … bn) whenever b1, b2, … bn B
• Boolean expressions that represent the same
function are equivalent- e.g. xy, xy+0, xy.1
• Complement of a Boolean function F is the
function F where F(x1,…,xn) = F(x1,…,xn)
10
Boolean sums & products of
functions
• Let F and G be Boolean functions of degree
n
– Boolean sum F+G is defined by (F+G)(x1,…,xn)
= F(x1,…,xn) + G(x1,… ,xn)
– Boolean product FG is defined by (FG)(x1,
…,xn) = F(x1,…,xn)G(x1,…,xn)
11
Boolean functions of degree n
• A Boolean function of degree 2 is a function
from a set of 4 elements (pairs of elements
from B={0,1}) to B, a set with 2 elements
• There are 16 different Boolean functions of
degree 2:
14
Example 3: Proof of DeMorgan’s
first law
x y x y xy xy x+y
1 1 0 0 1 0 0
1 0 0 1 0 1 1
0 1 1 0 0 1 1
0 0 1 1 0 1 1
15
Example 4
Prove the absorption law: x(x + y) = x using the identities of
Boolean algebra
17
Example 5
Find the dual of x(y + 0)
Substitute 0 forx1:+ (y . 0)
x + (y . 1)
18
Duality
• The dual of a Boolean function F represented by a
Boolean expression is the function represented by the
dual of the expression
• This dual function Fd, does not depend of the particular
Boolean expression used to represent F; an identity
between functions represented by Boolean expressions
remains valid when the duals of both sides of the
identity are taken
• This duality principle is useful for obtaining new
identities
19
Example 6
• Construct an identity from the absorption
law: x(x + y) = x
• Taking duals of both sides:
– x + (x . y)
–x
• Result is x + xy = x, also called the
absorption law
20
Abstract definition of a Boolean
algebra
• Most common way to define a Boolean
algebra is to specify properties that
operations must satisfy
• Next slide illustrates such a definition
21
Definition of a Boolean algebra
A Boolean algebra is a set B with two binary operations and ,
_
elements 0 and 1 and a unary operation such that the following
properties hold for all x, y and z in B:
Identity laws: x 0 = x and x 1 = x
Domination laws: x x = 1 and x x = 0
Associative laws: (x y) z = x (y z) and
(x y) z = x (y z)
Commutative laws: x y = y x and x y = y x
Distributive laws: x (y z) = (x y) (x z) and
x (y z) = (x y) (x z) 22
Section 10.1
Boolean Functions
23