Sparse RAM public-input initialization definitions #
This layer constructs the reusable sparse-snapshot ABI from the standard TM
input tape. It emits nonzero bit registers in increasing address order, then
appends the nonzero length register R₀. The resulting order need not equal
initialStore; it is a canonical sparse store representing the same total
RAM register file.
Streaming-friendly public-input store: bit registers first and the nonzero length register last.
Equations
Instances For
Sparse initial snapshot used by the concrete initialization machine.
Equations
- Complexity.RAM.RegisterStore.Machine.programInitialSnapshot input = { pc := 0, store := Complexity.RAM.RegisterStore.Machine.programInitialStore input }
Instances For
Number of nonzero entries emitted by the bit-register prefix.
Equations
Instances For
Append-positioned binary tape for an emitted store prefix.
Equations
- Complexity.RAM.RegisterStore.Machine.programBinaryPrefixTape bits = { head := bits.length + 1, cells := (Complexity.Tape.init (List.map Complexity.Γ.ofBool bits)).cells }
Instances For
Exact work family at a streaming input-loop boundary.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Streaming input-loop invariant. Only the current address, fixed value one, runtime entry count, and append buffer differ from the standard blank frame.
- address : (work tapes.liftedLhs).HasBinaryNat address
- value : (work tapes.lifted.data.rhs).HasBinaryNat 1
- count : (work tapes.lifted.data.update.remaining).HasBinaryNat count
- buffer : (work tapes.buffer).HasBinaryPrefix (List.flatMap Entry.encode entries)
Instances For
Recursive work-independent streaming-loop bound.
Equations
- One or more equations did not get rendered due to their size.
- Complexity.RAM.RegisterStore.Machine.initialInputLoopTime tapes x✝¹ x✝ [] = 1
Instances For
Dynamic address/value assignment for one nonzero input bit.
Equations
Instances For
Address-zero/length assignment for the final R₀ entry.
Equations
Instances For
Emit one nonzero bit entry, restore both entry sources to cell one, then increment the runtime entry count and current input address.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A zero input bit emits no entry and only advances the current address.
Equations
Instances For
Driver phases for streaming over the real Boolean input.
- scan : InitialInputPhase
- done : InitialInputPhase
Instances For
Equations
- One or more equations did not get rendered due to their size.
State space of the public-input bit loop.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Scan the real input without moving before body entry. Each 1 invokes the
entry-emitting body, each 0 invokes the address-only body, and the preserving
body seam advances the input by one cell.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Emit the nonzero R₀ = |input| entry and increment the entry count.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Skip the length entry at zero; otherwise append it to the buffer.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Selected-branch bound for optional length-register emission.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Cleanup targets used after the complete input store has been copied into the read-only source role.
Equations
Instances For
Canonical contents reset by the final two-target cleanup.
Equations
Instances For
Exact compositional bound for installing a completed store into the program-loop ABI.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Park the standard initial tapes and seed the streaming address/value sources with one.
Equations
Instances For
Restore the address cursor from |input| + 1 to |input|, then append
the optional nonzero length register.
Equations
Instances For
Copy the completed buffer into the reusable source/count roles and clear the remaining initialization temporaries.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Install the length entry, source/count ABI, and clean loop temporaries.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Complete public-input initialization. A leading skip parks every standard initial tape, the streaming loop writes the sparse store into the last buffer, and the tail installs the reusable source/count ABI and clears temporary roles.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Exact compositional time bound for complete public-input initialization.
Equations
- One or more equations did not get rendered due to their size.