The running time of the canonical decider #
P1b deferred the cost of the canonical decider canonProg L LP (MIPRE.Tailored.Canonical):
a bound on the running time of a decider in MIPRE.Verifier.TimeBoundAt quantifies over every
input (n, d), malformed ones included, while the steps of canonProg are polynomial-time
functions, whose bounds hold on encodings only. This file puts a total parse in front
(parseDIn, the identity on encodings, canonProgT L LP) and bounds the running time.
pushProg_runs_le,step_runs: a step of the decider, timed — the call's input built from the state, the input program run within its bound, the output pushed;parseDIn,canonProgT,canonProgT_runs_iff: the parse reads(n, x, y, a, b)off any data, and is the identity on encodings, so the decider accepts whatcanonProgaccepts;canonProgT_halts: on every input(n, d)the decider halts within the explicitcanonBound, whenLandLPhalt withinT (|d'| + 1)^kon every(n, d')— every call's argument is a component of the parsed input, of size linear in|d|;canonProgT_timeBound: hence withinc (T + 10^k + |n| + 1)^m (|d| + 1)^{e (k + 1)}for constantsc, m, eindependent of everything (dom_canonBound, with the domination tools of the repeated programs);esize_canonProgT: its description is4 |L| + |LP|plus a constant.
What remains for MIPRE.Verifier.IsBounded of the normal form verifier a tailored verifier
denotes, at a λ' linear in λ, is the wrapper of Verifier.ofSamplerDecider (the question-length
check and the universal machine), whose explicit cost is wrapCore_cost'.
The total parse #
Read a decider's input (n, x, y, a, b) off any data, the identity on encodings.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The parsed index is the index.
The parsed strings are of size linear in the input.
The canonical decider with a total parse in front.
Equations
Instances For
On encoded inputs the parse changes nothing.
One step: a call of an input program, pushed onto the state #
A step of the canonical decider, timed: from the state s, build the input F s of a
program Q whose first component is the index n, run Q within its time bound, and push the
output.
The running time #
The explicit bound on the running time, from the time T · Z^k of a call and the sizes:
S the size of the input, Z a bound on the calls' argument sizes.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical decider halts within canonBound on every input (n, d), when L and
LP halt within T (|d'| + 1)^k on every input (n, d').
The bound, dominated #
One polynomial bounding every stage, evaluated at the largest state size.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical decider's bound is dominated: c (W + 1)^m X^{e (K + 1)}, for W above
the call constant T, 10^K and the index's size, X the input's size plus one.
The running time of the canonical decider. There are constants c, m, e such that, when
L and LP halt within T (|d| + 1)^k on every input (n, d), the canonical decider (with
its total parse) halts within c (T + 10^k + |n| + 1)^m (|d| + 1)^{e (k + 1)} on every input
(n, d), malformed ones included.
The description size #
The canonical decider's description is linear in those of L and LP: L appears four
times and LP once, the rest is fixed.