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

Theorem pc2dvds 12966
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 12963 . . . . 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 2606 . . 3  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  A  ||  B )  ->  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B ) )
433expia 1232 . 2  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  ||  B  ->  A. p  e.  Prime  ( p  pCnt  A )  <_  ( p  pCnt  B
) ) )
5 2prm 12762 . . . . . . . 8  |-  2  e.  Prime
6 elex2 2820 . . . . . . . 8  |-  ( 2  e.  Prime  ->  E. w  w  e.  Prime )
75, 6ax-mp 5 . . . . . . 7  |-  E. w  w  e.  Prime
8 r19.2m 3583 . . . . . . 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 9904 . . . . . . . . . . . . . 14  |-  ( B  e.  ZZ  ->  B  e.  QQ )
1211adantl 277 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  B  e.  QQ )
13 pcxcl 12947 . . . . . . . . . . . . 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 10068 . . . . . . . . . . . 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 12940 . . . . . . . . . . . 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 4103 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  ( ( p 
pCnt  0 )  <_ 
( p  pCnt  B
)  <-> +oo  <_  ( p  pCnt  B ) ) )
21 pnfxr 8274 . . . . . . . . . . 11  |- +oo  e.  RR*
22 xrletri3 10083 . . . . . . . . . . 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 8263 . . . . . . . . . . . 12  |- +oo  e/  RR
2625neli 2500 . . . . . . . . . . 11  |-  -. +oo  e.  RR
27 eleq1 2294 . . . . . . . . . . 11  |-  ( ( p  pCnt  B )  = +oo  ->  ( (
p  pCnt  B )  e.  RR  <-> +oo  e.  RR ) )
2826, 27mtbiri 682 . . . . . . . . . 10  |-  ( ( p  pCnt  B )  = +oo  ->  -.  (
p  pCnt  B )  e.  RR )
29 simplr 529 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  B  e.  ZZ )
30 0zd 9535 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  p  e.  Prime )  ->  0  e.  ZZ )
31 zdceq 9599 . . . . . . . . . . . 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 12934 . . . . . . . . . . . . . . . . 17  |-  ( ( p  e.  Prime  /\  ( B  e.  ZZ  /\  B  =/=  0 ) )  -> 
( p  pCnt  B
)  e.  NN0 )
3433nn0red 9500 . . . . . . . . . . . . . . . 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 592 . . . . . . . . . . . . . 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 2480 . . . . . . . . . . 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 2651 . . . . . . 7  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( E. p  e. 
Prime  ( p  pCnt  0
)  <_  ( p  pCnt  B )  ->  B  =  0 ) )
44 0dvds 12435 . . . . . . . 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 6036 . . . . . . . 8  |-  ( A  =  0  ->  (
p  pCnt  A )  =  ( p  pCnt  0 ) )
5049breq1d 4103 . . . . . . 7  |-  ( A  =  0  ->  (
( p  pCnt  A
)  <_  ( p  pCnt  B )  <->  ( p  pCnt  0 )  <_  (
p  pCnt  B )
) )
5150ralbidv 2533 . . . . . 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 4096 . . . . . 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 12436 . . . . 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 12597 . . . . . . . . . . . 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 12600 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  gcd  B
)  e.  NN0 )
6160nn0zd 9644 . . . . . . . . . . . 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 12434 . . . . . . . . . . . 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 2452 . . . . . . . . . . . 12  |-  ( A  =/=  0  ->  -.  ( A  =  0  /\  B  =  0
) )
69 gcdn0cl 12596 . . . . . . . . . . . 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 9645 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  ZZ )
7270nnne0d 9230 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  =/=  0
)
73 nnabscl 11723 . . . . . . . . . . . 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 9645 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  ZZ )
76 dvdsval2 12414 . . . . . . . . . 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 1274 . . . . . . . . 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 9192 . . . . . . . . . . 11  |-  ( ( abs `  A )  e.  NN  ->  ( abs `  A )  e.  RR )
80 nngt0 9210 . . . . . . . . . . 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 9192 . . . . . . . . . . 11  |-  ( ( A  gcd  B )  e.  NN  ->  ( A  gcd  B )  e.  RR )
83 nngt0 9210 . . . . . . . . . . 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 9094 . . . . . . . . . 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 9533 . . . . . . . 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 9885 . . . . . . 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 4096 . . . . . . . . 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 9199 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( abs `  A )  e.  CC )
9770nncnd 9199 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B )  e.  CC )
98 1cnd 8238 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  1  e.  CC )
9970nnap0d 9231 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( A  gcd  B ) #  0 )
10096, 97, 98, 99divmulapd 9034 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( (
( abs `  A
)  /  ( A  gcd  B ) )  =  1  <->  ( ( A  gcd  B )  x.  1 )  =  ( abs `  A ) ) )
10197mulridd 8239 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( ( A  gcd  B )  x.  1 )  =  ( A  gcd  B ) )
102101eqeq1d 2240 . . . . . . . . 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 12433 . . . . . . . . 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 12773 . . . . . . . 8  |-  ( ( ( abs `  A
)  /  ( A  gcd  B ) )  e.  ( ZZ>= `  2
)  ->  E. p  e.  Prime  p  ||  (
( abs `  A
)  /  ( A  gcd  B ) ) )
108 simprl 531 . . . . . . . . . . . . . . . 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 9645 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A )  e.  ZZ )
111109nnne0d 9230 . . . . . . . . . . . . . . . 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 12938 . . . . . . . . . . . . . . . 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 1279 . . . . . . . . . . . . . . 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 535 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  A  e.  ZZ )
116 zq 9904 . . . . . . . . . . . . . . . . . 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 12962 . . . . . . . . . . . . . . . . 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 6043 . . . . . . . . . . . . . . 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 2264 . . . . . . . . . . . . . 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 533 . . . . . . . . . . . . . . 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 12957 . . . . . . . . . . . . . . . 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 2309 . . . . . . . . . . . . 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 12936 . . . . . . . . . . . . . . 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 9644 . . . . . . . . . . . . . 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 529 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  A  =/=  0 )
131 pczcl 12934 . . . . . . . . . . . . . . . 16  |-  ( ( p  e.  Prime  /\  ( A  e.  ZZ  /\  A  =/=  0 ) )  -> 
( p  pCnt  A
)  e.  NN0 )
132108, 115, 130, 131syl12anc 1272 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  A )  e.  NN0 )
133132nn0zd 9644 . . . . . . . . . . . . . 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 9575 . . . . . . . . . . . . . 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 9569 . . . . . . . . . . . . 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 9500 . . . . . . . . . . . . 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 536 . . . . . . . . . . . . . . 15  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  B  e.  ZZ )
142 nprmdvds1 12775 . . . . . . . . . . . . . . . . . 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 12614 . . . . . . . . . . . . . . . . . . . . 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 6044 . . . . . . . . . . . . . . . . . . 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 9231 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  ( abs `  A ) #  0 )
149147, 148dividapd 9008 . . . . . . . . . . . . . . . . . . 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 2264 . . . . . . . . . . . . . . . . . 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 4105 . . . . . . . . . . . . . . . . 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 680 . . . . . . . . . . . . . . . 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 6036 . . . . . . . . . . . . . . . . . . . 20  |-  ( B  =  0  ->  ( A  gcd  B )  =  ( A  gcd  0
) )
154153oveq2d 6044 . . . . . . . . . . . . . . . . . . 19  |-  ( B  =  0  ->  (
( abs `  A
)  /  ( A  gcd  B ) )  =  ( ( abs `  A )  /  ( A  gcd  0 ) ) )
155154breq2d 4105 . . . . . . . . . . . . . . . . . 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 2446 . . . . . . . . . . . . . . . 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 1272 . . . . . . . . . . . . . 14  |-  ( ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0 )  /\  (
p  e.  Prime  /\  p  ||  ( ( abs `  A
)  /  ( A  gcd  B ) ) ) )  ->  (
p  pCnt  B )  e.  NN0 )
160159nn0red 9500 . . . . . . . . . . . . 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 11857 . . . . . . . . . . . . 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 1274 . . . . . . . . . . . 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 12965 . . . . . . . . . . . . . . 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 1274 . . . . . . . . . . . . . 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 9644 . . . . . . . . . . . . . . 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 11866 . . . . . . . . . . . . . . 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 2267 . . . . . . . . . . . . 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 4105 . . . . . . . . . . . 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 8736 . . . . . . . . . . . . 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 680 . . . . . . . . . 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 2635 . . . . . . . 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 2522 . . . . . . . 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 794 . . . . . 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 732 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  A  =/=  0
)  ->  ( -.  A  ||  B  ->  -.  A. p  e.  Prime  (
p  pCnt  A )  <_  ( p  pCnt  B
) ) )
181 condc 861 . . . 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 9535 . . . . 5  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  0  e.  ZZ )
184 zdceq 9599 . . . . 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 2414 . . . 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 806 . 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 716  DECID wdc 842    /\ w3a 1005    = wceq 1398   E.wex 1541    e. wcel 2202    =/= wne 2403   A.wral 2511   E.wrex 2512   ifcif 3607   {cpr 3674   class class class wbr 4093   ` cfv 5333  (class class class)co 6028  infcinf 7225   CCcc 8073   RRcr 8074   0cc0 8075   1c1 8076    x. cmul 8080   +oocpnf 8253   RR*cxr 8255    < clt 8256    <_ cle 8257    - cmin 8392    / cdiv 8894   NNcn 9185   2c2 9236   NN0cn0 9444   ZZcz 9523   ZZ>=cuz 9799   QQcq 9897   abscabs 11620    || cdvds 12411    gcd cgcd 12587   Primecprime 12742    pCnt cpc 12920
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 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2204  ax-14 2205  ax-ext 2213  ax-coll 4209  ax-sep 4212  ax-nul 4220  ax-pow 4270  ax-pr 4305  ax-un 4536  ax-setind 4641  ax-iinf 4692  ax-cnex 8166  ax-resscn 8167  ax-1cn 8168  ax-1re 8169  ax-icn 8170  ax-addcl 8171  ax-addrcl 8172  ax-mulcl 8173  ax-mulrcl 8174  ax-addcom 8175  ax-mulcom 8176  ax-addass 8177  ax-mulass 8178  ax-distr 8179  ax-i2m1 8180  ax-0lt1 8181  ax-1rid 8182  ax-0id 8183  ax-rnegex 8184  ax-precex 8185  ax-cnre 8186  ax-pre-ltirr 8187  ax-pre-ltwlin 8188  ax-pre-lttrn 8189  ax-pre-apti 8190  ax-pre-ltadd 8191  ax-pre-mulgt0 8192  ax-pre-mulext 8193  ax-arch 8194  ax-caucvg 8195
This theorem depends on definitions:  df-bi 117  df-stab 839  df-dc 843  df-3or 1006  df-3an 1007  df-tru 1401  df-fal 1404  df-nf 1510  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2364  df-ne 2404  df-nel 2499  df-ral 2516  df-rex 2517  df-reu 2518  df-rmo 2519  df-rab 2520  df-v 2805  df-sbc 3033  df-csb 3129  df-dif 3203  df-un 3205  df-in 3207  df-ss 3214  df-nul 3497  df-if 3608  df-pw 3658  df-sn 3679  df-pr 3680  df-op 3682  df-uni 3899  df-int 3934  df-iun 3977  df-br 4094  df-opab 4156  df-mpt 4157  df-tr 4193  df-id 4396  df-po 4399  df-iso 4400  df-iord 4469  df-on 4471  df-ilim 4472  df-suc 4474  df-iom 4695  df-xp 4737  df-rel 4738  df-cnv 4739  df-co 4740  df-dm 4741  df-rn 4742  df-res 4743  df-ima 4744  df-iota 5293  df-fun 5335  df-fn 5336  df-f 5337  df-f1 5338  df-fo 5339  df-f1o 5340  df-fv 5341  df-isom 5342  df-riota 5981  df-ov 6031  df-oprab 6032  df-mpo 6033  df-1st 6312  df-2nd 6313  df-recs 6514  df-frec 6600  df-1o 6625  df-2o 6626  df-er 6745  df-en 6953  df-sup 7226  df-inf 7227  df-pnf 8258  df-mnf 8259  df-xr 8260  df-ltxr 8261  df-le 8262  df-sub 8394  df-neg 8395  df-reap 8797  df-ap 8804  df-div 8895  df-inn 9186  df-2 9244  df-3 9245  df-4 9246  df-n0 9445  df-xnn0 9510  df-z 9524  df-uz 9800  df-q 9898  df-rp 9933  df-fz 10289  df-fzo 10423  df-fl 10576  df-mod 10631  df-seqfrec 10756  df-exp 10847  df-cj 11465  df-re 11466  df-im 11467  df-rsqrt 11621  df-abs 11622  df-dvds 12412  df-gcd 12588  df-prm 12743  df-pc 12921
This theorem is referenced by:  pc11  12967  pcz  12968  pcprmpw2  12969  pockthg  12993
  Copyright terms: Public domain W3C validator