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

Theorem nn0sub 12573
Description: Subtraction of nonnegative integers. (Contributed by NM, 9-May-2004.) (Proof shortened by Mario Carneiro, 16-May-2014.)
Assertion
Ref Expression
nn0sub ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑁𝑀) ∈ ℕ0))

Proof of Theorem nn0sub
StepHypRef Expression
1 nn0re 12532 . . . 4 (𝑀 ∈ ℕ0𝑀 ∈ ℝ)
2 nn0re 12532 . . . 4 (𝑁 ∈ ℕ0𝑁 ∈ ℝ)
3 leloe 11344 . . . 4 ((𝑀 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
41, 2, 3syl2an 596 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
5 elnn0 12525 . . . . . 6 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6 elnn0 12525 . . . . . . . 8 (𝑀 ∈ ℕ0 ↔ (𝑀 ∈ ℕ ∨ 𝑀 = 0))
7 nnsub 12307 . . . . . . . . . 10 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
87ex 412 . . . . . . . . 9 (𝑀 ∈ ℕ → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
9 nngt0 12294 . . . . . . . . . . 11 (𝑁 ∈ ℕ → 0 < 𝑁)
10 nncn 12271 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℂ)
1110subid1d 11606 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (𝑁 − 0) = 𝑁)
12 id 22 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ)
1311, 12eqeltrd 2838 . . . . . . . . . . 11 (𝑁 ∈ ℕ → (𝑁 − 0) ∈ ℕ)
149, 132thd 265 . . . . . . . . . 10 (𝑁 ∈ ℕ → (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ))
15 breq1 5150 . . . . . . . . . . 11 (𝑀 = 0 → (𝑀 < 𝑁 ↔ 0 < 𝑁))
16 oveq2 7438 . . . . . . . . . . . 12 (𝑀 = 0 → (𝑁𝑀) = (𝑁 − 0))
1716eleq1d 2823 . . . . . . . . . . 11 (𝑀 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (𝑁 − 0) ∈ ℕ))
1815, 17bibi12d 345 . . . . . . . . . 10 (𝑀 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ)))
1914, 18imbitrrid 246 . . . . . . . . 9 (𝑀 = 0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
208, 19jaoi 857 . . . . . . . 8 ((𝑀 ∈ ℕ ∨ 𝑀 = 0) → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
216, 20sylbi 217 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
22 nn0nlt0 12549 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → ¬ 𝑀 < 0)
2322pm2.21d 121 . . . . . . . . 9 (𝑀 ∈ ℕ0 → (𝑀 < 0 → (0 − 𝑀) ∈ ℕ))
24 nngt0 12294 . . . . . . . . . 10 ((0 − 𝑀) ∈ ℕ → 0 < (0 − 𝑀))
25 0re 11260 . . . . . . . . . . 11 0 ∈ ℝ
26 posdif 11753 . . . . . . . . . . 11 ((𝑀 ∈ ℝ ∧ 0 ∈ ℝ) → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
271, 25, 26sylancl 586 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
2824, 27imbitrrid 246 . . . . . . . . 9 (𝑀 ∈ ℕ0 → ((0 − 𝑀) ∈ ℕ → 𝑀 < 0))
2923, 28impbid 212 . . . . . . . 8 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ))
30 breq2 5151 . . . . . . . . 9 (𝑁 = 0 → (𝑀 < 𝑁𝑀 < 0))
31 oveq1 7437 . . . . . . . . . 10 (𝑁 = 0 → (𝑁𝑀) = (0 − 𝑀))
3231eleq1d 2823 . . . . . . . . 9 (𝑁 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (0 − 𝑀) ∈ ℕ))
3330, 32bibi12d 345 . . . . . . . 8 (𝑁 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ)))
3429, 33syl5ibrcom 247 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 = 0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3521, 34jaod 859 . . . . . 6 (𝑀 ∈ ℕ0 → ((𝑁 ∈ ℕ ∨ 𝑁 = 0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
365, 35biimtrid 242 . . . . 5 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3736imp 406 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
38 nn0cn 12533 . . . . . 6 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
39 nn0cn 12533 . . . . . 6 (𝑀 ∈ ℕ0𝑀 ∈ ℂ)
40 subeq0 11532 . . . . . 6 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
4138, 39, 40syl2anr 597 . . . . 5 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
42 eqcom 2741 . . . . 5 (𝑁 = 𝑀𝑀 = 𝑁)
4341, 42bitr2di 288 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 = 𝑁 ↔ (𝑁𝑀) = 0))
4437, 43orbi12d 918 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑀 < 𝑁𝑀 = 𝑁) ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
454, 44bitrd 279 . 2 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
46 elnn0 12525 . 2 ((𝑁𝑀) ∈ ℕ0 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0))
4745, 46bitr4di 289 1 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑁𝑀) ∈ ℕ0))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  wo 847   = wceq 1536  wcel 2105   class class class wbr 5147  (class class class)co 7430  cc 11150  cr 11151  0cc0 11152   < clt 11292  cle 11293  cmin 11489  cn 12263  0cn0 12523
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1791  ax-4 1805  ax-5 1907  ax-6 1964  ax-7 2004  ax-8 2107  ax-9 2115  ax-10 2138  ax-11 2154  ax-12 2174  ax-ext 2705  ax-sep 5301  ax-nul 5311  ax-pow 5370  ax-pr 5437  ax-un 7753  ax-resscn 11209  ax-1cn 11210  ax-icn 11211  ax-addcl 11212  ax-addrcl 11213  ax-mulcl 11214  ax-mulrcl 11215  ax-mulcom 11216  ax-addass 11217  ax-mulass 11218  ax-distr 11219  ax-i2m1 11220  ax-1ne0 11221  ax-1rid 11222  ax-rnegex 11223  ax-rrecex 11224  ax-cnre 11225  ax-pre-lttri 11226  ax-pre-lttrn 11227  ax-pre-ltadd 11228  ax-pre-mulgt0 11229
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1539  df-fal 1549  df-ex 1776  df-nf 1780  df-sb 2062  df-mo 2537  df-eu 2566  df-clab 2712  df-cleq 2726  df-clel 2813  df-nfc 2889  df-ne 2938  df-nel 3044  df-ral 3059  df-rex 3068  df-reu 3378  df-rab 3433  df-v 3479  df-sbc 3791  df-csb 3908  df-dif 3965  df-un 3967  df-in 3969  df-ss 3979  df-pss 3982  df-nul 4339  df-if 4531  df-pw 4606  df-sn 4631  df-pr 4633  df-op 4637  df-uni 4912  df-iun 4997  df-br 5148  df-opab 5210  df-mpt 5231  df-tr 5265  df-id 5582  df-eprel 5588  df-po 5596  df-so 5597  df-fr 5640  df-we 5642  df-xp 5694  df-rel 5695  df-cnv 5696  df-co 5697  df-dm 5698  df-rn 5699  df-res 5700  df-ima 5701  df-pred 6322  df-ord 6388  df-on 6389  df-lim 6390  df-suc 6391  df-iota 6515  df-fun 6564  df-fn 6565  df-f 6566  df-f1 6567  df-fo 6568  df-f1o 6569  df-fv 6570  df-riota 7387  df-ov 7433  df-oprab 7434  df-mpo 7435  df-om 7887  df-2nd 8013  df-frecs 8304  df-wrecs 8335  df-recs 8409  df-rdg 8448  df-er 8743  df-en 8984  df-dom 8985  df-sdom 8986  df-pnf 11294  df-mnf 11295  df-xr 11296  df-ltxr 11297  df-le 11298  df-sub 11491  df-neg 11492  df-nn 12264  df-n0 12524
This theorem is referenced by:  ltsubnn0  12574  nn0n0n1ge2  12591  elz2  12628  nn0sub2  12676  fz0fzdiffz0  13673  ubmelfzo  13765  repswcshw  14846  swrd2lsw  14987  2swrd2eqwrdeq  14988  psrbagcon  21962  mhpmulcl  22170  coe1tmmul2  22294  aaliou3lem6  26404  basellem5  27142  crctcshwlkn0lem5  29843  eucrctshift  30271  pfxlsw2ccat  32919  wrdt2ind  32922  omndmul3  33072  lpadleft  34676  lcmineqlem1  42010  lcmineqlem2  42011  sticksstones12a  42138  jm2.27c  42995  binomcxplemnn0  44344  dvnxpaek  45897  subsubelfzo0  47275  fmtnoprmfac2lem1  47490  digexp  48456  itcovalt2lem2lem1  48522  ackval42  48545
  Copyright terms: Public domain W3C validator