Notebook 19: Ultimately-Periodic Witnesses
The Ultimately-Periodic Fingerprint
A Büchi automaton is non-empty iff it has a reachable accepting cycle — a lasso: a stem from the initial state to an accepting state \(f\), then a cycle from \(f\) back to \(f\). Reading the stem once and the cycle forever gives an accepted word of the shape \[ \alpha = u\cdot v^{\omega},\qquad u = \text{stem},\ v = \text{cycle}, \] an ultimately-periodic word. Because a shortest stem and a shortest cycle each stay within the automaton, one can always find such a witness with \[ |u| < |Q| \quad\text{and}\quad |v| \le |Q|. \]
This is the fingerprint behind emptiness (Notebook 14): non-emptiness is not just a yes/no answer — it comes with a concrete, finitely-described infinite witness.
The automaton below is the editor that saves infinitely often (initial open, then it accepts iff save recurs forever). Pick a loop through the accepting checkpoint \(f\) and read off the witness.
Widget: read a witness off a lasso
Automaton: "infinitely many saves"
Choose a loop through f
Witness
Run of α (stem + 3 loops)
The loop (save) gives the shortest witness open·(save)ω = open save save save …; the loop (edit save) gives open·(edit save)ω. Both are accepted, both are ultimately periodic, and both fit inside the state bound. Different lassos, same language — the witness is never unique, but one always exists whenever the language is non-empty.