This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Dividing two prime count maps yields a number with all dividing primes confined to an interval. (Contributed by Mario Carneiro, 14-Mar-2014)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | pcmpt.1 | |- F = ( n e. NN |-> if ( n e. Prime , ( n ^ A ) , 1 ) ) |
|
| pcmpt.2 | |- ( ph -> A. n e. Prime A e. NN0 ) |
||
| pcmpt.3 | |- ( ph -> N e. NN ) |
||
| pcmpt.4 | |- ( ph -> P e. Prime ) |
||
| pcmpt.5 | |- ( n = P -> A = B ) |
||
| pcmpt2.6 | |- ( ph -> M e. ( ZZ>= ` N ) ) |
||
| Assertion | pcmpt2 | |- ( ph -> ( P pCnt ( ( seq 1 ( x. , F ) ` M ) / ( seq 1 ( x. , F ) ` N ) ) ) = if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | pcmpt.1 | |- F = ( n e. NN |-> if ( n e. Prime , ( n ^ A ) , 1 ) ) |
|
| 2 | pcmpt.2 | |- ( ph -> A. n e. Prime A e. NN0 ) |
|
| 3 | pcmpt.3 | |- ( ph -> N e. NN ) |
|
| 4 | pcmpt.4 | |- ( ph -> P e. Prime ) |
|
| 5 | pcmpt.5 | |- ( n = P -> A = B ) |
|
| 6 | pcmpt2.6 | |- ( ph -> M e. ( ZZ>= ` N ) ) |
|
| 7 | 1 2 | pcmptcl | |- ( ph -> ( F : NN --> NN /\ seq 1 ( x. , F ) : NN --> NN ) ) |
| 8 | 7 | simprd | |- ( ph -> seq 1 ( x. , F ) : NN --> NN ) |
| 9 | eluznn | |- ( ( N e. NN /\ M e. ( ZZ>= ` N ) ) -> M e. NN ) |
|
| 10 | 3 6 9 | syl2anc | |- ( ph -> M e. NN ) |
| 11 | 8 10 | ffvelcdmd | |- ( ph -> ( seq 1 ( x. , F ) ` M ) e. NN ) |
| 12 | 11 | nnzd | |- ( ph -> ( seq 1 ( x. , F ) ` M ) e. ZZ ) |
| 13 | 11 | nnne0d | |- ( ph -> ( seq 1 ( x. , F ) ` M ) =/= 0 ) |
| 14 | 8 3 | ffvelcdmd | |- ( ph -> ( seq 1 ( x. , F ) ` N ) e. NN ) |
| 15 | pcdiv | |- ( ( P e. Prime /\ ( ( seq 1 ( x. , F ) ` M ) e. ZZ /\ ( seq 1 ( x. , F ) ` M ) =/= 0 ) /\ ( seq 1 ( x. , F ) ` N ) e. NN ) -> ( P pCnt ( ( seq 1 ( x. , F ) ` M ) / ( seq 1 ( x. , F ) ` N ) ) ) = ( ( P pCnt ( seq 1 ( x. , F ) ` M ) ) - ( P pCnt ( seq 1 ( x. , F ) ` N ) ) ) ) |
|
| 16 | 4 12 13 14 15 | syl121anc | |- ( ph -> ( P pCnt ( ( seq 1 ( x. , F ) ` M ) / ( seq 1 ( x. , F ) ` N ) ) ) = ( ( P pCnt ( seq 1 ( x. , F ) ` M ) ) - ( P pCnt ( seq 1 ( x. , F ) ` N ) ) ) ) |
| 17 | 1 2 10 4 5 | pcmpt | |- ( ph -> ( P pCnt ( seq 1 ( x. , F ) ` M ) ) = if ( P <_ M , B , 0 ) ) |
| 18 | 1 2 3 4 5 | pcmpt | |- ( ph -> ( P pCnt ( seq 1 ( x. , F ) ` N ) ) = if ( P <_ N , B , 0 ) ) |
| 19 | 17 18 | oveq12d | |- ( ph -> ( ( P pCnt ( seq 1 ( x. , F ) ` M ) ) - ( P pCnt ( seq 1 ( x. , F ) ` N ) ) ) = ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) ) |
| 20 | 5 | eleq1d | |- ( n = P -> ( A e. NN0 <-> B e. NN0 ) ) |
| 21 | 20 2 4 | rspcdva | |- ( ph -> B e. NN0 ) |
| 22 | 21 | nn0cnd | |- ( ph -> B e. CC ) |
| 23 | 22 | subidd | |- ( ph -> ( B - B ) = 0 ) |
| 24 | 23 | adantr | |- ( ( ph /\ P <_ N ) -> ( B - B ) = 0 ) |
| 25 | prmnn | |- ( P e. Prime -> P e. NN ) |
|
| 26 | 4 25 | syl | |- ( ph -> P e. NN ) |
| 27 | 26 | nnred | |- ( ph -> P e. RR ) |
| 28 | 27 | adantr | |- ( ( ph /\ P <_ N ) -> P e. RR ) |
| 29 | 3 | nnred | |- ( ph -> N e. RR ) |
| 30 | 29 | adantr | |- ( ( ph /\ P <_ N ) -> N e. RR ) |
| 31 | 10 | nnred | |- ( ph -> M e. RR ) |
| 32 | 31 | adantr | |- ( ( ph /\ P <_ N ) -> M e. RR ) |
| 33 | simpr | |- ( ( ph /\ P <_ N ) -> P <_ N ) |
|
| 34 | eluzle | |- ( M e. ( ZZ>= ` N ) -> N <_ M ) |
|
| 35 | 6 34 | syl | |- ( ph -> N <_ M ) |
| 36 | 35 | adantr | |- ( ( ph /\ P <_ N ) -> N <_ M ) |
| 37 | 28 30 32 33 36 | letrd | |- ( ( ph /\ P <_ N ) -> P <_ M ) |
| 38 | 37 | iftrued | |- ( ( ph /\ P <_ N ) -> if ( P <_ M , B , 0 ) = B ) |
| 39 | iftrue | |- ( P <_ N -> if ( P <_ N , B , 0 ) = B ) |
|
| 40 | 39 | adantl | |- ( ( ph /\ P <_ N ) -> if ( P <_ N , B , 0 ) = B ) |
| 41 | 38 40 | oveq12d | |- ( ( ph /\ P <_ N ) -> ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) = ( B - B ) ) |
| 42 | simpr | |- ( ( P <_ M /\ -. P <_ N ) -> -. P <_ N ) |
|
| 43 | 42 33 | nsyl3 | |- ( ( ph /\ P <_ N ) -> -. ( P <_ M /\ -. P <_ N ) ) |
| 44 | 43 | iffalsed | |- ( ( ph /\ P <_ N ) -> if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) = 0 ) |
| 45 | 24 41 44 | 3eqtr4d | |- ( ( ph /\ P <_ N ) -> ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) = if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) ) |
| 46 | iffalse | |- ( -. P <_ N -> if ( P <_ N , B , 0 ) = 0 ) |
|
| 47 | 46 | oveq2d | |- ( -. P <_ N -> ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) = ( if ( P <_ M , B , 0 ) - 0 ) ) |
| 48 | 0cn | |- 0 e. CC |
|
| 49 | ifcl | |- ( ( B e. CC /\ 0 e. CC ) -> if ( P <_ M , B , 0 ) e. CC ) |
|
| 50 | 22 48 49 | sylancl | |- ( ph -> if ( P <_ M , B , 0 ) e. CC ) |
| 51 | 50 | subid1d | |- ( ph -> ( if ( P <_ M , B , 0 ) - 0 ) = if ( P <_ M , B , 0 ) ) |
| 52 | 47 51 | sylan9eqr | |- ( ( ph /\ -. P <_ N ) -> ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) = if ( P <_ M , B , 0 ) ) |
| 53 | simpr | |- ( ( ph /\ -. P <_ N ) -> -. P <_ N ) |
|
| 54 | 53 | biantrud | |- ( ( ph /\ -. P <_ N ) -> ( P <_ M <-> ( P <_ M /\ -. P <_ N ) ) ) |
| 55 | 54 | ifbid | |- ( ( ph /\ -. P <_ N ) -> if ( P <_ M , B , 0 ) = if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) ) |
| 56 | 52 55 | eqtrd | |- ( ( ph /\ -. P <_ N ) -> ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) = if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) ) |
| 57 | 45 56 | pm2.61dan | |- ( ph -> ( if ( P <_ M , B , 0 ) - if ( P <_ N , B , 0 ) ) = if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) ) |
| 58 | 16 19 57 | 3eqtrd | |- ( ph -> ( P pCnt ( ( seq 1 ( x. , F ) ` M ) / ( seq 1 ( x. , F ) ` N ) ) ) = if ( ( P <_ M /\ -. P <_ N ) , B , 0 ) ) |