Documentation

Complexitylib.Classes.Randomized.CircuitAmplification

Probabilistic semantics of circuit amplification #

This module is the dependency boundary between circuit unrolling and finite probability. The circuit layer counts true verdict wires with Fin.countP; the randomized-complexity layer interprets the same vector as independent choice blocks and hence as blockEventCount and blockMajority. It also provides the fixed-seed wrapper that hardwires every choice input while leaving the positive-length data suffix live.

Counting canonical circuit verdicts is exactly counting accepting blocks in the compact repetition seed.

The circuit encoder's at-least threshold is the randomized layer's strict block-majority predicate.

The canonical typed amplification circuit computes exactly the compact seed's block-majority acceptance predicate.

Fix every random-choice input of a canonical amplified acceptance circuit, leaving only the positive-length data input live. This is the generic circuit-level bridge from an amplified random seed to nonuniform advice.

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    A fixed-seed amplified circuit computes the block-majority verdict for that seed and the live data input.

    @[simp]

    Fixing the random seed preserves the amplified circuit's exact size.

    theorem Complexity.CircuitUnrolling.fixedSeedAmplifiedAcceptanceCircuit_size_le {k : } (tm : NTM k) (runs T n : ) [NeZero n] (seed : BitString (runs * T)) :
    (fixedSeedAmplifiedAcceptanceCircuit tm runs T n seed).size runs * (acceptanceSizeCoeff tm * (T + 2) ^ 3) + 3 + 2 * runs * runs

    A fixed-seed amplified circuit inherits the canonical cubic-by-quadratic size bound.