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

Theorem nn0sub 12680
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 12639 . . . 4 (𝑀 ∈ ℕ0 → 𝑀 ∈ ℝ)
2 nn0re 12639 . . . 4 (𝑁 ∈ ℕ0 → 𝑁 ∈ ℝ)
3 leloe 11420 . . . 4 ((𝑀 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑀 ≤ 𝑁 ↔ (𝑀 < 𝑁 ∨ 𝑀 = 𝑁)))
41, 2, 3syl2an 608 . . 3 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → (𝑀 ≤ 𝑁 ↔ (𝑀 < 𝑁 ∨ 𝑀 = 𝑁)))
5 elnn0 12632 . . . . . 6 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6 elnn0 12632 . . . . . . . 8 (𝑀 ∈ ℕ0 ↔ (𝑀 ∈ ℕ ∨ 𝑀 = 0))
7 nnsub 12406 . . . . . . . . . 10 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ))
87ex 418 . . . . . . . . 9 (𝑀 ∈ ℕ → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
9 nngt0 12393 . . . . . . . . . . 11 (𝑁 ∈ ℕ → 0 < 𝑁)
10 nncn 12367 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℂ)
1110subid1d 11682 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → (𝑁 − 0) = 𝑁)
12 id 23 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ)
1311, 12eqeltrd 2864 . . . . . . . . . . 11 (𝑁 ∈ ℕ → (𝑁 − 0) ∈ ℕ)
149, 132thd 268 . . . . . . . . . 10 (𝑁 ∈ ℕ → (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ))
15 breq1 5109 . . . . . . . . . . 11 (𝑀 = 0 → (𝑀 < 𝑁 ↔ 0 < 𝑁))
16 oveq2 7448 . . . . . . . . . . . 12 (𝑀 = 0 → (𝑁 − 𝑀) = (𝑁 − 0))
1716eleq1d 2849 . . . . . . . . . . 11 (𝑀 = 0 → ((𝑁 − 𝑀) ∈ ℕ ↔ (𝑁 − 0) ∈ ℕ))
1815, 17bibi12d 348 . . . . . . . . . 10 (𝑀 = 0 → ((𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ) ↔ (0 < 𝑁 ↔ (𝑁 − 0) ∈ ℕ)))
1914, 18imbitrrid 249 . . . . . . . . 9 (𝑀 = 0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
208, 19jaoi 871 . . . . . . . 8 ((𝑀 ∈ ℕ ∨ 𝑀 = 0) → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
216, 20sylbi 220 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
22 nn0nlt0 12656 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → ¬ 𝑀 < 0)
2322pm2.21d 122 . . . . . . . . 9 (𝑀 ∈ ℕ0 → (𝑀 < 0 → (0 − 𝑀) ∈ ℕ))
24 nngt0 12393 . . . . . . . . . 10 ((0 − 𝑀) ∈ ℕ → 0 < (0 − 𝑀))
25 0re 11334 . . . . . . . . . . 11 0 ∈ ℝ
26 posdif 11833 . . . . . . . . . . 11 ((𝑀 ∈ ℝ ∧ 0 ∈ ℝ) → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
271, 25, 26sylancl 598 . . . . . . . . . 10 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ 0 < (0 − 𝑀)))
2824, 27imbitrrid 249 . . . . . . . . 9 (𝑀 ∈ ℕ0 → ((0 − 𝑀) ∈ ℕ → 𝑀 < 0))
2923, 28impbid 215 . . . . . . . 8 (𝑀 ∈ ℕ0 → (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ))
30 breq2 5110 . . . . . . . . 9 (𝑁 = 0 → (𝑀 < 𝑁 ↔ 𝑀 < 0))
31 oveq1 7447 . . . . . . . . . 10 (𝑁 = 0 → (𝑁 − 𝑀) = (0 − 𝑀))
3231eleq1d 2849 . . . . . . . . 9 (𝑁 = 0 → ((𝑁 − 𝑀) ∈ ℕ ↔ (0 − 𝑀) ∈ ℕ))
3330, 32bibi12d 348 . . . . . . . 8 (𝑁 = 0 → ((𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ) ↔ (𝑀 < 0 ↔ (0 − 𝑀) ∈ ℕ)))
3429, 33syl5ibrcom 250 . . . . . . 7 (𝑀 ∈ ℕ0 → (𝑁 = 0 → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
3521, 34jaod 873 . . . . . 6 (𝑀 ∈ ℕ0 → ((𝑁 ∈ ℕ ∨ 𝑁 = 0) → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
365, 35biimtrid 245 . . . . 5 (𝑀 ∈ ℕ0 → (𝑁 ∈ ℕ0 → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ)))
3736imp 412 . . . 4 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → (𝑀 < 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ))
38 nn0cn 12640 . . . . . 6 (𝑁 ∈ ℕ0 → 𝑁 ∈ ℂ)
39 nn0cn 12640 . . . . . 6 (𝑀 ∈ ℕ0 → 𝑀 ∈ ℂ)
40 subeq0 11608 . . . . . 6 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → ((𝑁 − 𝑀) = 0 ↔ 𝑁 = 𝑀))
4138, 39, 40syl2anr 609 . . . . 5 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → ((𝑁 − 𝑀) = 0 ↔ 𝑁 = 𝑀))
42 eqcom 2770 . . . . 5 (𝑁 = 𝑀 ↔ 𝑀 = 𝑁)
4341, 42bitr2di 291 . . . 4 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → (𝑀 = 𝑁 ↔ (𝑁 − 𝑀) = 0))
4437, 43orbi12d 932 . . 3 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → ((𝑀 < 𝑁 ∨ 𝑀 = 𝑁) ↔ ((𝑁 − 𝑀) ∈ ℕ ∨ (𝑁 − 𝑀) = 0)))
454, 44bitrd 282 . 2 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → (𝑀 ≤ 𝑁 ↔ ((𝑁 − 𝑀) ∈ ℕ ∨ (𝑁 − 𝑀) = 0)))
46 elnn0 12632 . 2 ((𝑁 − 𝑀) ∈ ℕ0 ↔ ((𝑁 − 𝑀) ∈ ℕ ∨ (𝑁 − 𝑀) = 0))
4745, 46bitr4di 292 1 ((𝑀 ∈ ℕ0 ∧ 𝑁 ∈ ℕ0) → (𝑀 ≤ 𝑁 ↔ (𝑁 − 𝑀) ∈ ℕ0))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   ∨ wo 861   = wceq 1570   ∈ wcel 2147   class class class wbr 5106  (class class class)co 7440  ℂcc 11222  ℝcr 11223  0cc0 11224   < clt 11367   ≤ cle 11368   − cmin 11565  ℕcn 12359  ℕ0cn0 12630
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7772  ax-resscn 11281  ax-1cn 11282  ax-icn 11283  ax-addcl 11284  ax-addrcl 11285  ax-mulcl 11286  ax-mulrcl 11287  ax-mulcom 11288  ax-addass 11289  ax-mulass 11290  ax-distr 11291  ax-i2m1 11292  ax-1ne0 11293  ax-1rid 11294  ax-rnegex 11295  ax-rrecex 11296  ax-cnre 11297  ax-pre-lttri 11298  ax-pre-lttrn 11299  ax-pre-ltadd 11300  ax-pre-mulgt0 11301
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6319  df-ord 6380  df-on 6381  df-lim 6382  df-suc 6383  df-iota 6509  df-fun 6557  df-fn 6558  df-f 6559  df-f1 6560  df-fo 6561  df-f1o 6562  df-fv 6563  df-riota 7397  df-ov 7443  df-oprab 7444  df-mpo 7445  df-om 7899  df-2nd 8023  df-frecs 8324  df-wrecs 8355  df-recs 8404  df-rdg 8443  df-er 8742  df-en 8999  df-dom 9000  df-sdom 9001  df-pnf 11369  df-mnf 11370  df-xr 11371  df-ltxr 11372  df-le 11373  df-sub 11567  df-neg 11568  df-nn 12360  df-n0 12631
This theorem is used by:  ltsubnn0  12681  nn0n0n1ge2  12698  elz2  12735  nn0sub2  12784  fz0fzdiffz0  13795  ubmelfzo  13889  repswcshw  14988  swrd2lsw  15131  2swrd2eqwrdeq  15132  omndmul3  20375  psrbagcon  22260  mhpmulcl  22497  coe1tmmul2  22622  aaliou3lem6  26702  basellem5  27439  crctcshwlkn0lem5  30430  eucrctshift  30871  pfxlsw2ccat  33580  wrdt2ind  33583  mplvrpmrhm  34246  lpadleft  35382  lcmineqlem1  43270  lcmineqlem2  43271  sticksstones12a  43398  jm2.27c  44205  binomcxplemnn0  45523  dvnxpaek  47155  subsubelfzo0  48600  fmtnoprmfac2lem1  48854  digexp  49922  itcovalt2lem2lem1  49988  ackval42  50011
  Copyright terms: Public domain W3C validator