Metamath Proof Explorer


Theorem prmgapprmo

Description: Alternate proof of prmgap : in contrast to prmgap , where the gap starts at n! , the factorial of n, the gap starts at n#, the primorial of n. (Contributed by AV, 15-Aug-2020) (Revised by AV, 29-Aug-2020) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Assertion prmgapprmo ⊢ ∀ n ∈ ℕ ∃ p ∈ ℙ ∃ q ∈ ℙ n ≤ q − p ∧ ∀ z ∈ p + 1 ..^ q z ∉ ℙ

Proof

Step Hyp Ref Expression
1 id ⊢ n ∈ ℕ → n ∈ ℕ
2 eqid ⊢ j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k = j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k
3 fzfid ⊢ j ∈ ℕ → 1 … j ∈ Fin
4 eqidd ⊢ j ∈ ℕ ∧ k ∈ 1 … j → m ∈ ℕ ⟼ if m ∈ ℙ m 1 = m ∈ ℕ ⟼ if m ∈ ℙ m 1
5 eleq1 ⊢ m = k → m ∈ ℙ ↔ k ∈ ℙ
6 id ⊢ m = k → m = k
7 5 6 ifbieq1d ⊢ m = k → if m ∈ ℙ m 1 = if k ∈ ℙ k 1
8 7 adantl ⊢ j ∈ ℕ ∧ k ∈ 1 … j ∧ m = k → if m ∈ ℙ m 1 = if k ∈ ℙ k 1
9 elfznn ⊢ k ∈ 1 … j → k ∈ ℕ
10 9 adantl ⊢ j ∈ ℕ ∧ k ∈ 1 … j → k ∈ ℕ
11 1nn ⊢ 1 ∈ ℕ
12 11 a1i ⊢ k ∈ 1 … j → 1 ∈ ℕ
13 9 12 ifcld ⊢ k ∈ 1 … j → if k ∈ ℙ k 1 ∈ ℕ
14 13 adantl ⊢ j ∈ ℕ ∧ k ∈ 1 … j → if k ∈ ℙ k 1 ∈ ℕ
15 4 8 10 14 fvmptd ⊢ j ∈ ℕ ∧ k ∈ 1 … j → m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k = if k ∈ ℙ k 1
16 15 14 eqeltrd ⊢ j ∈ ℕ ∧ k ∈ 1 … j → m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ∈ ℕ
17 3 16 fprodnncl ⊢ j ∈ ℕ → ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ∈ ℕ
18 2 17 fmpti ⊢ j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k : ℕ ⟶ ℕ
19 nnex ⊢ ℕ ∈ V
20 19 19 elmap ⊢ j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ∈ ℕ ℕ ↔ j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k : ℕ ⟶ ℕ
21 18 20 mpbir ⊢ j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ∈ ℕ ℕ
22 21 a1i ⊢ n ∈ ℕ → j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ∈ ℕ ℕ
23 prmgapprmolem ⊢ n ∈ ℕ ∧ i ∈ 2 … n → 1 < # p ⁡ n + i gcd i
24 eqidd ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j ∈ ℕ ∧ k ∈ 1 … j → m ∈ ℕ ⟼ if m ∈ ℙ m 1 = m ∈ ℕ ⟼ if m ∈ ℙ m 1
25 7 adantl ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j ∈ ℕ ∧ k ∈ 1 … j ∧ m = k → if m ∈ ℙ m 1 = if k ∈ ℙ k 1
26 9 adantl ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j ∈ ℕ ∧ k ∈ 1 … j → k ∈ ℕ
27 elfzelz ⊢ k ∈ 1 … j → k ∈ ℤ
28 1zzd ⊢ k ∈ 1 … j → 1 ∈ ℤ
29 27 28 ifcld ⊢ k ∈ 1 … j → if k ∈ ℙ k 1 ∈ ℤ
30 29 adantl ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j ∈ ℕ ∧ k ∈ 1 … j → if k ∈ ℙ k 1 ∈ ℤ
31 24 25 26 30 fvmptd ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j ∈ ℕ ∧ k ∈ 1 … j → m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k = if k ∈ ℙ k 1
32 31 prodeq2dv ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j ∈ ℕ → ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k = ∏ k = 1 j if k ∈ ℙ k 1
33 32 mpteq2dva ⊢ n ∈ ℕ ∧ i ∈ 2 … n → j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k = j ∈ ℕ ⟼ ∏ k = 1 j if k ∈ ℙ k 1
34 oveq2 ⊢ j = n → 1 … j = 1 … n
35 34 prodeq1d ⊢ j = n → ∏ k = 1 j if k ∈ ℙ k 1 = ∏ k = 1 n if k ∈ ℙ k 1
36 35 adantl ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ j = n → ∏ k = 1 j if k ∈ ℙ k 1 = ∏ k = 1 n if k ∈ ℙ k 1
37 simpl ⊢ n ∈ ℕ ∧ i ∈ 2 … n → n ∈ ℕ
38 fzfid ⊢ n ∈ ℕ ∧ i ∈ 2 … n → 1 … n ∈ Fin
39 elfznn ⊢ k ∈ 1 … n → k ∈ ℕ
40 11 a1i ⊢ k ∈ 1 … n → 1 ∈ ℕ
41 39 40 ifcld ⊢ k ∈ 1 … n → if k ∈ ℙ k 1 ∈ ℕ
42 41 adantl ⊢ n ∈ ℕ ∧ i ∈ 2 … n ∧ k ∈ 1 … n → if k ∈ ℙ k 1 ∈ ℕ
43 38 42 fprodnncl ⊢ n ∈ ℕ ∧ i ∈ 2 … n → ∏ k = 1 n if k ∈ ℙ k 1 ∈ ℕ
44 33 36 37 43 fvmptd ⊢ n ∈ ℕ ∧ i ∈ 2 … n → j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ⁡ n = ∏ k = 1 n if k ∈ ℙ k 1
45 nnnn0 ⊢ n ∈ ℕ → n ∈ ℕ 0
46 prmoval ⊢ n ∈ ℕ 0 → # p ⁡ n = ∏ k = 1 n if k ∈ ℙ k 1
47 45 46 syl ⊢ n ∈ ℕ → # p ⁡ n = ∏ k = 1 n if k ∈ ℙ k 1
48 47 eqcomd ⊢ n ∈ ℕ → ∏ k = 1 n if k ∈ ℙ k 1 = # p ⁡ n
49 48 adantr ⊢ n ∈ ℕ ∧ i ∈ 2 … n → ∏ k = 1 n if k ∈ ℙ k 1 = # p ⁡ n
50 44 49 eqtrd ⊢ n ∈ ℕ ∧ i ∈ 2 … n → j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ⁡ n = # p ⁡ n
51 50 oveq1d ⊢ n ∈ ℕ ∧ i ∈ 2 … n → j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ⁡ n + i = # p ⁡ n + i
52 51 oveq1d ⊢ n ∈ ℕ ∧ i ∈ 2 … n → j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ⁡ n + i gcd i = # p ⁡ n + i gcd i
53 23 52 breqtrrd ⊢ n ∈ ℕ ∧ i ∈ 2 … n → 1 < j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ⁡ n + i gcd i
54 53 ralrimiva ⊢ n ∈ ℕ → ∀ i ∈ 2 … n 1 < j ∈ ℕ ⟼ ∏ k = 1 j m ∈ ℕ ⟼ if m ∈ ℙ m 1 ⁡ k ⁡ n + i gcd i
55 1 22 54 prmgaplem8 ⊢ n ∈ ℕ → ∃ p ∈ ℙ ∃ q ∈ ℙ n ≤ q − p ∧ ∀ z ∈ p + 1 ..^ q z ∉ ℙ
56 55 rgen ⊢ ∀ n ∈ ℕ ∃ p ∈ ℙ ∃ q ∈ ℙ n ≤ q − p ∧ ∀ z ∈ p + 1 ..^ q z ∉ ℙ