Proof of Theorem facp1t
| Step | Hyp | Ref
| Expression |
| 1 | | elnn0 4536 |
. 2
⊢ (A
∈ ℕ0 ↔ (A ∈
ℕ ∨ A = 0)) |
| 2 | | peano2nn 4433 |
. . . . 5
⊢ (A
∈ ℕ → (A + 1) ∈
ℕ) |
| 3 | &nbFp; | facnnt 4870 |
. . . . 5
⊢ ((A +
1) ∈ ℕ → (! ‘(A + 1))
= (( · seq(I ↾ ℕ)) ‘(A + 1))) |
| 4 | 2, 3 | syl 12 |
. . . 4
⊢ (A
∈ ℕ → (! ‘(A + 1)) =
(( · seq(I ↾ ℕ)) ‘(A + 1))) |
| 5 | | axmulex 4060 |
. . . . 5
⊢ · ∈ V |
| 6 | | nnex 4431 |
. . . . . 6
⊢ ℕ ∈ V |
| 7 | | funi 2692 |
. . . . . 6
⊢ Fun I |
| 8 | | resfunexg 2717 |
. . . . . 6
⊢ (ℕ ∈ V → (Fun
I → (I ↾ ℕ) ∈ V)) |
| 9 | 6, 7, 8 | mp2 43 |
. . . . 5
⊢ (I ↾ ℕ) ∈
V |
| 10 | 5, 9 | seqsuc 4671 |
. . . 4
⊢ (A
∈ ℕ → (( · seq(I ↾ ℕ))
‘(A + 1)) = ((( · seq(I
↾ ℕ)) ‘A) ·
((I ↾ ℕ) ‘(A +
1)))) |
| 11 | | fvres 2840 |
. . . . . . . 8
⊢ ((A +
1) ∈ ℕ → ((I ↾ ℕ) ‘(A + 1)) = (I ‘(A + 1))) |
| 12 | 2, 11 | syl 12 |
. . . . . . 7
⊢ (A
∈ ℕ → ((I ↾ ℕ) ‘(A + 1)) = (I ‘(A + 1))) |
| 13 | | oprex 3018 |
. . . . . . . 8
⊢ (A +
1) ∈ V |
| 14 | | fvi 2900 |
. . . . . . . 8
⊢ ((A +
1) ∈ V → (I ‘(A + 1)) = (A +
1)) |
| 15 | 13, 14 | ax-mp 6 |
. . . . . . 7
⊢ (I ‘(A + 1)) = (A +
1) |
| 16 | 12, 15 | syl6eq 1140 |
. . . . . 6
⊢ (A
∈ ℕ → ((I ↾ ℕ) ‘(A + 1)) = (A +
1)) |
| 17 | 16 | opreq2d 3013 |
. . . . 5
⊢ (A
∈ ℕ → ((( · seq(I ↾ ℕ))
‘A) · ((I ↾
ℕ) ‘(A + 1))) = ((( ·
seq(I ↾ ℕ)) ‘A)
· (A + 1))) |
| 18 | | facnnt 4870 |
. . . . . 6
⊢ (A
∈ ℕ → (! ‘A) = ((
· seq(I ↾ ℕ)) ‘A)) |
| 19 | 18 | opreq1d 3012 |
. . . . 5
⊢ (A
∈ ℕ → ((! ‘A)
· (A + 1)) = ((( ·
seq(I ↾ ℕ)) ‘A)
· (A + 1))) |
| 20 | 17, 19 | eqtr4d 1131 |
. . . 4
⊢ (A
∈ ℕ → ((( · seq(I ↾ ℕ))
‘A) · ((I ↾
ℕ) ‘(A + 1))) = ((!
‘A) · (A + 1))) |
| 21 | 4, 10, 20 | 3eqtrd 1132 |
. . 3
⊢ (A
∈ ℕ → (! ‘(A + 1)) =
((! ‘A) · (A + 1))) |
| 22 | | opreq1 3006 |
. . . . . 6
⊢ (A = 0
→ (A + 1) = (0 + 1)) |
| 23 | 22 | fveq2d 2836 |
. . . . 5
⊢ (A = 0
→ (! ‘(A + 1)) = (! ‘(0 +
1))) |
| 24 | | 1cn 4101
. . . . . . . 8
⊢ 1 ∈ ℂ |
| 25 | 24 | addid2 4113 |
. . . . . . 7
⊢ (0 + 1) = 1 |
| 26 | 25 | fveq2i 2835 |
. . . . . 6
⊢ (! ‘(0 + 1)) = (!
‘1) |
| 27 | | fac1 4872 |
. . . . . 6
⊢ (! ‘1) = 1 |
| 28 | 26, 27 | eqtr 1119 |
. . . . 5
⊢ (! ‘(0 + 1)) = 1 |
| 29 | 23, 28 | syl6eq 1140 |
. . . 4
⊢ (A = 0
→ (! ‘(A + 1)) = 1) |
| 30 | | fveq2 2832 |
. . . . . 6
⊢ (A = 0
→ (! ‘A) = (!
‘0)) |
| 31 | 30, 22 | opreq12d 3014 |
. . . . 5
⊢ (A = 0
→ ((! ‘A) · (A + 1)) = ((! ‘0) · (0 + 1))) |
| 32 | | fac0 4871 |
. . . . . . 7
⊢ (! ‘0) = 1 |
| 33 | 32, 25 | opreq12i 3011 |
. . . . . 6
⊢ ((! ‘0) · (0 + 1)) = (1
· 1) |
| 34 | 24 | mulid1 4114 |
. . . . . 6
⊢ (1 · 1) = 1 |
| 35 | 33, 34 | eqtr 1119 |
. . . . 5
⊢ ((! ‘0) · (0 + 1)) =
1 |
| 36 | 31, 35 | syl6eq 1140 |
. . . 4
⊢ (A = 0
→ ((! ‘A) · (A + 1)) = 1) |
| 37 | 29, 36 | eqtr4d 1131 |
. . 3
⊢ (A = 0
→ (! ‘(A + 1)) = ((!
‘A) · (A + 1))) |
| 38 | 21, 37 | jaoi 275 |
. 2
⊢ ((A
∈ ℕ ∨ A = 0) → (!
‘(A + 1)) = ((! ‘A) · (A +
1))) |
| 39 | 1, 38 | sylbi 174 |
1
⊢ (A
∈ ℕ0 → (! ‘(A + 1)) = ((! ‘A) · (A +
1))) |