MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  prmodvdslcmf Structured version   Visualization version   GIF version

Theorem prmodvdslcmf 17269
Description: The primorial of a nonnegative integer divides the least common multiple of all positive integers less than or equal to the integer. (Contributed by AV, 19-Aug-2020.) (Revised by AV, 29-Aug-2020.)
Assertion
Ref Expression
prmodvdslcmf (𝑁 ∈ ℕ0 → (#p‘𝑁) ∥ (lcm‘(1...𝑁)))

Proof of Theorem prmodvdslcmf
Dummy variables 𝑘 𝑚 𝑥 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 prmoval 17255 . . 3 (𝑁 ∈ ℕ0 → (#p‘𝑁) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
2 eqidd 2764 . . . . . 6 (𝑘 ∈ (1...𝑁) → (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)) = (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)))
3 simpr 490 . . . . . . . 8 ((𝑘 ∈ (1...𝑁) ∧ 𝑚 = 𝑘) → 𝑚 = 𝑘)
43eleq1d 2849 . . . . . . 7 ((𝑘 ∈ (1...𝑁) ∧ 𝑚 = 𝑘) → (𝑚 ∈ ℙ ↔ 𝑘 ∈ ℙ))
54, 3ifbieq1d 4510 . . . . . 6 ((𝑘 ∈ (1...𝑁) ∧ 𝑚 = 𝑘) → if(𝑚 ∈ ℙ, 𝑚, 1) = if(𝑘 ∈ ℙ, 𝑘, 1))
6 elfznn 13727 . . . . . 6 (𝑘 ∈ (1...𝑁) → 𝑘 ∈ ℕ)
7 1nn 12386 . . . . . . . 8 1 ∈ ℕ
87a1i 11 . . . . . . 7 (𝑘 ∈ (1...𝑁) → 1 ∈ ℕ)
96, 8ifcld 4532 . . . . . 6 (𝑘 ∈ (1...𝑁) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
102, 5, 6, 9fvmptd 7032 . . . . 5 (𝑘 ∈ (1...𝑁) → ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) = if(𝑘 ∈ ℙ, 𝑘, 1))
1110eqcomd 2769 . . . 4 (𝑘 ∈ (1...𝑁) → if(𝑘 ∈ ℙ, 𝑘, 1) = ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘))
1211prodeq2i 16130 . . 3 ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) = ∏𝑘 ∈ (1...𝑁)((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘)
131, 12eqtrdi 2814 . 2 (𝑁 ∈ ℕ0 → (#p‘𝑁) = ∏𝑘 ∈ (1...𝑁)((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘))
14 fzfid 14156 . . . 4 (𝑁 ∈ ℕ0 → (1...𝑁) ∈ Fin)
15 fz1ssnn 13729 . . . 4 (1...𝑁) ⊆ ℕ
1614, 15jctil 529 . . 3 (𝑁 ∈ ℕ0 → ((1...𝑁) ⊆ ℕ ∧ (1...𝑁) ∈ Fin))
17 fzssz 13698 . . . . 5 (1...𝑁) ⊆ ℤ
1817a1i 11 . . . 4 (𝑁 ∈ ℕ0 → (1...𝑁) ⊆ ℤ)
19 0nelfz1 13716 . . . . 5 0 ∉ (1...𝑁)
2019a1i 11 . . . 4 (𝑁 ∈ ℕ0 → 0 ∉ (1...𝑁))
21 lcmfn0cl 16845 . . . 4 (((1...𝑁) ⊆ ℤ ∧ (1...𝑁) ∈ Fin ∧ 0 ∉ (1...𝑁)) → (lcm‘(1...𝑁)) ∈ ℕ)
2218, 14, 20, 21syl3anc 1399 . . 3 (𝑁 ∈ ℕ0 → (lcm‘(1...𝑁)) ∈ ℕ)
23 id 23 . . . . . 6 (𝑚 ∈ ℕ → 𝑚 ∈ ℕ)
247a1i 11 . . . . . 6 (𝑚 ∈ ℕ → 1 ∈ ℕ)
2523, 24ifcld 4532 . . . . 5 (𝑚 ∈ ℕ → if(𝑚 ∈ ℙ, 𝑚, 1) ∈ ℕ)
2625adantl 487 . . . 4 ((𝑁 ∈ ℕ0 ∧ 𝑚 ∈ ℕ) → if(𝑚 ∈ ℙ, 𝑚, 1) ∈ ℕ)
2726fmpttd 7147 . . 3 (𝑁 ∈ ℕ0 → (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)):ℕ⟶ℕ)
28 simpr 490 . . . . . . 7 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → 𝑘 ∈ (1...𝑁))
2928adantr 486 . . . . . 6 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑥 ∈ ((1...𝑁) ∖ {𝑘})) → 𝑘 ∈ (1...𝑁))
30 eldifi 4070 . . . . . . 7 (𝑥 ∈ ((1...𝑁) ∖ {𝑘}) → 𝑥 ∈ (1...𝑁))
3130adantl 487 . . . . . 6 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑥 ∈ ((1...𝑁) ∖ {𝑘})) → 𝑥 ∈ (1...𝑁))
32 eldif 4052 . . . . . . . 8 (𝑥 ∈ ((1...𝑁) ∖ {𝑘}) ↔ (𝑥 ∈ (1...𝑁) ∧ ¬ 𝑥 ∈ {𝑘}))
33 velsn 4600 . . . . . . . . . . 11 (𝑥 ∈ {𝑘} ↔ 𝑥 = 𝑘)
3433biimpri 231 . . . . . . . . . 10 (𝑥 = 𝑘 → 𝑥 ∈ {𝑘})
3534equcoms 2055 . . . . . . . . 9 (𝑘 = 𝑥 → 𝑥 ∈ {𝑘})
3635necon3bi 2985 . . . . . . . 8 (¬ 𝑥 ∈ {𝑘} → 𝑘 ≠ 𝑥)
3732, 36simplbiim 514 . . . . . . 7 (𝑥 ∈ ((1...𝑁) ∖ {𝑘}) → 𝑘 ≠ 𝑥)
3837adantl 487 . . . . . 6 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑥 ∈ ((1...𝑁) ∖ {𝑘})) → 𝑘 ≠ 𝑥)
39 eqid 2763 . . . . . . 7 (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)) = (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))
4039fvprmselgcd1 17267 . . . . . 6 ((𝑘 ∈ (1...𝑁) ∧ 𝑥 ∈ (1...𝑁) ∧ 𝑘 ≠ 𝑥) → (((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) gcd ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑥)) = 1)
4129, 31, 38, 40syl3anc 1399 . . . . 5 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑥 ∈ ((1...𝑁) ∖ {𝑘})) → (((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) gcd ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑥)) = 1)
4241ralrimiva 3158 . . . 4 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → ∀𝑥 ∈ ((1...𝑁) ∖ {𝑘})(((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) gcd ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑥)) = 1)
4342ralrimiva 3158 . . 3 (𝑁 ∈ ℕ0 → ∀𝑘 ∈ (1...𝑁)∀𝑥 ∈ ((1...𝑁) ∖ {𝑘})(((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) gcd ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑥)) = 1)
44 eqidd 2764 . . . . . 6 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)) = (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)))
45 simpr 490 . . . . . . . 8 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑚 = 𝑘) → 𝑚 = 𝑘)
4645eleq1d 2849 . . . . . . 7 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑚 = 𝑘) → (𝑚 ∈ ℙ ↔ 𝑘 ∈ ℙ))
4746, 45ifbieq1d 4510 . . . . . 6 (((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) ∧ 𝑚 = 𝑘) → if(𝑚 ∈ ℙ, 𝑚, 1) = if(𝑘 ∈ ℙ, 𝑘, 1))
4815, 28sselid 3911 . . . . . 6 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → 𝑘 ∈ ℕ)
4917, 28sselid 3911 . . . . . . 7 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → 𝑘 ∈ ℤ)
50 1zzd 12767 . . . . . . 7 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → 1 ∈ ℤ)
5149, 50ifcld 4532 . . . . . 6 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℤ)
5244, 47, 48, 51fvmptd 7032 . . . . 5 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) = if(𝑘 ∈ ℙ, 𝑘, 1))
53 breq1 5111 . . . . . 6 (𝑥 = if(𝑘 ∈ ℙ, 𝑘, 1) → (𝑥 ∥ (lcm‘(1...𝑁)) ↔ if(𝑘 ∈ ℙ, 𝑘, 1) ∥ (lcm‘(1...𝑁))))
5416adantr 486 . . . . . . 7 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → ((1...𝑁) ⊆ ℕ ∧ (1...𝑁) ∈ Fin))
55172a1i 12 . . . . . . . 8 ((1...𝑁) ∈ Fin → ((1...𝑁) ⊆ ℕ → (1...𝑁) ⊆ ℤ))
5655imdistanri 580 . . . . . . 7 (((1...𝑁) ⊆ ℕ ∧ (1...𝑁) ∈ Fin) → ((1...𝑁) ⊆ ℤ ∧ (1...𝑁) ∈ Fin))
57 dvdslcmf 16850 . . . . . . 7 (((1...𝑁) ⊆ ℤ ∧ (1...𝑁) ∈ Fin) → ∀𝑥 ∈ (1...𝑁)𝑥 ∥ (lcm‘(1...𝑁)))
5854, 56, 573syl 19 . . . . . 6 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → ∀𝑥 ∈ (1...𝑁)𝑥 ∥ (lcm‘(1...𝑁)))
59 elfzuz2 13702 . . . . . . . . 9 (𝑘 ∈ (1...𝑁) → 𝑁 ∈ (ℤ≥‘1))
6059adantl 487 . . . . . . . 8 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → 𝑁 ∈ (ℤ≥‘1))
61 eluzfz1 13704 . . . . . . . 8 (𝑁 ∈ (ℤ≥‘1) → 1 ∈ (1...𝑁))
6260, 61syl 18 . . . . . . 7 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → 1 ∈ (1...𝑁))
6328, 62ifcld 4532 . . . . . 6 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ (1...𝑁))
6453, 58, 63rspcdva 3581 . . . . 5 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → if(𝑘 ∈ ℙ, 𝑘, 1) ∥ (lcm‘(1...𝑁)))
6552, 64eqbrtrd 5133 . . . 4 ((𝑁 ∈ ℕ0 ∧ 𝑘 ∈ (1...𝑁)) → ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) ∥ (lcm‘(1...𝑁)))
6665ralrimiva 3158 . . 3 (𝑁 ∈ ℕ0 → ∀𝑘 ∈ (1...𝑁)((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) ∥ (lcm‘(1...𝑁)))
67 coprmproddvds 16882 . . 3 ((((1...𝑁) ⊆ ℕ ∧ (1...𝑁) ∈ Fin) ∧ ((lcm‘(1...𝑁)) ∈ ℕ ∧ (𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1)):ℕ⟶ℕ) ∧ (∀𝑘 ∈ (1...𝑁)∀𝑥 ∈ ((1...𝑁) ∖ {𝑘})(((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) gcd ((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑥)) = 1 ∧ ∀𝑘 ∈ (1...𝑁)((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) ∥ (lcm‘(1...𝑁)))) → ∏𝑘 ∈ (1...𝑁)((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) ∥ (lcm‘(1...𝑁)))
6816, 22, 27, 43, 66, 67syl122anc 1407 . 2 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)((𝑚 ∈ ℕ ↦ if(𝑚 ∈ ℙ, 𝑚, 1))‘𝑘) ∥ (lcm‘(1...𝑁)))
6913, 68eqbrtrd 5133 1 (𝑁 ∈ ℕ0 → (#p‘𝑁) ∥ (lcm‘(1...𝑁)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ∧ wa 401   = wceq 1570   ∈ wcel 2147   ≠ wne 2959   ∉ wnel 3065  ∀wral 3080   ⊆ wss 3900   ∖ cdif 4048  ifcif 4485  {csn 4588   class class class wbr 5108   ↦ cmpt 5192  ⟶wf 6562  ‘cfv 6566  (class class class)co 7451  Fincfn 9011  0cc0 11239  1c1 11240  ℕcn 12375  ℕ0cn0 12646  ℤcz 12733  ℤ≥cuz 13005  ...cfz 13679  ∏cprod 16116   ∥ cdvds 16466   gcd cgcd 16708  lcmclcmf 16808  ℙcprime 16890  #pcprmo 17253
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783  ax-inf2 9679  ax-cnex 11295  ax-resscn 11296  ax-1cn 11297  ax-icn 11298  ax-addcl 11299  ax-addrcl 11300  ax-mulcl 11301  ax-mulrcl 11302  ax-mulcom 11303  ax-addass 11304  ax-mulass 11305  ax-distr 11306  ax-i2m1 11307  ax-1ne0 11308  ax-1rid 11309  ax-rnegex 11310  ax-rrecex 11311  ax-cnre 11312  ax-pre-lttri 11313  ax-pre-lttrn 11314  ax-pre-ltadd 11315  ax-pre-mulgt0 11316  ax-pre-sup 11317
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-int 4913  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-se 5612  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-lim 6393  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-isom 6575  df-riota 7408  df-ov 7454  df-oprab 7455  df-mpo 7456  df-om 7912  df-1st 8035  df-2nd 8036  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-rdg 8456  df-1o 8514  df-2o 8515  df-er 8755  df-en 9012  df-dom 9013  df-sdom 9014  df-fin 9015  df-sup 9471  df-inf 9472  df-oi 9541  df-card 10057  df-pnf 11384  df-mnf 11385  df-xr 11386  df-ltxr 11387  df-le 11388  df-sub 11582  df-neg 11583  df-div 12014  df-nn 12376  df-2 12445  df-3 12446  df-n0 12647  df-z 12734  df-uz 13006  df-rp 13161  df-fz 13680  df-fzo 13829  df-fl 13972  df-mod 14050  df-seq 14185  df-exp 14245  df-hash 14516  df-cj 15309  df-re 15310  df-im 15311  df-sqrt 15445  df-abs 15446  df-clim 15699  df-prod 16117  df-dvds 16467  df-gcd 16709  df-lcmf 16810  df-prm 16891  df-prmo 17254
This theorem is used by:  prmolelcmf  17270
  Copyright terms: Public domain W3C validator