Documentation

Complexitylib.Metacomplexity.MCSP.Magnification.AntiChecker.Generator.Iteration.Internal

Finite iteration of anti-checker selection rounds -- proof internals #

theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.eval_selectionPrefixCircuit_zero_internal {overhead arity : } {beta : PositiveRationalScale} (family : ApproximateCounterFamily overhead beta arity) (hrounds : 0 requiredRoundCount beta arity) (table : BitString (2 ^ arity)) :
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.eval_selectionPrefixCircuit_succ_internal {overhead arity rounds : } {beta : PositiveRationalScale} (family : ApproximateCounterFamily overhead beta arity) (hrounds : rounds + 1 requiredRoundCount beta arity) (table : BitString (2 ^ arity)) :
(selectionPrefixCircuit family (rounds + 1) hrounds).snd.eval table = (selectionRoundStateCircuit (family.counter (selectionPrefixCounterIndex hrounds))).snd.eval ((selectionPrefixCircuit family rounds ).snd.eval table)
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.candidateLabeledSamples_truthTable_packTargetSamples_internal {arity prefixLength : } (target : BitString arityBool) (inputs : Fin prefixLengthBitString arity) (input : BitString arity) :
candidateLabeledSamples (MCSP.Instance.inputIndex input) (truthTable target) (packTargetSamples target inputs) = fun (sample : Fin (prefixLength + 1)) => SuccinctMCSP.Sample.ofFunction target (Fin.cons input inputs sample)
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.selectionRoundSuccessorInput_truthTable_packTargetSamples_internal {arity prefixLength : } (target : BitString arityBool) (inputs : Fin prefixLengthBitString arity) (candidate : Fin (2 ^ arity)) :
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.counterRoundEstimate_truthTable_packTargetSamples_internal {overhead arity prefixLength : } {beta : PositiveRationalScale} (counter : ApproximateCounterCircuit overhead beta arity prefixLength) (target : BitString arityBool) (inputs : Fin prefixLengthBitString arity) (input : BitString arity) :
counterRoundEstimate counter (truthTable target) (packTargetSamples target inputs) input = counter.estimate (packTargetSamples target (Fin.cons input inputs))
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.counterRoundEstimate_eq_extensionEstimator_internal {overhead arity rounds : } {beta : PositiveRationalScale} (family : ApproximateCounterFamily overhead beta arity) (target : BitString arityBool) (inputs : Fin roundsBitString arity) (hrounds : rounds + 1 requiredRoundCount beta arity) :
counterRoundEstimate (family.counter (selectionPrefixCounterIndex hrounds)) (truthTable target) (packTargetSamples target inputs) = family.extensionEstimator target (List.ofFn inputs)
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.exists_eval_selectionPrefixCircuit_isEstimateSelectionTrace_internal {overhead arity rounds : } {beta : PositiveRationalScale} (family : ApproximateCounterFamily overhead beta arity) (target : BitString arityBool) (hrounds : rounds requiredRoundCount beta arity) :
∃ (inputs : Fin roundsBitString arity), (selectionPrefixCircuit family rounds hrounds).snd.eval (truthTable target) = selectionTraceState target inputs AntiChecker.IsEstimateSelectionTrace (family.extensionEstimator target) (List.ofFn inputs)
theorem Complexity.GapMCSP.Magnification.AntiCheckerLemma.unpackSample_selectionTraceState_projection_internal {arity rounds : } (target : BitString arityBool) (inputs : Fin roundsBitString arity) (sample : Fin rounds) :
unpackSample (selectionTraceState target inputs selectionSampleOutputMap arity rounds) sample = inputs sample