Dynamic source-question projection and internal answer cutoff #
The input carries (n,Q,R,s,answerA,answerB) with all four numbers in binary.
The guard validates the paper's tuple encoding, the separate original-answer
cutoff, and membership of both register strings in the zero-padded source
question space. Only then does it invoke the source on the first s bits.
@[reducible, inline]
Equations
Instances For
Instances For
Equations
Instances For
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- MIPRE.Introspection.SourceCompiler.InSource s y = (List.drop s y = List.replicate (List.length y - s) false)
Instances For
@[instance_reducible]
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.Introspection.SourceCompiler.InSource_padding
{s Q : ℕ}
{y : Cost.BitStr}
(hy : List.length y = Q)
(h : InSource s y)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
noncomputable def
MIPRE.Introspection.SourceCompiler.guardAndCheck
{α : Type u_1}
[Cost.SizedEncoding α]
(f g : Cost.PolyTimeFun α Bool)
:
Equations
Instances For
theorem
MIPRE.Introspection.SourceCompiler.guardAndCheck_iff
{α : Type u_1}
[Cost.SizedEncoding α]
(f g : Cost.PolyTimeFun α Bool)
(x : α)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
noncomputable instance
MIPRE.Introspection.SourceCompiler.instDecidableGuardReady
(x : GuardInput)
:
Decidable (GuardReady x)
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
All four original strings satisfy the internal original-game bound.
theorem
MIPRE.Introspection.SourceCompiler.GuardReady_question_lengths
{x : GuardInput}
(h : GuardReady x)
:
Projection produces questions of exactly the original sampler dimension.
Both accepted register strings are the canonical zero-padded source questions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
theorem
MIPRE.Introspection.SourceCompiler.projectedProg_closed
{source : Cost.Prog}
(hs : Cost.Prog.WellScoped 1 source)
:
Cost.Prog.WellScoped 1 (projectedProg source)
theorem
MIPRE.Introspection.SourceCompiler.projectedProg_reject
(source : Cost.Prog)
(x : Cost.Data)
(h : ¬RawReady x)
:
∃ (t : ℕ), (projectedProg source).Runs x (Cost.encode false) t
Rejection evaluates no source code, even if that code diverges.
theorem
MIPRE.Introspection.SourceCompiler.projectedProg_call
{source : Cost.Prog}
(hs : Cost.Prog.WellScoped 1 source)
(x r : Cost.Data)
(t : ℕ)
(h : RawReady x)
(hr : source.Runs (projectedCall.toFun (readInput.toFun x)) r t)
:
∃ (time : ℕ), (projectedProg source).Runs x r time
theorem
MIPRE.Introspection.SourceCompiler.projectedProg_halts
{source : Cost.Prog}
(hs : Cost.Prog.WellScoped 1 source)
(halts : ∀ (x : Cost.Data), Cost.Halts source x)
(x : Cost.Data)
:
Cost.Halts (projectedProg source) x
theorem
MIPRE.Introspection.SourceCompiler.projectedProg_accepts_iff
{source : Cost.Prog}
(hs : Cost.Prog.WellScoped 1 source)
(halts : ∀ (x : Cost.Data), Cost.Halts source x)
(x : Cost.Data)
:
(∃ (t : ℕ), (projectedProg source).Runs x (Cost.encode true) t) ↔ RawReady x ∧ ∃ (t : ℕ), source.Runs (projectedCall.toFun (readInput.toFun x)) (Cost.encode true) t