OAI/Computability/MaxCut/Games/Incidence.lean
113 declarations, 0 contain sorry, 0 declared as axioms
Actual finite incidence-game probabilities for Proposition 4.3. The referee samples an occurrence and one of three slots independently and uniformly. Alice sees its occurrence; Bob sees only its variable name.
- structure
OAI.MaxCutGames.Reduction.Incidence.Tripleline 12 - def
OAI.MaxCutGames.Reduction.Incidence.parityline 18 - def
OAI.MaxCutGames.Reduction.Incidence.matchingSlotsline 20 - def
OAI.MaxCutGames.Reduction.Incidence.acceptedSlotsline 26Source documentation
Invalid Alice answers lose in every slot.
def acceptedSlots (a b : Triple) (rhs : Bool) : Nat := …
- def
OAI.MaxCutGames.Reduction.Incidence.failedEquationline 29 - def
OAI.MaxCutGames.Reduction.Incidence.bestResponseline 33Source documentation
Copy a satisfying Bob triple; otherwise flip its first bit.
def bestResponse (b : Triple) (rhs : Bool) : Triple := …
- theorem
OAI.MaxCutGames.Reduction.Incidence.local_count_boundline 36 - theorem
OAI.MaxCutGames.Reduction.Incidence.best_response_exactline 43 - structure
OAI.MaxCutGames.Reduction.Incidence.Equationline 48 - inductive
OAI.MaxCutGames.Reduction.Incidence.Slotline 54 - def
OAI.MaxCutGames.Reduction.Incidence.nameAtline 60 - def
OAI.MaxCutGames.Reduction.Incidence.bitAtline 65 - def
OAI.MaxCutGames.Reduction.Incidence.questionPredicateline 71Source documentation
A predicate of the actual questions and answers, with no hidden slot input.
def questionPredicate (e : Equation Variable) (name : Variable) (alice : Triple) (bob : Bool) : Prop := …Mentions: OAI.MaxCutGames.Reduction.Incidence.Equation, OAI.MaxCutGames.Reduction.Incidence.Triple
- theorem
OAI.MaxCutGames.Reduction.Incidence.question_predicate_at_slotline 79Source documentation
Cloning supplies exactly the distinctness needed to recover a slot from its name.
theorem question_predicate_at_slot (e : Equation Variable) (distinct₁₂ : e.first ≠ e.second) (distinct₁₃ : e.first ≠ e.third) (distinct₂₃ : e.second ≠ e.third) (alice : Triple) (bob : Bool) (slot : Slot) : questionPredicate e (nameAt e slot) alice bob ↔ parity alice = e.rhs ∧ bitAt alice slot = bob := by …Mentions: OAI.MaxCutGames.Reduction.Incidence.Equation, OAI.MaxCutGames.Reduction.Incidence.Triple, OAI.MaxCutGames.Reduction.Incidence.Slot, OAI.MaxCutGames.Reduction.Incidence.questionPredicate, OAI.MaxCutGames.Reduction.Incidence.nameAt, OAI.MaxCutGames.Reduction.Incidence.parity, OAI.MaxCutGames.Reduction.Incidence.bitAt
- def
OAI.MaxCutGames.Reduction.Incidence.bobTripleline 89Source documentation
Bob receives only a variable name: the strategy has no occurrence input.
def bobTriple (g : Variable → Bool) (e : Equation Variable) : Triple := …
Mentions: OAI.MaxCutGames.Reduction.Incidence.Equation, OAI.MaxCutGames.Reduction.Incidence.Triple
- def
OAI.MaxCutGames.Reduction.Incidence.acceptedCountline 93Source documentation
An occurrence index supplies Alice's full question and its equation.
def acceptedCount (equations : Index → Equation Variable) (g : Variable → Bool) (alice : Index → Triple) : List Index → Nat | [] => 0 | i :: rest => acceptedSlots (alice i) (bobTriple g (equations i)) (equations i).rhs + acceptedCount equations g alice restMentions: OAI.MaxCutGames.Reduction.Incidence.Equation, OAI.MaxCutGames.Reduction.Incidence.Triple, OAI.MaxCutGames.Reduction.Incidence.acceptedSlots, OAI.MaxCutGames.Reduction.Incidence.bobTriple
- def
OAI.MaxCutGames.Reduction.Incidence.failureCountline 100 - theorem
OAI.MaxCutGames.Reduction.Incidence.total_count_boundline 107 - def
OAI.MaxCutGames.Reduction.Incidence.optimalAliceline 118 - theorem
OAI.MaxCutGames.Reduction.Incidence.optimal_alice_exactline 122 - theorem
OAI.MaxCutGames.Reduction.Incidence.fixed_bob_optimumline 134Source documentation
Exact finite-count form of
max_Alice Pr[accept | Bob = g] = 1 - u(g)/3.theorem fixed_bob_optimum (equations : Index → Equation Variable) (g : Variable → Bool) (occurrences : List Index) : ∃ alice : Index → Triple, acceptedCount equations g alice occurrences + failureCount equations g occurrences = 3 * occurrences.length ∧ ∀ other : Index → Triple, acceptedCount equations g other occurrences ≤ acceptedCount equations g alice occurrences := by …Mentions: OAI.MaxCutGames.Reduction.Incidence.Equation, OAI.MaxCutGames.Reduction.Incidence.Triple, OAI.MaxCutGames.Reduction.Incidence.acceptedCount, OAI.MaxCutGames.Reduction.Incidence.failureCount
- theorem
OAI.MaxCutGames.Reduction.Incidence.soundness_191_over_192line 148 - theorem
OAI.MaxCutGames.Reduction.Incidence.game_soundness_191_over_192line 156Source documentation
The same bound holds for every deterministic pair when every Bob assignment has the gap.
theorem game_soundness_191_over_192 (equations : Index → Equation Variable) (occurrences : List Index) (source_gap : ∀ g : Variable → Bool, occurrences.length ≤ 64 * failureCount equations g occurrences) : ∀ (g : Variable → Bool) (alice : Index → Triple), 64 * acceptedCount equations g alice occurrences ≤ 191 * occurrences.length := by …Mentions: OAI.MaxCutGames.Reduction.Incidence.Equation, OAI.MaxCutGames.Reduction.Incidence.failureCount, OAI.MaxCutGames.Reduction.Incidence.Triple, OAI.MaxCutGames.Reduction.Incidence.acceptedCount
- def
OAI.MaxCutGames.Reduction.SourceIncidence.toIncidenceline 171 - theorem
OAI.MaxCutGames.Reduction.SourceIncidence.failedEquation_eqline 174 - theorem
OAI.MaxCutGames.Reduction.SourceIncidence.failureCount_eqline 181 - def
OAI.MaxCutGames.Reduction.SourceIncidence.occurrenceListline 192Source documentation
The full occurrence is the displayed equation together with a fresh index.
def occurrenceList (source : List (CloneGap.Equation Name)) := …
- theorem
OAI.MaxCutGames.Reduction.SourceIncidence.cloned_occurrence_gapline 195 - theorem
OAI.MaxCutGames.Reduction.SourceIncidence.source_to_incidence_soundnessline 214 - abbrev
OAI.MaxCutGames.Reduction.FiniteSource.Nameline 230 - def
OAI.MaxCutGames.Reduction.FiniteSource.clonedSourceline 232 - abbrev
OAI.MaxCutGames.Reduction.FiniteSource.Occurrenceline 234 - def
OAI.MaxCutGames.Reduction.FiniteSource.occurrencesline 236 - def
OAI.MaxCutGames.Reduction.FiniteSource.rawEquationline 239 - def
OAI.MaxCutGames.Reduction.FiniteSource.finiteNameline 244Source documentation
Total conversion; membership proofs below establish that every index used by the construction is already below 48, so the remainder changes none.
def finiteName (s : ActualSource.Source) (v : Fin s.«variables» × Nat) : Name s := …
Mentions: OAI.MaxCutGames.Reduction.ActualSource.Source, OAI.MaxCutGames.Reduction.FiniteSource.Name
- def
OAI.MaxCutGames.Reduction.FiniteSource.mapEquationline 247 - def
OAI.MaxCutGames.Reduction.FiniteSource.equationline 250 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.satisfied_mapline 253 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.mem_cartline 256 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.distinctTriple_boundsline 266 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.distinctTriples_nonemptyline 273 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.cloned_member_propertiesline 278 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.raw_propertiesline 289 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.finiteName_injective_online 298 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.names_distinctline 304 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.raw_map_occurrencesline 313 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.occurrences_lengthline 317 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.clonedSource_nonemptyline 321 - instance
OAI.MaxCutGames.Reduction.FiniteSource.(instance at line 327)line 327 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.indexed_failure_countline 330 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.indexed_gapline 337 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.indexed_completeness_countline 346 - def
OAI.MaxCutGames.Reduction.FiniteSource.incidenceEquationline 357 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.incidence_question_predicateline 360 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.incidence_failure_gapline 369 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.incidence_soundnessline 379 - def
OAI.MaxCutGames.Reduction.FiniteSource.nameEquivline 388Source documentation
Executable row-major encoding of the finite clone names.
def nameEquiv (s : ActualSource.Source) : Name s ≃ Fin (s.«variables» * 48) := …
Mentions: OAI.MaxCutGames.Reduction.ActualSource.Source, OAI.MaxCutGames.Reduction.FiniteSource.Name
- def
OAI.MaxCutGames.Reduction.FiniteSource.clonedline 391 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.cloned_lengthline 397 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.cloned_distinctline 402 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.count_ofFnline 409 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.cloned_gapline 416 - theorem
OAI.MaxCutGames.Reduction.FiniteSource.cloned_completeness_countline 431 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.sum_bool_indicator_eq_count_ofFnline 453 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.expect_bool_indicator_eq_count_ofFnline 462Source documentation
Uniform Boolean-event probability is the indexed list's exact occurrence count.
theorem expect_bool_indicator_eq_count_ofFn {n : Nat} (p : Fin n → Bool) : Finset.univ.expect (fun i : Fin n => if p i then (1 : ℚ) else 0) = ((List.ofFn p).countP id : ℚ) / n := by … - def
OAI.MaxCutGames.Reduction.IncidenceProbability.slotOfFinline 468 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.slotPredicateline 471 - instance
OAI.MaxCutGames.Reduction.IncidenceProbability.(instance at line 476)line 476 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.slotAcceptanceline 479 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.slot_predicate_is_question_predicateline 482 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.sum_slot_acceptanceline 490 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.expect_slot_acceptanceline 504 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.acceptanceProbabilityline 513 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.failureProbabilityline 518 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.acceptance_probability_eq_expected_countline 522 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.acceptance_probability_nonnegativeline 531 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.acceptance_probability_le_oneline 539 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.acceptance_plus_failure_third_le_oneline 547 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.deterministic_soundnessline 560 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.failureCount_eq_countPline 567 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.failure_count_finRange_eq_count_ofFnline 579 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.failure_probability_eq_count_finRangeline 590 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.failure_gap_of_count_gapline 602 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.soundness_from_count_gapline 613 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.randomizedAcceptanceline 622Source documentation
A finite randomized strategy, with the common coin including both private coins.
def randomizedAcceptance [Fintype Coin] (equations : Index → Equation Variable) (weight : Coin → ℚ) (alice : Coin → Index → Triple) (bob : Coin → Variable → Bool) : ℚ := … - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.randomized_soundnessline 627 - instance
OAI.MaxCutGames.Reduction.IncidenceProbability.tripleFintypeline 644 - instance
OAI.MaxCutGames.Reduction.IncidenceProbability.tripleInhabitedline 651 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.deterministicValueline 654Source documentation
The actual game value is the maximum over all deterministic local strategies.
noncomputable def deterministicValue [Fintype Variable] (equations : Index → Equation Variable) : ℚ := by … - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.acceptance_le_valueline 661 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.value_attainedline 669 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.value_soundnessline 678 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.randomized_acceptance_le_valueline 687 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.randomized_value_attainedline 703Source documentation
Constant choices of an optimal strategy attain the value under any normalized coin law.
theorem randomized_value_attained [Fintype Variable] [Fintype Coin] (equations : Index → Equation Variable) (weight : Coin → ℚ) (weight_sum : ∑ c, weight c = 1) : ∃ (alice : Coin → Index → Triple) (bob : Coin → Variable → Bool), randomizedAcceptance equations weight alice bob = deterministicValue equations := by …Mentions: OAI.MaxCutGames.Reduction.IncidenceProbability.randomizedAcceptance, OAI.MaxCutGames.Reduction.IncidenceProbability.deterministicValue
- theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.cloned_failure_probability_gapline 712 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.cloned_value_soundnessline 722Source documentation
Actual finite incidence-game value after the concrete 48-clone construction.
theorem cloned_value_soundness (s : ActualSource.Source) (source_gap : ∀ A : Fin s.«variables» → Bool, s.sourceList.length ≤ 4 * s.sourceList.countP (fun e => !CloneGap.satisfied e A)) : deterministicValue (FiniteSource.incidenceEquation s) ≤ (191 : ℚ) / 192 := by …Mentions: OAI.MaxCutGames.Reduction.ActualSource.Source, OAI.MaxCutGames.Reduction.CloneGap.satisfied, OAI.MaxCutGames.Reduction.IncidenceProbability.deterministicValue, OAI.MaxCutGames.Reduction.FiniteSource.incidenceEquation
- theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.cloned_randomized_soundnessline 728 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.uniformDistributionline 747 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.uniform_probability_eq_rat_expectline 755 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.functionalTripleline 767 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.functionalTriple_bitAtline 769 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.extractionIncidenceline 773 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.DistinctNamesline 778 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.extraction_names_injectiveline 783 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.foundationGameline 795 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.foundation_success_eq_rat_acceptanceline 804 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.foundation_value_soundnessline 834 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.foundation_value_le_one_sub_gap_thirdline 846 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.sourceEquationline 860 - def
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.sourceGameline 863 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.source_failure_probabilityline 867 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.source_value_le_one_sub_gap_thirdline 875 - theorem
OAI.MaxCutGames.Reduction.IncidenceProbability.FoundationBridge.cloned_foundation_value_soundnessline 884