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

Theorem ppidif 24784
Description: The difference of the prime-counting function π at two points counts the number of primes in an interval. (Contributed by Mario Carneiro, 21-Sep-2014.)
Assertion
Ref Expression
ppidif (𝑁 ∈ (ℤ𝑀) → ((π𝑁) − (π𝑀)) = (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)))

Proof of Theorem ppidif
StepHypRef Expression
1 eluzelz 11641 . . . . 5 (𝑁 ∈ (ℤ𝑀) → 𝑁 ∈ ℤ)
2 eluzel2 11636 . . . . . . 7 (𝑁 ∈ (ℤ𝑀) → 𝑀 ∈ ℤ)
3 2z 11354 . . . . . . 7 2 ∈ ℤ
4 ifcl 4107 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 2 ∈ ℤ) → if(𝑀 ≤ 2, 𝑀, 2) ∈ ℤ)
52, 3, 4sylancl 693 . . . . . 6 (𝑁 ∈ (ℤ𝑀) → if(𝑀 ≤ 2, 𝑀, 2) ∈ ℤ)
63a1i 11 . . . . . 6 (𝑁 ∈ (ℤ𝑀) → 2 ∈ ℤ)
72zred 11426 . . . . . . 7 (𝑁 ∈ (ℤ𝑀) → 𝑀 ∈ ℝ)
8 2re 11035 . . . . . . 7 2 ∈ ℝ
9 min2 11963 . . . . . . 7 ((𝑀 ∈ ℝ ∧ 2 ∈ ℝ) → if(𝑀 ≤ 2, 𝑀, 2) ≤ 2)
107, 8, 9sylancl 693 . . . . . 6 (𝑁 ∈ (ℤ𝑀) → if(𝑀 ≤ 2, 𝑀, 2) ≤ 2)
11 eluz2 11637 . . . . . 6 (2 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2)) ↔ (if(𝑀 ≤ 2, 𝑀, 2) ∈ ℤ ∧ 2 ∈ ℤ ∧ if(𝑀 ≤ 2, 𝑀, 2) ≤ 2))
125, 6, 10, 11syl3anbrc 1244 . . . . 5 (𝑁 ∈ (ℤ𝑀) → 2 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2)))
13 ppival2g 24750 . . . . 5 ((𝑁 ∈ ℤ ∧ 2 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2))) → (π𝑁) = (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑁) ∩ ℙ)))
141, 12, 13syl2anc 692 . . . 4 (𝑁 ∈ (ℤ𝑀) → (π𝑁) = (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑁) ∩ ℙ)))
15 min1 11962 . . . . . . . . . . 11 ((𝑀 ∈ ℝ ∧ 2 ∈ ℝ) → if(𝑀 ≤ 2, 𝑀, 2) ≤ 𝑀)
167, 8, 15sylancl 693 . . . . . . . . . 10 (𝑁 ∈ (ℤ𝑀) → if(𝑀 ≤ 2, 𝑀, 2) ≤ 𝑀)
17 eluz2 11637 . . . . . . . . . 10 (𝑀 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2)) ↔ (if(𝑀 ≤ 2, 𝑀, 2) ∈ ℤ ∧ 𝑀 ∈ ℤ ∧ if(𝑀 ≤ 2, 𝑀, 2) ≤ 𝑀))
185, 2, 16, 17syl3anbrc 1244 . . . . . . . . 9 (𝑁 ∈ (ℤ𝑀) → 𝑀 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2)))
19 id 22 . . . . . . . . 9 (𝑁 ∈ (ℤ𝑀) → 𝑁 ∈ (ℤ𝑀))
20 elfzuzb 12275 . . . . . . . . 9 (𝑀 ∈ (if(𝑀 ≤ 2, 𝑀, 2)...𝑁) ↔ (𝑀 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2)) ∧ 𝑁 ∈ (ℤ𝑀)))
2118, 19, 20sylanbrc 697 . . . . . . . 8 (𝑁 ∈ (ℤ𝑀) → 𝑀 ∈ (if(𝑀 ≤ 2, 𝑀, 2)...𝑁))
22 fzsplit 12306 . . . . . . . 8 (𝑀 ∈ (if(𝑀 ≤ 2, 𝑀, 2)...𝑁) → (if(𝑀 ≤ 2, 𝑀, 2)...𝑁) = ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∪ ((𝑀 + 1)...𝑁)))
2321, 22syl 17 . . . . . . 7 (𝑁 ∈ (ℤ𝑀) → (if(𝑀 ≤ 2, 𝑀, 2)...𝑁) = ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∪ ((𝑀 + 1)...𝑁)))
2423ineq1d 3796 . . . . . 6 (𝑁 ∈ (ℤ𝑀) → ((if(𝑀 ≤ 2, 𝑀, 2)...𝑁) ∩ ℙ) = (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∪ ((𝑀 + 1)...𝑁)) ∩ ℙ))
25 indir 3856 . . . . . 6 (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∪ ((𝑀 + 1)...𝑁)) ∩ ℙ) = (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∪ (((𝑀 + 1)...𝑁) ∩ ℙ))
2624, 25syl6eq 2676 . . . . 5 (𝑁 ∈ (ℤ𝑀) → ((if(𝑀 ≤ 2, 𝑀, 2)...𝑁) ∩ ℙ) = (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∪ (((𝑀 + 1)...𝑁) ∩ ℙ)))
2726fveq2d 6154 . . . 4 (𝑁 ∈ (ℤ𝑀) → (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑁) ∩ ℙ)) = (#‘(((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∪ (((𝑀 + 1)...𝑁) ∩ ℙ))))
287ltp1d 10899 . . . . . . . 8 (𝑁 ∈ (ℤ𝑀) → 𝑀 < (𝑀 + 1))
29 fzdisj 12307 . . . . . . . 8 (𝑀 < (𝑀 + 1) → ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ((𝑀 + 1)...𝑁)) = ∅)
3028, 29syl 17 . . . . . . 7 (𝑁 ∈ (ℤ𝑀) → ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ((𝑀 + 1)...𝑁)) = ∅)
3130ineq1d 3796 . . . . . 6 (𝑁 ∈ (ℤ𝑀) → (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ((𝑀 + 1)...𝑁)) ∩ ℙ) = (∅ ∩ ℙ))
32 inindir 3814 . . . . . 6 (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ((𝑀 + 1)...𝑁)) ∩ ℙ) = (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∩ (((𝑀 + 1)...𝑁) ∩ ℙ))
33 0in 3946 . . . . . 6 (∅ ∩ ℙ) = ∅
3431, 32, 333eqtr3g 2683 . . . . 5 (𝑁 ∈ (ℤ𝑀) → (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∩ (((𝑀 + 1)...𝑁) ∩ ℙ)) = ∅)
35 fzfi 12708 . . . . . . 7 (if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∈ Fin
36 inss1 3816 . . . . . . 7 ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ⊆ (if(𝑀 ≤ 2, 𝑀, 2)...𝑀)
37 ssfi 8125 . . . . . . 7 (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∈ Fin ∧ ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ⊆ (if(𝑀 ≤ 2, 𝑀, 2)...𝑀)) → ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∈ Fin)
3835, 36, 37mp2an 707 . . . . . 6 ((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∈ Fin
39 fzfi 12708 . . . . . . 7 ((𝑀 + 1)...𝑁) ∈ Fin
40 inss1 3816 . . . . . . 7 (((𝑀 + 1)...𝑁) ∩ ℙ) ⊆ ((𝑀 + 1)...𝑁)
41 ssfi 8125 . . . . . . 7 ((((𝑀 + 1)...𝑁) ∈ Fin ∧ (((𝑀 + 1)...𝑁) ∩ ℙ) ⊆ ((𝑀 + 1)...𝑁)) → (((𝑀 + 1)...𝑁) ∩ ℙ) ∈ Fin)
4239, 40, 41mp2an 707 . . . . . 6 (((𝑀 + 1)...𝑁) ∩ ℙ) ∈ Fin
43 hashun 13108 . . . . . 6 ((((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∈ Fin ∧ (((𝑀 + 1)...𝑁) ∩ ℙ) ∈ Fin ∧ (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∩ (((𝑀 + 1)...𝑁) ∩ ℙ)) = ∅) → (#‘(((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∪ (((𝑀 + 1)...𝑁) ∩ ℙ))) = ((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))))
4438, 42, 43mp3an12 1411 . . . . 5 ((((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∩ (((𝑀 + 1)...𝑁) ∩ ℙ)) = ∅ → (#‘(((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∪ (((𝑀 + 1)...𝑁) ∩ ℙ))) = ((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))))
4534, 44syl 17 . . . 4 (𝑁 ∈ (ℤ𝑀) → (#‘(((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∪ (((𝑀 + 1)...𝑁) ∩ ℙ))) = ((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))))
4614, 27, 453eqtrd 2664 . . 3 (𝑁 ∈ (ℤ𝑀) → (π𝑁) = ((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))))
47 ppival2g 24750 . . . 4 ((𝑀 ∈ ℤ ∧ 2 ∈ (ℤ‘if(𝑀 ≤ 2, 𝑀, 2))) → (π𝑀) = (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)))
482, 12, 47syl2anc 692 . . 3 (𝑁 ∈ (ℤ𝑀) → (π𝑀) = (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)))
4946, 48oveq12d 6623 . 2 (𝑁 ∈ (ℤ𝑀) → ((π𝑁) − (π𝑀)) = (((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))) − (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ))))
50 hashcl 13084 . . . . 5 (((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ) ∈ Fin → (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) ∈ ℕ0)
5138, 50ax-mp 5 . . . 4 (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) ∈ ℕ0
5251nn0cni 11249 . . 3 (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) ∈ ℂ
53 hashcl 13084 . . . . 5 ((((𝑀 + 1)...𝑁) ∩ ℙ) ∈ Fin → (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)) ∈ ℕ0)
5442, 53ax-mp 5 . . . 4 (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)) ∈ ℕ0
5554nn0cni 11249 . . 3 (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)) ∈ ℂ
56 pncan2 10233 . . 3 (((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) ∈ ℂ ∧ (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)) ∈ ℂ) → (((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))) − (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ))) = (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)))
5752, 55, 56mp2an 707 . 2 (((#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ)) + (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))) − (#‘((if(𝑀 ≤ 2, 𝑀, 2)...𝑀) ∩ ℙ))) = (#‘(((𝑀 + 1)...𝑁) ∩ ℙ))
5849, 57syl6eq 2676 1 (𝑁 ∈ (ℤ𝑀) → ((π𝑁) − (π𝑀)) = (#‘(((𝑀 + 1)...𝑁) ∩ ℙ)))
Colors of variables: wff setvar class
Syntax hints:  wi 4   = wceq 1480  wcel 1992  cun 3558  cin 3559  wss 3560  c0 3896  ifcif 4063   class class class wbr 4618  cfv 5850  (class class class)co 6605  Fincfn 7900  cc 9879  cr 9880  1c1 9882   + caddc 9884   < clt 10019  cle 10020  cmin 10211  2c2 11015  0cn0 11237  cz 11322  cuz 11631  ...cfz 12265  #chash 13054  cprime 15304  πcppi 24715
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 1841  ax-6 1890  ax-7 1937  ax-8 1994  ax-9 2001  ax-10 2021  ax-11 2036  ax-12 2049  ax-13 2250  ax-ext 2606  ax-rep 4736  ax-sep 4746  ax-nul 4754  ax-pow 4808  ax-pr 4872  ax-un 6903  ax-cnex 9937  ax-resscn 9938  ax-1cn 9939  ax-icn 9940  ax-addcl 9941  ax-addrcl 9942  ax-mulcl 9943  ax-mulrcl 9944  ax-mulcom 9945  ax-addass 9946  ax-mulass 9947  ax-distr 9948  ax-i2m1 9949  ax-1ne0 9950  ax-1rid 9951  ax-rnegex 9952  ax-rrecex 9953  ax-cnre 9954  ax-pre-lttri 9955  ax-pre-lttrn 9956  ax-pre-ltadd 9957  ax-pre-mulgt0 9958  ax-pre-sup 9959
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1883  df-eu 2478  df-mo 2479  df-clab 2613  df-cleq 2619  df-clel 2622  df-nfc 2756  df-ne 2797  df-nel 2900  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3193  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3897  df-if 4064  df-pw 4137  df-sn 4154  df-pr 4156  df-tp 4158  df-op 4160  df-uni 4408  df-int 4446  df-iun 4492  df-br 4619  df-opab 4679  df-mpt 4680  df-tr 4718  df-eprel 4990  df-id 4994  df-po 5000  df-so 5001  df-fr 5038  df-we 5040  df-xp 5085  df-rel 5086  df-cnv 5087  df-co 5088  df-dm 5089  df-rn 5090  df-res 5091  df-ima 5092  df-pred 5642  df-ord 5688  df-on 5689  df-lim 5690  df-suc 5691  df-iota 5813  df-fun 5852  df-fn 5853  df-f 5854  df-f1 5855  df-fo 5856  df-f1o 5857  df-fv 5858  df-riota 6566  df-ov 6608  df-oprab 6609  df-mpt2 6610  df-om 7014  df-1st 7116  df-2nd 7117  df-wrecs 7353  df-recs 7414  df-rdg 7452  df-1o 7506  df-2o 7507  df-oadd 7510  df-er 7688  df-en 7901  df-dom 7902  df-sdom 7903  df-fin 7904  df-sup 8293  df-inf 8294  df-card 8710  df-cda 8935  df-pnf 10021  df-mnf 10022  df-xr 10023  df-ltxr 10024  df-le 10025  df-sub 10213  df-neg 10214  df-div 10630  df-nn 10966  df-2 11024  df-3 11025  df-n0 11238  df-z 11323  df-uz 11632  df-rp 11777  df-icc 12121  df-fz 12266  df-fl 12530  df-seq 12739  df-exp 12798  df-hash 13055  df-cj 13768  df-re 13769  df-im 13770  df-sqrt 13904  df-abs 13905  df-dvds 14903  df-prm 15305  df-ppi 24721
This theorem is referenced by:  ppiub  24824  chtppilimlem1  25057
  Copyright terms: Public domain W3C validator