The tabulation of a tailored verifier #
The tailored counterpart of MIPRE/Foundations/Halting/Tabulate.lean and
Halting/Paper/TabulateL.lean: the n-th game of a λ-bounded tailored verifier, written down
as a TailoredGameValue.TailoredGameData, by running its three programs under the budgets
λ-boundedness supplies.
tabOfT â sd ld pd s T k n is the description that the three encoded programs and four numbers
determine. The vertices are the doubled questions, Bool Ă đœâ^s packed into Fin (2 ^ (s + 1))
as in the existing tabulation (Verifier.tagEquiv), so that the description presents the
doubled game (V.tgame n).doubled, which has no weight on its loops:
- the weights are
Verifier.weightListat the two tagged marginals, as inHalting.tabOf, the marginals queried at the sampler's own levelâ(margAt) and normalized to lengths(margN), which only matters at level0, where the questions are empty; - the lengths at a vertex are what the answer-length calculator outputs on its question
(
lenRun), read in unary; - the constraints at a pair of vertices and a readable part of the right length are what the
linear-constraints processor outputs there (
lpRun), read byData.bitsListD.
Each run defaults when its budget is missed, which a time bound rules out.
primrec_tabOfT: the description is primitive recursive in its parameters.presents_tabOfT: for a tailored verifier whose three programs run withinT · (|d| + 1)^kat indexn, the description presents(V.tgame n).doubled(MIPRE.Tailored.Presents).tabT TG x n,tabT_computable,presents_tabT: the tabulation of the verifier a description stringdescOf λ Pdenotes,(S^λ, L^λ, P), with the budgetn^λ · (|d| + 1)^λ, computable in(x, n)and correct when that verifier isλ-bounded andn ℠2.
Total readings of data, primitive recursively #
Budgeted runs #
Player w's marginal at the level â: one sampler query under the budget
T · (|q| + 1) ^ k, [] when the budget is missed. Halting.margOf is the level 7.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The marginal, normalized to length s: an answer of another length, which a sampler of
level at least 1 never gives under its time bound, is replaced by zeros. At level 0 the
questions are empty, and so is every normalized marginal.
Equations
- MIPRE.Tailored.margN â sd T k n s w z = if List.length (MIPRE.Tailored.margAt â sd T k n w z) = s then MIPRE.Tailored.margAt â sd T k n w z else List.map (fun (x : â) => false) (List.range s)
Instances For
The length the answer-length calculator outputs on (n, x, Îș) under the budget
T · (|(x, Îș)| + 1) ^ k, read in unary; 0 when the budget is missed.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The constraints the linear-constraints processor outputs on (n, x, y, a^R, b^R) under the
budget T · (|(x, y, a^R, b^R)| + 1) ^ k, read by Data.bitsListD; [] when the budget is
missed.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The description #
The question at the vertex v of the doubled question set: the bits 1, âŠ, s of v, bit
0 being the tag.
Equations
- MIPRE.Tailored.zOf s v = List.map (fun (i : â) => v.testBit (i + 1)) (List.range s)
Instances For
The lengths at the vertices, of the readable variables (Îș = false) or of the linear ones.
Equations
- MIPRE.Tailored.lenList ld T k n s Îș = List.map (fun (v : â) => MIPRE.Tailored.lenRun ld T k n (MIPRE.Tailored.zOf s v) Îș) (List.range (2 ^ (s + 1)))
Instances For
The constraint entries at a pair of vertices and a readable part.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The constraint entries: at every pair of vertices and every readable part of the right length, the constraints the processor outputs there.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The tabulation of a tailored verifier, on parameters alone: the sampler, answer-length
calculator and linear-constraints processor sd, ld, pd (encoded programs), the dimension
s, the budget T · (|d| + 1) ^ k and the index n. The vertices are the doubled questions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Primitive recursion #
The tabulation is primitive recursive in its parameters.
The runs, under a time bound #
The dimension query, under a time bound.
A marginal query, under a time bound, at a level at least 1.
The normalized marginal is the sampler's, at every level.
Under a time bound, the budgeted run of the answer-length calculator is its output.
Under a time bound, the budgeted run of the linear-constraints processor is its output.
The vertices #
The vertices of the tabulation are the doubled questions: a tag and a point of đœâ^s.
Equations
- MIPRE.Tailored.vtxEquiv â sd ld pd s T k n = (finCongr âŻ).trans (MIPRE.Verifier.tagEquiv s).symm
Instances For
The question distribution #
The Ό clause: the tabulated weight of a pair of vertices is the doubled distribution
of the sampler â the weight list enumerates đœâ^s once, each point at the pair its two tagged
marginals land on (MIPRE.Halting.mu_clauseL, for a sampler of any level).
The presentation #
The tabulation presents the doubled game of a tailored verifier whose three programs run
within the budget T · (|d| + 1) ^ k at index n.
The tabulation of a description string #
The tabulation of the verifier a description string denotes, at index n: the compressed
sampler and answer-length calculator at the string's parameter λ, the string's processor, and
the budget n^λ · (|d| + 1)^λ that λ-boundedness supplies.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The tabulation of a description string is computable in the string and the index.
The tabulation of a description is correct: on the description of a λ-bounded tailored
verifier (S^λ, L^λ, P), at every index n ℠2, it presents the doubled n-th game.