Compfiles/Usa2000P3.lean
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
52 declarations, 0 contain sorry, 0 declared as axioms
USA Mathematical Olympiad 2000, Problem 3
A player starts with A blue cards, B red cards and C white cards. He scores points as he plays each card. If he plays a blue card, his score is the number of white cards remaining in his hand. If he plays a red card it is three times the number of blue cards remaining in his hand. If he plays a white card, it is twice the number of red cards remaining in his hand. What is the lowest possible score as a function of A, B and C and how many different ways can it be achieved?
Imports (7)
Imported by 1 file
- inductive
Usa2000P3.CardThe three colors of cards line 36 sourceSource documentation
The three colors of cards.
no axioms what this means
Tactic trace: 10 steps
Open to load the checked before-and-after goal states.
inductive Card where …
- instance
Usa2000P3.(instance at line 42)line 42 source - def
Usa2000P3.scoreThe score accumulated when playing the sequence of cardsl, listed in the order they are played line 52 sourceSource documentation
The score accumulated when playing the sequence of cards
l, listed in the order they are played. When a blue card is played, the score gained is the number of white cards remaining; for a red card it is three times the number of blue cards remaining; for a white card it is twice the number of red cards remaining.no axioms what this means
Statement uses:
List, Usa2000P3.Card,Nat2 instances, coercions and auxiliary constants left out.
def score : List Card → ℕ | [] => 0 | .blue :: t => t.count .white + score t | .red :: t => 3 * t.count .blue + score t | .white :: t => 2 * t.count .red + score t /-- The canonical play: all blue cards, then all red cards, then all white cards. Every play with the same card counts is a permutation of this one. -/
Mentions: Usa2000P3.Card
- def
Usa2000P3.canonicalPlayThe canonical play: all blue cards, then all red cards, then all white cards line 60 sourceSource documentation
The canonical play: all blue cards, then all red cards, then all white cards. Every play with the same card counts is a permutation of this one.
no axioms what this means
Statement uses:
Nat,List, Usa2000P3.CardProof uses:
HAppend.hAppend,List.replicate,Usa2000P3.Card.blue,Usa2000P3.Card.red,Usa2000P3.Card.white2 instances, coercions and auxiliary constants left out.
def canonicalPlay (A B C : ℕ) : List Card := …
Mentions: Usa2000P3.Card
- def
Usa2000P3.playsThe finite set of all plays withAblue,Bred andCwhite cards line 64 sourceSource documentation
The finite set of all plays with
Ablue,Bred andCwhite cards.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset,List, Usa2000P3.CardProof uses:
List.toFinset,List.permutations, Usa2000P3.canonicalPlay2 instances, coercions and auxiliary constants left out.
def plays (A B C : ℕ) : Finset (List Card) := …
Mentions: Usa2000P3.Card
- determine
Usa2000P3.lowestScoreline 67 sourceno axioms what this means
Statement uses:
NatProof uses:
Min.min,HMul.hMul,OfNat.ofNat4 instances, coercions and auxiliary constants left out.
- determine
Usa2000P3.fewestWaysThe number of different ways the lowest score can be achieved line 70 sourceSource documentation
The number of different ways the lowest score can be achieved.
no axioms what this means
Statement uses:
NatProof uses:
ite,And,Eq,OfNat.ofNat,HMul.hMul,HAdd.hAdd,LT.lt9 instances, coercions and auxiliary constants left out.
determine fewestWays (A B C : ℕ) : ℕ := …
- lemma
Usa2000P3.score_nilline 80 sourceno axioms what this means
Statement uses:
Eq,Nat, Usa2000P3.score,List.nil, Usa2000P3.Card,OfNat.ofNatProof uses:
rfl1 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.score_cons_blueline 81 sourceno axioms what this means
Statement uses:
List, Usa2000P3.Card,Eq,Nat, Usa2000P3.score,List.cons,Usa2000P3.Card.blue,HAdd.hAdd,List.count,Usa2000P3.Card.whiteProof uses:
rfl3 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.score_cons_redline 83 sourceno axioms what this means
Statement uses:
List, Usa2000P3.Card,Eq,Nat, Usa2000P3.score,List.cons,Usa2000P3.Card.red,HAdd.hAdd,HMul.hMul,OfNat.ofNat,List.count,Usa2000P3.Card.blueProof uses:
rfl6 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.score_cons_whiteline 85 sourceno axioms what this means
Statement uses:
List, Usa2000P3.Card,Eq,Nat, Usa2000P3.score,List.cons,Usa2000P3.Card.white,HAdd.hAdd,HMul.hMul,OfNat.ofNat,List.count,Usa2000P3.Card.redProof uses:
rfl6 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.mem_playsline 88 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,List, Usa2000P3.Card,Iff,Membership.mem,Finset, Usa2000P3.plays,And,Eq,List.count,Usa2000P3.Card.blue,Usa2000P3.Card.red,Usa2000P3.Card.whiteProof uses:
Eq.mpr,List.toFinset,List.permutations, Usa2000P3.canonicalPlay,id,congrArg,Usa2000P3.plays.eq_1,propext,List.mem_toFinset,List.Perm,List.mem_permutations,List.perm_iff_count,Iff.intro,And.intro,Eq.mp,Eq.trans,HAppend.hAppend,List.replicate,HAdd.hAdd,List.count_appendand 19 more21 instances, coercions and auxiliary constants left out.
Tactic trace: 19 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_casesline 107 sourcestandard axioms: propext what this means
Statement uses:
Nat,Or,Eq, Usa2000P3.lowestScore,HMul.hMul,OfNat.ofNatProof uses:
id,LE.le,Min.min,le_total,Eq.mpr,congrArg,min_eq_left,Or.inl,Or.inr,min_eq_right13 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_le_acline 125 sourcestandard axioms: propext what this means
Statement uses:
Nat,LE.le, Usa2000P3.lowestScore,HMul.hMulProof uses:
le_trans,Min.min,OfNat.ofNat,min_le_left9 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.lowestScore_le_abline 128 sourcestandard axioms: propext what this means
Statement uses:
Nat,LE.le, Usa2000P3.lowestScore,HMul.hMul,OfNat.ofNatProof uses:
le_trans,Min.min,min_le_left,min_le_right10 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.lowestScore_le_bcline 131 sourcestandard axioms: propext what this means
Statement uses:
Nat,LE.le, Usa2000P3.lowestScore,HMul.hMul,OfNat.ofNatProof uses:
min_le_right,Min.min9 instances, coercions and auxiliary constants left out.
- lemma
Usa2000P3.lowestScore_eq_acline 134 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LT.lt,OfNat.ofNat,Not,And,LE.le,HMul.hMul,Ne, Usa2000P3.lowestScoreProof uses:
Eq.mpr,id,Eq,Eq.trans,Min.min,congrFun',congrArg,Nat.min_assoc,propext,mul_le_mul_iff_left₀,of_eq_true,True,congr,mul_comm,mul_left_comm,eq_self40 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_zero_b_cline 140 sourcestandard axioms: propext what this means
Statement uses:
Nat,Eq, Usa2000P3.lowestScore,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,Min.min,HMul.hMul,congr,MulZeroClass.zero_mul,MulZeroClass.mul_zero,min_self,inf_of_le_left,LE.le,eq_self17 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_a_zero_cline 142 sourcestandard axioms: propext what this means
Statement uses:
Nat,Eq, Usa2000P3.lowestScore,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,Min.min,HMul.hMul,congr,MulZeroClass.mul_zero,inf_of_le_right,LE.le,MulZeroClass.zero_mul,min_self,eq_self17 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_a_b_zeroline 144 sourcestandard axioms: propext what this means
Statement uses:
Nat,Eq, Usa2000P3.lowestScore,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,Min.min,HMul.hMul,congr,MulZeroClass.mul_zero,inf_of_le_left,LE.le,min_self,eq_self17 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_le_add_blueline 146 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le, Usa2000P3.lowestScore,HAdd.hAdd,OfNat.ofNatProof uses:
Eq,HMul.hMul,Or, Usa2000P3.lowestScore_cases,Trans.trans,le_trans,Min.min,min_le_left,Mathlib.Tactic.Ring.of_eq,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.mpr,id,congrArg,Eq.symm,Eq.refland 64 more112 instances, coercions and auxiliary constants left out.
Tactic trace: 30 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_le_add_redline 174 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le, Usa2000P3.lowestScore,HAdd.hAdd,OfNat.ofNat,HMul.hMulProof uses:
Eq,Or, Usa2000P3.lowestScore_cases,Trans.trans,le_trans,Min.min,min_le_left,Eq.mpr,id,congrArg,Eq.refl,min_le_right,Mathlib.Tactic.Ring.of_eq,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Mathlib.Tactic.Ring.Common.atom_pf,rfland 66 more116 instances, coercions and auxiliary constants left out.
Tactic trace: 35 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.lowestScore_le_add_whiteline 206 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le, Usa2000P3.lowestScore,HAdd.hAdd,OfNat.ofNat,HMul.hMulProof uses:
Eq,Or, Usa2000P3.lowestScore_cases,Eq.mpr,id,congrArg,Eq.symm, Usa2000P3.lowestScore_le_bc,dite,Trans.trans,le_trans,Min.min,min_le_left,Mathlib.Tactic.Ring.of_eq,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.refland 65 more116 instances, coercions and auxiliary constants left out.
Tactic trace: 32 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.tight_blueline 236 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Iff,Eq,HAdd.hAdd, Usa2000P3.lowestScore,OfNat.ofNat,HMul.hMulProof uses:
Iff.intro,dite, Usa2000P3.lowestScore_a_b_zero,Eq.mpr,id,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.cast_zero,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.Common.mul_congr,Nat.rawCast,HPow.hPow,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.symm,Mathlib.Tactic.Ring.cast_pos,Mathlib.Tactic.Ring.Common.add_pf_add_gt,Mathlib.Tactic.Ring.Common.add_pf_add_zeroand 72 more109 instances, coercions and auxiliary constants left out.
Tactic trace: 70 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.tight_redline 285 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Iff,Eq,HAdd.hAdd,HMul.hMul,OfNat.ofNat, Usa2000P3.lowestScoreProof uses:
Iff.intro,dite, Usa2000P3.lowestScore_zero_b_c,Eq.mpr,id,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.cast_zero,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.Common.mul_congr,Nat.rawCast,HPow.hPow,Mathlib.Tactic.Ring.cast_pos,Mathlib.Tactic.Ring.Common.add_mul,Mathlib.Tactic.Ring.Common.mul_zero,Mathlib.Tactic.Ring.Common.zero_mul,Mathlib.Tactic.Ring.Common.add_pf_zero_add,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.atom_pfand 81 more113 instances, coercions and auxiliary constants left out.
Tactic trace: 83 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.tight_whiteline 342 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Iff,Eq,HAdd.hAdd,HMul.hMul,OfNat.ofNat, Usa2000P3.lowestScoreProof uses:
Iff.intro,dite, Usa2000P3.lowestScore_a_zero_c,Eq.mpr,id,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.cast_zero,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.Common.mul_congr,Nat.rawCast,HPow.hPow,Mathlib.Tactic.Ring.cast_pos,Mathlib.Tactic.Ring.Common.add_mul,Mathlib.Tactic.Ring.Common.mul_zero,Mathlib.Tactic.Ring.Common.zero_mul,Mathlib.Tactic.Ring.Common.add_pf_zero_add,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.atom_pfand 78 more112 instances, coercions and auxiliary constants left out.
Tactic trace: 81 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.fewestWays_zero_b_cline 401 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.fewestWays,OfNat.ofNat2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.fewestWays_a_zero_cline 403 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.fewestWays,OfNat.ofNat2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.fewestWays_a_b_zeroline 405 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.fewestWays,OfNat.ofNat2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.fewestWays_recline 408 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LT.lt,OfNat.ofNat,HAdd.hAdd,Eq, Usa2000P3.fewestWays,ite,And, Usa2000P3.lowestScore,HMul.hMul,HSub.hSubProof uses:
dite,Eq.symm,Not,le_antisymm, Usa2000P3.lowestScore_le_ab,LE.le,le_of_not_gt,Mathlib.Tactic.Linarith.lt_irrefl,Int,Eq.mp,Neg.neg,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,HPow.hPow,Nat.rawCast,Int.rawCast,inferInstance,Ring,Int.negOfNatand 114 more196 instances, coercions and auxiliary constants left out.
Tactic trace: 385 steps (first 200 of 385)
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_geline 663 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
List, Usa2000P3.Card,LE.le,Nat, Usa2000P3.lowestScore,List.count,Usa2000P3.Card.blue,Usa2000P3.Card.red,Usa2000P3.Card.white, Usa2000P3.scoreProof uses:
List.rec,Nat.zero_le,List.nil,Eq,List.cons,Eq.mpr,HAdd.hAdd,OfNat.ofNat,id,congrFun',congrArg,congr,List.count_cons_self,List.count_cons_of_ne,of_decide_eq_true,Ne,Bool,Decidable.decide,Bool.true,Eq.refland 7 more15 instances, coercions and auxiliary constants left out.
Tactic trace: 15 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_replicate_blue_appendline 685 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,List, Usa2000P3.Card,Eq, Usa2000P3.score,HAppend.hAppend,List.replicate,Usa2000P3.Card.blue,HAdd.hAdd,HMul.hMul,List.count,Usa2000P3.Card.whiteProof uses:
Nat.recAux,of_eq_true,OfNat.ofNat,Eq.trans,True,congrArg,congrFun',MulZeroClass.zero_mul,zero_add,eq_self,Eq.mpr,List.cons,id,List.replicate_succ,List.cons_append, Usa2000P3.score_cons_blue,List.count_append,ite,Bool,BEq.beqand 32 more37 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_replicate_red_appendline 694 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,List, Usa2000P3.Card,Eq, Usa2000P3.score,HAppend.hAppend,List.replicate,Usa2000P3.Card.red,HAdd.hAdd,HMul.hMul,OfNat.ofNat,List.count,Usa2000P3.Card.blueProof uses:
Nat.recAux,of_eq_true,Eq.trans,True,congrArg,congrFun',MulZeroClass.mul_zero,MulZeroClass.zero_mul,zero_add,eq_self,Eq.mpr,List.cons,id,List.replicate_succ,List.cons_append, Usa2000P3.score_cons_red,List.count_append,ite,Bool,BEq.beqand 32 more38 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_replicate_white_appendline 703 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,List, Usa2000P3.Card,Eq, Usa2000P3.score,HAppend.hAppend,List.replicate,Usa2000P3.Card.white,HAdd.hAdd,HMul.hMul,OfNat.ofNat,List.count,Usa2000P3.Card.redProof uses:
Nat.recAux,of_eq_true,Eq.trans,True,congrArg,congrFun',MulZeroClass.mul_zero,MulZeroClass.zero_mul,zero_add,eq_self,Eq.mpr,List.cons,id,List.replicate_succ,List.cons_append, Usa2000P3.score_cons_white,List.count_append,ite,Bool,BEq.beqand 32 more38 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_replicate_blueline 712 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.score,List.replicate, Usa2000P3.Card,Usa2000P3.Card.blue,OfNat.ofNatProof uses:
HAppend.hAppend,List,List.nil,HAdd.hAdd,HMul.hMul,List.count,Usa2000P3.Card.white, Usa2000P3.score_replicate_blue_append,Eq.mp,congr,congrArg,List.append_nil,Eq.trans,congrFun',MulZeroClass.mul_zero,add_zero14 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_replicate_redline 717 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.score,List.replicate, Usa2000P3.Card,Usa2000P3.Card.red,OfNat.ofNatProof uses:
HAppend.hAppend,List,List.nil,HAdd.hAdd,HMul.hMul,List.count,Usa2000P3.Card.blue, Usa2000P3.score_replicate_red_append,Eq.mp,congr,congrArg,List.append_nil,Eq.trans,congrFun',MulZeroClass.mul_zero,add_zero14 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_replicate_whiteline 722 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.score,List.replicate, Usa2000P3.Card,Usa2000P3.Card.white,OfNat.ofNatProof uses:
HAppend.hAppend,List,List.nil,HAdd.hAdd,HMul.hMul,List.count,Usa2000P3.Card.red, Usa2000P3.score_replicate_white_append,Eq.mp,congr,congrArg,List.append_nil,Eq.trans,congrFun',MulZeroClass.mul_zero,add_zero14 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_canonicalPlayline 727 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.score, Usa2000P3.canonicalPlay,HMul.hMulProof uses:
Eq.mpr,HAppend.hAppend,List, Usa2000P3.Card,List.replicate,Usa2000P3.Card.blue,Usa2000P3.Card.red,Usa2000P3.Card.white,id,congrArg,Usa2000P3.canonicalPlay.eq_1,HAdd.hAdd,List.count, Usa2000P3.score_replicate_blue_append,List.count_append,OfNat.ofNat, Usa2000P3.score_replicate_red_append, Usa2000P3.score_replicate_white,of_eq_true,Eq.transand 19 more18 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_rwbline 732 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.score,HAppend.hAppend,List, Usa2000P3.Card,List.replicate,Usa2000P3.Card.red,Usa2000P3.Card.white,Usa2000P3.Card.blue,HMul.hMul,OfNat.ofNatProof uses:
Eq.mpr,HAdd.hAdd,List.count,id,congrArg, Usa2000P3.score_replicate_red_append,List.count_append, Usa2000P3.score_replicate_white_append, Usa2000P3.score_replicate_blue,congrFun',Eq.trans,congr,ite,Bool,BEq.beq,Bool.true,List.count_replicate,ite_eq_right_of_eq_false,False,eq_false'and 27 more35 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.score_wbrline 740 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Eq, Usa2000P3.score,HAppend.hAppend,List, Usa2000P3.Card,List.replicate,Usa2000P3.Card.white,Usa2000P3.Card.blue,Usa2000P3.Card.red,HMul.hMul,OfNat.ofNatProof uses:
Eq.mpr,HAdd.hAdd,List.count,id,congrArg, Usa2000P3.score_replicate_white_append,List.count_append, Usa2000P3.score_replicate_blue_append, Usa2000P3.score_replicate_red,congrFun',Eq.trans,congr,ite,Bool,BEq.beq,Bool.true,List.count_replicate,ite_eq_right_of_eq_false,False,eq_false'and 27 more35 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- def
Usa2000P3.optPlaysThe set of plays that achieve the lowest score line 751 sourceSource documentation
The set of plays that achieve the lowest score.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset,List, Usa2000P3.CardProof uses:
Finset.filter,Eq, Usa2000P3.score, Usa2000P3.lowestScore, Usa2000P3.plays1 instances, coercions and auxiliary constants left out.
def optPlays (A B C : ℕ) : Finset (List Card) := …
Mentions: Usa2000P3.Card
- lemma
Usa2000P3.card_optPlays_head_blueline 754 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq,Finset.card,List, Usa2000P3.Card,Finset.filter,Option,List.head?,Option.some,Usa2000P3.Card.blue, Usa2000P3.optPlays,ite,And,LT.lt,OfNat.ofNat, Usa2000P3.lowestScore,HMul.hMul,HSub.hSubProof uses:
dite,Finset,EmptyCollection.emptyCollection,Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem,List.cons,Exists,False,Iff.mp,List.head?_eq_some_iff,And.right, Usa2000P3.plays, Usa2000P3.score,Eq.mp,Finset.mem_filterand 42 more46 instances, coercions and auxiliary constants left out.
Tactic trace: 82 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.card_optPlays_head_redline 823 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq,Finset.card,List, Usa2000P3.Card,Finset.filter,Option,List.head?,Option.some,Usa2000P3.Card.red, Usa2000P3.optPlays,ite,And,LT.lt,OfNat.ofNat, Usa2000P3.lowestScore,HMul.hMul,HSub.hSubProof uses:
dite,Finset,EmptyCollection.emptyCollection,Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem,List.cons,Exists,False,Iff.mp,List.head?_eq_some_iff,And.right, Usa2000P3.plays, Usa2000P3.score,Eq.mp,Finset.mem_filterand 42 more46 instances, coercions and auxiliary constants left out.
Tactic trace: 82 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.card_optPlays_head_whiteline 892 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq,Finset.card,List, Usa2000P3.Card,Finset.filter,Option,List.head?,Option.some,Usa2000P3.Card.white, Usa2000P3.optPlays,ite,And,LT.lt,OfNat.ofNat, Usa2000P3.lowestScore,HMul.hMul,HSub.hSubProof uses:
dite,Finset,EmptyCollection.emptyCollection,Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem,List.cons,Exists,False,Iff.mp,List.head?_eq_some_iff,And.right, Usa2000P3.plays, Usa2000P3.score,Eq.mp,Finset.mem_filterand 42 more46 instances, coercions and auxiliary constants left out.
Tactic trace: 82 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.optPlays_card_recline 961 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LT.lt,OfNat.ofNat,HAdd.hAdd,Eq,Finset.card,List, Usa2000P3.Card, Usa2000P3.optPlays,ite,And, Usa2000P3.lowestScore,HMul.hMul,HSub.hSubProof uses:
Membership.mem,Finset,Ne,List.nil,List.count,Usa2000P3.Card.blue,Usa2000P3.Card.red,Usa2000P3.Card.white,False,Iff.mp, Usa2000P3.plays, Usa2000P3.mem_plays,And.left, Usa2000P3.score,Eq.mp,Finset.filter,congrArg,propext,Finset.mem_filter,Usa2000P3.optPlays.eq_1and 33 more38 instances, coercions and auxiliary constants left out.
Tactic trace: 53 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.optPlays_zeroline 1020 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Eq,Nat,Finset.card,List, Usa2000P3.Card, Usa2000P3.optPlays,OfNat.ofNatProof uses:
Finset,Singleton.singleton,List.nil,Finset.ext,Eq.mpr,Iff,Membership.mem,Finset.filter, Usa2000P3.score, Usa2000P3.lowestScore, Usa2000P3.plays,id,congrArg,Usa2000P3.optPlays.eq_1,And,propext,Finset.mem_filter,Finset.mem_singleton,Iff.intro,List.countand 18 more14 instances, coercions and auxiliary constants left out.
Tactic trace: 25 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.optPlays_cardline 1043 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq,Finset.card,List, Usa2000P3.Card, Usa2000P3.optPlays, Usa2000P3.fewestWaysProof uses:
LT.lt,HAdd.hAdd,Nat.recAux,OfNat.ofNat,dite,And,Eq.mpr,id,congrArg, Usa2000P3.optPlays_zero,of_eq_true,Eq.trans,True,ite_eq_left_of_eq_true,ite,HMul.hMul,congr,eq_self,and_self,Eq.symmand 10 more18 instances, coercions and auxiliary constants left out.
Tactic trace: 43 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.canonicalPlay_mem_playsline 1083 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Membership.mem,List, Usa2000P3.Card,Finset, Usa2000P3.plays, Usa2000P3.canonicalPlayProof uses:
Iff.mpr,And,Eq,List.count,Usa2000P3.Card.blue,Usa2000P3.Card.red,Usa2000P3.Card.white, Usa2000P3.mem_plays,And.intro,of_eq_true,Eq.trans,True,congrFun',congrArg,HAppend.hAppend,List.replicate,HAdd.hAdd,List.count_append,OfNat.ofNat,congrand 15 more15 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.mem_plays_rwbline 1088 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Membership.mem,List, Usa2000P3.Card,Finset, Usa2000P3.plays,HAppend.hAppend,List.replicate,Usa2000P3.Card.red,Usa2000P3.Card.white,Usa2000P3.Card.blueProof uses:
Iff.mpr,And,Eq,List.count, Usa2000P3.mem_plays,And.intro,of_eq_true,Eq.trans,True,congrFun',congrArg,HAdd.hAdd,List.count_append,OfNat.ofNat,congr,ite,Bool,BEq.beq,Bool.true,List.count_replicateand 10 more17 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.mem_plays_wbrline 1094 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Membership.mem,List, Usa2000P3.Card,Finset, Usa2000P3.plays,HAppend.hAppend,List.replicate,Usa2000P3.Card.white,Usa2000P3.Card.blue,Usa2000P3.Card.redProof uses:
Iff.mpr,And,Eq,List.count, Usa2000P3.mem_plays,And.intro,of_eq_true,Eq.trans,True,congrFun',congrArg,HAdd.hAdd,List.count_append,OfNat.ofNat,congr,ite,Bool,BEq.beq,Bool.true,List.count_replicateand 10 more17 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2000P3.isLeast_lowestScoreline 1100 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,IsLeast,Set.ofPred,Exists,List, Usa2000P3.Card,And,Membership.mem,Finset, Usa2000P3.plays,Eq, Usa2000P3.score, Usa2000P3.lowestScoreProof uses:
And.intro,Set,lowerBounds,HMul.hMul,Or,OfNat.ofNat, Usa2000P3.lowestScore_cases,Exists.intro, Usa2000P3.canonicalPlay, Usa2000P3.canonicalPlay_mem_plays,Eq.mpr,id,congrArg, Usa2000P3.score_canonicalPlay,Eq.symm,HAppend.hAppend,List.replicate,Usa2000P3.Card.red,Usa2000P3.Card.white,Usa2000P3.Card.blueand 9 more17 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
- problem
Usa2000P3.usa2000_p3line 1118 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,And,IsLeast,Set.ofPred,Exists,List, Usa2000P3.Card,Membership.mem,Finset, Usa2000P3.plays,Eq, Usa2000P3.score, Usa2000P3.lowestScore,Finset.card,Finset.filter, Usa2000P3.fewestWaysProof uses:
And.intro, Usa2000P3.isLeast_lowestScore, Usa2000P3.optPlays_card8 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.