Metamath Proof Explorer


Theorem difelfzle

Description: The difference of two integers from a finite set of sequential nonnegative integers is also element of this finite set of sequential integers. (Contributed by Alexander van der Vekens, 12-Jun-2018)

Ref Expression
Assertion difelfzle ⊢ K ∈ 0 … N ∧ M ∈ 0 … N ∧ K ≤ M → M − K ∈ 0 … N

Proof

Step Hyp Ref Expression
1 elfznn0 ⊢ K ∈ 0 … N → K ∈ ℕ 0
2 elfznn0 ⊢ M ∈ 0 … N → M ∈ ℕ 0
3 nn0z ⊢ M ∈ ℕ 0 → M ∈ ℤ
4 nn0z ⊢ K ∈ ℕ 0 → K ∈ ℤ
5 zsubcl ⊢ M ∈ ℤ ∧ K ∈ ℤ → M − K ∈ ℤ
6 3 4 5 syl2anr ⊢ K ∈ ℕ 0 ∧ M ∈ ℕ 0 → M − K ∈ ℤ
7 6 adantr ⊢ K ∈ ℕ 0 ∧ M ∈ ℕ 0 ∧ K ≤ M → M − K ∈ ℤ
8 nn0re ⊢ M ∈ ℕ 0 → M ∈ ℝ
9 nn0re ⊢ K ∈ ℕ 0 → K ∈ ℝ
10 subge0 ⊢ M ∈ ℝ ∧ K ∈ ℝ → 0 ≤ M − K ↔ K ≤ M
11 8 9 10 syl2anr ⊢ K ∈ ℕ 0 ∧ M ∈ ℕ 0 → 0 ≤ M − K ↔ K ≤ M
12 11 biimpar ⊢ K ∈ ℕ 0 ∧ M ∈ ℕ 0 ∧ K ≤ M → 0 ≤ M − K
13 7 12 jca ⊢ K ∈ ℕ 0 ∧ M ∈ ℕ 0 ∧ K ≤ M → M − K ∈ ℤ ∧ 0 ≤ M − K
14 13 exp31 ⊢ K ∈ ℕ 0 → M ∈ ℕ 0 → K ≤ M → M − K ∈ ℤ ∧ 0 ≤ M − K
15 1 2 14 syl2im ⊢ K ∈ 0 … N → M ∈ 0 … N → K ≤ M → M − K ∈ ℤ ∧ 0 ≤ M − K
16 15 3imp ⊢ K ∈ 0 … N ∧ M ∈ 0 … N ∧ K ≤ M → M − K ∈ ℤ ∧ 0 ≤ M − K
17 elnn0z ⊢ M − K ∈ ℕ 0 ↔ M − K ∈ ℤ ∧ 0 ≤ M − K
18 16 17 sylibr ⊢ K ∈ 0 … N ∧ M ∈ 0 … N ∧ K ≤ M → M − K ∈ ℕ 0
19 elfz3nn0 ⊢ K ∈ 0 … N → N ∈ ℕ 0
20 19 3ad2ant1 ⊢ K ∈ 0 … N ∧ M ∈ 0 … N ∧ K ≤ M → N ∈ ℕ 0
21 elfz2nn0 ⊢ M ∈ 0 … N ↔ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N
22 8 3ad2ant1 ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N → M ∈ ℝ
23 resubcl ⊢ M ∈ ℝ ∧ K ∈ ℝ → M − K ∈ ℝ
24 22 9 23 syl2an ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → M − K ∈ ℝ
25 22 adantr ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → M ∈ ℝ
26 nn0re ⊢ N ∈ ℕ 0 → N ∈ ℝ
27 26 3ad2ant2 ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N → N ∈ ℝ
28 27 adantr ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → N ∈ ℝ
29 nn0ge0 ⊢ K ∈ ℕ 0 → 0 ≤ K
30 29 adantl ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → 0 ≤ K
31 subge02 ⊢ M ∈ ℝ ∧ K ∈ ℝ → 0 ≤ K ↔ M − K ≤ M
32 22 9 31 syl2an ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → 0 ≤ K ↔ M − K ≤ M
33 30 32 mpbid ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → M − K ≤ M
34 simpl3 ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → M ≤ N
35 24 25 28 33 34 letrd ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N ∧ K ∈ ℕ 0 → M − K ≤ N
36 35 ex ⊢ M ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M ≤ N → K ∈ ℕ 0 → M − K ≤ N
37 21 36 sylbi ⊢ M ∈ 0 … N → K ∈ ℕ 0 → M − K ≤ N
38 1 37 syl5com ⊢ K ∈ 0 … N → M ∈ 0 … N → M − K ≤ N
39 38 a1dd ⊢ K ∈ 0 … N → M ∈ 0 … N → K ≤ M → M − K ≤ N
40 39 3imp ⊢ K ∈ 0 … N ∧ M ∈ 0 … N ∧ K ≤ M → M − K ≤ N
41 elfz2nn0 ⊢ M − K ∈ 0 … N ↔ M − K ∈ ℕ 0 ∧ N ∈ ℕ 0 ∧ M − K ≤ N
42 18 20 40 41 syl3anbrc ⊢ K ∈ 0 … N ∧ M ∈ 0 … N ∧ K ≤ M → M − K ∈ 0 … N