A verifier's game and its tabulation, in the synchronous value #
MIPRE.Verifier.quantumValue_toGame_eq_valStar (Foundations/Halting/Enumerate.lean) carries
val* from 𝒱_n to a game description tabulating it. This file is its synchronous counterpart,
which is what blueprint thm:halting item 1 needs: the witness there is a value-1 PCC
strategy, so the conclusion is about the synchronous value, and the headline
HaltingGameValue.halting_reduces_to_gameValue is stated in HaltingGameValue.gameValue.
A game description denotes a synchronous game by construction, so it can match V.game n T
itself only where 𝒱_n is synchronous (MIPRE.Verifier.isSynchronousAt_of_game_matches) —
and the class B of the halting reduction does not ask for synchronicity. So every bridge here
matches g against V.doubledGame n T (Foundations/GapCompression.lean, over
Foundations/GameDouble.lean), the game on Bool × 𝒳 whose distribution avoids the diagonal
outright; V.HasPerfectPCC n T is a strategy of that game to begin with. Given a description
g whose distribution and decision predicate match those of the doubled game along
equivalences eX, eA of the alphabets:
Verifier.quantumValue_toGame_eq_valStar_doubled:quantumValue g.game = val*(𝒱_n), with no synchronicity hypothesis;Verifier.exists_perfectPCC_syncGame_doubled:V.HasPerfectPCC n T(blueprintdef:pcc, the completeness hypothesis ofthm:compression) gives a value-1PCC synchronous strategy forg.syncGame, byMIPRE.SyncStrategy.relabel;Verifier.syncValue_syncGame_eq_one_doubledandVerifier.gameValue_toGame_eq_one_doubled: henceMIPRE.syncValue g.syncGame = 1, henceHaltingGameValue.gameValue g.toGame = 1, throughHaltingGameValue.GameData.gameValue_eq_syncValue;Verifier.gameValue_toGame_le_of_valStar_le_doubled: in the other directionval*(𝒱_n) ≤ cgivesgameValue g.toGame ≤ c, sincesynval ≤ val*(blueprintlem:sync-le-valstar). This is the soundness half, and it needs no PCC strategy;gameValue_toGame_le_of_valStar_leis the same statement againstV.game n Titself, kept because it holds and costs nothing.
These are the bridges that separate MIPRE.Halting.halting_reduction, which concludes in
val*, from thm:halting as the blueprint states it; MIPRE.Halting.tab_value and
gameValue_tab_eq_one are proved from them. Three un-doubled bridges that carried a PCC
strategy onto a description matching 𝒱_n itself were removed when HasPerfectPCC moved to
the doubled game (issue #77): a strategy of the doubled game has no reason to agree with itself
across the two tags, so it does not restrict to a synchronous strategy of 𝒱_n, and nothing
fed them.
The soundness bridge. An upper bound on val*(𝒱_n) is an upper bound on the value of a
tabulation of it, in the value of HaltingGameValue: the quantum value transports along the
relabelings (quantumValue_eq_of_equiv) and dominates the synchronous value (blueprint
lem:sync-le-valstar). No PCC strategy is involved.
The bridges against the doubled game #
The value bridge, doubled, in any model. A game description matching 𝒱_n's doubled
game along relabelings of the two alphabets has the value of 𝒱_n in every value model
(ValueModel): the value transports along the relabelings (ValueModel.eq_of_equiv) and the
doubling keeps it (Verifier.val_doubledGame).
The value bridge, doubled. A game description matching 𝒱_n's doubled game along
relabelings of the two alphabets has the value of 𝒱_n — the doubled replacement of
quantumValue_toGame_eq_valStar, and unlike it free of any synchronicity hypothesis. Note
that hD here is total, on every question pair including the diagonal: the doubled game
rejects off the tag block, exactly as a GameData does, so quantumValue_eq_of_equiv applies
unchanged and no support-restricted version of it is needed.
The completeness bridge, doubled. HasPerfectPCC is a strategy of the doubled game
already, so it is relabeled along the equivalences by SyncStrategy.relabel and nothing
else.
The completeness bridge, doubled, in the synchronous value.
The completeness bridge, doubled, in the value of HaltingGameValue. This is what
MIPRE.Halting.gameValue_tab_eq_one is proved from, and so what item 1 of blueprint
thm:halting rests on.
The soundness bridge, doubled. Its hypothesis is an upper bound on val* and nothing
is assumed of the decider.