Documentation

Complexitylib.Metacomplexity.MCSP.AntiChecker.Counting.Internal

Anti-checker survivor counts -- proof internals #

theorem Complexity.AntiChecker.survivorCount_nil_internal {arity : } (target : BitString arityBool) (codes : Finset (List Bool)) :
survivorCount target [] codes = codes.card
theorem Complexity.AntiChecker.survivorCount_cons_internal {arity : } (target : BitString arityBool) (input : BitString arity) (inputs : List (BitString arity)) (codes : Finset (List Bool)) :
survivorCount target (input :: inputs) codes = {xConsistentCodes target inputs codes | CodeAgreesAt target x input}.card
theorem Complexity.AntiChecker.survivorCount_le_card_internal {arity : } (target : BitString arityBool) (inputs : List (BitString arity)) (codes : Finset (List Bool)) :
survivorCount target inputs codes codes.card
theorem Complexity.AntiChecker.survivorCount_samples_anti_internal {arity : } {target : BitString arityBool} {first second : List (BitString arity)} {codes : Finset (List Bool)} (hsub : inputfirst, input second) :
survivorCount target second codes survivorCount target first codes
theorem Complexity.AntiChecker.survivorCount_eq_zero_iff_internal {arity : } (target : BitString arityBool) (inputs : List (BitString arity)) (codes : Finset (List Bool)) :
survivorCount target inputs codes = 0 ConsistentCodes target inputs codes =
theorem Complexity.AntiChecker.candidateSurvivorCount_nil_internal {arity threshold : } (target : BitString arityBool) :
candidateSurvivorCount target threshold [] = (candidateCodes arity threshold).card
theorem Complexity.AntiChecker.candidateSurvivorCount_cons_internal {arity threshold : } (target : BitString arityBool) (input : BitString arity) (inputs : List (BitString arity)) :
candidateSurvivorCount target threshold (input :: inputs) = {xConsistentCodes target inputs (candidateCodes arity threshold) | CodeAgreesAt target x input}.card
theorem Complexity.AntiChecker.candidateSurvivorCount_le_card_internal {arity threshold : } (target : BitString arityBool) (inputs : List (BitString arity)) :
candidateSurvivorCount target threshold inputs (candidateCodes arity threshold).card
theorem Complexity.AntiChecker.candidateSurvivorCount_samples_anti_internal {arity threshold : } {target : BitString arityBool} {first second : List (BitString arity)} (hsub : inputfirst, input second) :
candidateSurvivorCount target threshold second candidateSurvivorCount target threshold first
theorem Complexity.AntiChecker.candidateSurvivorCount_eq_zero_iff_isFor_internal {arity threshold : } [NeZero arity] (target : BitString arityBool) (inputs : List (BitString arity)) :
candidateSurvivorCount target threshold inputs = 0 IsFor target threshold inputs