Documentation

Complexitylib.Metacomplexity.MCSP.AntiChecker.Defs

Finite anti-checkers -- definitions #

An anti-checker for a target function is a finite list of inputs that catches every circuit up to a chosen size threshold: each such circuit disagrees with the target on at least one listed input. Lists are the concrete multiset representation used by the later generator. Repetitions and order are retained syntactically but do not affect the semantic predicate.

This first layer is for positive arity, matching the hardness-magnification application. SuccinctMCSP separately gives its zero-arity convention.

def Complexity.AntiChecker.AgreesOn {arity internalGates : } [NeZero arity] (circuit : Circuit Basis.andOr2 arity 1 internalGates) (target : BitString arityBool) (inputs : List (BitString arity)) :

A circuit agrees with the target on every input in the finite list.

Equations
Instances For
    def Complexity.AntiChecker.IsFor {arity : } [NeZero arity] (target : BitString arityBool) (threshold : ) (inputs : List (BitString arity)) :

    A finite list is an anti-checker when it contains a counterexample to every circuit within the threshold.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def Complexity.AntiChecker.padInputsTo {arity : } (targetLength : ) (inputs : List (BitString arity)) :
      List (BitString arity)

      Prepend all-zero inputs until the list reaches targetLength. If the list is already at least that long, leave it unchanged.

      Equations
      Instances For