Documentation

MIPRE.Foundations.Introspection.SourceDescriptionCompiler

Uniformly bounded source descriptions for polynomial-time compilers #

The compiler accepts arbitrary source descriptions. Each description exceeding the supplied binary parameter is replaced by a fixed program before compilation. This leaves every bounded verifier unchanged and gives a uniform polynomial output-size bound in the parameter, including at zero.

Only an oversized description is replaced. The cutoff stays binary.

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

    Clamp sampler and decider independently while retaining the parameter.

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

      The verifier's size clause is exactly the preservation premise.

      The entire clamped compiler input has size linear in λ+1, even at zero.

      The output polynomial uses only the fixed compiler and the parameter.

      theorem MIPRE.Introspection.SourceDescriptionCompiler.exists_compiler_size {β : Type u_1} [Cost.SizedEncoding β] (F : Cost.PolyTimeFun Input β) :
      ∃ (C : ℕ), 1 ≤ C ∧ ∀ (S D : Cost.Prog) (lam : ℕ), Cost.esize ((compiler F).toFun ((S, D), lam)) ≤ C * (lam + 1) ^ C

      A single constant absorbs the compiler's coefficient sum and degree. There is no lower-bound assumption on the supplied parameter.