Documentation

Complexitylib.Metacomplexity.StatisticalTest.Hybrid.Defs

Hybrid distributions for finite binary generators -- definitions #

The cut-th hybrid uses generator output in coordinates strictly below cut and independent uniform bits in the remaining coordinates. Both sources of randomness are packed into one Boolean string, so every probability remains an exact eventProb over a finite dyadic sample space.

Complementing a test records the one-bit polarity choice used to orient an absolute distinguishing advantage before applying the hybrid argument.

def Complexity.BitGenerator.orientTest {outputLength : } (test : Finset (Fin outputLengthBool)) (complement : Bool) :
Finset (Fin outputLengthBool)

Optionally complement a finite test. The Boolean parameter is the polarity bit used to orient an absolute distinguishing gap.

Equations
Instances For
    def Complexity.BitGenerator.hybridOutput {seedLength outputLength : } (generator : BitGenerator seedLength outputLength) (cut : ) (randomness : Fin (seedLength + outputLength)Bool) :
    Fin outputLengthBool

    The cut-th hybrid between uniform output bits and the generator output. Coordinates below cut come from the generator; all later coordinates are independent uniform bits.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def Complexity.BitGenerator.hybridAcceptedRandomness {seedLength outputLength : } (generator : BitGenerator seedLength outputLength) (test : Finset (Fin outputLengthBool)) (cut : ) :
      Finset (Fin (seedLength + outputLength)Bool)

      Combined random strings whose cut-th hybrid output is accepted.

      Equations
      Instances For
        def Complexity.BitGenerator.hybridAcceptanceProbability {seedLength outputLength : } (generator : BitGenerator seedLength outputLength) (test : Finset (Fin outputLengthBool)) (cut : ) :

        Acceptance probability of a test under the cut-th hybrid.

        Equations
        Instances For
          def Complexity.BitGenerator.hybridGap {seedLength outputLength : } (generator : BitGenerator seedLength outputLength) (test : Finset (Fin outputLengthBool)) (step : ) :

          Change in test acceptance when one more output coordinate is switched from uniform to generated.

          Equations
          Instances For