MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dvdseq Unicode version

Theorem dvdseq 12592
Description: If two integers divide each other, they must be equal, up to a difference in sign. (Contributed by Mario Carneiro, 30-May-2014.)
Assertion
Ref Expression
dvdseq  |-  ( ( ( M  e.  NN0  /\  N  e.  NN0 )  /\  ( M  ||  N  /\  N  ||  M ) )  ->  M  =  N )

Proof of Theorem dvdseq
StepHypRef Expression
1 elnn0 9983 . . 3  |-  ( N  e.  NN0  <->  ( N  e.  NN  \/  N  =  0 ) )
2 simprl 732 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  ||  N )
3 nn0z 10062 . . . . . . . . 9  |-  ( M  e.  NN0  ->  M  e.  ZZ )
43ad2antrr 706 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  e.  ZZ )
5 simplr 731 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  e.  NN )
6 dvdsle 12590 . . . . . . . 8  |-  ( ( M  e.  ZZ  /\  N  e.  NN )  ->  ( M  ||  N  ->  M  <_  N )
)
74, 5, 6syl2anc 642 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  ||  N  ->  M  <_  N ) )
82, 7mpd 14 . . . . . 6  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  <_  N )
9 simprr 733 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  ||  M )
10 nnz 10061 . . . . . . . . 9  |-  ( N  e.  NN  ->  N  e.  ZZ )
1110ad2antlr 707 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  e.  ZZ )
12 nnne0 9794 . . . . . . . . . . 11  |-  ( N  e.  NN  ->  N  =/=  0 )
1312ad2antlr 707 . . . . . . . . . 10  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  =/=  0 )
14 breq1 4042 . . . . . . . . . . . . . 14  |-  ( M  =  0  ->  ( M  ||  N  <->  0  ||  N ) )
1514biimpcd 215 . . . . . . . . . . . . 13  |-  ( M 
||  N  ->  ( M  =  0  ->  0 
||  N ) )
1615ad2antrl 708 . . . . . . . . . . . 12  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  =  0  ->  0 
||  N ) )
17 0dvds 12565 . . . . . . . . . . . . 13  |-  ( N  e.  ZZ  ->  (
0  ||  N  <->  N  = 
0 ) )
1811, 17syl 15 . . . . . . . . . . . 12  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  (
0  ||  N  <->  N  = 
0 ) )
1916, 18sylibd 205 . . . . . . . . . . 11  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  =  0  ->  N  =  0 ) )
2019necon3ad 2495 . . . . . . . . . 10  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( N  =/=  0  ->  -.  M  =  0 ) )
2113, 20mpd 14 . . . . . . . . 9  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  -.  M  =  0 )
22 simpll 730 . . . . . . . . . . 11  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  e.  NN0 )
23 elnn0 9983 . . . . . . . . . . 11  |-  ( M  e.  NN0  <->  ( M  e.  NN  \/  M  =  0 ) )
2422, 23sylib 188 . . . . . . . . . 10  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  e.  NN  \/  M  =  0 ) )
2524ord 366 . . . . . . . . 9  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( -.  M  e.  NN  ->  M  =  0 ) )
2621, 25mt3d 117 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  e.  NN )
27 dvdsle 12590 . . . . . . . 8  |-  ( ( N  e.  ZZ  /\  M  e.  NN )  ->  ( N  ||  M  ->  N  <_  M )
)
2811, 26, 27syl2anc 642 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( N  ||  M  ->  N  <_  M ) )
299, 28mpd 14 . . . . . 6  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  <_  M )
30 nn0re 9990 . . . . . . . 8  |-  ( M  e.  NN0  ->  M  e.  RR )
31 nnre 9769 . . . . . . . 8  |-  ( N  e.  NN  ->  N  e.  RR )
32 letri3 8923 . . . . . . . 8  |-  ( ( M  e.  RR  /\  N  e.  RR )  ->  ( M  =  N  <-> 
( M  <_  N  /\  N  <_  M ) ) )
3330, 31, 32syl2an 463 . . . . . . 7  |-  ( ( M  e.  NN0  /\  N  e.  NN )  ->  ( M  =  N  <-> 
( M  <_  N  /\  N  <_  M ) ) )
3433adantr 451 . . . . . 6  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  =  N  <->  ( M  <_  N  /\  N  <_  M ) ) )
358, 29, 34mpbir2and 888 . . . . 5  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  =  N )
3635ex 423 . . . 4  |-  ( ( M  e.  NN0  /\  N  e.  NN )  ->  ( ( M  ||  N  /\  N  ||  M
)  ->  M  =  N ) )
37 simpr 447 . . . . 5  |-  ( ( M  ||  N  /\  N  ||  M )  ->  N  ||  M )
38 breq1 4042 . . . . . . 7  |-  ( N  =  0  ->  ( N  ||  M  <->  0  ||  M ) )
39 0dvds 12565 . . . . . . . 8  |-  ( M  e.  ZZ  ->  (
0  ||  M  <->  M  = 
0 ) )
403, 39syl 15 . . . . . . 7  |-  ( M  e.  NN0  ->  ( 0 
||  M  <->  M  = 
0 ) )
4138, 40sylan9bbr 681 . . . . . 6  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( N  ||  M 
<->  M  =  0 ) )
42 simpr 447 . . . . . . 7  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  N  =  0 )
4342eqeq2d 2307 . . . . . 6  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( M  =  N  <->  M  =  0
) )
4441, 43bitr4d 247 . . . . 5  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( N  ||  M 
<->  M  =  N ) )
4537, 44syl5ib 210 . . . 4  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( ( M 
||  N  /\  N  ||  M )  ->  M  =  N ) )
4636, 45jaodan 760 . . 3  |-  ( ( M  e.  NN0  /\  ( N  e.  NN  \/  N  =  0
) )  ->  (
( M  ||  N  /\  N  ||  M )  ->  M  =  N ) )
471, 46sylan2b 461 . 2  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( ( M  ||  N  /\  N  ||  M
)  ->  M  =  N ) )
4847imp 418 1  |-  ( ( ( M  e.  NN0  /\  N  e.  NN0 )  /\  ( M  ||  N  /\  N  ||  M ) )  ->  M  =  N )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 176    \/ wo 357    /\ wa 358    = wceq 1632    e. wcel 1696    =/= wne 2459   class class class wbr 4039   RRcr 8752   0cc0 8753    <_ cle 8884   NNcn 9762   NN0cn0 9981   ZZcz 10040    || cdivides 12547
This theorem is referenced by:  dvds1  12593  dvdsext  12595  mulgcd  12741  rpmulgcd2  12800  isprm6  12804  pc11  12948  pcprmpw2  12950  odeq  14881  odadd  15158  gexexlem  15160  lt6abl  15197  cyggex2  15199  ablfacrp2  15318  ablfac1c  15322  ablfac1eu  15324  znidomb  16531  dvdsmulf1o  20450
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-13 1698  ax-14 1700  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878  ax-ext 2277  ax-sep 4157  ax-nul 4165  ax-pow 4204  ax-pr 4230  ax-un 4528  ax-resscn 8810  ax-1cn 8811  ax-icn 8812  ax-addcl 8813  ax-addrcl 8814  ax-mulcl 8815  ax-mulrcl 8816  ax-mulcom 8817  ax-addass 8818  ax-mulass 8819  ax-distr 8820  ax-i2m1 8821  ax-1ne0 8822  ax-1rid 8823  ax-rnegex 8824  ax-rrecex 8825  ax-cnre 8826  ax-pre-lttri 8827  ax-pre-lttrn 8828  ax-pre-ltadd 8829  ax-pre-mulgt0 8830
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639  df-eu 2160  df-mo 2161  df-clab 2283  df-cleq 2289  df-clel 2292  df-nfc 2421  df-ne 2461  df-nel 2462  df-ral 2561  df-rex 2562  df-reu 2563  df-rab 2565  df-v 2803  df-sbc 3005  df-csb 3095  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-pss 3181  df-nul 3469  df-if 3579  df-pw 3640  df-sn 3659  df-pr 3660  df-tp 3661  df-op 3662  df-uni 3844  df-iun 3923  df-br 4040  df-opab 4094  df-mpt 4095  df-tr 4130  df-eprel 4321  df-id 4325  df-po 4330  df-so 4331  df-fr 4368  df-we 4370  df-ord 4411  df-on 4412  df-lim 4413  df-suc 4414  df-om 4673  df-xp 4711  df-rel 4712  df-cnv 4713  df-co 4714  df-dm 4715  df-rn 4716  df-res 4717  df-ima 4718  df-iota 5235  df-fun 5273  df-fn 5274  df-f 5275  df-f1 5276  df-fo 5277  df-f1o 5278  df-fv 5279  df-ov 5877  df-oprab 5878  df-mpt2 5879  df-riota 6320  df-recs 6404  df-rdg 6439  df-er 6676  df-en 6880  df-dom 6881  df-sdom 6882  df-pnf 8885  df-mnf 8886  df-xr 8887  df-ltxr 8888  df-le 8889  df-sub 9055  df-neg 9056  df-nn 9763  df-n0 9982  df-z 10041  df-dvds 12548
  Copyright terms: Public domain W3C validator