Compfiles/Usa2017P1.lean
7 declarations, 0 contain sorry, 0 declared as axioms
USA Mathematical Olympiad 2017, Problem 1
Prove that there are infinitely many distinct pairs $(a,b)$ of relatively prime positive integers $a>1$ and $b>1$ such that $a^b+b^a$ is divisible by $a+b$.
Imports (7)
Imported by 1 file
- def
Usa2017P1.conditionline 32 sourcestandard axioms: propext what this means
Statement uses:
NatProof uses:
And,Eq,Nat.gcd,OfNat.ofNat,GT.gt,Dvd.dvd,HAdd.hAdd,HPow.hPow9 instances, coercions and auxiliary constants left out.
- def
Usa2017P1.solution_setline 37 sourcestandard axioms: propext what this means
Statement uses:
Set,Prod,NatProof uses:
Set.ofPred, Usa2017P1.condition,Prod.fst,Prod.snd - lemma
Usa2017P1.divisibility_helperline 39 sourcestandard axioms: propext what this means
Statement uses:
Nat,Or,Eq,OfNat.ofNat,Nat.ModEq,HAdd.hAdd,HMul.hMul,HPow.hPowProof uses:
Or.inl,Eq.mpr,id,congrArg,congrFun',congr,Eq.trans,Nat.rawCast,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.symm,Mathlib.Tactic.Ring.Common.add_mul,Mathlib.Tactic.Ring.Common.mul_add,Mathlib.Tactic.Ring.Common.mul_pf_right,Mathlib.Meta.NormNum.IsNat.to_raw_eqand 31 more40 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2017P1.build_condition_divisibilityline 55 sourcestandard axioms: propext what this means
Statement uses:
Nat,Dvd.dvd,HAdd.hAdd,HMul.hMul,OfNat.ofNat,HPow.hPowProof uses:
Iff.mp,Nat.ModEq,Nat.modEq_zero_iff_dvd,Eq,of_eq_true,Eq.trans,True,congr,congrArg,Nat.rawCast,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.mpr,id,Eq.symmand 40 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 30 steps
Open to load the checked before-and-after goal states.
- lemma
Usa2017P1.build_conditionline 101 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Usa2017P1.condition,HAdd.hAdd,HMul.hMul,OfNat.ofNatProof uses:
Eq,rfl,Nat.gcd,Iff.mp,Nat.Coprime,Nat.coprime_iff_gcd_eq_one,Eq.mpr,id,congrArg,add_comm,Iff.mpr,Nat.coprime_add_self_right,Odd,Nat.coprime_two_right,Exists.intro,Nat.Simproc.add_eq_add_ge,of_decide_eq_true,LE.le,Eq.refl,Booland 15 more85 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- def
Usa2017P1.buildline 117 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Prod, Usa2017P1.solution_setProof uses:
Subtype.mk,Membership.mem,Set,Prod.mk,HAdd.hAdd,HMul.hMul,OfNat.ofNat, Usa2017P1.build_condition7 instances, coercions and auxiliary constants left out.
- problem
Usa2017P1.usa2016_p1line 122 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Infinite,Prod,Nat,Set.ofPred,Usa2017P1.usa2016_p1.match_1, Usa2017P1.conditionProof uses:
Infinite.of_injective, Usa2017P1.build,Eq4 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.