Metamath Proof Explorer


Theorem prmop1

Description: The primorial of a successor. (Contributed by AV, 28-Aug-2020)

Ref Expression
Assertion prmop1 ⊢ N ∈ ℕ 0 → # p ⁡ N + 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N

Proof

Step Hyp Ref Expression
1 peano2nn0 ⊢ N ∈ ℕ 0 → N + 1 ∈ ℕ 0
2 prmoval ⊢ N + 1 ∈ ℕ 0 → # p ⁡ N + 1 = ∏ k = 1 N + 1 if k ∈ ℙ k 1
3 1 2 syl ⊢ N ∈ ℕ 0 → # p ⁡ N + 1 = ∏ k = 1 N + 1 if k ∈ ℙ k 1
4 nn0p1nn ⊢ N ∈ ℕ 0 → N + 1 ∈ ℕ
5 elnnuz ⊢ N + 1 ∈ ℕ ↔ N + 1 ∈ ℤ ≥ 1
6 4 5 sylib ⊢ N ∈ ℕ 0 → N + 1 ∈ ℤ ≥ 1
7 elfzelz ⊢ k ∈ 1 … N + 1 → k ∈ ℤ
8 7 zcnd ⊢ k ∈ 1 … N + 1 → k ∈ ℂ
9 8 adantl ⊢ N ∈ ℕ 0 ∧ k ∈ 1 … N + 1 → k ∈ ℂ
10 1cnd ⊢ N ∈ ℕ 0 ∧ k ∈ 1 … N + 1 → 1 ∈ ℂ
11 9 10 ifcld ⊢ N ∈ ℕ 0 ∧ k ∈ 1 … N + 1 → if k ∈ ℙ k 1 ∈ ℂ
12 eleq1 ⊢ k = N + 1 → k ∈ ℙ ↔ N + 1 ∈ ℙ
13 id ⊢ k = N + 1 → k = N + 1
14 12 13 ifbieq1d ⊢ k = N + 1 → if k ∈ ℙ k 1 = if N + 1 ∈ ℙ N + 1 1
15 6 11 14 fprodm1 ⊢ N ∈ ℕ 0 → ∏ k = 1 N + 1 if k ∈ ℙ k 1 = ∏ k = 1 N + 1 - 1 if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1
16 nn0cn ⊢ N ∈ ℕ 0 → N ∈ ℂ
17 pncan1 ⊢ N ∈ ℂ → N + 1 - 1 = N
18 16 17 syl ⊢ N ∈ ℕ 0 → N + 1 - 1 = N
19 18 oveq2d ⊢ N ∈ ℕ 0 → 1 … N + 1 - 1 = 1 … N
20 19 prodeq1d ⊢ N ∈ ℕ 0 → ∏ k = 1 N + 1 - 1 if k ∈ ℙ k 1 = ∏ k = 1 N if k ∈ ℙ k 1
21 20 oveq1d ⊢ N ∈ ℕ 0 → ∏ k = 1 N + 1 - 1 if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1
22 prmoval ⊢ N ∈ ℕ 0 → # p ⁡ N = ∏ k = 1 N if k ∈ ℙ k 1
23 22 eqcomd ⊢ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 = # p ⁡ N
24 23 adantl ⊢ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 = # p ⁡ N
25 24 oveq1d ⊢ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ N + 1 = # p ⁡ N ⁢ N + 1
26 iftrue ⊢ N + 1 ∈ ℙ → if N + 1 ∈ ℙ N + 1 1 = N + 1
27 26 oveq2d ⊢ N + 1 ∈ ℙ → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = ∏ k = 1 N if k ∈ ℙ k 1 ⁢ N + 1
28 iftrue ⊢ N + 1 ∈ ℙ → if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N = # p ⁡ N ⁢ N + 1
29 27 28 eqeq12d ⊢ N + 1 ∈ ℙ → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N ↔ ∏ k = 1 N if k ∈ ℙ k 1 ⁢ N + 1 = # p ⁡ N ⁢ N + 1
30 29 adantr ⊢ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N ↔ ∏ k = 1 N if k ∈ ℙ k 1 ⁢ N + 1 = # p ⁡ N ⁢ N + 1
31 25 30 mpbird ⊢ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N
32 fzfid ⊢ N ∈ ℕ 0 → 1 … N ∈ Fin
33 elfznn ⊢ k ∈ 1 … N → k ∈ ℕ
34 1nn ⊢ 1 ∈ ℕ
35 34 a1i ⊢ k ∈ 1 … N → 1 ∈ ℕ
36 33 35 ifcld ⊢ k ∈ 1 … N → if k ∈ ℙ k 1 ∈ ℕ
37 36 adantl ⊢ N ∈ ℕ 0 ∧ k ∈ 1 … N → if k ∈ ℙ k 1 ∈ ℕ
38 32 37 fprodnncl ⊢ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ∈ ℕ
39 38 nncnd ⊢ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ∈ ℂ
40 39 adantl ⊢ ¬ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ∈ ℂ
41 40 mulridd ⊢ ¬ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⋅ 1 = ∏ k = 1 N if k ∈ ℙ k 1
42 22 adantl ⊢ ¬ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → # p ⁡ N = ∏ k = 1 N if k ∈ ℙ k 1
43 41 42 eqtr4d ⊢ ¬ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⋅ 1 = # p ⁡ N
44 iffalse ⊢ ¬ N + 1 ∈ ℙ → if N + 1 ∈ ℙ N + 1 1 = 1
45 44 oveq2d ⊢ ¬ N + 1 ∈ ℙ → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = ∏ k = 1 N if k ∈ ℙ k 1 ⋅ 1
46 iffalse ⊢ ¬ N + 1 ∈ ℙ → if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N = # p ⁡ N
47 45 46 eqeq12d ⊢ ¬ N + 1 ∈ ℙ → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N ↔ ∏ k = 1 N if k ∈ ℙ k 1 ⋅ 1 = # p ⁡ N
48 47 adantr ⊢ ¬ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N ↔ ∏ k = 1 N if k ∈ ℙ k 1 ⋅ 1 = # p ⁡ N
49 43 48 mpbird ⊢ ¬ N + 1 ∈ ℙ ∧ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N
50 31 49 pm2.61ian ⊢ N ∈ ℕ 0 → ∏ k = 1 N if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N
51 21 50 eqtrd ⊢ N ∈ ℕ 0 → ∏ k = 1 N + 1 - 1 if k ∈ ℙ k 1 ⁢ if N + 1 ∈ ℙ N + 1 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N
52 3 15 51 3eqtrd ⊢ N ∈ ℕ 0 → # p ⁡ N + 1 = if N + 1 ∈ ℙ # p ⁡ N ⁢ N + 1 # p ⁡ N