Documentation

MIPRE.Background.Introspection.DecisionCompiler

The actual compiled introspection decider #

Compilation clamps each source description, specializes the fixed prepared kernel using binary metadata, and adds zero-parameter and zero-index branches. The positive branch computes its clock and canonical resources exactly once.

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

    Both the transformation and its source-description clamp are executable polynomial-time functions on the binary compiler input.

    Equations
    Instances For
      theorem MIPRE.Introspection.DecisionCompiler.zero_runs (c : ℕ) (U : Cost.ClockedUniversalMachine) (S D : Cost.Prog) (lam n : ℕ) (h : lam = 0 ∨ n = 0) (d : Cost.Data) :
      ∃ (t : ℕ), (decider c U S D lam).prog.Runs ((Cost.encode n).cons d) (Cost.encode (zeroTest.toFun d)) t
      theorem MIPRE.Introspection.DecisionCompiler.accepts_zero (c : ℕ) (U : Cost.ClockedUniversalMachine) (S D : Cost.Prog) (lam n : ℕ) (h : lam = 0 ∨ n = 0) (x y a b : Cost.BitStr) :
      (decider c U S D lam).Accepts n x y a b ↔ x = [] ∧ y = [] ∧ List.length a ≤ 2 ∧ List.length b ≤ 2
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem MIPRE.Introspection.DecisionCompiler.accepts_cutoff (c : ℕ) (U : Cost.ClockedUniversalMachine) (S D : Cost.Prog) (lam n : ℕ) (x y a b : Cost.BitStr) (h : (decider c U S D lam).Accepts n x y a b) :
        theorem MIPRE.Introspection.DecisionCompiler.cutoffAt_ansBound {c : ℕ} (hc : 1 ≤ c) :
        ∃ (K : ℕ), ∀ (lam n : ℕ), cutoffAt c lam n ≤ ansBound K lam n
        theorem MIPRE.Introspection.DecisionCompiler.compute_size (c : ℕ) (U : Cost.ClockedUniversalMachine) :
        ∃ (C : ℕ), 1 ≤ C ∧ ∀ (S D : Cost.Prog) (lam : ℕ), (decider c U S D lam).size ≤ C * (lam + 1) ^ C