Compfiles/Usa1983P1.lean

GitHub source file

Explanation legend Lean4 Domain Explanation Language (L4DEL)

L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.

L4DEL
Lean4 Domain Explanation Language

Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.

Project sources: Pinned compfiles documentation, Pinned compfiles corpus index

7 declarations, 0 contain sorry, 0 declared as axioms

USA Mathematical Olympiad 1983, Problem 1

If six points are chosen sequentially at random on the circumference of a circle, what is the probability that the triangle formed by the first three is disjoint from that formed by the second three?

Imports (3)
Imported by 1 file
  1. abbrev Usa1983P1.Ordering Documented declaration: Ordering line 32 source

    Source documentation

    The cyclic order in which the six chosen points appear around the circle: σ i is the position of the i-th chosen point among the six positions 0, …, 5 listed in clockwise order. Only the cyclic order of the six points matters for this problem, and all 6! orders are equally likely, so we take the uniform distribution on Equiv.Perm (Fin 6) as the sample space.

    no axioms what this means

    Proof uses: Equiv.Perm, Fin, OfNat.ofNat, Nat

    1 instances, coercions and auxiliary constants left out.

    abbrev Ordering := Equiv.Perm (Fin 6)
  2. def Usa1983P1.Favorable The event that the triangle formed by the first three points is disjoint from the triangle formed by the last three points line 39 source

    Source documentation

    The event that the triangle formed by the first three points is disjoint from the triangle formed by the last three points. With six points on a circle, the two triangles are disjoint iff the two vertex sets do not interleave around the circle, which for 3 + 3 points means that the first three points occupy three (cyclically) consecutive positions.

    standard axioms: Quot.sound, propext what this means

    Statement uses: Usa1983P1.Ordering

    Proof uses: Exists, Fin, OfNat.ofNat, Nat, Eq, Finset, Insert.insert, Singleton.singleton, HAdd.hAdd

    11 instances, coercions and auxiliary constants left out.

    def Favorable (σ : Ordering) : Prop :=
    …

    Mentions: Usa1983P1.Ordering

  3. instance Usa1983P1.(instance at line 42) line 42 source
  4. determine Usa1983P1.solution line 46 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: ENNReal

    Proof uses: HDiv.hDiv, OfNat.ofNat

    9 instances, coercions and auxiliary constants left out.

  5. lemma Usa1983P1.card_favorable Documented declaration: card_favorable line 54 source

    Source documentation

    The number of cyclic orders in which the first three points occupy three consecutive positions: 6 choices for the starting position of the block, times 3! orders of the first three points within the block, times 3! orders of the remaining three points. Verified by exhaustive enumeration.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Eq, Nat, Finset.card, Usa1983P1.Ordering, Finset.filter, Usa1983P1.Favorable, Finset.univ, Fin, OfNat.ofNat

    Proof uses: of_decide_eq_true, id, Bool, Decidable.decide, Bool.true, Eq.refl

    11 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.

    lemma card_favorable :
        (Finset.univ.filter Favorable).card = 216 := by
    …

    Mentions: Usa1983P1.Favorable

  6. lemma Usa1983P1.card_orderings The total number of cyclic orders of the six points line 60 source

    Source documentation

    The total number of cyclic orders of the six points.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Eq, Nat, Fintype.card, Usa1983P1.Ordering, Fin, OfNat.ofNat

    Proof uses: Eq.mpr, Nat.factorial, id, congrArg, Equiv.Perm, Fintype.card_perm, Fintype.card_fin, of_decide_eq_true, Bool, Decidable.decide, Bool.true, Eq.refl

    9 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.

    lemma card_orderings : Fintype.card Ordering = 720 := by
    …

    Mentions: Usa1983P1.Ordering

  7. problem Usa1983P1.usa1983_p1 line 66 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Eq, ENNReal, MeasureTheory.OuterMeasure, Usa1983P1.Ordering, Set, PMF.toOuterMeasure, PMF.uniformOfFintype, Fin, OfNat.ofNat, Nat, Set.ofPred, Usa1983P1.Favorable, Usa1983P1.solution

    Proof uses: Eq.mpr, HDiv.hDiv, Fintype.card, Membership.mem, id, congrArg, PMF.toOuterMeasure_uniformOfFintype_apply, Finset.card, Finset.filter, Finset.univ, Subtype, Fintype.card_subtype, congrFun', Finset, Finset.filter_congr, Iff.of_eq, Eq.refl, Usa1983P1.card_favorable, Usa1983P1.card_orderings, Usa1983P1.solution.eq_1 and 25 more

    44 instances, coercions and auxiliary constants left out.

    Tactic trace: 9 steps

    Open to load the checked before-and-after goal states.