Compfiles/Imo1994P6.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
10 declarations, 0 contain sorry, 0 declared as axioms
International Mathematical Olympiad 1994, Problem 6
Show that there exists a set A of positive integers with the following property: For any infinite set S of primes there exist two positive integers m ∈ A and n ∉ A each of which is a product of k distinct elements of S for some k ≥ 2.
Imported by 1 file
- def
Imo1994P6.IsProductOfkDistinctMembersline 31 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Nat,SetProof uses:
Exists,Finset,And,Eq,Finset.card,Finset.prod,Membership.mem4 instances, coercions and auxiliary constants left out.
- def
Imo1994P6.Primesline 36 sourcestandard axioms: propext what this means
Statement uses:
Set,NatProof uses:
Set.ofPred,Nat.Prime - instance
Imo1994P6.(instance at line 37)line 37 source - def
Imo1994P6.primes_isoline 38 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
OrderIso,Nat, Imo1994P6.Primes,Membership.mem,SetProof uses:
Nat.Subtype.orderIsoOfNat5 instances, coercions and auxiliary constants left out.
- def
Imo1994P6.ωNumber of distinct prime factors of x line 41 sourceSource comment
Number of distinct prime factors of xstandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
Finset.card,Nat.primeFactorsdef ω : ℕ → ℕ := fun x ↦ (Nat.primeFactors x).card
- lemma
Imo1994P6.prod_of_primesline 43 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Set,Nat,Finset,Membership.mem,Nat.Prime,Eq,Nat.primeFactors,Finset.prod,Finset.map,Subtype,Function.Embedding.mk,Subtype.val_injectiveProof uses:
Eq.symm,Finset.prod_map,Eq.mpr,id,congrArg,Nat.primeFactors_prod,Subtype.mk,Iff.mpr,Iff.of_eq,Eq.refl,Exists,Eq.mp,Eq.trans,And,Function.Embedding,funext,propext,exists_prop_congr,of_eq_true,eq_true17 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Imo1994P6.minFac_prod_primesline 50 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Set,Nat,OrderIso,Membership.mem,Nat.Prime,LT.lt,OfNat.ofNat,Eq,Nat.minFac,Finset.prod,Finset.image,HAdd.hAdd,Finset.rangeProof uses:
Finset,Eq.mpr,id,congrArg,rfl,Iff.mpr,Exists,And,Finset.mem_image,Exists.intro,And.intro,Finset.mem_range,of_eq_true,Eq.trans,True,congrFun',zero_add,eq_self,Subtype.prop,Neand 24 more54 instances, coercions and auxiliary constants left out.
Tactic trace: 20 steps
Open to load the checked before-and-after goal states.
- lemma
Imo1994P6.prod_of_distinct_membersline 77 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Set,OrderIso,Membership.mem, Imo1994P6.IsProductOfkDistinctMembers,Finset.prod,Finset.image,HAdd.hAdd,Finset.rangeProof uses:
id,Finset,Exists.intro,And,Eq,Finset.card,Function.Injective,Eq.mpr,congrArg,Finset.card_image_of_injective,And.intro,rfl26 instances, coercions and auxiliary constants left out.
Tactic trace: 11 steps
Open to load the checked before-and-after goal states.
- lemma
Imo1994P6.primeFactors_cardline 89 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Set,Nat,OrderIso,Membership.mem,Nat.Prime,Eq, Imo1994P6.ω,Finset.prod,Finset.image,HAdd.hAdd,Finset.rangeProof uses:
Finset,id,Eq.mpr,Finset.card,Nat.primeFactors,Finset.map,Subtype,Function.Embedding.mk,Subtype.val_injective,congrArg, Imo1994P6.prod_of_primes,congrFun',Finset.card_map,Finset.card_image_of_injective,Nat.add_right_cancel,OrderIso.injective,Finset.card_range24 instances, coercions and auxiliary constants left out.
Tactic trace: 10 steps
Open to load the checked before-and-after goal states.
- problem
Imo1994P6.imo1994_p6line 103 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Exists,Set,Nat,And,Membership.mem,LT.lt,OfNat.ofNat,Infinite,Nat.Prime,LE.le, Imo1994P6.IsProductOfkDistinctMembers,NotProof uses:
Set.ofPred, Imo1994P6.Primes,OrderIso, Imo1994P6.primes_iso,HSub.hSub, Imo1994P6.ω,Nat.minFac,Exists.intro,And.intro,Nat.Subtype.orderIsoOfNat,HAdd.hAdd,OrderIso.symm,Subtype.mk,Subtype.val_prop,id,Subtype,Subtype.prop,Iff.mpr,Subtype.mk_lt_mk,OrderIso.strictMonoand 27 more60 instances, coercions and auxiliary constants left out.
Tactic trace: 35 steps
Open to load the checked before-and-after goal states.