ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  pc2dvds Unicode version

Theorem pc2dvds 12595
Description: A characterization of divisibility in terms of prime count. (Contributed by Mario Carneiro, 23-Feb-2014.) (Revised by Mario Carneiro, 3-Oct-2014.)
Assertion
Ref Expression
pc2dvds  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  ||  B  <->  A. p  e.  Prime  (
p  pCnt  A )  <_  ( p  pCnt  B
) ) )
Distinct variable groups:    A, p    B, p

Proof of Theorem pc2dvds
StepHypRef Expression
1 pcdvdstr 12592 . . . . 5  |-  ( ( p  e.  Prime  /\  ( A  e.  ZZ  /\  B  e.  ZZ  /\  A  ||  B ) )  -> 
( p  pCnt  A
)  <_  ( p  pCnt  B ) )
21ancoms 268 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  A  ||  B )  /\  p  e.  Prime )  -> 
( p  pCnt  A
)  <_  ( p  pCnt  B ) )
32ralrimiva 2578 . . 3  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  A  ||  B )  ->  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B ) )
433expia 1207 . 2  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  ||  B  ->  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B
) ) )
5 2prm 12391 . . . . . . . 8  |-  2  e.  Prime
6 elex2 2787 . . . . . . . 8  |-  ( 2  e.  Prime  ->  E. w  w  e.  Prime )
75, 6ax-mp 5 . . . . . . 7  |-  E. w  w  e.  Prime
8 r19.2m 3546 . . . . . . 7  |-  ( ( E. w  w  e. 
Prime  /\  A. p  e. 
Prime  ( p  pCnt  0
)  <_  ( p  pCnt  B ) )  ->  E. p  e.  Prime  ( p  pCnt  0 )  <_  ( p  pCnt  B ) )
97, 8mpan 424 . . . . . 6  |-  ( A. p  e.  Prime  ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  ->  E. p  e.  Prime  ( p  pCnt  0 )  <_  (
p  pCnt  B )
)
10 id 19 . . . . . . . . . . . . 13  |-  ( p  e.  Prime  ->  p  e. 
Prime )
11 zq 9746 . . . . . . . . . . . . . 14  |-  ( B  e.  ZZ  ->  B  e.  QQ )
1211adantl 277 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  B  e.  QQ )
13 pcxcl 12576 . . . . . . . . . . . . 13  |-  ( ( p  e.  Prime  /\  B  e.  QQ )  ->  (
p  pCnt  B )  e.  RR* )
1410, 12, 13syl2anr 290 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( p  pCnt  B )  e.  RR* )
15 pnfge 9910 . . . . . . . . . . . 12  |-  ( ( p  pCnt  B )  e.  RR*  ->  ( p  pCnt  B )  <_ +oo )
1614, 15syl 14 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( p  pCnt  B )  <_ +oo )
1716biantrurd 305 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( +oo  <_  ( p  pCnt  B )  <->  ( ( p  pCnt  B
)  <_ +oo  /\ +oo  <_  ( p  pCnt  B
) ) ) )
18 pc0 12569 . . . . . . . . . . . 12  |-  ( p  e.  Prime  ->  ( p 
pCnt  0 )  = +oo )
1918adantl 277 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( p  pCnt  0 )  = +oo )
2019breq1d 4053 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  <-> +oo  <_  ( p  pCnt  B ) ) )
21 pnfxr 8124 . . . . . . . . . . 11  |- +oo  e.  RR*
22 xrletri3 9925 . . . . . . . . . . 11  |-  ( ( ( p  pCnt  B
)  e.  RR*  /\ +oo  e.  RR* )  ->  (
( p  pCnt  B
)  = +oo  <->  ( (
p  pCnt  B )  <_ +oo  /\ +oo  <_  ( p  pCnt  B )
) ) )
2314, 21, 22sylancl 413 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  B )  = +oo  <->  (
( p  pCnt  B
)  <_ +oo  /\ +oo  <_  ( p  pCnt  B
) ) ) )
2417, 20, 233bitr4d 220 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  <->  ( p  pCnt  B )  = +oo )
)
25 pnfnre 8113 . . . . . . . . . . . 12  |- +oo  e/  RR
2625neli 2472 . . . . . . . . . . 11  |-  -. +oo  e.  RR
27 eleq1 2267 . . . . . . . . . . 11  |-  ( ( p  pCnt  B )  = +oo  ->  ( (
p  pCnt  B )  e.  RR  <-> +oo  e.  RR ) )
2826, 27mtbiri 676 . . . . . . . . . 10  |-  ( ( p  pCnt  B )  = +oo  ->  -.  (
p  pCnt  B )  e.  RR )
29 simplr 528 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  B  e.  ZZ )
30 0zd 9383 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  0  e.  ZZ )
31 zdceq 9447 . . . . . . . . . . . 12  |-  ( ( B  e.  ZZ  /\  0  e.  ZZ )  -> DECID  B  =  0 )
3229, 30, 31syl2anc 411 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  -> DECID 
B  =  0 )
33 pczcl 12563 . . . . . . . . . . . . . . . . 17  |-  ( ( p  e.  Prime  /\  ( B  e.  ZZ  /\  B  =/=  0 ) )  -> 
( p  pCnt  B
)  e.  NN0 )
3433nn0red 9348 . . . . . . . . . . . . . . . 16  |-  ( ( p  e.  Prime  /\  ( B  e.  ZZ  /\  B  =/=  0 ) )  -> 
( p  pCnt  B
)  e.  RR )
3534adantll 476 . . . . . . . . . . . . . . 15  |-  ( ( ( A  e.  ZZ  /\  p  e.  Prime )  /\  ( B  e.  ZZ  /\  B  =/=  0 ) )  ->  ( p  pCnt  B )  e.  RR )
3635an4s 588 . . . . . . . . . . . . . 14  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( p  e. 
Prime  /\  B  =/=  0
) )  ->  (
p  pCnt  B )  e.  RR )
3736expr 375 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( B  =/=  0  ->  ( p  pCnt  B )  e.  RR ) )
3837a1d 22 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  (DECID  B  =  0  -> 
( B  =/=  0  ->  ( p  pCnt  B
)  e.  RR ) ) )
3938necon1bddc 2452 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  (DECID  B  =  0  -> 
( -.  ( p 
pCnt  B )  e.  RR  ->  B  =  0 ) ) )
4032, 39mpd 13 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( -.  (
p  pCnt  B )  e.  RR  ->  B  = 
0 ) )
4128, 40syl5 32 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  B )  = +oo  ->  B  =  0 ) )
4224, 41sylbid 150 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  ->  B  = 
0 ) )
4342rexlimdva 2622 . . . . . . 7  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( E. p  e. 
Prime  ( p  pCnt  0
)  <_  ( p  pCnt  B )  ->  B  =  0 ) )
44 0dvds 12064 . . . . . . . 8  |-  ( B  e.  ZZ  ->  (
0  ||  B  <->  B  = 
0 ) )
4544adantl 277 . . . . . . 7  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( 0  ||  B  <->  B  =  0 ) )
4643, 45sylibrd 169 . . . . . 6  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( E. p  e. 
Prime  ( p  pCnt  0
)  <_  ( p  pCnt  B )  ->  0  ||  B ) )
479, 46syl5 32 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A. p  e. 
Prime  ( p  pCnt  0
)  <_  ( p  pCnt  B )  ->  0  ||  B ) )
4847adantr 276 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =  0 )  ->  ( A. p  e.  Prime  ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  ->  0  ||  B ) )
49 oveq2 5951 . . . . . . . 8  |-  ( A  =  0  ->  (
p  pCnt  A )  =  ( p  pCnt  0 ) )
5049breq1d 4053 . . . . . . 7  |-  ( A  =  0  ->  (
( p  pCnt  A
)  <_  ( p  pCnt  B )  <->  ( p  pCnt  0 )  <_  (
p  pCnt  B )
) )
5150ralbidv 2505 . . . . . 6  |-  ( A  =  0  ->  ( A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B
)  <->  A. p  e.  Prime  ( p  pCnt  0 )  <_  ( p  pCnt  B ) ) )
52 breq1 4046 . . . . . 6  |-  ( A  =  0  ->  ( A  ||  B  <->  0  ||  B ) )
5351, 52imbi12d 234 . . . . 5  |-  ( A  =  0  ->  (
( A. p  e. 
Prime  ( p  pCnt  A
)  <_  ( p  pCnt  B )  ->  A  ||  B )  <->  ( A. p  e.  Prime  ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  ->  0  ||  B ) ) )
5453adantl 277 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =  0 )  ->  ( ( A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B
)  ->  A  ||  B
)  <->  ( A. p  e.  Prime  ( p  pCnt  0 )  <_  (
p  pCnt  B )  ->  0  ||  B ) ) )
5548, 54mpbird 167 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =  0 )  ->  ( A. p  e.  Prime  ( p 
pCnt  A )  <_  (
p  pCnt  B )  ->  A  ||  B ) )
56 zdvdsdc 12065 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  -> DECID  A 
||  B )
5756adantr 276 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  -> DECID  A  ||  B )
58 gcddvds 12226 . . . . . . . . . . . 12  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( ( A  gcd  B )  ||  A  /\  ( A  gcd  B ) 
||  B ) )
5958simpld 112 . . . . . . . . . . 11  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  ||  A )
60 gcdcl 12229 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  e.  NN0 )
6160nn0zd 9492 . . . . . . . . . . . 12  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  e.  ZZ )
62 simpl 109 . . . . . . . . . . . 12  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  A  e.  ZZ )
63 dvdsabsb 12063 . . . . . . . . . . . 12  |-  ( ( ( A  gcd  B
)  e.  ZZ  /\  A  e.  ZZ )  ->  ( ( A  gcd  B )  ||  A  <->  ( A  gcd  B )  ||  ( abs `  A ) ) )
6461, 62, 63syl2anc 411 . . . . . . . . . . 11  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( ( A  gcd  B )  ||  A  <->  ( A  gcd  B )  ||  ( abs `  A ) ) )
6559, 64mpbid 147 . . . . . . . . . 10  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  ||  ( abs `  A ) )
6665adantr 276 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  ||  ( abs `  A ) )
67 simpl 109 . . . . . . . . . . . . 13  |-  ( ( A  =  0  /\  B  =  0 )  ->  A  =  0 )
6867necon3ai 2424 . . . . . . . . . . . 12  |-  ( A  =/=  0  ->  -.  ( A  =  0  /\  B  =  0
) )
69 gcdn0cl 12225 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  -.  ( A  =  0  /\  B  =  0 ) )  ->  ( A  gcd  B )  e.  NN )
7068, 69sylan2 286 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  NN )
7170nnzd 9493 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  ZZ )
7270nnne0d 9080 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  =/=  0
)
73 nnabscl 11353 . . . . . . . . . . . 12  |-  ( ( A  e.  ZZ  /\  A  =/=  0 )  -> 
( abs `  A
)  e.  NN )
7473adantlr 477 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  NN )
7574nnzd 9493 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  ZZ )
76 dvdsval2 12043 . . . . . . . . . 10  |-  ( ( ( A  gcd  B
)  e.  ZZ  /\  ( A  gcd  B )  =/=  0  /\  ( abs `  A )  e.  ZZ )  ->  (
( A  gcd  B
)  ||  ( abs `  A )  <->  ( ( abs `  A )  / 
( A  gcd  B
) )  e.  ZZ ) )
7771, 72, 75, 76syl3anc 1249 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( A  gcd  B )  ||  ( abs `  A )  <-> 
( ( abs `  A
)  /  ( A  gcd  B ) )  e.  ZZ ) )
7866, 77mpbid 147 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( abs `  A )  / 
( A  gcd  B
) )  e.  ZZ )
79 nnre 9042 . . . . . . . . . . 11  |-  ( ( abs `  A )  e.  NN  ->  ( abs `  A )  e.  RR )
80 nngt0 9060 . . . . . . . . . . 11  |-  ( ( abs `  A )  e.  NN  ->  0  <  ( abs `  A
) )
8179, 80jca 306 . . . . . . . . . 10  |-  ( ( abs `  A )  e.  NN  ->  (
( abs `  A
)  e.  RR  /\  0  <  ( abs `  A
) ) )
82 nnre 9042 . . . . . . . . . . 11  |-  ( ( A  gcd  B )  e.  NN  ->  ( A  gcd  B )  e.  RR )
83 nngt0 9060 . . . . . . . . . . 11  |-  ( ( A  gcd  B )  e.  NN  ->  0  <  ( A  gcd  B
) )
8482, 83jca 306 . . . . . . . . . 10  |-  ( ( A  gcd  B )  e.  NN  ->  (
( A  gcd  B
)  e.  RR  /\  0  <  ( A  gcd  B ) ) )
85 divgt0 8944 . . . . . . . . . 10  |-  ( ( ( ( abs `  A
)  e.  RR  /\  0  <  ( abs `  A
) )  /\  (
( A  gcd  B
)  e.  RR  /\  0  <  ( A  gcd  B ) ) )  -> 
0  <  ( ( abs `  A )  / 
( A  gcd  B
) ) )
8681, 84, 85syl2an 289 . . . . . . . . 9  |-  ( ( ( abs `  A
)  e.  NN  /\  ( A  gcd  B )  e.  NN )  -> 
0  <  ( ( abs `  A )  / 
( A  gcd  B
) ) )
8774, 70, 86syl2anc 411 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  0  <  ( ( abs `  A
)  /  ( A  gcd  B ) ) )
88 elnnz 9381 . . . . . . . 8  |-  ( ( ( abs `  A
)  /  ( A  gcd  B ) )  e.  NN  <->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  e.  ZZ  /\  0  <  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )
8978, 87, 88sylanbrc 417 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( abs `  A )  / 
( A  gcd  B
) )  e.  NN )
90 elnn1uz2 9727 . . . . . . 7  |-  ( ( ( abs `  A
)  /  ( A  gcd  B ) )  e.  NN  <->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  \/  (
( abs `  A
)  /  ( A  gcd  B ) )  e.  ( ZZ>= `  2
) ) )
9189, 90sylib 122 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  \/  (
( abs `  A
)  /  ( A  gcd  B ) )  e.  ( ZZ>= `  2
) ) )
9258simprd 114 . . . . . . . . . 10  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  ||  B )
9392adantr 276 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  ||  B
)
94 breq1 4046 . . . . . . . . 9  |-  ( ( A  gcd  B )  =  ( abs `  A
)  ->  ( ( A  gcd  B )  ||  B 
<->  ( abs `  A
)  ||  B )
)
9593, 94syl5ibcom 155 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( A  gcd  B )  =  ( abs `  A
)  ->  ( abs `  A )  ||  B
) )
9674nncnd 9049 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  CC )
9770nncnd 9049 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  CC )
98 1cnd 8087 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  1  e.  CC )
9970nnap0d 9081 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B ) #  0 )
10096, 97, 98, 99divmulapd 8884 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  <->  ( ( A  gcd  B )  x.  1 )  =  ( abs `  A ) ) )
10197mulridd 8088 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( A  gcd  B )  x.  1 )  =  ( A  gcd  B ) )
102101eqeq1d 2213 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( A  gcd  B
)  x.  1 )  =  ( abs `  A
)  <->  ( A  gcd  B )  =  ( abs `  A ) ) )
103100, 102bitrd 188 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  <->  ( A  gcd  B )  =  ( abs `  A ) ) )
104 absdvdsb 12062 . . . . . . . . 9  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  ||  B  <->  ( abs `  A ) 
||  B ) )
105104adantr 276 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  ||  B  <->  ( abs `  A
)  ||  B )
)
10695, 103, 1053imtr4d 203 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  ->  A  ||  B ) )
107 exprmfct 12402 . . . . . . . 8  |-  ( ( ( abs `  A
)  /  ( A  gcd  B ) )  e.  ( ZZ>= `  2
)  ->  E. p  e.  Prime  p  ||  (
( abs `  A
)  /  ( A  gcd  B ) ) )
108 simprl 529 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  p  e.  Prime )
10974adantr 276 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  e.  NN )
110109nnzd 9493 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  e.  ZZ )
111109nnne0d 9080 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  =/=  0 )
11270adantr 276 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( A  gcd  B )  e.  NN )
113 pcdiv 12567 . . . . . . . . . . . . . . . 16  |-  ( ( p  e.  Prime  /\  (
( abs `  A
)  e.  ZZ  /\  ( abs `  A )  =/=  0 )  /\  ( A  gcd  B )  e.  NN )  -> 
( p  pCnt  (
( abs `  A
)  /  ( A  gcd  B ) ) )  =  ( ( p  pCnt  ( abs `  A ) )  -  ( p  pCnt  ( A  gcd  B ) ) ) )
114108, 110, 111, 112, 113syl121anc 1254 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( ( abs `  A )  / 
( A  gcd  B
) ) )  =  ( ( p  pCnt  ( abs `  A ) )  -  ( p 
pCnt  ( A  gcd  B ) ) ) )
115 simplll 533 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  A  e.  ZZ )
116 zq 9746 . . . . . . . . . . . . . . . . . 18  |-  ( A  e.  ZZ  ->  A  e.  QQ )
117115, 116syl 14 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  A  e.  QQ )
118 pcabs 12591 . . . . . . . . . . . . . . . . 17  |-  ( ( p  e.  Prime  /\  A  e.  QQ )  ->  (
p  pCnt  ( abs `  A ) )  =  ( p  pCnt  A
) )
119108, 117, 118syl2anc 411 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( abs `  A ) )  =  ( p  pCnt  A
) )
120119oveq1d 5958 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  ( abs `  A ) )  -  ( p  pCnt  ( A  gcd  B ) ) )  =  ( ( p  pCnt  A
)  -  ( p 
pCnt  ( A  gcd  B ) ) ) )
121114, 120eqtrd 2237 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( ( abs `  A )  / 
( A  gcd  B
) ) )  =  ( ( p  pCnt  A )  -  ( p 
pCnt  ( A  gcd  B ) ) ) )
122 simprr 531 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) )
12389adantr 276 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( abs `  A
)  /  ( A  gcd  B ) )  e.  NN )
124 pcelnn 12586 . . . . . . . . . . . . . . . 16  |-  ( ( p  e.  Prime  /\  (
( abs `  A
)  /  ( A  gcd  B ) )  e.  NN )  -> 
( ( p  pCnt  ( ( abs `  A
)  /  ( A  gcd  B ) ) )  e.  NN  <->  p  ||  (
( abs `  A
)  /  ( A  gcd  B ) ) ) )
125108, 123, 124syl2anc 411 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  (
( abs `  A
)  /  ( A  gcd  B ) ) )  e.  NN  <->  p  ||  (
( abs `  A
)  /  ( A  gcd  B ) ) ) )
126122, 125mpbird 167 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( ( abs `  A )  / 
( A  gcd  B
) ) )  e.  NN )
127121, 126eqeltrrd 2282 . . . . . . . . . . . . 13  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  A
)  -  ( p 
pCnt  ( A  gcd  B ) ) )  e.  NN )
128108, 112pccld 12565 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( A  gcd  B ) )  e. 
NN0 )
129128nn0zd 9492 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( A  gcd  B ) )  e.  ZZ )
130 simplr 528 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  A  =/=  0 )
131 pczcl 12563 . . . . . . . . . . . . . . . 16  |-  ( ( p  e.  Prime  /\  ( A  e.  ZZ  /\  A  =/=  0 ) )  -> 
( p  pCnt  A
)  e.  NN0 )
132108, 115, 130, 131syl12anc 1247 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  A )  e.  NN0 )
133132nn0zd 9492 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  A )  e.  ZZ )
134 znnsub 9423 . . . . . . . . . . . . . 14  |-  ( ( ( p  pCnt  ( A  gcd  B ) )  e.  ZZ  /\  (
p  pCnt  A )  e.  ZZ )  ->  (
( p  pCnt  ( A  gcd  B ) )  <  ( p  pCnt  A )  <->  ( ( p 
pCnt  A )  -  (
p  pCnt  ( A  gcd  B ) ) )  e.  NN ) )
135129, 133, 134syl2anc 411 . . . . . . . . . . . . 13  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  ( A  gcd  B ) )  <  ( p  pCnt  A )  <->  ( ( p 
pCnt  A )  -  (
p  pCnt  ( A  gcd  B ) ) )  e.  NN ) )
136127, 135mpbird 167 . . . . . . . . . . . 12  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( A  gcd  B ) )  < 
( p  pCnt  A
) )
137 zltnle 9417 . . . . . . . . . . . . 13  |-  ( ( ( p  pCnt  ( A  gcd  B ) )  e.  ZZ  /\  (
p  pCnt  A )  e.  ZZ )  ->  (
( p  pCnt  ( A  gcd  B ) )  <  ( p  pCnt  A )  <->  -.  ( p  pCnt  A )  <_  (
p  pCnt  ( A  gcd  B ) ) ) )
138129, 133, 137syl2anc 411 . . . . . . . . . . . 12  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  ( A  gcd  B ) )  <  ( p  pCnt  A )  <->  -.  ( p  pCnt  A )  <_  (
p  pCnt  ( A  gcd  B ) ) ) )
139136, 138mpbid 147 . . . . . . . . . . 11  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  -.  ( p  pCnt  A )  <_  ( p  pCnt  ( A  gcd  B ) ) )
140132nn0red 9348 . . . . . . . . . . . . 13  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  A )  e.  RR )
141 simpllr 534 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  B  e.  ZZ )
142 nprmdvds1 12404 . . . . . . . . . . . . . . . . . 18  |-  ( p  e.  Prime  ->  -.  p  ||  1 )
143142ad2antrl 490 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  -.  p  ||  1 )
144 gcdid0 12243 . . . . . . . . . . . . . . . . . . . . 21  |-  ( A  e.  ZZ  ->  ( A  gcd  0 )  =  ( abs `  A
) )
145115, 144syl 14 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( A  gcd  0 )  =  ( abs `  A
) )
146145oveq2d 5959 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( abs `  A
)  /  ( A  gcd  0 ) )  =  ( ( abs `  A )  /  ( abs `  A ) ) )
14796adantr 276 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  e.  CC )
148109nnap0d 9081 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A ) #  0 )
149147, 148dividapd 8858 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( abs `  A
)  /  ( abs `  A ) )  =  1 )
150146, 149eqtrd 2237 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( abs `  A
)  /  ( A  gcd  0 ) )  =  1 )
151150breq2d 4055 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  ||  ( ( abs `  A )  / 
( A  gcd  0
) )  <->  p  ||  1
) )
152143, 151mtbird 674 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  -.  p  ||  ( ( abs `  A )  /  ( A  gcd  0 ) ) )
153 oveq2 5951 . . . . . . . . . . . . . . . . . . . 20  |-  ( B  =  0  ->  ( A  gcd  B )  =  ( A  gcd  0
) )
154153oveq2d 5959 . . . . . . . . . . . . . . . . . . 19  |-  ( B  =  0  ->  (
( abs `  A
)  /  ( A  gcd  B ) )  =  ( ( abs `  A )  /  ( A  gcd  0 ) ) )
155154breq2d 4055 . . . . . . . . . . . . . . . . . 18  |-  ( B  =  0  ->  (
p  ||  ( ( abs `  A )  / 
( A  gcd  B
) )  <->  p  ||  (
( abs `  A
)  /  ( A  gcd  0 ) ) ) )
156122, 155syl5ibcom 155 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( B  =  0  ->  p 
||  ( ( abs `  A )  /  ( A  gcd  0 ) ) ) )
157156necon3bd 2418 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( -.  p  ||  ( ( abs `  A )  /  ( A  gcd  0 ) )  ->  B  =/=  0 ) )
158152, 157mpd 13 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  B  =/=  0 )
159108, 141, 158, 33syl12anc 1247 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  B )  e.  NN0 )
160159nn0red 9348 . . . . . . . . . . . . 13  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  B )  e.  RR )
161 lemininf 11487 . . . . . . . . . . . . 13  |-  ( ( ( p  pCnt  A
)  e.  RR  /\  ( p  pCnt  A )  e.  RR  /\  (
p  pCnt  B )  e.  RR )  ->  (
( p  pCnt  A
)  <_ inf ( {
( p  pCnt  A
) ,  ( p 
pCnt  B ) } ,  RR ,  <  )  <->  ( (
p  pCnt  A )  <_  ( p  pCnt  A
)  /\  ( p  pCnt  A )  <_  (
p  pCnt  B )
) ) )
162140, 140, 160, 161syl3anc 1249 . . . . . . . . . . . 12  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  A
)  <_ inf ( {
( p  pCnt  A
) ,  ( p 
pCnt  B ) } ,  RR ,  <  )  <->  ( (
p  pCnt  A )  <_  ( p  pCnt  A
)  /\  ( p  pCnt  A )  <_  (
p  pCnt  B )
) ) )
163 pcgcd 12594 . . . . . . . . . . . . . . 15  |-  ( ( p  e.  Prime  /\  A  e.  ZZ  /\  B  e.  ZZ )  ->  (
p  pCnt  ( A  gcd  B ) )  =  if ( ( p 
pCnt  A )  <_  (
p  pCnt  B ) ,  ( p  pCnt  A ) ,  ( p 
pCnt  B ) ) )
164108, 115, 141, 163syl3anc 1249 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( A  gcd  B ) )  =  if ( ( p 
pCnt  A )  <_  (
p  pCnt  B ) ,  ( p  pCnt  A ) ,  ( p 
pCnt  B ) ) )
165159nn0zd 9492 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  B )  e.  ZZ )
166 2zinfmin 11496 . . . . . . . . . . . . . . 15  |-  ( ( ( p  pCnt  A
)  e.  ZZ  /\  ( p  pCnt  B )  e.  ZZ )  -> inf ( { ( p  pCnt  A ) ,  ( p 
pCnt  B ) } ,  RR ,  <  )  =  if ( ( p 
pCnt  A )  <_  (
p  pCnt  B ) ,  ( p  pCnt  A ) ,  ( p 
pCnt  B ) ) )
167133, 165, 166syl2anc 411 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  -> inf ( { ( p  pCnt  A
) ,  ( p 
pCnt  B ) } ,  RR ,  <  )  =  if ( ( p 
pCnt  A )  <_  (
p  pCnt  B ) ,  ( p  pCnt  A ) ,  ( p 
pCnt  B ) ) )
168164, 167eqtr4d 2240 . . . . . . . . . . . . 13  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  ( A  gcd  B ) )  = inf ( { ( p 
pCnt  A ) ,  ( p  pCnt  B ) } ,  RR ,  <  ) )
169168breq2d 4055 . . . . . . . . . . . 12  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  A
)  <_  ( p  pCnt  ( A  gcd  B
) )  <->  ( p  pCnt  A )  <_ inf ( { ( p  pCnt  A
) ,  ( p 
pCnt  B ) } ,  RR ,  <  ) ) )
170140leidd 8586 . . . . . . . . . . . . 13  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  A )  <_  ( p  pCnt  A
) )
171170biantrurd 305 . . . . . . . . . . . 12  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  A
)  <_  ( p  pCnt  B )  <->  ( (
p  pCnt  A )  <_  ( p  pCnt  A
)  /\  ( p  pCnt  A )  <_  (
p  pCnt  B )
) ) )
172162, 169, 1713bitr4rd 221 . . . . . . . . . . 11  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
( p  pCnt  A
)  <_  ( p  pCnt  B )  <->  ( p  pCnt  A )  <_  (
p  pCnt  ( A  gcd  B ) ) ) )
173139, 172mtbird 674 . . . . . . . . . 10  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  -.  ( p  pCnt  A )  <_  ( p  pCnt  B ) )
174173expr 375 . . . . . . . . 9  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  p  e.  Prime )  ->  (
p  ||  ( ( abs `  A )  / 
( A  gcd  B
) )  ->  -.  ( p  pCnt  A )  <_  ( p  pCnt  B ) ) )
175174reximdva 2607 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( E. p  e.  Prime  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) )  ->  E. p  e.  Prime  -.  ( p  pCnt  A
)  <_  ( p  pCnt  B ) ) )
176 rexnalim 2494 . . . . . . . 8  |-  ( E. p  e.  Prime  -.  (
p  pCnt  A )  <_  ( p  pCnt  B
)  ->  -.  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B ) )
177107, 175, 176syl56 34 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  e.  ( ZZ>= `  2
)  ->  -.  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B ) ) )
178106, 177orim12d 787 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( ( abs `  A
)  /  ( A  gcd  B ) )  =  1  \/  (
( abs `  A
)  /  ( A  gcd  B ) )  e.  ( ZZ>= `  2
) )  ->  ( A  ||  B  \/  -.  A. p  e.  Prime  (
p  pCnt  A )  <_  ( p  pCnt  B
) ) ) )
17991, 178mpd 13 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  ||  B  \/  -.  A. p  e.  Prime  ( p 
pCnt  A )  <_  (
p  pCnt  B )
) )
180179ord 725 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( -.  A  ||  B  ->  -.  A. p  e.  Prime  (
p  pCnt  A )  <_  ( p  pCnt  B
) ) )
181 condc 854 . . . 4  |-  (DECID  A  ||  B  ->  ( ( -.  A  ||  B  ->  -.  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B
) )  ->  ( A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B
)  ->  A  ||  B
) ) )
18257, 180, 181sylc 62 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A. p  e.  Prime  ( p 
pCnt  A )  <_  (
p  pCnt  B )  ->  A  ||  B ) )
183 0zd 9383 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  0  e.  ZZ )
184 zdceq 9447 . . . . 5  |-  ( ( A  e.  ZZ  /\  0  e.  ZZ )  -> DECID  A  =  0 )
18562, 183, 184syl2anc 411 . . . 4  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  -> DECID  A  =  0 )
186 dcne 2386 . . . 4  |-  (DECID  A  =  0  <->  ( A  =  0  \/  A  =/=  0 ) )
187185, 186sylib 122 . . 3  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  =  0  \/  A  =/=  0
) )
18855, 182, 187mpjaodan 799 . 2  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A. p  e. 
Prime  ( p  pCnt  A
)  <_  ( p  pCnt  B )  ->  A  ||  B ) )
1894, 188impbid 129 1  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  ||  B  <->  A. p  e.  Prime  (
p  pCnt  A )  <_  ( p  pCnt  B
) ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 104    <-> wb 105    \/ wo 709  DECID wdc 835    /\ w3a 980    = wceq 1372   E.wex 1514    e. wcel 2175    =/= wne 2375   A.wral 2483   E.wrex 2484   ifcif 3570   {cpr 3633   class class class wbr 4043   ` cfv 5270  (class class class)co 5943  infcinf 7084   CCcc 7922   RRcr 7923   0cc0 7924   1c1 7925    x. cmul 7929   +oocpnf 8103   RR*cxr 8105    < clt 8106    <_ cle 8107    - cmin 8242    / cdiv 8744   NNcn 9035   2c2 9086   NN0cn0 9294   ZZcz 9371   ZZ>=cuz 9647   QQcq 9739   abscabs 11250    || cdvds 12040    gcd cgcd 12216   Primecprime 12371    pCnt cpc 12549
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 710  ax-5 1469  ax-7 1470  ax-gen 1471  ax-ie1 1515  ax-ie2 1516  ax-8 1526  ax-10 1527  ax-11 1528  ax-i12 1529  ax-bndl 1531  ax-4 1532  ax-17 1548  ax-i9 1552  ax-ial 1556  ax-i5r 1557  ax-13 2177  ax-14 2178  ax-ext 2186  ax-coll 4158  ax-sep 4161  ax-nul 4169  ax-pow 4217  ax-pr 4252  ax-un 4479  ax-setind 4584  ax-iinf 4635  ax-cnex 8015  ax-resscn 8016  ax-1cn 8017  ax-1re 8018  ax-icn 8019  ax-addcl 8020  ax-addrcl 8021  ax-mulcl 8022  ax-mulrcl 8023  ax-addcom 8024  ax-mulcom 8025  ax-addass 8026  ax-mulass 8027  ax-distr 8028  ax-i2m1 8029  ax-0lt1 8030  ax-1rid 8031  ax-0id 8032  ax-rnegex 8033  ax-precex 8034  ax-cnre 8035  ax-pre-ltirr 8036  ax-pre-ltwlin 8037  ax-pre-lttrn 8038  ax-pre-apti 8039  ax-pre-ltadd 8040  ax-pre-mulgt0 8041  ax-pre-mulext 8042  ax-arch 8043  ax-caucvg 8044
This theorem depends on definitions:  df-bi 117  df-stab 832  df-dc 836  df-3or 981  df-3an 982  df-tru 1375  df-fal 1378  df-nf 1483  df-sb 1785  df-eu 2056  df-mo 2057  df-clab 2191  df-cleq 2197  df-clel 2200  df-nfc 2336  df-ne 2376  df-nel 2471  df-ral 2488  df-rex 2489  df-reu 2490  df-rmo 2491  df-rab 2492  df-v 2773  df-sbc 2998  df-csb 3093  df-dif 3167  df-un 3169  df-in 3171  df-ss 3178  df-nul 3460  df-if 3571  df-pw 3617  df-sn 3638  df-pr 3639  df-op 3641  df-uni 3850  df-int 3885  df-iun 3928  df-br 4044  df-opab 4105  df-mpt 4106  df-tr 4142  df-id 4339  df-po 4342  df-iso 4343  df-iord 4412  df-on 4414  df-ilim 4415  df-suc 4417  df-iom 4638  df-xp 4680  df-rel 4681  df-cnv 4682  df-co 4683  df-dm 4684  df-rn 4685  df-res 4686  df-ima 4687  df-iota 5231  df-fun 5272  df-fn 5273  df-f 5274  df-f1 5275  df-fo 5276  df-f1o 5277  df-fv 5278  df-isom 5279  df-riota 5898  df-ov 5946  df-oprab 5947  df-mpo 5948  df-1st 6225  df-2nd 6226  df-recs 6390  df-frec 6476  df-1o 6501  df-2o 6502  df-er 6619  df-en 6827  df-sup 7085  df-inf 7086  df-pnf 8108  df-mnf 8109  df-xr 8110  df-ltxr 8111  df-le 8112  df-sub 8244  df-neg 8245  df-reap 8647  df-ap 8654  df-div 8745  df-inn 9036  df-2 9094  df-3 9095  df-4 9096  df-n0 9295  df-xnn0 9358  df-z 9372  df-uz 9648  df-q 9740  df-rp 9775  df-fz 10130  df-fzo 10264  df-fl 10411  df-mod 10466  df-seqfrec 10591  df-exp 10682  df-cj 11095  df-re 11096  df-im 11097  df-rsqrt 11251  df-abs 11252  df-dvds 12041  df-gcd 12217  df-prm 12372  df-pc 12550
This theorem is referenced by:  pc11  12596  pcz  12597  pcprmpw2  12598  pockthg  12622
  Copyright terms: Public domain W3C validator