0% found this document useful (0 votes)
8 views23 pages

Boolean Algebra

linear Algebra

Uploaded by

bscs23f06
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views23 pages

Boolean Algebra

linear Algebra

Uploaded by

bscs23f06
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 23

Yes, No, Maybe...

Boolean
Algebra

CMSC 203 - Discrete Structures 1


Boolean Algebra
Boolean algebra provides the operations and
the rules for working with the set {0, 1}.
These are the rules that underlie electronic
circuits, and the methods we will discuss are
fundamental to VLSI design.
We are going to focus on three operations:
• Boolean complementation,
• Boolean sum, and
• Boolean product

CMSC 203 - Discrete Structures 2


Boolean Operations
The complement is denoted by a bar (on the
slides, we will use a minus sign). It is defined by
-0 = 1 and -1 = 0.

The Boolean sum, denoted by + or by OR, has


the following values:
1 + 1 = 1, 1 + 0 = 1, 0 + 1 = 1, 0+0=0

The Boolean product, denoted by  or by


AND, has the following values:
1  1 = 1, 1  0 = 0, 0  1 = 0, 00=0

CMSC 203 - Discrete Structures 3


Boolean Functions and Expressions
Definition: Let B = {0, 1}. The variable x is
called a Boolean variable if it assumes values
only from B.
A function from Bn, the set {(x1, x2, …, xn) |xiB,

1  i  n}, to B is called a Boolean function


of degree n.

Boolean functions can be represented using


expressions made up from the variables and
Boolean operations.
CMSC 203 - Discrete Structures 4
Boolean Functions and Expressions
The Boolean expressions in the variables x1, x2,
…, xn are defined recursively as follows:
• 0, 1, x1, x2, …, xn are Boolean expressions.
• If E1 and E2 are Boolean expressions, then (-E1),

(E1E2), and (E1 + E2) are Boolean expressions.

Each Boolean expression represents a Boolean


function. The values of this function are obtained
by substituting 0 and 1 for the variables in the
expression.
CMSC 203 - Discrete Structures 5
Boolean Functions and Expressions
For example, we can create Boolean expression
in the variables x, y, and z using the “building
blocks”
0, 1, x, y, and z, and the construction rules:
Since x and y are Boolean expressions, so is xy.
Since z is a Boolean expression, so is (-z).
Since xy and (-z) are expressions, so is xy + (-
z).
… and so on…

CMSC 203 - Discrete Structures 6


Boolean Functions and Expressions
Example: Give a Boolean expression for the
Boolean function F(x, y) as defined by the
following table:
x y F(x, y)
0 0 0
0 1 1
1 0 0
1 1 0

Possible solution: F(x, y) = (-x)y


CMSC 203 - Discrete Structures 7
Boolean Functions and Expressions
Another Example: Possible solution I:

x y z F(x, y, z) F(x, y, z) = -(xz + y)

0 0 0 1
0 0 1 1 Possible solution II:
0 1 0 0 F(x, y, z) = (-(xz))(-y)
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0
CMSC 203 - Discrete Structures 8
Boolean Functions and Expressions
There is a simple method for deriving a Boolean
expression for a function that is defined by a
table. This method is based on minterms.
Definition: A literal is a Boolean variable or
its complement. A minterm of the Boolean
variables x1, x2, …, xn is a Boolean product
y1y2…yn, where yi = xi or yi = -xi.
Hence, a minterm is a product of n literals, with
one literal for each variable.

CMSC 203 - Discrete Structures 9


Boolean Functions and Expressions
Consider F(x,y,z) again: F(x, y, z) = 1 if and
x y z F(x, y, z) only if:
0 0 0 1 x = y = z = 0 or
0 0 1 1 x = y = 0, z = 1 or
0 1 0 0 x = 1, y = z = 0
0 1 1 0
Therefore,
1 0 0 1
1 0 1 0 F(x, y, z) =
(-x)(-y)(-z) +
1 1 0 0
(-x)(-y)z +
1 1 1 0
x(-y)(-z)
CMSC 203 - Discrete Structures 10
Boolean Functions and Expressions

