The parsed typed introspection predicate #
This supplies the actual finite decision predicate, including both orientations of every auxiliary test and the original game test. The Pauli predicate and its X/Z answer projection are supplied by the Pauli test. This semantic layer does not assert the remaining byte parser, answer clock, or program compiler.
The four parsed answer formats. Sample and Introspect share the pair format.
- pauli {V : Type u_1} {A : Type u_2} {P : Type u_3} (a : P) : ParsedAnswer V A P
- pair {V : Type u_1} {A : Type u_2} {P : Type u_3} (y : V) (a : A) : ParsedAnswer V A P
- read {V : Type u_1} {A : Type u_2} {P : Type u_3} (y yp : V) (a : A) : ParsedAnswer V A P
- hide {V : Type u_1} {A : Type u_2} {P : Type u_3} (y yp x : V) : ParsedAnswer V A P
Instances For
Equations
- One or more equations did not get rendered due to their size.
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pauli a) (MIPRE.Introspection.ParsedAnswer.pauli b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pauli a) (MIPRE.Introspection.ParsedAnswer.pair y a_1) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pauli a) (MIPRE.Introspection.ParsedAnswer.read y yp a_1) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pauli a) (MIPRE.Introspection.ParsedAnswer.hide y yp x_2) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pair y a) (MIPRE.Introspection.ParsedAnswer.pauli a_1) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pair y a) (MIPRE.Introspection.ParsedAnswer.read y_1 yp a_1) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.pair y a) (MIPRE.Introspection.ParsedAnswer.hide y_1 yp x_2) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.read y yp a) (MIPRE.Introspection.ParsedAnswer.pauli a_1) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.read y yp a) (MIPRE.Introspection.ParsedAnswer.pair y_1 a_1) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.read y yp a) (MIPRE.Introspection.ParsedAnswer.hide y_1 yp_1 x_2) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.hide y yp x_2) (MIPRE.Introspection.ParsedAnswer.pauli a) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.hide y yp x_2) (MIPRE.Introspection.ParsedAnswer.pair y_1 a) = isFalse ⋯
- MIPRE.Introspection.instDecidableEqParsedAnswer.decEq (MIPRE.Introspection.ParsedAnswer.hide y yp x_2) (MIPRE.Introspection.ParsedAnswer.read y_1 yp_1 a) = isFalse ⋯
Instances For
Equations
- One or more equations did not get rendered due to their size.
Check the parsed answer constructor against the question type.
Equations
- MIPRE.Introspection.TypedPredicate.fits (Sum.inl val) (MIPRE.Introspection.ParsedAnswer.pauli a) = true
- MIPRE.Introspection.TypedPredicate.fits (Sum.inr (MIPRE.Introspection.AuxType.introspect, snd)) (MIPRE.Introspection.ParsedAnswer.pair y a) = true
- MIPRE.Introspection.TypedPredicate.fits (Sum.inr (MIPRE.Introspection.AuxType.sample, snd)) (MIPRE.Introspection.ParsedAnswer.pair y a) = true
- MIPRE.Introspection.TypedPredicate.fits (Sum.inr (MIPRE.Introspection.AuxType.read, snd)) (MIPRE.Introspection.ParsedAnswer.read y yp a) = true
- MIPRE.Introspection.TypedPredicate.fits (Sum.inr (MIPRE.Introspection.AuxType.hide k, snd)) (MIPRE.Introspection.ParsedAnswer.hide y yp x_2) = true
- MIPRE.Introspection.TypedPredicate.fits x✝¹ x✝ = false
Instances For
One orientation of all sampling/hiding/game comparisons. The caller checks both orientations, as required by the symmetric type graph.
Equations
- One or more equations did not get rendered due to their size.
- MIPRE.Introspection.TypedPredicate.directed L X Z projectPauli D x✝³ x✝² x✝¹ x✝ = true
Instances For
The actual parsed predicate: format, consistency, Pauli, and both auxiliary orientations.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Accepted answers have the correct constructors on both sides.
Accepted equal-type questions have exactly equal parsed answers.
Accepted introspection/sample answers satisfy the original full CL relation.
Therefore acceptance enforces every marginal check on the complete answer alphabet.
The reading edge preserves the introspected question and answer.
The cross-introspection edge runs precisely the original decision predicate.
Reversing the players on that edge retains the original Alice/Bob argument order.
Acceptance includes the auxiliary check in the displayed player order.
Acceptance also includes the auxiliary check with the players reversed.
The last hiding level and Read have the tested common prefix and full dual answer.
The reversed Read/hiding edge retains the same earlier-prefix convention.
Accepted consecutive hiding answers satisfy all four source comparisons.
Reversing the players does not change which hiding answer fixes the later register.
The Pauli-X/hiding-first edge checks the dual first register and the untouched tail.
The reversed first hiding edge has the same dual-map and tail comparisons.