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

Theorem dvdseq 13576
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 10577 . . 3  |-  ( N  e.  NN0  <->  ( N  e.  NN  \/  N  =  0 ) )
2 simprl 750 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  ||  N )
3 nn0z 10665 . . . . . . . . 9  |-  ( M  e.  NN0  ->  M  e.  ZZ )
43ad2antrr 720 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  e.  ZZ )
5 simplr 749 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  e.  NN )
6 dvdsle 13574 . . . . . . . 8  |-  ( ( M  e.  ZZ  /\  N  e.  NN )  ->  ( M  ||  N  ->  M  <_  N )
)
74, 5, 6syl2anc 656 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  ||  N  ->  M  <_  N ) )
82, 7mpd 15 . . . . . 6  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  <_  N )
9 simprr 751 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  ||  M )
10 nnz 10664 . . . . . . . . 9  |-  ( N  e.  NN  ->  N  e.  ZZ )
1110ad2antlr 721 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  e.  ZZ )
12 nnne0 10350 . . . . . . . . . . 11  |-  ( N  e.  NN  ->  N  =/=  0 )
1312ad2antlr 721 . . . . . . . . . 10  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  =/=  0 )
14 breq1 4292 . . . . . . . . . . . . . 14  |-  ( M  =  0  ->  ( M  ||  N  <->  0  ||  N ) )
1514biimpcd 224 . . . . . . . . . . . . 13  |-  ( M 
||  N  ->  ( M  =  0  ->  0 
||  N ) )
1615ad2antrl 722 . . . . . . . . . . . 12  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  =  0  ->  0 
||  N ) )
17 0dvds 13549 . . . . . . . . . . . . 13  |-  ( N  e.  ZZ  ->  (
0  ||  N  <->  N  = 
0 ) )
1811, 17syl 16 . . . . . . . . . . . 12  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  (
0  ||  N  <->  N  = 
0 ) )
1916, 18sylibd 214 . . . . . . . . . . 11  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  =  0  ->  N  =  0 ) )
2019necon3ad 2642 . . . . . . . . . 10  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( N  =/=  0  ->  -.  M  =  0 ) )
2113, 20mpd 15 . . . . . . . . 9  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  -.  M  =  0 )
22 simpll 748 . . . . . . . . . . 11  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  e.  NN0 )
23 elnn0 10577 . . . . . . . . . . 11  |-  ( M  e.  NN0  <->  ( M  e.  NN  \/  M  =  0 ) )
2422, 23sylib 196 . . . . . . . . . 10  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  e.  NN  \/  M  =  0 ) )
2524ord 377 . . . . . . . . 9  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( -.  M  e.  NN  ->  M  =  0 ) )
2621, 25mt3d 125 . . . . . . . 8  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  e.  NN )
27 dvdsle 13574 . . . . . . . 8  |-  ( ( N  e.  ZZ  /\  M  e.  NN )  ->  ( N  ||  M  ->  N  <_  M )
)
2811, 26, 27syl2anc 656 . . . . . . 7  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( N  ||  M  ->  N  <_  M ) )
299, 28mpd 15 . . . . . 6  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  N  <_  M )
30 nn0re 10584 . . . . . . . 8  |-  ( M  e.  NN0  ->  M  e.  RR )
31 nnre 10325 . . . . . . . 8  |-  ( N  e.  NN  ->  N  e.  RR )
32 letri3 9456 . . . . . . . 8  |-  ( ( M  e.  RR  /\  N  e.  RR )  ->  ( M  =  N  <-> 
( M  <_  N  /\  N  <_  M ) ) )
3330, 31, 32syl2an 474 . . . . . . 7  |-  ( ( M  e.  NN0  /\  N  e.  NN )  ->  ( M  =  N  <-> 
( M  <_  N  /\  N  <_  M ) ) )
3433adantr 462 . . . . . 6  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  ( M  =  N  <->  ( M  <_  N  /\  N  <_  M ) ) )
358, 29, 34mpbir2and 908 . . . . 5  |-  ( ( ( M  e.  NN0  /\  N  e.  NN )  /\  ( M  ||  N  /\  N  ||  M
) )  ->  M  =  N )
3635ex 434 . . . 4  |-  ( ( M  e.  NN0  /\  N  e.  NN )  ->  ( ( M  ||  N  /\  N  ||  M
)  ->  M  =  N ) )
37 simpr 458 . . . . 5  |-  ( ( M  ||  N  /\  N  ||  M )  ->  N  ||  M )
38 breq1 4292 . . . . . . 7  |-  ( N  =  0  ->  ( N  ||  M  <->  0  ||  M ) )
39 0dvds 13549 . . . . . . . 8  |-  ( M  e.  ZZ  ->  (
0  ||  M  <->  M  = 
0 ) )
403, 39syl 16 . . . . . . 7  |-  ( M  e.  NN0  ->  ( 0 
||  M  <->  M  = 
0 ) )
4138, 40sylan9bbr 695 . . . . . 6  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( N  ||  M 
<->  M  =  0 ) )
42 simpr 458 . . . . . . 7  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  N  =  0 )
4342eqeq2d 2452 . . . . . 6  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( M  =  N  <->  M  =  0
) )
4441, 43bitr4d 256 . . . . 5  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( N  ||  M 
<->  M  =  N ) )
4537, 44syl5ib 219 . . . 4  |-  ( ( M  e.  NN0  /\  N  =  0 )  ->  ( ( M 
||  N  /\  N  ||  M )  ->  M  =  N ) )
4636, 45jaodan 778 . . 3  |-  ( ( M  e.  NN0  /\  ( N  e.  NN  \/  N  =  0
) )  ->  (
( M  ||  N  /\  N  ||  M )  ->  M  =  N ) )
471, 46sylan2b 472 . 2  |-  ( ( M  e.  NN0  /\  N  e.  NN0 )  -> 
( ( M  ||  N  /\  N  ||  M
)  ->  M  =  N ) )
4847imp 429 1  |-  ( ( ( M  e.  NN0  /\  N  e.  NN0 )  /\  ( M  ||  N  /\  N  ||  M ) )  ->  M  =  N )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    \/ wo 368    /\ wa 369    = wceq 1364    e. wcel 1761    =/= wne 2604   class class class wbr 4289   RRcr 9277   0cc0 9278    <_ cle 9415   NNcn 10318   NN0cn0 10575   ZZcz 10642    || cdivides 13531
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1596  ax-4 1607  ax-5 1675  ax-6 1713  ax-7 1733  ax-8 1763  ax-9 1765  ax-10 1780  ax-11 1785  ax-12 1797  ax-13 1948  ax-ext 2422  ax-sep 4410  ax-nul 4418  ax-pow 4467  ax-pr 4528  ax-un 6371  ax-resscn 9335  ax-1cn 9336  ax-icn 9337  ax-addcl 9338  ax-addrcl 9339  ax-mulcl 9340  ax-mulrcl 9341  ax-mulcom 9342  ax-addass 9343  ax-mulass 9344  ax-distr 9345  ax-i2m1 9346  ax-1ne0 9347  ax-1rid 9348  ax-rnegex 9349  ax-rrecex 9350  ax-cnre 9351  ax-pre-lttri 9352  ax-pre-lttrn 9353  ax-pre-ltadd 9354  ax-pre-mulgt0 9355
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 961  df-3an 962  df-tru 1367  df-ex 1592  df-nf 1595  df-sb 1706  df-eu 2261  df-mo 2262  df-clab 2428  df-cleq 2434  df-clel 2437  df-nfc 2566  df-ne 2606  df-nel 2607  df-ral 2718  df-rex 2719  df-reu 2720  df-rab 2722  df-v 2972  df-sbc 3184  df-csb 3286  df-dif 3328  df-un 3330  df-in 3332  df-ss 3339  df-pss 3341  df-nul 3635  df-if 3789  df-pw 3859  df-sn 3875  df-pr 3877  df-tp 3879  df-op 3881  df-uni 4089  df-iun 4170  df-br 4290  df-opab 4348  df-mpt 4349  df-tr 4383  df-eprel 4628  df-id 4632  df-po 4637  df-so 4638  df-fr 4675  df-we 4677  df-ord 4718  df-on 4719  df-lim 4720  df-suc 4721  df-xp 4842  df-rel 4843  df-cnv 4844  df-co 4845  df-dm 4846  df-rn 4847  df-res 4848  df-ima 4849  df-iota 5378  df-fun 5417  df-fn 5418  df-f 5419  df-f1 5420  df-fo 5421  df-f1o 5422  df-fv 5423  df-riota 6049  df-ov 6093  df-oprab 6094  df-mpt2 6095  df-om 6476  df-recs 6828  df-rdg 6862  df-er 7097  df-en 7307  df-dom 7308  df-sdom 7309  df-pnf 9416  df-mnf 9417  df-xr 9418  df-ltxr 9419  df-le 9420  df-sub 9593  df-neg 9594  df-nn 10319  df-n0 10576  df-z 10643  df-dvds 13532
This theorem is referenced by:  dvds1  13577  dvdsext  13580  mulgcd  13726  rpmulgcd2  13787  isprm6  13791  pc11  13942  pcprmpw2  13944  odeq  16046  odadd  16325  gexexlem  16327  lt6abl  16364  cyggex2  16366  ablfacrp2  16558  ablfac1c  16562  ablfac1eu  16564  znidomb  17953  dvdsmulf1o  22493
  Copyright terms: Public domain W3C validator