Uniform introspection tuple parsing with binary bounds #
One fixed program reads its register length and original-answer cutoff in binary. All format and cutoff specifications are exactly those of the fixed parser, but no parameter value is embedded as a unary program constant.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
Candidate pair fields, using the runtime binary register dimension.
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
@[simp]
Introspect/Sample validation, uniformly in the binary bounds Q and R.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Read or Hide validation, with all numeric parameters supplied in binary.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.Introspection.DynamicParser.tripleCheck_apply
(bs : Cost.BitStr)
(Q R : ℕ)
(exactLast : Bool)
:
theorem
MIPRE.Introspection.DynamicParser.pairCheck_iff
(bs : Cost.BitStr)
(Q R : ℕ)
:
pairCheck.toFun (bs, Q, R) = true ↔ ∃ (y : Cost.BitStr) (a : Cost.BitStr), List.length y = Q ∧ List.length a ≤ R ∧ bs = AnswerParser.pairBits y a
theorem
MIPRE.Introspection.DynamicParser.tripleCheck_iff
(bs : Cost.BitStr)
(Q R : ℕ)
(exactLast : Bool)
:
(tripleCheck exactLast).toFun (bs, Q, R) = true ↔ ∃ (y : Cost.BitStr) (yp : Cost.BitStr) (a : Cost.BitStr),
List.length y = Q ∧ List.length yp = Q ∧ (if exactLast = true then List.length a = R else List.length a ≤ R) ∧ bs = AnswerParser.tripleBits y yp a
theorem
MIPRE.Introspection.DynamicParser.readCheck_original_cutoff
(bs : Cost.BitStr)
(Q R : ℕ)
(h : (tripleCheck false).toFun (bs, Q, R) = true)
: