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

Theorem nn0sub 12603
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 12562 . . . 4 (𝑀 ∈ ℕ0𝑀 ∈ ℝ)
2 nn0re 12562 . . . 4 (𝑁 ∈ ℕ0𝑁 ∈ ℝ)
3 leloe 11376 . . . 4 ((𝑀 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
41, 2, 3syl2an 595 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ (𝑀 < 𝑁𝑀 = 𝑁)))
5 elnn0 12555 . . . . . 6 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6 elnn0 12555 . . . . . . . 8 (𝑀 ∈ ℕ0 ↔ (𝑀 ∈ ℕ ∨ 𝑀 = 0))
7 nnsub 12337 . . . . . . . . . 10 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
87ex 412 . . . . . . . . 9 (𝑀 ∈ ℕ → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
9 nngt0 12324 . . . . . . . . . . 11 (𝑁 ∈ ℕ → 0 < 𝑁)
10 nncn 12301 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℂ)
1110subid1d 11636 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (𝑁 − 0) = 𝑁)
12 id 22 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ)
1311, 12eqeltrd 2844 . . . . . . . . . . 11 (𝑁 ∈ ℕ → (𝑁 − 0) ∈ ℕ)
149, 132thd 265 . . . . . . . . . 10 (𝑁 ∈ ℕ → (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ))
15 breq1 5169 . . . . . . . . . . 11 (𝑀 = 0 → (𝑀 < 𝑁 ↔ 0 < 𝑁))
16 oveq2 7456 . . . . . . . . . . . 12 (𝑀 = 0 → (𝑁𝑀) = (𝑁 − 0))
1716eleq1d 2829 . . . . . . . . . . 11 (𝑀 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (𝑁 − 0) ∈ ℕ))
1815, 17bibi12d 345 . . . . . . . . . 10 (𝑀 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ)))
1914, 18imbitrrid 246 . . . . . . . . 9 (𝑀 = 0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
208, 19jaoi 856 . . . . . . . 8 ((𝑀 ∈ ℕ ∨ 𝑀 = 0) → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
216, 20sylbi 217 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
22 nn0nlt0 12579 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → ¬ 𝑀 < 0)
2322pm2.21d 121 . . . . . . . . 9 (𝑀 ∈ ℕ0 → (𝑀 < 0 → (0 − 𝑀) ∈ ℕ))
24 nngt0 12324 . . . . . . . . . 10 ((0 − 𝑀) ∈ ℕ → 0 < (0 − 𝑀))
25 0re 11292 . . . . . . . . . . 11 0 ∈ ℝ
26 posdif 11783 . . . . . . . . . . 11 ((𝑀 ∈ ℝ ∧ 0 ∈ ℝ) → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
271, 25, 26sylancl 585 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
2824, 27imbitrrid 246 . . . . . . . . 9 (𝑀 ∈ ℕ0 → ((0 − 𝑀) ∈ ℕ → 𝑀 < 0))
2923, 28impbid 212 . . . . . . . 8 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ))
30 breq2 5170 . . . . . . . . 9 (𝑁 = 0 → (𝑀 < 𝑁𝑀 < 0))
31 oveq1 7455 . . . . . . . . . 10 (𝑁 = 0 → (𝑁𝑀) = (0 − 𝑀))
3231eleq1d 2829 . . . . . . . . 9 (𝑁 = 0 → ((𝑁𝑀) ∈ ℕ ↔ (0 − 𝑀) ∈ ℕ))
3330, 32bibi12d 345 . . . . . . . 8 (𝑁 = 0 → ((𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ) ↔ (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ)))
3429, 33syl5ibrcom 247 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 = 0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3521, 34jaod 858 . . . . . 6 (𝑀 ∈ ℕ0 → ((𝑁 ∈ ℕ ∨ 𝑁 = 0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
365, 35biimtrid 242 . . . . 5 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ0 → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ)))
3736imp 406 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 < 𝑁 ↔ (𝑁𝑀) ∈ ℕ))
38 nn0cn 12563 . . . . . 6 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
39 nn0cn 12563 . . . . . 6 (𝑀 ∈ ℕ0𝑀 ∈ ℂ)
40 subeq0 11562 . . . . . 6 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
4138, 39, 40syl2anr 596 . . . . 5 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑁𝑀) = 0 ↔ 𝑁 = 𝑀))
42 eqcom 2747 . . . . 5 (𝑁 = 𝑀𝑀 = 𝑁)
4341, 42bitr2di 288 . . . 4 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀 = 𝑁 ↔ (𝑁𝑀) = 0))
4437, 43orbi12d 917 . . 3 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → ((𝑀 < 𝑁𝑀 = 𝑁) ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
454, 44bitrd 279 . 2 ((𝑀 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑀𝑁 ↔ ((𝑁𝑀) ∈ ℕ ∨ (𝑁𝑀) = 0)))
46 elnn0 12555 . 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 846   = wceq 1537  wcel 2108   class class class wbr 5166  (class class class)co 7448  cc 11182  cr 11183  0cc0 11184   < clt 11324  cle 11325  cmin 11520  cn 12293  0cn0 12553
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1793  ax-4 1807  ax-5 1909  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2158  ax-12 2178  ax-ext 2711  ax-sep 5317  ax-nul 5324  ax-pow 5383  ax-pr 5447  ax-un 7770  ax-resscn 11241  ax-1cn 11242  ax-icn 11243  ax-addcl 11244  ax-addrcl 11245  ax-mulcl 11246  ax-mulrcl 11247  ax-mulcom 11248  ax-addass 11249  ax-mulass 11250  ax-distr 11251  ax-i2m1 11252  ax-1ne0 11253  ax-1rid 11254  ax-rnegex 11255  ax-rrecex 11256  ax-cnre 11257  ax-pre-lttri 11258  ax-pre-lttrn 11259  ax-pre-ltadd 11260  ax-pre-mulgt0 11261
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 847  df-3or 1088  df-3an 1089  df-tru 1540  df-fal 1550  df-ex 1778  df-nf 1782  df-sb 2065  df-mo 2543  df-eu 2572  df-clab 2718  df-cleq 2732  df-clel 2819  df-nfc 2895  df-ne 2947  df-nel 3053  df-ral 3068  df-rex 3077  df-reu 3389  df-rab 3444  df-v 3490  df-sbc 3805  df-csb 3922  df-dif 3979  df-un 3981  df-in 3983  df-ss 3993  df-pss 3996  df-nul 4353  df-if 4549  df-pw 4624  df-sn 4649  df-pr 4651  df-op 4655  df-uni 4932  df-iun 5017  df-br 5167  df-opab 5229  df-mpt 5250  df-tr 5284  df-id 5593  df-eprel 5599  df-po 5607  df-so 5608  df-fr 5652  df-we 5654  df-xp 5706  df-rel 5707  df-cnv 5708  df-co 5709  df-dm 5710  df-rn 5711  df-res 5712  df-ima 5713  df-pred 6332  df-ord 6398  df-on 6399  df-lim 6400  df-suc 6401  df-iota 6525  df-fun 6575  df-fn 6576  df-f 6577  df-f1 6578  df-fo 6579  df-f1o 6580  df-fv 6581  df-riota 7404  df-ov 7451  df-oprab 7452  df-mpo 7453  df-om 7904  df-2nd 8031  df-frecs 8322  df-wrecs 8353  df-recs 8427  df-rdg 8466  df-er 8763  df-en 9004  df-dom 9005  df-sdom 9006  df-pnf 11326  df-mnf 11327  df-xr 11328  df-ltxr 11329  df-le 11330  df-sub 11522  df-neg 11523  df-nn 12294  df-n0 12554
This theorem is referenced by:  ltsubnn0  12604  nn0n0n1ge2  12620  elz2  12657  nn0sub2  12704  fz0fzdiffz0  13694  ubmelfzo  13781  repswcshw  14860  swrd2lsw  15001  2swrd2eqwrdeq  15002  psrbagcon  21968  mhpmulcl  22176  coe1tmmul2  22300  aaliou3lem6  26408  basellem5  27146  crctcshwlkn0lem5  29847  eucrctshift  30275  pfxlsw2ccat  32917  wrdt2ind  32920  omndmul3  33063  lpadleft  34660  lcmineqlem1  41986  lcmineqlem2  41987  sticksstones12a  42114  jm2.27c  42964  binomcxplemnn0  44318  dvnxpaek  45863  subsubelfzo0  47241  fmtnoprmfac2lem1  47440  digexp  48341  itcovalt2lem2lem1  48407  ackval42  48430
  Copyright terms: Public domain W3C validator