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

Theorem nn0sub 12105
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 12064 . . . 4 (𝑀 ∈ ℕ0𝑀 ∈ ℝ)
2 nn0re 12064 . . . 4 (𝑁 ∈ ℕ0𝑁 ∈ ℝ)
3 leloe 10884 . . . 4 ((𝑀 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
41, 2, 3syl2an 599 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
5 elnn0 12057 . . . . . 6 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6 elnn0 12057 . . . . . . . 8 (𝑀 ∈ ℕ0 ↔ (𝑀 ∈ ℕ ∨ 𝑀 = 0))
7 nnsub 11839 . . . . . . . . . 10 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
87ex 416 . . . . . . . . 9 (𝑀 ∈ ℕ → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
9 nngt0 11826 . . . . . . . . . . 11 (𝑁 ∈ ℕ → 0 < 𝑁)
10 nncn 11803 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℂ)
1110subid1d 11143 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (𝑁 − 0) = 𝑁)
12 id 22 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ)
1311, 12eqeltrd 2831 . . . . . . . . . . 11 (𝑁 ∈ ℕ → (𝑁 − 0) ∈ ℕ)
149, 132thd 268 . . . . . . . . . 10 (𝑁 ∈ ℕ → (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ))
15 breq1 5042 . . . . . . . . . . 11 (𝑀 = 0 → (𝑀 < 𝑁 ↔ 0 < 𝑁))
16 oveq2 7199 . . . . . . . . . . . 12 (𝑀 = 0 → (𝑁𝑀) = (𝑁 − 0))
1716eleq1d 2815 . . . . . . . . . . 11 (𝑀 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (𝑁 − 0) ∈ ℕ))
1815, 17bibi12d 349 . . . . . . . . . 10 (𝑀 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ)))
1914, 18syl5ibr 249 . . . . . . . . 9 (𝑀 = 0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
208, 19jaoi 857 . . . . . . . 8 ((𝑀 ∈ ℕ ∨ 𝑀 = 0) → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
216, 20sylbi 220 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
22 nn0nlt0 12081 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → ¬ 𝑀 < 0)
2322pm2.21d 121 . . . . . . . . 9 (𝑀 ∈ ℕ0 → (𝑀 < 0 → (0 − 𝑀) ∈ ℕ))
24 nngt0 11826 . . . . . . . . . 10 ((0 − 𝑀) ∈ ℕ → 0 < (0 − 𝑀))
25 0re 10800 . . . . . . . . . . 11 0 ∈ ℝ
26 posdif 11290 . . . . . . . . . . 11 ((𝑀 ∈ ℝ ∧ 0 ∈ ℝ) → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
271, 25, 26sylancl 589 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
2824, 27syl5ibr 249 . . . . . . . . 9 (𝑀 ∈ ℕ0 → ((0 − 𝑀) ∈ ℕ → 𝑀 < 0))
2923, 28impbid 215 . . . . . . . 8 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ))
30 breq2 5043 . . . . . . . . 9 (𝑁 = 0 → (𝑀 < 𝑁𝑀 < 0))
31 oveq1 7198 . . . . . . . . . 10 (𝑁 = 0 → (𝑁𝑀) = (0 − 𝑀))
3231eleq1d 2815 . . . . . . . . 9 (𝑁 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (0 − 𝑀) ∈ ℕ))
3330, 32bibi12d 349 . . . . . . . 8 (𝑁 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ)))
3429, 33syl5ibrcom 250 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 = 0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3521, 34jaod 859 . . . . . 6 (𝑀 ∈ ℕ0 → ((𝑁 ∈ ℕ ∨ 𝑁 = 0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
365, 35syl5bi 245 . . . . 5 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3736imp 410 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
38 nn0cn 12065 . . . . . 6 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
39 nn0cn 12065 . . . . . 6 (𝑀 ∈ ℕ0𝑀 ∈ ℂ)
40 subeq0 11069 . . . . . 6 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
4138, 39, 40syl2anr 600 . . . . 5 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
42 eqcom 2743 . . . . 5 (𝑁 = 𝑀𝑀 = 𝑁)
4341, 42bitr2di 291 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 = 𝑁 ↔ (𝑁𝑀) = 0))
4437, 43orbi12d 919 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑀 < 𝑁𝑀 = 𝑁) ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
454, 44bitrd 282 . 2 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
46 elnn0 12057 . 2 ((𝑁𝑀) ∈ ℕ0 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0))
4745, 46bitr4di 292 1 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑁𝑀) ∈ ℕ0))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  wo 847   = wceq 1543  wcel 2112   class class class wbr 5039  (class class class)co 7191  cc 10692  cr 10693  0cc0 10694   < clt 10832  cle 10833  cmin 11027  cn 11795  0cn0 12055
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1976  ax-7 2018  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2160  ax-12 2177  ax-ext 2708  ax-sep 5177  ax-nul 5184  ax-pow 5243  ax-pr 5307  ax-un 7501  ax-resscn 10751  ax-1cn 10752  ax-icn 10753  ax-addcl 10754  ax-addrcl 10755  ax-mulcl 10756  ax-mulrcl 10757  ax-mulcom 10758  ax-addass 10759  ax-mulass 10760  ax-distr 10761  ax-i2m1 10762  ax-1ne0 10763  ax-1rid 10764  ax-rnegex 10765  ax-rrecex 10766  ax-cnre 10767  ax-pre-lttri 10768  ax-pre-lttrn 10769  ax-pre-ltadd 10770  ax-pre-mulgt0 10771
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 848  df-3or 1090  df-3an 1091  df-tru 1546  df-fal 1556  df-ex 1788  df-nf 1792  df-sb 2073  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2728  df-clel 2809  df-nfc 2879  df-ne 2933  df-nel 3037  df-ral 3056  df-rex 3057  df-reu 3058  df-rab 3060  df-v 3400  df-sbc 3684  df-csb 3799  df-dif 3856  df-un 3858  df-in 3860  df-ss 3870  df-pss 3872  df-nul 4224  df-if 4426  df-pw 4501  df-sn 4528  df-pr 4530  df-tp 4532  df-op 4534  df-uni 4806  df-iun 4892  df-br 5040  df-opab 5102  df-mpt 5121  df-tr 5147  df-id 5440  df-eprel 5445  df-po 5453  df-so 5454  df-fr 5494  df-we 5496  df-xp 5542  df-rel 5543  df-cnv 5544  df-co 5545  df-dm 5546  df-rn 5547  df-res 5548  df-ima 5549  df-pred 6140  df-ord 6194  df-on 6195  df-lim 6196  df-suc 6197  df-iota 6316  df-fun 6360  df-fn 6361  df-f 6362  df-f1 6363  df-fo 6364  df-f1o 6365  df-fv 6366  df-riota 7148  df-ov 7194  df-oprab 7195  df-mpo 7196  df-om 7623  df-wrecs 8025  df-recs 8086  df-rdg 8124  df-er 8369  df-en 8605  df-dom 8606  df-sdom 8607  df-pnf 10834  df-mnf 10835  df-xr 10836  df-ltxr 10837  df-le 10838  df-sub 11029  df-neg 11030  df-nn 11796  df-n0 12056
This theorem is referenced by:  ltsubnn0  12106  nn0n0n1ge2  12122  elz2  12159  nn0sub2  12203  fz0fzdiffz0  13186  ubmelfzo  13272  repswcshw  14342  swrd2lsw  14482  2swrd2eqwrdeq  14483  psrbagcon  20843  psrbagconOLD  20844  mhpmulcl  21043  coe1tmmul2  21151  aaliou3lem6  25195  basellem5  25921  crctcshwlkn0lem5  27852  eucrctshift  28280  pfxlsw2ccat  30898  wrdt2ind  30899  omndmul3  31012  lpadleft  32329  lcmineqlem1  39720  lcmineqlem2  39721  sticksstones12a  39782  jm2.27c  40473  binomcxplemnn0  41581  dvnxpaek  43101  subsubelfzo0  44434  fmtnoprmfac2lem1  44634  digexp  45569  itcovalt2lem2lem1  45635  ackval42  45658
  Copyright terms: Public domain W3C validator