# Canonical Forms:

There are two types of canonical forms:

1. Disjunctive Normal Forms or Sum of Products or (SOP).
2. Conjunctive Normal Forms or Products of Sums or (POS).

## Disjunctive Normal Forms or Sum of Products or (SOP):

A Boolean expression over ({0, 1}, ∨,∧,') is said to be in disjunctive normal form if it is a join of minterms

Example: (x1'∧x2'∧x3')∨( x1'∧x2∧x3' )∨(x1∧x2∧x3) is a Boolean expression in disjunctive normal form.

Since there are three min-terms x1'∧x2'∧x3',x1'∧x2∧x3 and x1∧x2∧x3.

Max-term: A Boolean Expression of n variables x1,x2,....xnis said to be a max-term if it is of the form x1∨x2∨..........∨xn

where xi is used to denote xi or xi'.

## Conjunctive Normal Forms or Products of Sums or (POS):

A Boolean expression over ({0, 1}, ∨,∧,') is said to be in a disjunctive normal form if it is a meet of max-terms

Example:

(x1∨x2∨x3)∧( x1∨x2∨x3 )∧(x1∨x2∨x3 )∧(x1'∨x2∨x3' )∧(x1'∧x2'∧x3)

is a Boolean expression in conjunctive normal form consisting of five max-terms.

## Obtaining A Disjunctive Normal Form:

Consider a function from {0, 1}n to {0, 1}. A Boolean expression can be obtained in disjunctive normal forms corresponding to this function by having a min-term corresponding to each ordered n-tuples of 0's and 1's for which the value of the function is 1.

## Obtaining A Conjunctive Normal Form:

Consider a function from {0, 1}n to {0, 1}. A Boolean expression can be obtained in conjunctive normal forms corresponding to this function by having a max-term corresponding to each ordered n-tuples of 0's and 1's for which the value of function is0.

Example: Express the following function in

1. Disjunctive Normal Form
2. Conjunctive Normal Form
 f f (0, 0, 0) 1 (1, 0, 0) 0 (0, 0, 1) 0 (1, 0, 1) 1 (0, 1, 0) 1 (1, 1, 0) 0 (0, 1, 1) 0 (1, 1, 1) 1

Solution:

1. (x1'∧ x2' ∧ x3') ∨(x1'∧x2∧ x3' )∨(x1∧x2'∧x3 )∨(x1∧x2∧x3)
2. (x1'∨x2'∨x3')∧( x1'∨x2∨x3 )∧(x1∨x2'∨x3' )∧(x1∨x2∨x3')

## Principle of Duality:

The dual of any expression E is obtained by interchanging the operation + and * and also interchanging the corresponding identity elements 0 and 1, in original expression E.

Example: Write the dual of following Boolean expressions:

1. (x1*x2) + (x1*x3')         2. (1+x2)*( x1+1)
3. (a ∧(b∧c))

Solution:

1. ( x1+x2)*( x1+x3')         2. (0*x2)+( x1*0)
3. (a ∨(b∧c))

#### Note: The dual of any theorem in a Boolean algebra is also a theorem.   