Metamath Proof Explorer


Theorem uzaddcl

Description: Addition closure law for an upper set of integers. (Contributed by NM, 4-Jun-2006)

Ref Expression
Assertion uzaddcl ⊢ N ∈ ℤ ≥ M ∧ K ∈ ℕ 0 → N + K ∈ ℤ ≥ M

Proof

Step Hyp Ref Expression
1 eluzelcn ⊢ N ∈ ℤ ≥ M → N ∈ ℂ
2 nn0cn ⊢ k ∈ ℕ 0 → k ∈ ℂ
3 ax-1cn ⊢ 1 ∈ ℂ
4 addass ⊢ N ∈ ℂ ∧ k ∈ ℂ ∧ 1 ∈ ℂ → N + k + 1 = N + k + 1
5 3 4 mp3an3 ⊢ N ∈ ℂ ∧ k ∈ ℂ → N + k + 1 = N + k + 1
6 1 2 5 syl2anr ⊢ k ∈ ℕ 0 ∧ N ∈ ℤ ≥ M → N + k + 1 = N + k + 1
7 6 adantr ⊢ k ∈ ℕ 0 ∧ N ∈ ℤ ≥ M ∧ N + k ∈ ℤ ≥ M → N + k + 1 = N + k + 1
8 peano2uz ⊢ N + k ∈ ℤ ≥ M → N + k + 1 ∈ ℤ ≥ M
9 8 adantl ⊢ k ∈ ℕ 0 ∧ N ∈ ℤ ≥ M ∧ N + k ∈ ℤ ≥ M → N + k + 1 ∈ ℤ ≥ M
10 7 9 eqeltrrd ⊢ k ∈ ℕ 0 ∧ N ∈ ℤ ≥ M ∧ N + k ∈ ℤ ≥ M → N + k + 1 ∈ ℤ ≥ M
11 10 exp31 ⊢ k ∈ ℕ 0 → N ∈ ℤ ≥ M → N + k ∈ ℤ ≥ M → N + k + 1 ∈ ℤ ≥ M
12 11 a2d ⊢ k ∈ ℕ 0 → N ∈ ℤ ≥ M → N + k ∈ ℤ ≥ M → N ∈ ℤ ≥ M → N + k + 1 ∈ ℤ ≥ M
13 1 addridd ⊢ N ∈ ℤ ≥ M → N + 0 = N
14 13 eleq1d ⊢ N ∈ ℤ ≥ M → N + 0 ∈ ℤ ≥ M ↔ N ∈ ℤ ≥ M
15 14 ibir ⊢ N ∈ ℤ ≥ M → N + 0 ∈ ℤ ≥ M
16 oveq2 ⊢ j = 0 → N + j = N + 0
17 16 eleq1d ⊢ j = 0 → N + j ∈ ℤ ≥ M ↔ N + 0 ∈ ℤ ≥ M
18 17 imbi2d ⊢ j = 0 → N ∈ ℤ ≥ M → N + j ∈ ℤ ≥ M ↔ N ∈ ℤ ≥ M → N + 0 ∈ ℤ ≥ M
19 oveq2 ⊢ j = k → N + j = N + k
20 19 eleq1d ⊢ j = k → N + j ∈ ℤ ≥ M ↔ N + k ∈ ℤ ≥ M
21 20 imbi2d ⊢ j = k → N ∈ ℤ ≥ M → N + j ∈ ℤ ≥ M ↔ N ∈ ℤ ≥ M → N + k ∈ ℤ ≥ M
22 oveq2 ⊢ j = k + 1 → N + j = N + k + 1
23 22 eleq1d ⊢ j = k + 1 → N + j ∈ ℤ ≥ M ↔ N + k + 1 ∈ ℤ ≥ M
24 23 imbi2d ⊢ j = k + 1 → N ∈ ℤ ≥ M → N + j ∈ ℤ ≥ M ↔ N ∈ ℤ ≥ M → N + k + 1 ∈ ℤ ≥ M
25 oveq2 ⊢ j = K → N + j = N + K
26 25 eleq1d ⊢ j = K → N + j ∈ ℤ ≥ M ↔ N + K ∈ ℤ ≥ M
27 26 imbi2d ⊢ j = K → N ∈ ℤ ≥ M → N + j ∈ ℤ ≥ M ↔ N ∈ ℤ ≥ M → N + K ∈ ℤ ≥ M
28 12 15 18 21 24 27 nn0indALT ⊢ K ∈ ℕ 0 → N ∈ ℤ ≥ M → N + K ∈ ℤ ≥ M
29 28 impcom ⊢ N ∈ ℤ ≥ M ∧ K ∈ ℕ 0 → N + K ∈ ℤ ≥ M