Compfiles/Usa2006P4.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
7 declarations, 0 contain sorry, 0 declared as axioms
USA Mathematical Olympiad 2006, Problem 4
Find all positive integers n for which there exist an integer k ≥ 2 and positive rational numbers a₁, a₂, ..., aₖ satisfying a₁ + a₂ + ... + aₖ = a₁ · a₂ · ... · aₖ = n.
Imports (6)
Imported by 1 file
- determine
Usa2006P4.SolutionSetline 32 sourceno axioms what this means
Statement uses:
Set,NatProof uses:
Set.ofPred,Or,Eq,OfNat.ofNat,LE.le2 instances, coercions and auxiliary constants left out.
- lemma
Usa2006P4.not_isSquare_five_nat5is not the square of a natural number line 49 sourceSource documentation
5is not the square of a natural number.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Not,IsSquare,Nat,OfNat.ofNatProof uses:
Eq,HMul.hMul,False,LE.le,Decidable.byContradiction,Nat.mul_le_mul,dite,False.elim,Eq.mp,eq_false,Mathlib.Meta.NormNum.isNat_eq_false,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Meta.NormNum.isNat_mul,Bool,Bool.false,Eq.symm,le_antisymm,Nat.rawCast,Mathlib.Tactic.IntervalCases.of_le_rightand 3 more17 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
lemma not_isSquare_five_nat : ¬ IsSquare (5 : ℕ) := by …
- lemma
Usa2006P4.rat_mul_self_ne_five5is not the square of a rational number line 59 sourceSource documentation
5is not the square of a rational number.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Rat,Ne,HMul.hMul,OfNat.ofNatProof uses:
Eq,Irrational,Real.sqrt,Real,Nat,Nat.Prime.irrational_sqrt,Mathlib.Meta.NormNum.isNat_prime_2,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Bool.true,Mathlib.Meta.NormNum.isNat_minFac_4,Mathlib.Meta.NormNum.IsNat.raw_refl,Mathlib.Meta.NormNum.minFacHelper_0,Bool.false,Exists.intro,abs,HPow.hPow,cast,Eq.symmand 33 more60 instances, coercions and auxiliary constants left out.
Tactic trace: 13 steps
Open to load the checked before-and-after goal states.
lemma rat_mul_self_ne_five (q : ℚ) : q * q ≠ 5 := by …
- lemma
Usa2006P4.sum_eq_sum_getSumming the entries of a list of rationals viaFin-indexed access line 72 sourceSource documentation
Summing the entries of a list of rationals via
Fin-indexed access.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
List,Rat,Eq,Finset.sum,Fin,List.length,Finset.univ,List.get,List.sumProof uses:
Eq.mpr,List.ofFn,id,congrArg,Eq.symm,Fin.sum_ofFn,List.ofFn_get,Eq.refl17 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
lemma sum_eq_sum_get (l : List ℚ) : ∑ i : Fin l.length, l.get i = l.sum := by …
- lemma
Usa2006P4.prod_eq_prod_getMultiplying the entries of a list of rationals viaFin-indexed access line 76 sourceSource documentation
Multiplying the entries of a list of rationals via
Fin-indexed access.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
List,Rat,Eq,Finset.prod,Fin,List.length,Finset.univ,List.get,List.prodProof uses:
Eq.mpr,List.ofFn,id,congrArg,Eq.symm,Fin.prod_ofFn,List.ofFn_get,Eq.refl21 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
lemma prod_eq_prod_get (l : List ℚ) : ∏ i : Fin l.length, l.get i = l.prod := by …
- lemma
Usa2006P4.prod_le_sum_div_powAM–GM, raised to thek-th power, for positive rationals indexed byFin k: the product is at most thek-th power of the arithmetic mean line 81 sourceSource documentation
AM–GM, raised to the
k-th power, for positive rationals indexed byFin k: the product is at most thek-th power of the arithmetic mean.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LT.lt,OfNat.ofNat,Fin,Rat,LE.le,Real,Finset.prod,Finset.univ,HPow.hPow,HDiv.hDiv,Finset.sumProof uses:
Ne,cast,Not,Eq,Eq.symm,Eq.trans,congrArg,Nat.cast_zero,LT.lt.ne',Iff.mpr,Rat.cast_nonneg,LT.lt.le,Inv.inv,HMul.hMul,Real.geom_mean_le_arith_mean_weighted,Membership.mem,Finset,inv_nonneg,Nat.cast_nonneg,Eq.mprand 25 more140 instances, coercions and auxiliary constants left out.
Tactic trace: 13 steps
Open to load the checked before-and-after goal states.
lemma prod_le_sum_div_pow {k : ℕ} (hk : 0 < k) (z : Fin k → ℚ) (hz : ∀ i, 0 < z i) : ((∏ i, z i : ℚ) : ℝ) ≤ (((∑ i, z i : ℚ) : ℝ) / k) ^ k := by … - problem
Usa2006P4.usa2006_p4line 106 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LT.lt,OfNat.ofNat,Iff,Membership.mem,Set, Usa2006P4.SolutionSet,Exists,List,Rat,And,LE.le,List.length,Eq,List.sum,List.prodProof uses:
id,Iff.intro,Or,Exists.intro,List.cons,List.nil,And.intro,of_decide_eq_true,Bool,Decidable.decide,Bool.true,Eq.refl,Eq.mp,Eq.trans,congrArg,False,or_false,Mathlib.Meta.NormNum.isNat_lt_true,Mathlib.Meta.NormNum.isNat_ofNat,Bool.falseand 174 more242 instances, coercions and auxiliary constants left out.
Tactic trace: 160 steps
Open to load the checked before-and-after goal states.