OAI/Combinatorics/ContingencyTables/Machines/OnlineIntegerRetry.lean
16 declarations, 0 contain sorry, 0 declared as axioms
A fixed online machine for repeat-until-success
- inductive
OAI.ContingencyTables.OnlineIntegerRetry.Labelline 15 - instance
OAI.ContingencyTables.OnlineIntegerRetry.(instance at line 19)line 19 - def
OAI.ContingencyTables.OnlineIntegerRetry.prepareProcline 22 - def
OAI.ContingencyTables.OnlineIntegerRetry.retryProcline 24 - def
OAI.ContingencyTables.OnlineIntegerRetry.finishProcline 27 - lemma
OAI.ContingencyTables.OnlineIntegerRetry.prepare_execline 31 - lemma
OAI.ContingencyTables.OnlineIntegerRetry.retry_execline 36 - lemma
OAI.ContingencyTables.OnlineIntegerRetry.finish_execline 42 - def
OAI.ContingencyTables.OnlineIntegerRetry.instructionsline 53 - def
OAI.ContingencyTables.OnlineIntegerRetry.programline 63Source documentation
A single finite control graph, independent of the number of retries.
def program : OnlineProc.Proc (K Reg) := OnlineControl.compile (instructions F)
Mentions: OAI.ContingencyTables.OnlineIntegerRetry.instructions
- def
OAI.ContingencyTables.OnlineIntegerRetry.outputline 65 - def
OAI.ContingencyTables.OnlineIntegerRetry.prefixExperimentline 69 - def
OAI.ContingencyTables.OnlineIntegerRetry.stepCostline 73 - lemma
OAI.ContingencyTables.OnlineIntegerRetry.prefix_stepline 75 - theorem
OAI.ContingencyTables.OnlineIntegerRetry.prefix_correctline 142Source documentation
All finite prefix laws belong to the same fixed looping program. Failure leaves the original input at the live retry entry.
theorem prefix_correct (a : A) (s : Data) (N : ℕ) : ∃ q,OnlineRetryPrefix.At (instructions F) (output a s) (some .prepare) (env (TreeTyped.encode a) .nil s) q ∧ (∀ g : Option B → ℚ,q.mean g=(prefixExperiment (f := f) a N).mean g) ∧ …Mentions: OAI.ContingencyTables.OnlineRetryPrefix.At, OAI.ContingencyTables.OnlineIntegerRetry.instructions, OAI.ContingencyTables.OnlineIntegerRetry.output, OAI.ContingencyTables.OnlineIntegerRetry.prefixExperiment
- theorem
OAI.ContingencyTables.OnlineIntegerRetry.physical_prefixline 163Source documentation
The finite prefixes also execute on the actual compiled tape machine. The failed endpoint still has a live control state.
theorem physical_prefix (a : A) (s : Data) (N H : ℕ) (hH : StackCost.StackBound (OnlineTree.initial (program F) (TreeTyped.encode a) s).stk H) : ∃ q,PhysicalPost.Implements (OnlineStack.table (program F).code (program F).coin) (fun b => OnlineStack.cfg (OnlineControl.cfg (instructions F) (output a s b).1 (output a s b).2)) (OnlineStack.cfg (OnlineTree.initial (program F) (TreeTyped.encode a) s)) q ∧ (∀ g : Option B → ℚ,q.mean g=(prefixExperiment (f := f) a N).mean g) ∧ …Mentions: OAI.ContingencyTables.OnlineIntegerRetry.program, OAI.ContingencyTables.OnlineIntegerRetry.instructions, OAI.ContingencyTables.OnlineIntegerRetry.output, OAI.ContingencyTables.OnlineIntegerRetry.prefixExperiment