| Step | Hyp | Ref
 | Expression | 
| 1 |   | frec2uz.1 | 
. 2
⊢ (𝜑 → 𝐶 ∈ ℤ) | 
| 2 |   | zex 9335 | 
. . . . . . . . . . 11
⊢ ℤ
∈ V | 
| 3 | 2 | mptex 5788 | 
. . . . . . . . . 10
⊢ (𝑥 ∈ ℤ ↦ (𝑥 + 1)) ∈ V | 
| 4 |   | vex 2766 | 
. . . . . . . . . 10
⊢ 𝑧 ∈ V | 
| 5 | 3, 4 | fvex 5578 | 
. . . . . . . . 9
⊢ ((𝑥 ∈ ℤ ↦ (𝑥 + 1))‘𝑧) ∈ V | 
| 6 | 5 | ax-gen 1463 | 
. . . . . . . 8
⊢
∀𝑧((𝑥 ∈ ℤ ↦ (𝑥 + 1))‘𝑧) ∈ V | 
| 7 |   | frecfnom 6459 | 
. . . . . . . 8
⊢
((∀𝑧((𝑥 ∈ ℤ ↦ (𝑥 + 1))‘𝑧) ∈ V ∧ 𝐶 ∈ ℤ) → frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) Fn ω) | 
| 8 | 6, 7 | mpan 424 | 
. . . . . . 7
⊢ (𝐶 ∈ ℤ →
frec((𝑥 ∈ ℤ
↦ (𝑥 + 1)), 𝐶) Fn ω) | 
| 9 |   | frec2uz.2 | 
. . . . . . . 8
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) | 
| 10 | 9 | fneq1i 5352 | 
. . . . . . 7
⊢ (𝐺 Fn ω ↔ frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) Fn ω) | 
| 11 | 8, 10 | sylibr 134 | 
. . . . . 6
⊢ (𝐶 ∈ ℤ → 𝐺 Fn ω) | 
| 12 |   | fvelrnb 5608 | 
. . . . . 6
⊢ (𝐺 Fn ω → (𝑦 ∈ ran 𝐺 ↔ ∃𝑧 ∈ ω (𝐺‘𝑧) = 𝑦)) | 
| 13 | 11, 12 | syl 14 | 
. . . . 5
⊢ (𝐶 ∈ ℤ → (𝑦 ∈ ran 𝐺 ↔ ∃𝑧 ∈ ω (𝐺‘𝑧) = 𝑦)) | 
| 14 |   | simpl 109 | 
. . . . . . . 8
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → 𝐶 ∈
ℤ) | 
| 15 |   | simpr 110 | 
. . . . . . . 8
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → 𝑧 ∈
ω) | 
| 16 | 14, 9, 15 | frec2uzuzd 10494 | 
. . . . . . 7
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → (𝐺‘𝑧) ∈ (ℤ≥‘𝐶)) | 
| 17 |   | eleq1 2259 | 
. . . . . . 7
⊢ ((𝐺‘𝑧) = 𝑦 → ((𝐺‘𝑧) ∈ (ℤ≥‘𝐶) ↔ 𝑦 ∈ (ℤ≥‘𝐶))) | 
| 18 | 16, 17 | syl5ibcom 155 | 
. . . . . 6
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → ((𝐺‘𝑧) = 𝑦 → 𝑦 ∈ (ℤ≥‘𝐶))) | 
| 19 | 18 | rexlimdva 2614 | 
. . . . 5
⊢ (𝐶 ∈ ℤ →
(∃𝑧 ∈ ω
(𝐺‘𝑧) = 𝑦 → 𝑦 ∈ (ℤ≥‘𝐶))) | 
| 20 | 13, 19 | sylbid 150 | 
. . . 4
⊢ (𝐶 ∈ ℤ → (𝑦 ∈ ran 𝐺 → 𝑦 ∈ (ℤ≥‘𝐶))) | 
| 21 |   | eleq1 2259 | 
. . . . 5
⊢ (𝑤 = 𝐶 → (𝑤 ∈ ran 𝐺 ↔ 𝐶 ∈ ran 𝐺)) | 
| 22 |   | eleq1 2259 | 
. . . . 5
⊢ (𝑤 = 𝑦 → (𝑤 ∈ ran 𝐺 ↔ 𝑦 ∈ ran 𝐺)) | 
| 23 |   | eleq1 2259 | 
. . . . 5
⊢ (𝑤 = (𝑦 + 1) → (𝑤 ∈ ran 𝐺 ↔ (𝑦 + 1) ∈ ran 𝐺)) | 
| 24 |   | id 19 | 
. . . . . . 7
⊢ (𝐶 ∈ ℤ → 𝐶 ∈
ℤ) | 
| 25 | 24, 9 | frec2uz0d 10491 | 
. . . . . 6
⊢ (𝐶 ∈ ℤ → (𝐺‘∅) = 𝐶) | 
| 26 |   | peano1 4630 | 
. . . . . . 7
⊢ ∅
∈ ω | 
| 27 |   | fnfvelrn 5694 | 
. . . . . . 7
⊢ ((𝐺 Fn ω ∧ ∅ ∈
ω) → (𝐺‘∅) ∈ ran 𝐺) | 
| 28 | 11, 26, 27 | sylancl 413 | 
. . . . . 6
⊢ (𝐶 ∈ ℤ → (𝐺‘∅) ∈ ran 𝐺) | 
| 29 | 25, 28 | eqeltrrd 2274 | 
. . . . 5
⊢ (𝐶 ∈ ℤ → 𝐶 ∈ ran 𝐺) | 
| 30 |   | eluzel2 9606 | 
. . . . . 6
⊢ (𝑦 ∈
(ℤ≥‘𝐶) → 𝐶 ∈ ℤ) | 
| 31 | 14, 9, 15 | frec2uzsucd 10493 | 
. . . . . . . . . . 11
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → (𝐺‘suc 𝑧) = ((𝐺‘𝑧) + 1)) | 
| 32 |   | oveq1 5929 | 
. . . . . . . . . . 11
⊢ ((𝐺‘𝑧) = 𝑦 → ((𝐺‘𝑧) + 1) = (𝑦 + 1)) | 
| 33 | 31, 32 | sylan9eq 2249 | 
. . . . . . . . . 10
⊢ (((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) ∧ (𝐺‘𝑧) = 𝑦) → (𝐺‘suc 𝑧) = (𝑦 + 1)) | 
| 34 |   | peano2 4631 | 
. . . . . . . . . . . 12
⊢ (𝑧 ∈ ω → suc 𝑧 ∈
ω) | 
| 35 |   | fnfvelrn 5694 | 
. . . . . . . . . . . 12
⊢ ((𝐺 Fn ω ∧ suc 𝑧 ∈ ω) → (𝐺‘suc 𝑧) ∈ ran 𝐺) | 
| 36 | 11, 34, 35 | syl2an 289 | 
. . . . . . . . . . 11
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → (𝐺‘suc 𝑧) ∈ ran 𝐺) | 
| 37 | 36 | adantr 276 | 
. . . . . . . . . 10
⊢ (((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) ∧ (𝐺‘𝑧) = 𝑦) → (𝐺‘suc 𝑧) ∈ ran 𝐺) | 
| 38 | 33, 37 | eqeltrrd 2274 | 
. . . . . . . . 9
⊢ (((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) ∧ (𝐺‘𝑧) = 𝑦) → (𝑦 + 1) ∈ ran 𝐺) | 
| 39 | 38 | ex 115 | 
. . . . . . . 8
⊢ ((𝐶 ∈ ℤ ∧ 𝑧 ∈ ω) → ((𝐺‘𝑧) = 𝑦 → (𝑦 + 1) ∈ ran 𝐺)) | 
| 40 | 39 | rexlimdva 2614 | 
. . . . . . 7
⊢ (𝐶 ∈ ℤ →
(∃𝑧 ∈ ω
(𝐺‘𝑧) = 𝑦 → (𝑦 + 1) ∈ ran 𝐺)) | 
| 41 | 13, 40 | sylbid 150 | 
. . . . . 6
⊢ (𝐶 ∈ ℤ → (𝑦 ∈ ran 𝐺 → (𝑦 + 1) ∈ ran 𝐺)) | 
| 42 | 30, 41 | syl 14 | 
. . . . 5
⊢ (𝑦 ∈
(ℤ≥‘𝐶) → (𝑦 ∈ ran 𝐺 → (𝑦 + 1) ∈ ran 𝐺)) | 
| 43 | 21, 22, 23, 22, 29, 42 | uzind4 9662 | 
. . . 4
⊢ (𝑦 ∈
(ℤ≥‘𝐶) → 𝑦 ∈ ran 𝐺) | 
| 44 | 20, 43 | impbid1 142 | 
. . 3
⊢ (𝐶 ∈ ℤ → (𝑦 ∈ ran 𝐺 ↔ 𝑦 ∈ (ℤ≥‘𝐶))) | 
| 45 | 44 | eqrdv 2194 | 
. 2
⊢ (𝐶 ∈ ℤ → ran 𝐺 =
(ℤ≥‘𝐶)) | 
| 46 | 1, 45 | syl 14 | 
1
⊢ (𝜑 → ran 𝐺 = (ℤ≥‘𝐶)) |