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 :
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.
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.
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.
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.
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.