Minterms
A minterm is a product of AND operations involving all input variables $x_i$ of a Boolean function. It is expressed in a form that cannot be simplified further and makes the function true (y=1). Each input variable is either in its true form $x_i$ if it equals 1, or in its complemented form $\overline{x_i}$ if it equals 0.
To clarify, consider a Boolean function as a mapping that dictates the output of a system based on specific inputs of either true (1) or false (0).
Example
Consider a Boolean function with three variables: $x_1$, $x_2$, and $x_3$.
$$ y = f(x_1,x_2,x_3) $$
In this scenario, $x_1, x_2, x_3$ are the inputs and $y$ is the function's output.
The truth table for this function might look something like this:
$$ \begin{array}{|c|c|c|c|} \hline m & x_1 & x_2 & x_3 & y & \\ \hline m_1 & 0 & 0 & 0 & 1 & \overline{x_1} \overline{x_2} \overline{x_3} \\ m_2 & 0 & 0 & 1 & 0 & \overline{x_1} \overline{x_2} x_3 \\ m_3 & 0 & 1 & 0 & 0 & \overline{x_1} x_2 \overline{x_3} \\ m_4 & 0 & 1 & 1 & 1 & \overline{x_1} x_2 x_3 \\ m_5 & 1 & 0 & 0 & 0 & x_1 \overline{x_2} \overline{x_3} \\ m_6 & 1 & 0 & 1 & 1 & x_1 \overline{x_2} x_3 \\ m_7 & 1 & 1 & 0 & 1 & x_1 x_2 \overline{x_3} \\ m_8 & 1 & 1 & 1 & 0 & x_1 x_2 x_3 \\ \hline \end{array} $$
The minterms are the rows in the truth table that result in a y=1 output for the function:
In this instance, the input combinations that set the Boolean function f(x1,x2,x3) to true (y=1) are the first ($m_1$), the fourth ($m_4$), the sixth ($m_6$), and the seventh ($m_7$).
$$ \begin{array}{|c|c|c|c|} \hline m & x_1 & x_2 & x_3 & y & \\ \hline m_1 & 0 & 0 & 0 & \color{red}1 & \overline{x_1} \overline{x_2} \overline{x_3} \\ m_2 & 0 & 0 & 1 & 0 & \overline{x_1} \overline{x_2} x_3 \\ m_3 & 0 & 1 & 0 & 0 & \overline{x_1} x_2 \overline{x_3} \\ m_4 & 0 & 1 & 1 & \color{red}1 & \overline{x_1} x_2 x_ 3 \\ m_5 & 1 & 0 & 0 & 0 & x_1 \overline{x_2} \overline{x_3} \\ m_6 & 1 & 0 & 1 & \color{red}1 & x_1 \overline{x_2} x_3 \\ m_7 & 1 & 1 & 0 & \color{red}1 & x_1 x_2 \overline{x_3} \\ m_8 & 1 & 1 & 1 & 0 & x_1 x_2 x_3 \\ \hline \end{array} $$
The minterms are combinations of variables from rows where \( y \) equals 1:
$$ m_1 = \overline{x_1} \cdot \overline{x_2} \cdot \overline{x_3} $$
$$ m_4 = \overline{x_1} \cdot x_2 \cdot x_3 $$
$$ m_6 = x_1 \cdot \overline{x_2} \cdot x_3 $$
$$ m_7 = x_1 \cdot x_2 \cdot \overline{x_3} $$
Each minterm corresponds to a configuration where the output is 1. It uses the negated form of the variable \( \neg{x_i} \) if \( x_i = 0 \) is false, or its standard form \( x_i \) if \( x_i = 1 \) is true.
The sum of these minterms forms the canonical sum-of-products representation of the function.
$$ y = m_1 + m_4 + m_6 + m_7 $$
This aggregation is also referred to as the "disjunctive normal form" or "DNF," which denotes the conventional expression of a Boolean function as a logical sum (disjunction) of product terms (conjunctions) of input variables.
To put it explicitly, by replacing the minterms with their Boolean variable expressions, we get:
$$ y = \overline{x_1} \cdot \overline{x_2} \cdot \overline{x_3} + \overline{x_1} \cdot x_2 \cdot x_3 + x_1 \cdot \overline{x_2} \cdot x_3 + x_1 \cdot x_2 \cdot \overline{x_3} $$
This simplification omits the multiplication symbols for clarity.
$$ y = \overline{x_1} \overline{x_2} \overline{x_3} + \overline{x_1} x_2 x_3 + x_1 \overline{x_2} x_3 + x_1 x_2 \overline{x_3} $$
This representation describes the conditions under which the Boolean function f(x1,x2,x3) returns "true" (y=1).
Minterms are invaluable in logic circuit design, providing a direct representation of the conditions that activate a device.
Minterms can be visualized and simplified using tools like Karnaugh maps or Veitch diagrams, which are graphical methods for reducing the complexity of Boolean functions. These techniques facilitate the identification of the simplest form of a function, minimizing the number of components necessary for circuit construction.