3.4.12 · D1Sequential Circuits

Foundations — State minimization techniques

1,975 words9 min readBack to topic

This page assumes nothing. Every arrow, letter, and squiggle used in the parent note is unpacked here, in the order a beginner needs them. If a symbol confused you up there, it is defined here first.


0. The picture we keep returning to

Everything about minimization lives inside a state diagram: bubbles connected by labelled arrows. Before any algebra, burn this picture into your mind.

Figure — State minimization techniques
  • Each circle = a state — one distinct "situation" the machine can be sitting in.
  • Each arrow = a transition — "if this input arrives, jump to that circle."
  • The label on an arrow = the input that triggers the jump.
  • The number written near/in a circle or on the arrow = the output.

Every symbol below is just a piece of this drawing given a name.


1. State — the memory box

Symbols the parent uses for individual states: (or when talking abstractly). These are just names of circles — nothing more.

Related building block: Flip-Flops are the physical hardware that actually stores which state you are in. See §7.


2. Input and output — the outside world talking

The set notation reads literally: " is a member of the set containing 0 and 1." The curly braces { } mean "the collection of," and means "belongs to." That is the entire meaning — no calculus, no hidden depth.


3. Moore vs Mealy — WHERE the output lives

This distinction decides how we start the whole algorithm, so it must be crystal clear.

Figure — State minimization techniques

The whole framework is a Finite State Machine — "finite" because there is a limited number of circles.


4. The transition function — the arrow, written as algebra

Why introduce a symbol at all when we have arrows? Because the algorithm must talk about "the next state of AND the next state of , for every input, and whether those are equivalent." Saying that in pictures every time is exhausting; lets us write it in one line. That is the only reason the symbol exists — compression of the arrow.


5. Equivalence, and the symbol

We now build the single most important idea: two circles being indistinguishable.

Figure — State minimization techniques

What kind of relation is ? The parent calls it an equivalence relation. That phrase means it obeys three natural rules:

Why do we care about these three laws? Because they guarantee the states fall into clean, non-overlapping groups. No state can be "a little bit in two groups." Those groups are called equivalence classes, and each class collapses to one circle in the minimized machine. This clean-grouping guarantee is what makes minimization possible, and it is formalised by the Myhill–Nerode Theorem.


6. Partitions and blocks — the notation

The number this whole exercise minimizes is the state count , which sets the flip-flop count next.


7. From state count to hardware — the ceiling-log

Figure — State minimization techniques

Each surviving block is given a bit-pattern by State Assignment (Encoding), and the resulting next-state/output logic is then simplified with Karnaugh Maps. So minimization sits upstream of both.


The prerequisite map

Finite State Machine circles and arrows

Input x and Output

Moore vs Mealy output placement

Transition function delta lookup

Equivalent states p equiv q

Equivalence relation three laws

Partition and blocks P_k

Refinement P0 to P1 to stable

State minimization

Flip-Flop count ceil log2 N

State Assignment then Karnaugh Maps


Equipment checklist

What does a single circle in a state diagram represent?
One state — one complete "situation" the machine's memory can hold.
What does mean, symbol by symbol?
belongs to the set whose members are 0 and 1 — i.e. the input is either 0 or 1.
Where does the output live in a Moore machine vs a Mealy machine?
Moore: one value per state (circle). Mealy: one value per input, so a whole output row per state (arrows).
Read in plain words.
From state , when input arrives, the machine goes to state (it's an arrow lookup, not a calculation).
What does mean, and why not ?
For every input string and give identical outputs; marks "behaves the same" even though they are different circles.
Name the three laws that make an equivalence relation.
Reflexive (), symmetric (), transitive ().
What is a block of a partition?
One group of states in a chopping-up where every state lands in exactly one group.
What does the subscript in track?
How many steps of future input have been used to distinguish states so far.
What does mean?
is at least as coarse (bigger blocks) as ; refinement only splits blocks, never merges.
Compute the flip-flops needed for 5 states.
flip-flops.