Definition: The 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 belong
to B.
Two different Boolean expressions that
represent the same function are called
equivalent.
For example, the Boolean expressions xy, xy +
0, and xy1 are equivalent.

CMSC 203 - Discrete Structures 11


Boolean Functions and Expressions

The complement of the Boolean function F is the


function –F, where –F(b1, b2, …, bn) =
-(F(b1, b2, …, bn)).
Let F and G be Boolean functions of degree n. The
Boolean sum F+G and Boolean product FG
are then defined by
(F + G)(b1, b2, …, bn) = F(b1, b2, …, bn) + G(b1, b2,
…, bn)
(FG)(b1, b2, …, bn) = F(b1, b2, …, bn) G(b1, b2, …, bn)

CMSC 203 - Discrete Structures 12


Boolean Functions and Expressions
Question: How many different Boolean functions of
degree 1 are there?
Solution: There are four of them, F1, F2, F3, and F4:

x F1 F2 F3 F4

0 0 0 1 1

1 0 1 0 1

CMSC 203 - Discrete Structures 13


Boolean Functions and Expressions
Question: How many different Boolean
functions of degree 2 are there?
Solution: There are 16 of them, F1, F2, …, F16:
x y F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16

0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

CMSC 203 - Discrete Structures 14


Boolean Functions and Expressions
Question: How many different Boolean
functions of degree n are there?
Solution:
There are 2n different n-tuples of 0s and 1s.
A Boolean function is an assignment of 0 or 1
to each of these 2n different n-tuples.
n
Therefore, there are 2 2
different Boolean
functions.

CMSC 203 - Discrete Structures 15


Duality
There are useful identities of Boolean
expressions that can help us to transform an
expression A into an equivalent expression B
(see Table 5 on page 597 in the textbook).
We can derive additional identities with the
help of the dual of a Boolean expression.
The dual of a Boolean expression is obtained
by interchanging Boolean sums and Boolean
products and interchanging 0s and 1s.

CMSC 203 - Discrete Structures 16


Duality
Examples:
The dual of x(y + z) is x + yz.
The dual of -x1 + (-y + z) is (-x + 0)((-y)z).

The dual of a Boolean function F represented


by a Boolean expression is the function
represented by the dual of this expression.
This dual function, denoted by Fd, does not
depend on the particular Boolean expression
used to represent F.

CMSC 203 - Discrete Structures 17


Duality
Therefore, an identity between functions
represented by Boolean expressions remains
valid when the duals of both sides of the
identity are taken.
We can use this fact, called the duality
principle, to derive new identities.
For example, consider the absorption law
x(x + y) = x.
By taking the duals of both sides of this
identity, we obtain the equation x + xy = x,
which is also an identity (and also called an
absorption law).
CMSC 203 - Discrete Structures 18
Definition of a Boolean Algebra
All the properties of Boolean functions and
expressions that we have discovered also
apply to other mathematical structures
such as propositions and sets and the
operations defined on them.
If we can show that a particular structure is a
Boolean algebra, then we know that all results
established about Boolean algebras apply to
this structure.
For this purpose, we need an abstract
definition of a Boolean algebra.
CMSC 203 - Discrete Structures 19
Definition of a Boolean Algebra
Definition: 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:
x  0 = x and x  1 = x (identity laws)
x  (-x) = 1 and x  (-x) = 0 (domination laws)
(x  y)  z = x  (y  z) and
(x  y)  z = x  (y  z) and (associative laws)
x  y = y  x and x  y = y  x (commutative
laws)
x  (y  z) = (x  y)  (x  z) and
x  (y  z) = (x  y)  (x  z) (distributive laws)
CMSC 203 - Discrete Structures 20
Logic Gates
Electronic circuits consist of so-called gates.
There are three basic types of gates:

x -x
inverter

x x+
OR gate
y
y

x xy
AND gate
y
CMSC 203 - Discrete Structures 21
Logic Gates
Example: How can we build a circuit that
computes the function xy + (-x)y ?

x xy
y
xy + (-
x)y

x -x
(-x)y
y
CMSC 203 - Discrete Structures 22
The
End
CMSC 203 - Discrete Structures 23

You might also like