Open In App

Canonical and Standard Form

Last Updated : 08 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Canonical Form – In Boolean algebra, the Boolean function can be expressed as Canonical Disjunctive Normal Form known as minterm and some are expressed as Canonical Conjunctive Normal Form known as maxterm
In Minterm, we look for the functions where the output results in “1” while in Maxterm we look for functions where the output results in “0”. 
We perform the Sum of minterm also known as the Sum of products (SOP). 
We perform Product of Maxterm also known as Product of sum (POS). 
Boolean functions expressed as a sum of minterms or product of maxterms are said to be in canonical form. 

Standard Form – A Boolean variable can be expressed in either true or complementary forms. In standard form Boolean function will contain all the variables in either true form or complemented form while in canonical number of variables depends on the output of SOP or POS. 

A Boolean function can be expressed algebraically from a given truth table by forming a : 

  • minterm for each combination of the variables that produces a 1 in the function and then takes the OR of all those terms.
  • maxterm for each combination of the variables that produces a 0 in the function and then takes the AND of all those terms.

Truth table representing minterm and maxterm – 

From the above table it is clear that minterm is expressed in product format and maxterm is expressed in sum format. 

Sum of minterms – 
The minterms whose sum defines the Boolean function are those which give the 1’s of the function in a truth table. Since the function can be either 1 or 0 for each minterm, and since there are 2^n minterms, one can calculate all the functions that can be formed with n variables to be (2^(2^n)). It is sometimes convenient to express a Boolean function in its sum of minterm form. 
 

Product of maxterms –

When dealing with Boolean algebra, the product of maxterms is a handy way to express how combinations of inputs lead to a result of 0. Maxterms basically tell us which combinations of inputs won’t give us a 1 as an output. They are the opposite of minterms, which tell us when we get a 1.

  • Example – Express the Boolean function F = A + B’C as standard sum of minterms.
    • Solution – 
      A = A(B + B’) = AB + AB’ 
      This function is still missing one variable, so 
      A = AB(C + C’) + AB'(C + C’) = ABC + ABC’+ AB’C + AB’C’ 
      The second term B’C is missing one variable; hence, 
      B’C = B’C(A + A’) = AB’C + A’B’C 
      Combining all terms, we have 
      F = A + B’C = ABC + ABC’ + AB’C + AB’C’ + AB’C + A’B’C 
      But AB’C appears twice, and 
      according to theorem 1 (x + x = x), it is possible to remove one of those occurrences. Rearranging the minterms in ascending order, we finally obtain 
      F = A’B’C + AB’C’ + AB’C + ABC’ + ABC 
      = m1 + m4 + m5 + m6 + m7 
      SOP is represented as Sigma(1, 4, 5, 6, 7)
  • Example – Express the Boolean function F = xy + x’z as a product of maxterms
    • Solution – 
      F = xy + x’z = (xy + x’)(xy + z) = (x + x’)(y + x’)(x + z)(y + z) = (x’ + y)(x + z)(y + z) 
      x’ + y = x’ + y + zz’ = (x’+ y + z)(x’ + y + z’)
      x + z = x + z + yy’ = (x + y + z)(x + y’ + z)
      y + z = y + z + xx’ = (x + y + z)(x’ + y + z) 
      F = (x + y + z)(x + y’ + z)(x’ + y + z)(x’ + y + z’) 
      = M0*M2*M4*M5 
      POS is represented as Pi(0, 2, 4, 5)
  • Example – 
    • Solution – F(A, B, C) = Sigma(1, 4, 5, 6, 7) 
      F'(A, B, C) = Sigma(0, 2, 3) = m0 + m2 + m3 
      Now, if we take the complement of F’ by DeMorgan’s theorem, we obtain F in a different form: 
      F = (m0 + m2 + m3)’ 
      = m0’m2’m3′ 
      = M0*M2*M3 
      = PI(0, 2, 3) 
  • Example – Convert Boolean expression in standard form F=y’+xz’+xyz
    • Solution – F = (x+x’)y'(z+z’)+x(y+y’)z’ +xyz 
      F = xy’z+ xy’z’+x’y’z+x’y’z’+ xyz’+xy’z’+xyz 

 Advantages of Canonical Form:

Uniqueness: The canonical form of a boolean function is unique, which means that there is only one possible canonical form for a given function.
Clarity: The canonical form of a boolean function provides a clear and unambiguous representation of the function.
Completeness: The canonical form of a boolean function can represent any possible boolean function, regardless of its complexity.
 

Disadvantages of Canonical Form:

Complexity: The canonical form of a boolean function can be complex, especially for functions with many variables.
Computation: Computing the canonical form of a boolean function can be computationally expensive, especially for large functions.
Redundancy: The canonical form of a boolean function can be redundant, which means that it can contain unnecessary terms or variables that do not affect the function.
 

Advantages of Standard Form:

Simplicity: The standard form of a boolean function is simpler than the canonical form, making it easier to understand and work with.
Efficiency: The standard form of a boolean function can be implemented using fewer logic gates than the canonical form, which makes it more efficient in terms of hardware and computation.
Flexibility: The standard form of a boolean function can be easily modified and combined with other functions to create new functions that meet specific design requirements.
 

Disadvantages of Standard Form:

Non-uniqueness: The standard form of a boolean function is not unique, which means that there can be multiple possible standard forms for a given function.
Incompleteness: The standard form of a boolean function may not be able to represent some complex boolean functions.
Ambiguity: The standard form of a boolean function can be ambiguous, especially if it contains multiple equivalent expressions.
 


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads