Streamable deterministic unrolling families — definitions #
The nonuniform unrolling family fixes the choice prefix of tm.toNTM by
repeated typed-circuit hardwiring. That construction has convenient semantics,
but its serialized syntax is needlessly difficult for a log-space generator to
reproduce.
For a deterministic machine, the embedded NTM ignores every choice bit. At
positive input lengths this module therefore reuses primary input wire zero for
all choice positions and leaves the ordinary data wires in place. The resulting
typed circuit is reconstructed directly from acceptanceRawCircuit, so erasing
it recovers exactly the raw list that a streaming generator will emit.
Positive-arity input layout for deterministic unrolling. Data bit i
remains primary input i; every semantically irrelevant choice position reuses
primary input zero.
Equations
Instances For
The exact raw circuit underlying the streamable positive-length member.
Equations
- tm.directUnrollingRawCircuit f n = Complexity.CircuitUnrolling.acceptanceRawCircuit tm.toNTM (f n) n n (Complexity.CircuitUnrolling.deterministicInputWires (f n) n)
Instances For
Total tagged code specification for the direct family. The zero-length case is the explicit answer bit; every positive case is the literal raw tableau encoding that the future streaming transducer must produce.
Equations
- tm.directUnrollingCode f 0 = [false, Complexity.CircuitUnrolling.boundedAcceptanceBit tm.toNTM (f 0) (fun (i : Fin 0) => i.elim0) fun (x : Fin (f 0)) => false]
- tm.directUnrollingCode f n.succ = true :: (tm.directUnrollingRawCircuit f (n + 1)).encode
Instances For
A deterministic unrolling family whose positive members are reconstructed directly from their raw tableau circuits. Unlike the older fixed-prefix family, its canonical serialization has no intervening hardwiring transformation.
Equations
- One or more equations did not get rendered due to their size.