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

Theorem nn0sub 12213
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 12172 . . . 4 (𝑀 ∈ ℕ0𝑀 ∈ ℝ)
2 nn0re 12172 . . . 4 (𝑁 ∈ ℕ0𝑁 ∈ ℝ)
3 leloe 10992 . . . 4 ((𝑀 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
41, 2, 3syl2an 595 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
5 elnn0 12165 . . . . . 6 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6 elnn0 12165 . . . . . . . 8 (𝑀 ∈ ℕ0 ↔ (𝑀 ∈ ℕ ∨ 𝑀 = 0))
7 nnsub 11947 . . . . . . . . . 10 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
87ex 412 . . . . . . . . 9 (𝑀 ∈ ℕ → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
9 nngt0 11934 . . . . . . . . . . 11 (𝑁 ∈ ℕ → 0 < 𝑁)
10 nncn 11911 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℂ)
1110subid1d 11251 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (𝑁 − 0) = 𝑁)
12 id 22 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ)
1311, 12eqeltrd 2839 . . . . . . . . . . 11 (𝑁 ∈ ℕ → (𝑁 − 0) ∈ ℕ)
149, 132thd 264 . . . . . . . . . 10 (𝑁 ∈ ℕ → (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ))
15 breq1 5073 . . . . . . . . . . 11 (𝑀 = 0 → (𝑀 < 𝑁 ↔ 0 < 𝑁))
16 oveq2 7263 . . . . . . . . . . . 12 (𝑀 = 0 → (𝑁𝑀) = (𝑁 − 0))
1716eleq1d 2823 . . . . . . . . . . 11 (𝑀 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (𝑁 − 0) ∈ ℕ))
1815, 17bibi12d 345 . . . . . . . . . 10 (𝑀 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ)))
1914, 18syl5ibr 245 . . . . . . . . 9 (𝑀 = 0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
208, 19jaoi 853 . . . . . . . 8 ((𝑀 ∈ ℕ ∨ 𝑀 = 0) → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
216, 20sylbi 216 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
22 nn0nlt0 12189 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → ¬ 𝑀 < 0)
2322pm2.21d 121 . . . . . . . . 9 (𝑀 ∈ ℕ0 → (𝑀 < 0 → (0 − 𝑀) ∈ ℕ))
24 nngt0 11934 . . . . . . . . . 10 ((0 − 𝑀) ∈ ℕ → 0 < (0 − 𝑀))
25 0re 10908 . . . . . . . . . . 11 0 ∈ ℝ
26 posdif 11398 . . . . . . . . . . 11 ((𝑀 ∈ ℝ ∧ 0 ∈ ℝ) → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
271, 25, 26sylancl 585 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
2824, 27syl5ibr 245 . . . . . . . . 9 (𝑀 ∈ ℕ0 → ((0 − 𝑀) ∈ ℕ → 𝑀 < 0))
2923, 28impbid 211 . . . . . . . 8 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ))
30 breq2 5074 . . . . . . . . 9 (𝑁 = 0 → (𝑀 < 𝑁𝑀 < 0))
31 oveq1 7262 . . . . . . . . . 10 (𝑁 = 0 → (𝑁𝑀) = (0 − 𝑀))
3231eleq1d 2823 . . . . . . . . 9 (𝑁 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (0 − 𝑀) ∈ ℕ))
3330, 32bibi12d 345 . . . . . . . 8 (𝑁 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ)))
3429, 33syl5ibrcom 246 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 = 0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3521, 34jaod 855 . . . . . 6 (𝑀 ∈ ℕ0 → ((𝑁 ∈ ℕ ∨ 𝑁 = 0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
365, 35syl5bi 241 . . . . 5 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3736imp 406 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
38 nn0cn 12173 . . . . . 6 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
39 nn0cn 12173 . . . . . 6 (𝑀 ∈ ℕ0𝑀 ∈ ℂ)
40 subeq0 11177 . . . . . 6 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
4138, 39, 40syl2anr 596 . . . . 5 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
42 eqcom 2745 . . . . 5 (𝑁 = 𝑀𝑀 = 𝑁)
4341, 42bitr2di 287 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 = 𝑁 ↔ (𝑁𝑀) = 0))
4437, 43orbi12d 915 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑀 < 𝑁𝑀 = 𝑁) ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
454, 44bitrd 278 . 2 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
46 elnn0 12165 . 2 ((𝑁𝑀) ∈ ℕ0 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0))
4745, 46bitr4di 288 1 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑁𝑀) ∈ ℕ0))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395  wo 843   = wceq 1539  wcel 2108   class class class wbr 5070  (class class class)co 7255  cc 10800  cr 10801  0cc0 10802   < clt 10940  cle 10941  cmin 11135  cn 11903  0cn0 12163
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709  ax-sep 5218  ax-nul 5225  ax-pow 5283  ax-pr 5347  ax-un 7566  ax-resscn 10859  ax-1cn 10860  ax-icn 10861  ax-addcl 10862  ax-addrcl 10863  ax-mulcl 10864  ax-mulrcl 10865  ax-mulcom 10866  ax-addass 10867  ax-mulass 10868  ax-distr 10869  ax-i2m1 10870  ax-1ne0 10871  ax-1rid 10872  ax-rnegex 10873  ax-rrecex 10874  ax-cnre 10875  ax-pre-lttri 10876  ax-pre-lttrn 10877  ax-pre-ltadd 10878  ax-pre-mulgt0 10879
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-nfc 2888  df-ne 2943  df-nel 3049  df-ral 3068  df-rex 3069  df-reu 3070  df-rab 3072  df-v 3424  df-sbc 3712  df-csb 3829  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3902  df-nul 4254  df-if 4457  df-pw 4532  df-sn 4559  df-pr 4561  df-tp 4563  df-op 4565  df-uni 4837  df-iun 4923  df-br 5071  df-opab 5133  df-mpt 5154  df-tr 5188  df-id 5480  df-eprel 5486  df-po 5494  df-so 5495  df-fr 5535  df-we 5537  df-xp 5586  df-rel 5587  df-cnv 5588  df-co 5589  df-dm 5590  df-rn 5591  df-res 5592  df-ima 5593  df-pred 6191  df-ord 6254  df-on 6255  df-lim 6256  df-suc 6257  df-iota 6376  df-fun 6420  df-fn 6421  df-f 6422  df-f1 6423  df-fo 6424  df-f1o 6425  df-fv 6426  df-riota 7212  df-ov 7258  df-oprab 7259  df-mpo 7260  df-om 7688  df-2nd 7805  df-frecs 8068  df-wrecs 8099  df-recs 8173  df-rdg 8212  df-er 8456  df-en 8692  df-dom 8693  df-sdom 8694  df-pnf 10942  df-mnf 10943  df-xr 10944  df-ltxr 10945  df-le 10946  df-sub 11137  df-neg 11138  df-nn 11904  df-n0 12164
This theorem is referenced by:  ltsubnn0  12214  nn0n0n1ge2  12230  elz2  12267  nn0sub2  12311  fz0fzdiffz0  13294  ubmelfzo  13380  repswcshw  14453  swrd2lsw  14593  2swrd2eqwrdeq  14594  psrbagcon  21043  psrbagconOLD  21044  mhpmulcl  21249  coe1tmmul2  21357  aaliou3lem6  25413  basellem5  26139  crctcshwlkn0lem5  28080  eucrctshift  28508  pfxlsw2ccat  31126  wrdt2ind  31127  omndmul3  31241  lpadleft  32563  lcmineqlem1  39965  lcmineqlem2  39966  sticksstones12a  40041  jm2.27c  40745  binomcxplemnn0  41856  dvnxpaek  43373  subsubelfzo0  44706  fmtnoprmfac2lem1  44906  digexp  45841  itcovalt2lem2lem1  45907  ackval42  45930
  Copyright terms: Public domain W3C validator