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

Theorem prmop1 15685
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 11293 . . 3 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℕ0)
2 prmoval 15680 . . 3 ((𝑁 + 1) ∈ ℕ0 → (#p‘(𝑁 + 1)) = ∏𝑘 ∈ (1...(𝑁 + 1))if(𝑘 ∈ ℙ, 𝑘, 1))
31, 2syl 17 . 2 (𝑁 ∈ ℕ0 → (#p‘(𝑁 + 1)) = ∏𝑘 ∈ (1...(𝑁 + 1))if(𝑘 ∈ ℙ, 𝑘, 1))
4 nn0p1nn 11292 . . . 4 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℕ)
5 elnnuz 11684 . . . 4 ((𝑁 + 1) ∈ ℕ ↔ (𝑁 + 1) ∈ (ℤ‘1))
64, 5sylib 208 . . 3 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ (ℤ‘1))
7 elfzelz 12300 . . . . . 6 (𝑘 ∈ (1...(𝑁 + 1)) → 𝑘 ∈ ℤ)
87zcnd 11443 . . . . 5 (𝑘 ∈ (1...(𝑁 + 1)) → 𝑘 ∈ ℂ)
98adantl 482 . . . 4 ((𝑁 ∈ ℕ0𝑘 ∈ (1...(𝑁 + 1))) → 𝑘 ∈ ℂ)
10 1cnd 10016 . . . 4 ((𝑁 ∈ ℕ0𝑘 ∈ (1...(𝑁 + 1))) → 1 ∈ ℂ)
119, 10ifcld 4109 . . 3 ((𝑁 ∈ ℕ0𝑘 ∈ (1...(𝑁 + 1))) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℂ)
12 eleq1 2686 . . . 4 (𝑘 = (𝑁 + 1) → (𝑘 ∈ ℙ ↔ (𝑁 + 1) ∈ ℙ))
13 id 22 . . . 4 (𝑘 = (𝑁 + 1) → 𝑘 = (𝑁 + 1))
1412, 13ifbieq1d 4087 . . 3 (𝑘 = (𝑁 + 1) → if(𝑘 ∈ ℙ, 𝑘, 1) = if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1))
156, 11, 14fprodm1 14641 . 2 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...(𝑁 + 1))if(𝑘 ∈ ℙ, 𝑘, 1) = (∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)))
16 nn0cn 11262 . . . . . . 7 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
17 pncan1 10414 . . . . . . 7 (𝑁 ∈ ℂ → ((𝑁 + 1) − 1) = 𝑁)
1816, 17syl 17 . . . . . 6 (𝑁 ∈ ℕ0 → ((𝑁 + 1) − 1) = 𝑁)
1918oveq2d 6631 . . . . 5 (𝑁 ∈ ℕ0 → (1...((𝑁 + 1) − 1)) = (1...𝑁))
2019prodeq1d 14595 . . . 4 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
2120oveq1d 6630 . . 3 (𝑁 ∈ ℕ0 → (∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)))
22 prmoval 15680 . . . . . . . 8 (𝑁 ∈ ℕ0 → (#p𝑁) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
2322eqcomd 2627 . . . . . . 7 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) = (#p𝑁))
2423adantl 482 . . . . . 6 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) = (#p𝑁))
2524oveq1d 6630 . . . . 5 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)) = ((#p𝑁) · (𝑁 + 1)))
26 iftrue 4070 . . . . . . . 8 ((𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1) = (𝑁 + 1))
2726oveq2d 6631 . . . . . . 7 ((𝑁 + 1) ∈ ℙ → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)))
28 iftrue 4070 . . . . . . 7 ((𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) = ((#p𝑁) · (𝑁 + 1)))
2927, 28eqeq12d 2636 . . . . . 6 ((𝑁 + 1) ∈ ℙ → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)) = ((#p𝑁) · (𝑁 + 1))))
3029adantr 481 . . . . 5 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · (𝑁 + 1)) = ((#p𝑁) · (𝑁 + 1))))
3125, 30mpbird 247 . . . 4 (((𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
32 fzfid 12728 . . . . . . . . . 10 (𝑁 ∈ ℕ0 → (1...𝑁) ∈ Fin)
33 elfznn 12328 . . . . . . . . . . . 12 (𝑘 ∈ (1...𝑁) → 𝑘 ∈ ℕ)
34 1nn 10991 . . . . . . . . . . . . 13 1 ∈ ℕ
3534a1i 11 . . . . . . . . . . . 12 (𝑘 ∈ (1...𝑁) → 1 ∈ ℕ)
3633, 35ifcld 4109 . . . . . . . . . . 11 (𝑘 ∈ (1...𝑁) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
3736adantl 482 . . . . . . . . . 10 ((𝑁 ∈ ℕ0𝑘 ∈ (1...𝑁)) → if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
3832, 37fprodnncl 14629 . . . . . . . . 9 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℕ)
3938nncnd 10996 . . . . . . . 8 (𝑁 ∈ ℕ0 → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℂ)
4039adantl 482 . . . . . . 7 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) ∈ ℂ)
4140mulid1d 10017 . . . . . 6 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
4222adantl 482 . . . . . 6 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (#p𝑁) = ∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1))
4341, 42eqtr4d 2658 . . . . 5 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = (#p𝑁))
44 iffalse 4073 . . . . . . . 8 (¬ (𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1) = 1)
4544oveq2d 6631 . . . . . . 7 (¬ (𝑁 + 1) ∈ ℙ → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1))
46 iffalse 4073 . . . . . . 7 (¬ (𝑁 + 1) ∈ ℙ → if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) = (#p𝑁))
4745, 46eqeq12d 2636 . . . . . 6 (¬ (𝑁 + 1) ∈ ℙ → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = (#p𝑁)))
4847adantr 481 . . . . 5 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → ((∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)) ↔ (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · 1) = (#p𝑁)))
4943, 48mpbird 247 . . . 4 ((¬ (𝑁 + 1) ∈ ℙ ∧ 𝑁 ∈ ℕ0) → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
5031, 49pm2.61ian 830 . . 3 (𝑁 ∈ ℕ0 → (∏𝑘 ∈ (1...𝑁)if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
5121, 50eqtrd 2655 . 2 (𝑁 ∈ ℕ0 → (∏𝑘 ∈ (1...((𝑁 + 1) − 1))if(𝑘 ∈ ℙ, 𝑘, 1) · if((𝑁 + 1) ∈ ℙ, (𝑁 + 1), 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
523, 15, 513eqtrd 2659 1 (𝑁 ∈ ℕ0 → (#p‘(𝑁 + 1)) = if((𝑁 + 1) ∈ ℙ, ((#p𝑁) · (𝑁 + 1)), (#p𝑁)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 384   = wceq 1480  wcel 1987  ifcif 4064  cfv 5857  (class class class)co 6615  cc 9894  1c1 9897   + caddc 9899   · cmul 9901  cmin 10226  cn 10980  0cn0 11252  cuz 11647  ...cfz 12284  cprod 14579  cprime 15328  #pcprmo 15678
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1836  ax-6 1885  ax-7 1932  ax-8 1989  ax-9 1996  ax-10 2016  ax-11 2031  ax-12 2044  ax-13 2245  ax-ext 2601  ax-rep 4741  ax-sep 4751  ax-nul 4759  ax-pow 4813  ax-pr 4877  ax-un 6914  ax-inf2 8498  ax-cnex 9952  ax-resscn 9953  ax-1cn 9954  ax-icn 9955  ax-addcl 9956  ax-addrcl 9957  ax-mulcl 9958  ax-mulrcl 9959  ax-mulcom 9960  ax-addass 9961  ax-mulass 9962  ax-distr 9963  ax-i2m1 9964  ax-1ne0 9965  ax-1rid 9966  ax-rnegex 9967  ax-rrecex 9968  ax-cnre 9969  ax-pre-lttri 9970  ax-pre-lttrn 9971  ax-pre-ltadd 9972  ax-pre-mulgt0 9973  ax-pre-sup 9974
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-fal 1486  df-ex 1702  df-nf 1707  df-sb 1878  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2750  df-ne 2791  df-nel 2894  df-ral 2913  df-rex 2914  df-reu 2915  df-rmo 2916  df-rab 2917  df-v 3192  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3898  df-if 4065  df-pw 4138  df-sn 4156  df-pr 4158  df-tp 4160  df-op 4162  df-uni 4410  df-int 4448  df-iun 4494  df-br 4624  df-opab 4684  df-mpt 4685  df-tr 4723  df-eprel 4995  df-id 4999  df-po 5005  df-so 5006  df-fr 5043  df-se 5044  df-we 5045  df-xp 5090  df-rel 5091  df-cnv 5092  df-co 5093  df-dm 5094  df-rn 5095  df-res 5096  df-ima 5097  df-pred 5649  df-ord 5695  df-on 5696  df-lim 5697  df-suc 5698  df-iota 5820  df-fun 5859  df-fn 5860  df-f 5861  df-f1 5862  df-fo 5863  df-f1o 5864  df-fv 5865  df-isom 5866  df-riota 6576  df-ov 6618  df-oprab 6619  df-mpt2 6620  df-om 7028  df-1st 7128  df-2nd 7129  df-wrecs 7367  df-recs 7428  df-rdg 7466  df-1o 7520  df-oadd 7524  df-er 7702  df-en 7916  df-dom 7917  df-sdom 7918  df-fin 7919  df-sup 8308  df-oi 8375  df-card 8725  df-pnf 10036  df-mnf 10037  df-xr 10038  df-ltxr 10039  df-le 10040  df-sub 10228  df-neg 10229  df-div 10645  df-nn 10981  df-2 11039  df-3 11040  df-n0 11253  df-z 11338  df-uz 11648  df-rp 11793  df-fz 12285  df-fzo 12423  df-seq 12758  df-exp 12817  df-hash 13074  df-cj 13789  df-re 13790  df-im 13791  df-sqrt 13925  df-abs 13926  df-clim 14169  df-prod 14580  df-prmo 15679
This theorem is referenced by:  prmonn2  15686
  Copyright terms: Public domain W3C validator