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

Theorem prmop1 16474
Description: The primorial of a successor. (Contributed by AV, 28-Aug-2020.)
Assertion
Ref Expression
prmop1 (𝑁 ∈ ℕ0 → (#p‘(𝑁 + 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))

Proof of Theorem prmop1
Dummy variable 𝑘 is distinct from all other variables.
StepHypRef Expression
1 peano2nn0 12016 . . 3 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℕ0)
2 prmoval 16469 . . 3 ((𝑁 + 1) ∈ ℕ0 → (#p‘(𝑁 + 1)) = ∏𝑘 ∈ (1...(𝑁 + 1))if(𝑘 ∈ ℙ, 𝑘, 1))
31, 2syl 17 . 2 (𝑁 ∈ ℕ0 → (#p‘(𝑁 + 1)) = ∏𝑘 ∈ (1...(𝑁 + 1))if(𝑘 ∈ ℙ, 𝑘, 1))
4 nn0p1nn 12015 . . . 4 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℕ)
5 elnnuz 12364 . . . 4 ((𝑁 + 1) ∈ ℕ ↔ (𝑁 + 1) ∈ (ℤ‘1))
64, 5sylib 221 . . 3 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ (ℤ‘1))
7 elfzelz 12998 . . . . . 6 (𝑘 ∈ (1...(𝑁 + 1)) → 𝑘 ∈ ℤ)
87zcnd 12169 . . . . 5 (𝑘 ∈ (1...(𝑁 + 1)) → 𝑘 ∈ ℂ)
98adantl 485 . . . 4 ((𝑁 ∈ ℕ0𝑘 ∈ (1...(𝑁 + 1))) → 𝑘 ∈ ℂ)
10 1cnd 10714 . . . 4 ((𝑁 ∈ ℕ0𝑘 ∈ (1...(𝑁 + 1))) → 1 ∈ ℂ)
119, 10ifcld 4460 . . 3 ((𝑁 ∈ ℕ0𝑘 ∈ (1...(𝑁 + 1))) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℂ)
12 eleq1 2820 . . . 4 (𝑘 = (𝑁 + 1) → (𝑘 ∈ ℙ ↔ (𝑁 + 1) ∈ ℙ))
13 id 22 . . . 4 (𝑘 = (𝑁 + 1) → 𝑘 = (𝑁 + 1))
1412, 13ifbieq1d 4438 . . 3 (𝑘 = (𝑁 + 1) → if(𝑘 ∈ ℙ, 𝑘, 1) = if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1))
156, 11, 14fprodm1 15413 . 2 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...(𝑁 + 1))if(𝑘 ∈ ℙ, 𝑘, 1) = (∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)))
16 nn0cn 11986 . . . . . . 7 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
17 pncan1 11142 . . . . . . 7 (𝑁 ∈ ℂ → ((𝑁 + 1) − 1) = 𝑁)
1816, 17syl 17 . . . . . 6 (𝑁 ∈ ℕ0 → ((𝑁 + 1) − 1) = 𝑁)
1918oveq2d 7186 . . . . 5 (𝑁 ∈ ℕ0 → (1...((𝑁 + 1) − 1)) = (1...𝑁))
2019prodeq1d 15367 . . . 4 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
2120oveq1d 7185 . . 3 (𝑁 ∈ ℕ0 → (∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)))
22 prmoval 16469 . . . . . . . 8 (𝑁 ∈ ℕ0 → (#p𝑁) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
2322eqcomd 2744 . . . . . . 7 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) = (#p𝑁))
2423adantl 485 . . . . . 6 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) = (#p𝑁))
2524oveq1d 7185 . . . . 5 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)) = ((#p𝑁) · (𝑁 + 1)))
26 iftrue 4420 . . . . . . . 8 ((𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1) = (𝑁 + 1))
2726oveq2d 7186 . . . . . . 7 ((𝑁 + 1) ∈ ℙ → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)))
28 iftrue 4420 . . . . . . 7 ((𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) = ((#p𝑁) · (𝑁 + 1)))
2927, 28eqeq12d 2754 . . . . . 6 ((𝑁 + 1) ∈ ℙ → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)) = ((#p𝑁) · (𝑁 + 1))))
3029adantr 484 . . . . 5 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)) = ((#p𝑁) · (𝑁 + 1))))
3125, 30mpbird 260 . . . 4 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
32 fzfid 13432 . . . . . . . . . 10 (𝑁 ∈ ℕ0 → (1...𝑁) ∈ Fin)
33 elfznn 13027 . . . . . . . . . . . 12 (𝑘 ∈ (1...𝑁) → 𝑘 ∈ ℕ)
34 1nn 11727 . . . . . . . . . . . . 13 1 ∈ ℕ
3534a1i 11 . . . . . . . . . . . 12 (𝑘 ∈ (1...𝑁) → 1 ∈ ℕ)
3633, 35ifcld 4460 . . . . . . . . . . 11 (𝑘 ∈ (1...𝑁) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
3736adantl 485 . . . . . . . . . 10 ((𝑁 ∈ ℕ0𝑘 ∈ (1...𝑁)) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
3832, 37fprodnncl 15401 . . . . . . . . 9 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
3938nncnd 11732 . . . . . . . 8 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℂ)
4039adantl 485 . . . . . . 7 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℂ)
4140mulid1d 10736 . . . . . 6 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
4222adantl 485 . . . . . 6 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (#p𝑁) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
4341, 42eqtr4d 2776 . . . . 5 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = (#p𝑁))
44 iffalse 4423 . . . . . . . 8 (¬ (𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1) = 1)
4544oveq2d 7186 . . . . . . 7 (¬ (𝑁 + 1) ∈ ℙ → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1))
46 iffalse 4423 . . . . . . 7 (¬ (𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) = (#p𝑁))
4745, 46eqeq12d 2754 . . . . . 6 (¬ (𝑁 + 1) ∈ ℙ → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = (#p𝑁)))
4847adantr 484 . . . . 5 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = (#p𝑁)))
4943, 48mpbird 260 . . . 4 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
5031, 49pm2.61ian 812 . . 3 (𝑁 ∈ ℕ0 → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
5121, 50eqtrd 2773 . 2 (𝑁 ∈ ℕ0 → (∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
523, 15, 513eqtrd 2777 1 (𝑁 ∈ ℕ0 → (#p‘(𝑁 + 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 209  wa 399   = wceq 1542  wcel 2114  ifcif 4414  cfv 6339  (class class class)co 7170  cc 10613  1c1 10616   + caddc 10618   · cmul 10620  cmin 10948  cn 11716  0cn0 11976  cuz 12324  ...cfz 12981  cprod 15351  cprime 16112  #pcprmo 16467
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1975  ax-7 2020  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2162  ax-12 2179  ax-ext 2710  ax-rep 5154  ax-sep 5167  ax-nul 5174  ax-pow 5232  ax-pr 5296  ax-un 7479  ax-inf2 9177  ax-cnex 10671  ax-resscn 10672  ax-1cn 10673  ax-icn 10674  ax-addcl 10675  ax-addrcl 10676  ax-mulcl 10677  ax-mulrcl 10678  ax-mulcom 10679  ax-addass 10680  ax-mulass 10681  ax-distr 10682  ax-i2m1 10683  ax-1ne0 10684  ax-1rid 10685  ax-rnegex 10686  ax-rrecex 10687  ax-cnre 10688  ax-pre-lttri 10689  ax-pre-lttrn 10690  ax-pre-ltadd 10691  ax-pre-mulgt0 10692  ax-pre-sup 10693
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 847  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1787  df-nf 1791  df-sb 2075  df-mo 2540  df-eu 2570  df-clab 2717  df-cleq 2730  df-clel 2811  df-nfc 2881  df-ne 2935  df-nel 3039  df-ral 3058  df-rex 3059  df-reu 3060  df-rmo 3061  df-rab 3062  df-v 3400  df-sbc 3681  df-csb 3791  df-dif 3846  df-un 3848  df-in 3850  df-ss 3860  df-pss 3862  df-nul 4212  df-if 4415  df-pw 4490  df-sn 4517  df-pr 4519  df-tp 4521  df-op 4523  df-uni 4797  df-int 4837  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5429  df-eprel 5434  df-po 5442  df-so 5443  df-fr 5483  df-se 5484  df-we 5485  df-xp 5531  df-rel 5532  df-cnv 5533  df-co 5534  df-dm 5535  df-rn 5536  df-res 5537  df-ima 5538  df-pred 6129  df-ord 6175  df-on 6176  df-lim 6177  df-suc 6178  df-iota 6297  df-fun 6341  df-fn 6342  df-f 6343  df-f1 6344  df-fo 6345  df-f1o 6346  df-fv 6347  df-isom 6348  df-riota 7127  df-ov 7173  df-oprab 7174  df-mpo 7175  df-om 7600  df-1st 7714  df-2nd 7715  df-wrecs 7976  df-recs 8037  df-rdg 8075  df-1o 8131  df-er 8320  df-en 8556  df-dom 8557  df-sdom 8558  df-fin 8559  df-sup 8979  df-oi 9047  df-card 9441  df-pnf 10755  df-mnf 10756  df-xr 10757  df-ltxr 10758  df-le 10759  df-sub 10950  df-neg 10951  df-div 11376  df-nn 11717  df-2 11779  df-3 11780  df-n0 11977  df-z 12063  df-uz 12325  df-rp 12473  df-fz 12982  df-fzo 13125  df-seq 13461  df-exp 13522  df-hash 13783  df-cj 14548  df-re 14549  df-im 14550  df-sqrt 14684  df-abs 14685  df-clim 14935  df-prod 15352  df-prmo 16468
This theorem is referenced by:  prmonn2  16475
  Copyright terms: Public domain W3C validator