Documentation

Complexitylib.Classes.PPoly.Uniform.Unrolling.Generator.Transition.Effect

Direct-unrolling transition-effect generator #

Exact contracts for the generated disjunction over a machine's finite transition table.

Complete transition-effect emission is sound.

theorem Complexity.CircuitUnrolling.Serializer.DirectGenerator.emitEffectFormula_spaceBoundByWidth {k : } (tm : NTM k) (selects : TransitionEffect tmBool) {initialSpace : } {values : BinaryValues WorkCount} {width : } (hclean : ∀ (inputLength : ), CaseFormulaClean (values inputLength)) (hvalues : ∀ (inputLength : ) (index : Fin WorkCount), values inputLength index width inputLength) (hcap : ∀ (inputLength stateIndex tapeIndex symbolIndex position : ), stateIndex < Fintype.card tm.QtapeIndex k + 1symbolIndex < 4position values inputLength Work.horizonvalues inputLength Work.available + effectFormulaScheduleSize (transitionCases tm).length k (values inputLength Work.horizon) (effectCaseSelectedAt tm selects) (effectCaseChoiceAt tm) + transitionStateRef (values inputLength Work.configBase) stateIndex + (transitionHeadRef (Fintype.card tm.Q) (values inputLength Work.horizon) (values inputLength Work.configBase) tapeIndex position + tapeIndex + values inputLength Work.horizon + 1) + (transitionCellRef (Fintype.card tm.Q) (k + 2) (values inputLength Work.horizon) (values inputLength Work.configBase) tapeIndex position symbolIndex + (tapeIndex * (values inputLength Work.horizon + 2) + position) + (values inputLength Work.horizon + 2) + (k + 2) + tapeIndex + 4) + caseReadSize (values inputLength Work.horizon) + values inputLength Work.horizon width inputLength) :
(emitEffectFormula tm selects).SpaceBoundByWidthAt initialSpace values width

Complete transition-effect emission has an all-prefix width certificate under one global bounded-selector envelope. The cap covers the complete wire frontier together with every state, head, cell, and read-size intermediate that any machine-selected case can use.

theorem Complexity.CircuitUnrolling.Serializer.DirectGenerator.emitEffectFormula_requires {k : } (tm : NTM k) (selects : TransitionEffect tmBool) (values : BinaryValues WorkCount) (hclean : CaseFormulaClean values) (havailable : 1 values Work.available) :
(emitEffectFormula tm selects).requires values

Clean scratch together with a positive wire frontier suffices for every leaf routine in complete transition-effect emission.

@[simp]

Complete transition-effect emission restores all owned scratch and advances only the wire frontier by the exact numeric schedule size.

@[simp]

Complete transition-effect emission is literally the canonical numeric raw-gate schedule, including its false identity and reverse connector suffix.