Actual cross-introspection source compiler #
The program computes the canonical register parameters, calls the original
sampler's dimension query at 2^n, validates and unpads both Introspect
answers, then calls the original decider at 2^n. Both source calls are
clocked. It is total on every raw input, for arbitrary source program texts.
This is the cross-Introspect edge component, not the remaining typed dispatch.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.Introspection.SourceCompiler.parameterStage_closed
(c lam : ℕ)
:
Cost.Prog.WellScoped 1 (parameterStage c lam)
theorem
MIPRE.Introspection.SourceCompiler.parameterStage_runs
(c lam : ℕ)
(x : Cost.Data)
:
∃ (t : ℕ),
(parameterStage c lam).Runs x
(x.cons
(Cost.encode
(registerBits c lam (ClockSimulation.indexReader.toFun x), originalBound lam (ClockSimulation.indexReader.toFun x))))
t
Equations
- One or more equations did not get rendered due to their size.
Instances For
noncomputable def
MIPRE.Introspection.SourceCompiler.dimensionStage
(k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(S : Cost.Prog)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.Introspection.SourceCompiler.dimensionStage_closed
(k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(S : Cost.Prog)
:
Cost.Prog.WellScoped 1 (dimensionStage k lam U S)
noncomputable def
MIPRE.Introspection.SourceCompiler.dimensionResult
(k lam : ℕ)
(S : Cost.Prog)
(n : ℕ)
:
Equations
Instances For
theorem
MIPRE.Introspection.SourceCompiler.dimensionStage_runs
(k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(S : Cost.Prog)
(x bounds : Cost.Data)
:
∃ (t : ℕ),
(dimensionStage k lam U S).Runs (x.cons bounds)
((x.cons bounds).cons (dimensionResult k lam S (ClockSimulation.indexReader.toFun x))) t
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
@[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
noncomputable def
MIPRE.Introspection.SourceCompiler.finalStage
(k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(D : Cost.Prog)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.Introspection.SourceCompiler.finalStage_closed
(k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(D : Cost.Prog)
:
Cost.Prog.WellScoped 1 (finalStage k lam U D)
theorem
MIPRE.Introspection.SourceCompiler.finalStage_halts
(k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(D : Cost.Prog)
(x : Cost.Data)
:
Cost.Halts (finalStage k lam U D) x
noncomputable def
MIPRE.Introspection.SourceCompiler.crossProg
(c k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(S D : Cost.Prog)
:
The actual three-stage cross-Introspect component.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.Introspection.SourceCompiler.crossProg_closed
(c k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(S D : Cost.Prog)
:
Cost.Prog.WellScoped 1 (crossProg c k lam U S D)
theorem
MIPRE.Introspection.SourceCompiler.crossProg_halts
(c k lam : ℕ)
(U : Cost.ClockedUniversalMachine)
(S D : Cost.Prog)
(x : Cost.Data)
:
Cost.Halts (crossProg c k lam U S D) x