Compfiles/Imo1984P6.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
2 declarations, 0 contain sorry, 0 declared as axioms
International Mathematical Olympiad 1984, Problem 6
Let a, b, c, and d be odd integers such that 0 < a < b < c < d and ad = bc. Prove that if a + d = 2ᵏ and b + c = 2ᵐ for some integers k and m, then a = 1.
Imports (2)
Imported by 1 file
- lemma
Imo1984P6.two_pow_dvd_orIf2^mdivides(y - x) * (y + x)for oddx < y, then almost all of the factors of 2 land in one of the two factors, sincegcd (y - x) (y + x) = 2line 36 sourceSource documentation
If
2^mdivides(y - x) * (y + x)for oddx < y, then almost all of the factors of 2 land in one of the two factors, sincegcd (y - x) (y + x) = 2.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Odd,LT.lt,Dvd.dvd,HPow.hPow,OfNat.ofNat,HMul.hMul,HSub.hSub,HAdd.hAdd,OrProof uses:
LE.le,Or.inl,Eq,Eq.mpr,id,congrArg,pow_zero,one_dvd,Even,Nat.Odd.sub_odd,Odd.add_odd,pow_add,of_eq_true,Eq.trans,True,congr,congrFun',Mathlib.Meta.NormNum.IsNat.to_eq,Mathlib.Meta.NormNum.isNat_pow,Eq.refland 52 more75 instances, coercions and auxiliary constants left out.
Tactic trace: 42 steps
Open to load the checked before-and-after goal states.
lemma two_pow_dvd_or {x y m : ℕ} (hx : Odd x) (hy : Odd y) (hxy : x < y) (hdvd : 2 ^ m ∣ (y - x) * (y + x)) : 2 ^ (m - 1) ∣ y - x ∨ 2 ^ (m - 1) ∣ y + x := by … - problem
Imo1984P6.imo1984_p6line 77 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,And,LT.lt,OfNat.ofNat,Odd,Eq,HMul.hMul,HAdd.hAdd,HPow.hPowProof uses:
HMod.hMod,Iff.mp,Nat.odd_iff,LE.le,Decidable.byContradiction,Not,dite,False,Eq.symm,le_antisymm,Nat.ge_of_not_lt,Mathlib.Tactic.IntervalCases.of_not_le_left,Nat.rawCast,Mathlib.Meta.NormNum.IsNat.to_raw_eq,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Nat.zero_le,Int,cast,Eq.transand 109 more163 instances, coercions and auxiliary constants left out.
Tactic trace: 95 steps
Open to load the checked before-and-after goal states.