MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dvdsabseq Structured version   Visualization version   GIF version

Theorem dvdsabseq 16319
Description: If two integers divide each other, they must be equal, up to a difference in sign. Theorem 1.1(j) in [ApostolNT] p. 14. (Contributed by Mario Carneiro, 30-May-2014.) (Revised by AV, 7-Aug-2021.)
Assertion
Ref Expression
dvdsabseq ((𝑀𝑁𝑁𝑀) → (abs‘𝑀) = (abs‘𝑁))

Proof of Theorem dvdsabseq
StepHypRef Expression
1 dvdszrcl 16264 . . 3 (𝑀𝑁 → (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ))
2 simpr 484 . . . . . 6 ((𝑀𝑁𝑁𝑀) → 𝑁𝑀)
3 breq1 5120 . . . . . . . 8 (𝑁 = 0 → (𝑁𝑀 ↔ 0 ∥ 𝑀))
4 0dvds 16283 . . . . . . . . . 10 (𝑀 ∈ ℤ → (0 ∥ 𝑀𝑀 = 0))
54adantr 480 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 ∥ 𝑀𝑀 = 0))
6 zcn 12586 . . . . . . . . . . . 12 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
76abs00ad 15298 . . . . . . . . . . 11 (𝑀 ∈ ℤ → ((abs‘𝑀) = 0 ↔ 𝑀 = 0))
87bicomd 223 . . . . . . . . . 10 (𝑀 ∈ ℤ → (𝑀 = 0 ↔ (abs‘𝑀) = 0))
98adantr 480 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 = 0 ↔ (abs‘𝑀) = 0))
105, 9bitrd 279 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 ∥ 𝑀 ↔ (abs‘𝑀) = 0))
113, 10sylan9bb 509 . . . . . . 7 ((𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑁𝑀 ↔ (abs‘𝑀) = 0))
12 fveq2 6873 . . . . . . . . . 10 (𝑁 = 0 → (abs‘𝑁) = (abs‘0))
13 abs0 15293 . . . . . . . . . 10 (abs‘0) = 0
1412, 13eqtrdi 2785 . . . . . . . . 9 (𝑁 = 0 → (abs‘𝑁) = 0)
1514adantr 480 . . . . . . . 8 ((𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (abs‘𝑁) = 0)
1615eqeq2d 2745 . . . . . . 7 ((𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → ((abs‘𝑀) = (abs‘𝑁) ↔ (abs‘𝑀) = 0))
1711, 16bitr4d 282 . . . . . 6 ((𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑁𝑀 ↔ (abs‘𝑀) = (abs‘𝑁)))
182, 17imbitrid 244 . . . . 5 ((𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → ((𝑀𝑁𝑁𝑀) → (abs‘𝑀) = (abs‘𝑁)))
1918expd 415 . . . 4 ((𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 → (𝑁𝑀 → (abs‘𝑀) = (abs‘𝑁))))
20 simprl 770 . . . . . 6 ((¬ 𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → 𝑀 ∈ ℤ)
21 simpr 484 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑁 ∈ ℤ)
2221adantl 481 . . . . . 6 ((¬ 𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → 𝑁 ∈ ℤ)
23 neqne 2939 . . . . . . 7 𝑁 = 0 → 𝑁 ≠ 0)
2423adantr 480 . . . . . 6 ((¬ 𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → 𝑁 ≠ 0)
25 dvdsleabs2 16318 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (𝑀𝑁 → (abs‘𝑀) ≤ (abs‘𝑁)))
2620, 22, 24, 25syl3anc 1372 . . . . 5 ((¬ 𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 → (abs‘𝑀) ≤ (abs‘𝑁)))
27 simpr 484 . . . . . . . . . . 11 ((𝑁𝑀𝑀𝑁) → 𝑀𝑁)
28 breq1 5120 . . . . . . . . . . . . 13 (𝑀 = 0 → (𝑀𝑁 ↔ 0 ∥ 𝑁))
29 0dvds 16283 . . . . . . . . . . . . . . 15 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
30 zcn 12586 . . . . . . . . . . . . . . . . 17 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
3130abs00ad 15298 . . . . . . . . . . . . . . . 16 (𝑁 ∈ ℤ → ((abs‘𝑁) = 0 ↔ 𝑁 = 0))
32 eqcom 2741 . . . . . . . . . . . . . . . 16 ((abs‘𝑁) = 0 ↔ 0 = (abs‘𝑁))
3331, 32bitr3di 286 . . . . . . . . . . . . . . 15 (𝑁 ∈ ℤ → (𝑁 = 0 ↔ 0 = (abs‘𝑁)))
3429, 33bitrd 279 . . . . . . . . . . . . . 14 (𝑁 ∈ ℤ → (0 ∥ 𝑁 ↔ 0 = (abs‘𝑁)))
3534adantl 481 . . . . . . . . . . . . 13 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 ∥ 𝑁 ↔ 0 = (abs‘𝑁)))
3628, 35sylan9bb 509 . . . . . . . . . . . 12 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 ↔ 0 = (abs‘𝑁)))
37 fveq2 6873 . . . . . . . . . . . . . . 15 (𝑀 = 0 → (abs‘𝑀) = (abs‘0))
3837, 13eqtrdi 2785 . . . . . . . . . . . . . 14 (𝑀 = 0 → (abs‘𝑀) = 0)
3938adantr 480 . . . . . . . . . . . . 13 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (abs‘𝑀) = 0)
4039eqeq1d 2736 . . . . . . . . . . . 12 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → ((abs‘𝑀) = (abs‘𝑁) ↔ 0 = (abs‘𝑁)))
4136, 40bitr4d 282 . . . . . . . . . . 11 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 ↔ (abs‘𝑀) = (abs‘𝑁)))
4227, 41imbitrid 244 . . . . . . . . . 10 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → ((𝑁𝑀𝑀𝑁) → (abs‘𝑀) = (abs‘𝑁)))
4342a1dd 50 . . . . . . . . 9 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → ((𝑁𝑀𝑀𝑁) → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁))))
4443expcomd 416 . . . . . . . 8 ((𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 → (𝑁𝑀 → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁)))))
4521adantl 481 . . . . . . . . . . 11 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → 𝑁 ∈ ℤ)
46 simprl 770 . . . . . . . . . . 11 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → 𝑀 ∈ ℤ)
47 neqne 2939 . . . . . . . . . . . 12 𝑀 = 0 → 𝑀 ≠ 0)
4847adantr 480 . . . . . . . . . . 11 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → 𝑀 ≠ 0)
49 dvdsleabs2 16318 . . . . . . . . . . 11 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (𝑁𝑀 → (abs‘𝑁) ≤ (abs‘𝑀)))
5045, 46, 48, 49syl3anc 1372 . . . . . . . . . 10 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑁𝑀 → (abs‘𝑁) ≤ (abs‘𝑀)))
51 eqcom 2741 . . . . . . . . . . . . . 14 ((abs‘𝑀) = (abs‘𝑁) ↔ (abs‘𝑁) = (abs‘𝑀))
5230abscld 15444 . . . . . . . . . . . . . . 15 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℝ)
536abscld 15444 . . . . . . . . . . . . . . 15 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℝ)
54 letri3 11313 . . . . . . . . . . . . . . 15 (((abs‘𝑁) ∈ ℝ ∧ (abs‘𝑀) ∈ ℝ) → ((abs‘𝑁) = (abs‘𝑀) ↔ ((abs‘𝑁) ≤ (abs‘𝑀) ∧ (abs‘𝑀) ≤ (abs‘𝑁))))
5552, 53, 54syl2anr 597 . . . . . . . . . . . . . 14 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑁) = (abs‘𝑀) ↔ ((abs‘𝑁) ≤ (abs‘𝑀) ∧ (abs‘𝑀) ≤ (abs‘𝑁))))
5651, 55bitrid 283 . . . . . . . . . . . . 13 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) = (abs‘𝑁) ↔ ((abs‘𝑁) ≤ (abs‘𝑀) ∧ (abs‘𝑀) ≤ (abs‘𝑁))))
5756biimprd 248 . . . . . . . . . . . 12 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (((abs‘𝑁) ≤ (abs‘𝑀) ∧ (abs‘𝑀) ≤ (abs‘𝑁)) → (abs‘𝑀) = (abs‘𝑁)))
5857expd 415 . . . . . . . . . . 11 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑁) ≤ (abs‘𝑀) → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁))))
5958adantl 481 . . . . . . . . . 10 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → ((abs‘𝑁) ≤ (abs‘𝑀) → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁))))
6050, 59syld 47 . . . . . . . . 9 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑁𝑀 → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁))))
6160a1d 25 . . . . . . . 8 ((¬ 𝑀 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 → (𝑁𝑀 → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁)))))
6244, 61pm2.61ian 811 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 → (𝑁𝑀 → ((abs‘𝑀) ≤ (abs‘𝑁) → (abs‘𝑀) = (abs‘𝑁)))))
6362com34 91 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 → ((abs‘𝑀) ≤ (abs‘𝑁) → (𝑁𝑀 → (abs‘𝑀) = (abs‘𝑁)))))
6463adantl 481 . . . . 5 ((¬ 𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 → ((abs‘𝑀) ≤ (abs‘𝑁) → (𝑁𝑀 → (abs‘𝑀) = (abs‘𝑁)))))
6526, 64mpdd 43 . . . 4 ((¬ 𝑁 = 0 ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ)) → (𝑀𝑁 → (𝑁𝑀 → (abs‘𝑀) = (abs‘𝑁))))
6619, 65pm2.61ian 811 . . 3 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 → (𝑁𝑀 → (abs‘𝑀) = (abs‘𝑁))))
671, 66mpcom 38 . 2 (𝑀𝑁 → (𝑁𝑀 → (abs‘𝑀) = (abs‘𝑁)))
6867imp 406 1 ((𝑀𝑁𝑁𝑀) → (abs‘𝑀) = (abs‘𝑁))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395   = wceq 1539  wcel 2107  wne 2931   class class class wbr 5117  cfv 6528  cr 11121  0cc0 11122  cle 11263  cz 12581  abscabs 15242  cdvds 16259
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2706  ax-sep 5264  ax-nul 5274  ax-pow 5333  ax-pr 5400  ax-un 7724  ax-cnex 11178  ax-resscn 11179  ax-1cn 11180  ax-icn 11181  ax-addcl 11182  ax-addrcl 11183  ax-mulcl 11184  ax-mulrcl 11185  ax-mulcom 11186  ax-addass 11187  ax-mulass 11188  ax-distr 11189  ax-i2m1 11190  ax-1ne0 11191  ax-1rid 11192  ax-rnegex 11193  ax-rrecex 11194  ax-cnre 11195  ax-pre-lttri 11196  ax-pre-lttrn 11197  ax-pre-ltadd 11198  ax-pre-mulgt0 11199  ax-pre-sup 11200
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2726  df-clel 2808  df-nfc 2884  df-ne 2932  df-nel 3036  df-ral 3051  df-rex 3060  df-rmo 3357  df-reu 3358  df-rab 3414  df-v 3459  df-sbc 3764  df-csb 3873  df-dif 3927  df-un 3929  df-in 3931  df-ss 3941  df-pss 3944  df-nul 4307  df-if 4499  df-pw 4575  df-sn 4600  df-pr 4602  df-op 4606  df-uni 4882  df-iun 4967  df-br 5118  df-opab 5180  df-mpt 5200  df-tr 5228  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5658  df-rel 5659  df-cnv 5660  df-co 5661  df-dm 5662  df-rn 5663  df-res 5664  df-ima 5665  df-pred 6288  df-ord 6353  df-on 6354  df-lim 6355  df-suc 6356  df-iota 6481  df-fun 6530  df-fn 6531  df-f 6532  df-f1 6533  df-fo 6534  df-f1o 6535  df-fv 6536  df-riota 7357  df-ov 7403  df-oprab 7404  df-mpo 7405  df-om 7857  df-2nd 7984  df-frecs 8275  df-wrecs 8306  df-recs 8380  df-rdg 8419  df-er 8714  df-en 8955  df-dom 8956  df-sdom 8957  df-sup 9449  df-pnf 11264  df-mnf 11265  df-xr 11266  df-ltxr 11267  df-le 11268  df-sub 11461  df-neg 11462  df-div 11888  df-nn 12234  df-2 12296  df-3 12297  df-n0 12495  df-z 12582  df-uz 12846  df-rp 13002  df-seq 14010  df-exp 14070  df-cj 15107  df-re 15108  df-im 15109  df-sqrt 15243  df-abs 15244  df-dvds 16260
This theorem is referenced by:  dvdseq  16320
  Copyright terms: Public domain W3C validator