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

Theorem pc2dvds 12468
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 12465 . . . . 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 2567 . . 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 12265 . . . . . . . 8  |-  2  e.  Prime
6 elex2 2776 . . . . . . . 8  |-  ( 2  e.  Prime  ->  E. w  w  e.  Prime )
75, 6ax-mp 5 . . . . . . 7  |-  E. w  w  e.  Prime
8 r19.2m 3533 . . . . . . 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 9691 . . . . . . . . . . . . . 14  |-  ( B  e.  ZZ  ->  B  e.  QQ )
1211adantl 277 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  B  e.  QQ )
13 pcxcl 12449 . . . . . . . . . . . . 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 9855 . . . . . . . . . . . 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 12442 . . . . . . . . . . . 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 4039 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  <-> +oo  <_  ( p  pCnt  B ) ) )
21 pnfxr 8072 . . . . . . . . . . 11  |- +oo  e.  RR*
22 xrletri3 9870 . . . . . . . . . . 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 8061 . . . . . . . . . . . 12  |- +oo  e/  RR
2625neli 2461 . . . . . . . . . . 11  |-  -. +oo  e.  RR
27 eleq1 2256 . . . . . . . . . . 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 9329 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  0  e.  ZZ )
31 zdceq 9392 . . . . . . . . . . . 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 12436 . . . . . . . . . . . . . . . . 17  |-  ( ( p  e.  Prime  /\  ( B  e.  ZZ  /\  B  =/=  0 ) )  -> 
( p  pCnt  B
)  e.  NN0 )
3433nn0red 9294 . . . . . . . . . . . . . . . 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 2441 . . . . . . . . . . 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 2611 . . . . . . 7  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( E. p  e. 
Prime  ( p  pCnt  0
)  <_  ( p  pCnt  B )  ->  B  =  0 ) )
44 0dvds 11954 . . . . . . . 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 5926 . . . . . . . 8  |-  ( A  =  0  ->  (
p  pCnt  A )  =  ( p  pCnt  0 ) )
5049breq1d 4039 . . . . . . 7  |-  ( A  =  0  ->  (
( p  pCnt  A
)  <_  ( p  pCnt  B )  <->  ( p  pCnt  0 )  <_  (
p  pCnt  B )
) )
5150ralbidv 2494 . . . . . 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 4032 . . . . . 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 11955 . . . . 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 12100 . . . . . . . . . . . 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 12103 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  e.  NN0 )
6160nn0zd 9437 . . . . . . . . . . . 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 11953 . . . . . . . . . . . 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 2413 . . . . . . . . . . . 12  |-  ( A  =/=  0  ->  -.  ( A  =  0  /\  B  =  0
) )
69 gcdn0cl 12099 . . . . . . . . . . . 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 9438 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  ZZ )
7270nnne0d 9027 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  =/=  0
)
73 nnabscl 11244 . . . . . . . . . . . 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 9438 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  ZZ )
76 dvdsval2 11933 . . . . . . . . . 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 8989 . . . . . . . . . . 11  |-  ( ( abs `  A )  e.  NN  ->  ( abs `  A )  e.  RR )
80 nngt0 9007 . . . . . . . . . . 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 8989 . . . . . . . . . . 11  |-  ( ( A  gcd  B )  e.  NN  ->  ( A  gcd  B )  e.  RR )
83 nngt0 9007 . . . . . . . . . . 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 8891 . . . . . . . . . 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 9327 . . . . . . . 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 9672 . . . . . . 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 4032 . . . . . . . . 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 8996 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  CC )
9770nncnd 8996 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  CC )
98 1cnd 8035 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  1  e.  CC )
9970nnap0d 9028 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B ) #  0 )
10096, 97, 98, 99divmulapd 8831 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  <->  ( ( A  gcd  B )  x.  1 )  =  ( abs `  A ) ) )
10197mulridd 8036 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( A  gcd  B )  x.  1 )  =  ( A  gcd  B ) )
102101eqeq1d 2202 . . . . . . . . 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 11952 . . . . . . . . 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 12276 . . . . . . . 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 9438 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  e.  ZZ )
111109nnne0d 9027 . . . . . . . . . . . . . . . 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 12440 . . . . . . . . . . . . . . . 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 9691 . . . . . . . . . . . . . . . . . 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 12464 . . . . . . . . . . . . . . . . 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 5933 . . . . . . . . . . . . . . 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 2226 . . . . . . . . . . . . . 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 12459 . . . . . . . . . . . . . . . 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 2271 . . . . . . . . . . . . 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 12438 . . . . . . . . . . . . . . 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 9437 . . . . . . . . . . . . . 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 12436 . . . . . . . . . . . . . . . 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 9437 . . . . . . . . . . . . . 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 9368 . . . . . . . . . . . . . 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 9363 . . . . . . . . . . . . 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 9294 . . . . . . . . . . . . 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 12278 . . . . . . . . . . . . . . . . . 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 12117 . . . . . . . . . . . . . . . . . . . . 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 5934 . . . . . . . . . . . . . . . . . . 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 9028 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A ) #  0 )
149147, 148dividapd 8805 . . . . . . . . . . . . . . . . . . 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 2226 . . . . . . . . . . . . . . . . . 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 4041 . . . . . . . . . . . . . . . . 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 5926 . . . . . . . . . . . . . . . . . . . 20  |-  ( B  =  0  ->  ( A  gcd  B )  =  ( A  gcd  0
) )
154153oveq2d 5934 . . . . . . . . . . . . . . . . . . 19  |-  ( B  =  0  ->  (
( abs `  A
)  /  ( A  gcd  B ) )  =  ( ( abs `  A )  /  ( A  gcd  0 ) ) )
155154breq2d 4041 . . . . . . . . . . . . . . . . . 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 2407 . . . . . . . . . . . . . . . 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 9294 . . . . . . . . . . . . 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 11377 . . . . . . . . . . . . 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 12467 . . . . . . . . . . . . . . 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 9437 . . . . . . . . . . . . . . 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 11386 . . . . . . . . . . . . . . 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 2229 . . . . . . . . . . . . 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 4041 . . . . . . . . . . . 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 8533 . . . . . . . . . . . . 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 2596 . . . . . . . 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 2483 . . . . . . . 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 9329 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  0  e.  ZZ )
184 zdceq 9392 . . . . 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 2375 . . . 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 1364   E.wex 1503    e. wcel 2164    =/= wne 2364   A.wral 2472   E.wrex 2473   ifcif 3557   {cpr 3619   class class class wbr 4029   ` cfv 5254  (class class class)co 5918  infcinf 7042   CCcc 7870   RRcr 7871   0cc0 7872   1c1 7873    x. cmul 7877   +oocpnf 8051   RR*cxr 8053    < clt 8054    <_ cle 8055    - cmin 8190    / cdiv 8691   NNcn 8982   2c2 9033   NN0cn0 9240   ZZcz 9317   ZZ>=cuz 9592   QQcq 9684   abscabs 11141    || cdvds 11930    gcd cgcd 12079   Primecprime 12245    pCnt cpc 12422
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 1458  ax-7 1459  ax-gen 1460  ax-ie1 1504  ax-ie2 1505  ax-8 1515  ax-10 1516  ax-11 1517  ax-i12 1518  ax-bndl 1520  ax-4 1521  ax-17 1537  ax-i9 1541  ax-ial 1545  ax-i5r 1546  ax-13 2166  ax-14 2167  ax-ext 2175  ax-coll 4144  ax-sep 4147  ax-nul 4155  ax-pow 4203  ax-pr 4238  ax-un 4464  ax-setind 4569  ax-iinf 4620  ax-cnex 7963  ax-resscn 7964  ax-1cn 7965  ax-1re 7966  ax-icn 7967  ax-addcl 7968  ax-addrcl 7969  ax-mulcl 7970  ax-mulrcl 7971  ax-addcom 7972  ax-mulcom 7973  ax-addass 7974  ax-mulass 7975  ax-distr 7976  ax-i2m1 7977  ax-0lt1 7978  ax-1rid 7979  ax-0id 7980  ax-rnegex 7981  ax-precex 7982  ax-cnre 7983  ax-pre-ltirr 7984  ax-pre-ltwlin 7985  ax-pre-lttrn 7986  ax-pre-apti 7987  ax-pre-ltadd 7988  ax-pre-mulgt0 7989  ax-pre-mulext 7990  ax-arch 7991  ax-caucvg 7992
This theorem depends on definitions:  df-bi 117  df-stab 832  df-dc 836  df-3or 981  df-3an 982  df-tru 1367  df-fal 1370  df-nf 1472  df-sb 1774  df-eu 2045  df-mo 2046  df-clab 2180  df-cleq 2186  df-clel 2189  df-nfc 2325  df-ne 2365  df-nel 2460  df-ral 2477  df-rex 2478  df-reu 2479  df-rmo 2480  df-rab 2481  df-v 2762  df-sbc 2986  df-csb 3081  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-nul 3447  df-if 3558  df-pw 3603  df-sn 3624  df-pr 3625  df-op 3627  df-uni 3836  df-int 3871  df-iun 3914  df-br 4030  df-opab 4091  df-mpt 4092  df-tr 4128  df-id 4324  df-po 4327  df-iso 4328  df-iord 4397  df-on 4399  df-ilim 4400  df-suc 4402  df-iom 4623  df-xp 4665  df-rel 4666  df-cnv 4667  df-co 4668  df-dm 4669  df-rn 4670  df-res 4671  df-ima 4672  df-iota 5215  df-fun 5256  df-fn 5257  df-f 5258  df-f1 5259  df-fo 5260  df-f1o 5261  df-fv 5262  df-isom 5263  df-riota 5873  df-ov 5921  df-oprab 5922  df-mpo 5923  df-1st 6193  df-2nd 6194  df-recs 6358  df-frec 6444  df-1o 6469  df-2o 6470  df-er 6587  df-en 6795  df-sup 7043  df-inf 7044  df-pnf 8056  df-mnf 8057  df-xr 8058  df-ltxr 8059  df-le 8060  df-sub 8192  df-neg 8193  df-reap 8594  df-ap 8601  df-div 8692  df-inn 8983  df-2 9041  df-3 9042  df-4 9043  df-n0 9241  df-xnn0 9304  df-z 9318  df-uz 9593  df-q 9685  df-rp 9720  df-fz 10075  df-fzo 10209  df-fl 10339  df-mod 10394  df-seqfrec 10519  df-exp 10610  df-cj 10986  df-re 10987  df-im 10988  df-rsqrt 11142  df-abs 11143  df-dvds 11931  df-gcd 12080  df-prm 12246  df-pc 12423
This theorem is referenced by:  pc11  12469  pcz  12470  pcprmpw2  12471  pockthg  12495
  Copyright terms: Public domain W3C validator