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

Theorem pc2dvds 12572
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 12569 . . . . 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 12368 . . . . . . . 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 9729 . . . . . . . . . . . . . 14  |-  ( B  e.  ZZ  ->  B  e.  QQ )
1211adantl 277 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  B  e.  QQ )
13 pcxcl 12553 . . . . . . . . . . . . 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 9893 . . . . . . . . . . . 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 12546 . . . . . . . . . . . 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 8107 . . . . . . . . . . 11  |- +oo  e.  RR*
22 xrletri3 9908 . . . . . . . . . . 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 8096 . . . . . . . . . . . 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 9366 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  0  e.  ZZ )
31 zdceq 9430 . . . . . . . . . . . 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 12540 . . . . . . . . . . . . . . . . 17  |-  ( ( p  e.  Prime  /\  ( B  e.  ZZ  /\  B  =/=  0 ) )  -> 
( p  pCnt  B
)  e.  NN0 )
3433nn0red 9331 . . . . . . . . . . . . . . . 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 12041 . . . . . . . 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 5942 . . . . . . . 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 12042 . . . . 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 12203 . . . . . . . . . . . 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 12206 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  e.  NN0 )
6160nn0zd 9475 . . . . . . . . . . . 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 12040 . . . . . . . . . . . 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 12202 . . . . . . . . . . . 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 9476 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  ZZ )
7270nnne0d 9063 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  =/=  0
)
73 nnabscl 11330 . . . . . . . . . . . 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 9476 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  ZZ )
76 dvdsval2 12020 . . . . . . . . . 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 9025 . . . . . . . . . . 11  |-  ( ( abs `  A )  e.  NN  ->  ( abs `  A )  e.  RR )
80 nngt0 9043 . . . . . . . . . . 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 9025 . . . . . . . . . . 11  |-  ( ( A  gcd  B )  e.  NN  ->  ( A  gcd  B )  e.  RR )
83 nngt0 9043 . . . . . . . . . . 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 8927 . . . . . . . . . 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 9364 . . . . . . . 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 9710 . . . . . . 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 9032 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  CC )
9770nncnd 9032 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  CC )
98 1cnd 8070 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  1  e.  CC )
9970nnap0d 9064 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B ) #  0 )
10096, 97, 98, 99divmulapd 8867 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  <->  ( ( A  gcd  B )  x.  1 )  =  ( abs `  A ) ) )
10197mulridd 8071 . . . . . . . . . 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 12039 . . . . . . . . 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 12379 . . . . . . . 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 9476 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  e.  ZZ )
111109nnne0d 9063 . . . . . . . . . . . . . . . 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 12544 . . . . . . . . . . . . . . . 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 9729 . . . . . . . . . . . . . . . . . 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 12568 . . . . . . . . . . . . . . . . 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 5949 . . . . . . . . . . . . . . 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 12563 . . . . . . . . . . . . . . . 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 12542 . . . . . . . . . . . . . . 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 9475 . . . . . . . . . . . . . 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 12540 . . . . . . . . . . . . . . . 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 9475 . . . . . . . . . . . . . 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 9406 . . . . . . . . . . . . . 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 9400 . . . . . . . . . . . . 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 9331 . . . . . . . . . . . . 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 12381 . . . . . . . . . . . . . . . . . 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 12220 . . . . . . . . . . . . . . . . . . . . 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 5950 . . . . . . . . . . . . . . . . . . 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 9064 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A ) #  0 )
149147, 148dividapd 8841 . . . . . . . . . . . . . . . . . . 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 5942 . . . . . . . . . . . . . . . . . . . 20  |-  ( B  =  0  ->  ( A  gcd  B )  =  ( A  gcd  0
) )
154153oveq2d 5950 . . . . . . . . . . . . . . . . . . 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 9331 . . . . . . . . . . . . 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 11464 . . . . . . . . . . . . 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 12571 . . . . . . . . . . . . . . 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 9475 . . . . . . . . . . . . . . 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 11473 . . . . . . . . . . . . . . 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 8569 . . . . . . . . . . . . 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 9366 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  0  e.  ZZ )
184 zdceq 9430 . . . . 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 5268  (class class class)co 5934  infcinf 7067   CCcc 7905   RRcr 7906   0cc0 7907   1c1 7908    x. cmul 7912   +oocpnf 8086   RR*cxr 8088    < clt 8089    <_ cle 8090    - cmin 8225    / cdiv 8727   NNcn 9018   2c2 9069   NN0cn0 9277   ZZcz 9354   ZZ>=cuz 9630   QQcq 9722   abscabs 11227    || cdvds 12017    gcd cgcd 12193   Primecprime 12348    pCnt cpc 12526
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 4478  ax-setind 4583  ax-iinf 4634  ax-cnex 7998  ax-resscn 7999  ax-1cn 8000  ax-1re 8001  ax-icn 8002  ax-addcl 8003  ax-addrcl 8004  ax-mulcl 8005  ax-mulrcl 8006  ax-addcom 8007  ax-mulcom 8008  ax-addass 8009  ax-mulass 8010  ax-distr 8011  ax-i2m1 8012  ax-0lt1 8013  ax-1rid 8014  ax-0id 8015  ax-rnegex 8016  ax-precex 8017  ax-cnre 8018  ax-pre-ltirr 8019  ax-pre-ltwlin 8020  ax-pre-lttrn 8021  ax-pre-apti 8022  ax-pre-ltadd 8023  ax-pre-mulgt0 8024  ax-pre-mulext 8025  ax-arch 8026  ax-caucvg 8027
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 4338  df-po 4341  df-iso 4342  df-iord 4411  df-on 4413  df-ilim 4414  df-suc 4416  df-iom 4637  df-xp 4679  df-rel 4680  df-cnv 4681  df-co 4682  df-dm 4683  df-rn 4684  df-res 4685  df-ima 4686  df-iota 5229  df-fun 5270  df-fn 5271  df-f 5272  df-f1 5273  df-fo 5274  df-f1o 5275  df-fv 5276  df-isom 5277  df-riota 5889  df-ov 5937  df-oprab 5938  df-mpo 5939  df-1st 6216  df-2nd 6217  df-recs 6381  df-frec 6467  df-1o 6492  df-2o 6493  df-er 6610  df-en 6818  df-sup 7068  df-inf 7069  df-pnf 8091  df-mnf 8092  df-xr 8093  df-ltxr 8094  df-le 8095  df-sub 8227  df-neg 8228  df-reap 8630  df-ap 8637  df-div 8728  df-inn 9019  df-2 9077  df-3 9078  df-4 9079  df-n0 9278  df-xnn0 9341  df-z 9355  df-uz 9631  df-q 9723  df-rp 9758  df-fz 10113  df-fzo 10247  df-fl 10394  df-mod 10449  df-seqfrec 10574  df-exp 10665  df-cj 11072  df-re 11073  df-im 11074  df-rsqrt 11228  df-abs 11229  df-dvds 12018  df-gcd 12194  df-prm 12349  df-pc 12527
This theorem is referenced by:  pc11  12573  pcz  12574  pcprmpw2  12575  pockthg  12599
  Copyright terms: Public domain W3C validator