Implication table

An implication table is a tool used to facilitate the minimization of states in a state machine. The concept is to start assuming that every state may be able to combine with every other state, then eliminate combinations that are not possible. When all the impossible combinations have been eliminated, the remaining state combinations are valid, and thus can be combined.

The procedure is as follows:
 * 1) List state-combination possibilities in an implication table,
 * 2) Eliminate combinations that are impossible because the states produce different outputs,
 * 3) Eliminate combinations that are impossible because the combination depends on the equivalence of a previously eliminated possibility,
 * 4) Repeat the above step until no more eliminations are possible.