Metamath Proof Explorer


Theorem nn0constr

Description: Nonnegative integers are constructible. (Contributed by Thierry Arnoux, 2-Nov-2025)

Ref Expression
Hypothesis nn0constr.1 ⊢ φ → N ∈ ℕ 0
Assertion nn0constr ⊢ φ → N ∈ Constr

Proof

Step Hyp Ref Expression
1 nn0constr.1 ⊢ φ → N ∈ ℕ 0
2 eleq1 ⊢ m = 0 → m ∈ Constr ↔ 0 ∈ Constr
3 eleq1 ⊢ m = n → m ∈ Constr ↔ n ∈ Constr
4 eleq1 ⊢ m = n + 1 → m ∈ Constr ↔ n + 1 ∈ Constr
5 eleq1 ⊢ m = N → m ∈ Constr ↔ N ∈ Constr
6 peano1 ⊢ ∅ ∈ ω
7 6 a1i ⊢ φ → ∅ ∈ ω
8 fveq2 ⊢ u = ∅ → rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u = rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
9 8 eleq2d ⊢ u = ∅ → 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u ↔ 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
10 9 adantl ⊢ φ ∧ u = ∅ → 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u ↔ 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
11 0elpr01 ⊢ 0 ∈ 0 1
12 11 a1i ⊢ φ → 0 ∈ 0 1
13 constrcbvlem ⊢ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 = rec ⁡ s ∈ V ⟼ x ∈ ℂ | ∃ a ∈ s ∃ b ∈ s ∃ c ∈ s ∃ d ∈ s ∃ t ∈ ℝ ∃ r ∈ ℝ x = a + t ⁢ b − a ∧ x = c + r ⁢ d − c ∧ ℑ ⁡ b − a ‾ ⁢ d − c ≠ 0 ∨ ∃ a ∈ s ∃ b ∈ s ∃ c ∈ s ∃ e ∈ s ∃ f ∈ s ∃ t ∈ ℝ x = a + t ⁢ b − a ∧ x − c = e − f ∨ ∃ a ∈ s ∃ b ∈ s ∃ c ∈ s ∃ d ∈ s ∃ e ∈ s ∃ f ∈ s a ≠ d ∧ x − a = b − c ∧ x − d = e − f 0 1
14 13 constr0 ⊢ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅ = 0 1
15 12 14 eleqtrrdi ⊢ φ → 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
16 7 10 15 rspcedvd ⊢ φ → ∃ u ∈ ω 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u
17 13 isconstr ⊢ 0 ∈ Constr ↔ ∃ u ∈ ω 0 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u
18 16 17 sylibr ⊢ φ → 0 ∈ Constr
19 18 ad2antrr ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → 0 ∈ Constr
20 8 eleq2d ⊢ u = ∅ → 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u ↔ 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
21 20 adantl ⊢ φ ∧ u = ∅ → 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u ↔ 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
22 1elpr01 ⊢ 1 ∈ 0 1
23 22 a1i ⊢ φ → 1 ∈ 0 1
24 23 14 eleqtrrdi ⊢ φ → 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ ∅
25 7 21 24 rspcedvd ⊢ φ → ∃ u ∈ ω 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u
26 13 isconstr ⊢ 1 ∈ Constr ↔ ∃ u ∈ ω 1 ∈ rec ⁡ z ∈ V ⟼ y ∈ ℂ | ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ o ∈ ℝ ∃ p ∈ ℝ y = i + o ⁢ j − i ∧ y = k + p ⁢ l − k ∧ ℑ ⁡ j − i ‾ ⁢ l − k ≠ 0 ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ m ∈ z ∃ q ∈ z ∃ o ∈ ℝ y = i + o ⁢ j − i ∧ y − k = m − q ∨ ∃ i ∈ z ∃ j ∈ z ∃ k ∈ z ∃ l ∈ z ∃ m ∈ z ∃ q ∈ z i ≠ l ∧ y − i = j − k ∧ y − l = m − q 0 1 ⁡ u
27 25 26 sylibr ⊢ φ → 1 ∈ Constr
28 27 ad2antrr ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → 1 ∈ Constr
29 simpr ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n ∈ Constr
30 peano2nn0 ⊢ n ∈ ℕ 0 → n + 1 ∈ ℕ 0
31 30 ad2antlr ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n + 1 ∈ ℕ 0
32 31 nn0red ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n + 1 ∈ ℝ
33 32 recnd ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n + 1 ∈ ℂ
34 nn0cn ⊢ n ∈ ℕ 0 → n ∈ ℂ
35 1cnd ⊢ n ∈ ℕ 0 → 1 ∈ ℂ
36 34 35 addcld ⊢ n ∈ ℕ 0 → n + 1 ∈ ℂ
37 35 subid1d ⊢ n ∈ ℕ 0 → 1 − 0 = 1
38 37 35 eqeltrd ⊢ n ∈ ℕ 0 → 1 − 0 ∈ ℂ
39 36 38 mulcld ⊢ n ∈ ℕ 0 → n + 1 ⁢ 1 − 0 ∈ ℂ
40 39 addlidd ⊢ n ∈ ℕ 0 → 0 + n + 1 ⁢ 1 − 0 = n + 1 ⁢ 1 − 0
41 37 oveq2d ⊢ n ∈ ℕ 0 → n + 1 ⁢ 1 − 0 = n + 1 ⋅ 1
42 36 mulridd ⊢ n ∈ ℕ 0 → n + 1 ⋅ 1 = n + 1
43 40 41 42 3eqtrrd ⊢ n ∈ ℕ 0 → n + 1 = 0 + n + 1 ⁢ 1 − 0
44 43 ad2antlr ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n + 1 = 0 + n + 1 ⁢ 1 − 0
45 34 35 pncan2d ⊢ n ∈ ℕ 0 → n + 1 - n = 1
46 45 37 eqtr4d ⊢ n ∈ ℕ 0 → n + 1 - n = 1 − 0
47 46 fveq2d ⊢ n ∈ ℕ 0 → n + 1 - n = 1 − 0
48 47 ad2antlr ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n + 1 - n = 1 − 0
49 19 28 29 28 19 32 33 44 48 constrlccl ⊢ φ ∧ n ∈ ℕ 0 ∧ n ∈ Constr → n + 1 ∈ Constr
50 2 3 4 5 18 49 nn0indd ⊢ φ ∧ N ∈ ℕ 0 → N ∈ Constr
51 1 50 mpdan ⊢ φ → N ∈ Constr