| Step | Hyp | Ref
| Expression |
| 1 | | breq2 5147 |
. . . . 5
⊢ (𝑗 = 0 → (𝑁 ≤ 𝑗 ↔ 𝑁 ≤ 0)) |
| 2 | | fveq2 6906 |
. . . . . . 7
⊢ (𝑗 = 0 → (!‘𝑗) =
(!‘0)) |
| 3 | 2 | oveq1d 7446 |
. . . . . 6
⊢ (𝑗 = 0 → ((!‘𝑗) / 𝑁) = ((!‘0) / 𝑁)) |
| 4 | 3 | eleq1d 2826 |
. . . . 5
⊢ (𝑗 = 0 → (((!‘𝑗) / 𝑁) ∈ ℕ ↔ ((!‘0) / 𝑁) ∈
ℕ)) |
| 5 | 1, 4 | imbi12d 344 |
. . . 4
⊢ (𝑗 = 0 → ((𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ) ↔ (𝑁 ≤ 0 → ((!‘0) / 𝑁) ∈
ℕ))) |
| 6 | 5 | imbi2d 340 |
. . 3
⊢ (𝑗 = 0 → ((𝑁 ∈ ℕ → (𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ)) ↔ (𝑁 ∈ ℕ → (𝑁 ≤ 0 → ((!‘0) / 𝑁) ∈
ℕ)))) |
| 7 | | breq2 5147 |
. . . . 5
⊢ (𝑗 = 𝑘 → (𝑁 ≤ 𝑗 ↔ 𝑁 ≤ 𝑘)) |
| 8 | | fveq2 6906 |
. . . . . . 7
⊢ (𝑗 = 𝑘 → (!‘𝑗) = (!‘𝑘)) |
| 9 | 8 | oveq1d 7446 |
. . . . . 6
⊢ (𝑗 = 𝑘 → ((!‘𝑗) / 𝑁) = ((!‘𝑘) / 𝑁)) |
| 10 | 9 | eleq1d 2826 |
. . . . 5
⊢ (𝑗 = 𝑘 → (((!‘𝑗) / 𝑁) ∈ ℕ ↔ ((!‘𝑘) / 𝑁) ∈ ℕ)) |
| 11 | 7, 10 | imbi12d 344 |
. . . 4
⊢ (𝑗 = 𝑘 → ((𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ) ↔ (𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ))) |
| 12 | 11 | imbi2d 340 |
. . 3
⊢ (𝑗 = 𝑘 → ((𝑁 ∈ ℕ → (𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ)) ↔ (𝑁 ∈ ℕ → (𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ)))) |
| 13 | | breq2 5147 |
. . . . 5
⊢ (𝑗 = (𝑘 + 1) → (𝑁 ≤ 𝑗 ↔ 𝑁 ≤ (𝑘 + 1))) |
| 14 | | fveq2 6906 |
. . . . . . 7
⊢ (𝑗 = (𝑘 + 1) → (!‘𝑗) = (!‘(𝑘 + 1))) |
| 15 | 14 | oveq1d 7446 |
. . . . . 6
⊢ (𝑗 = (𝑘 + 1) → ((!‘𝑗) / 𝑁) = ((!‘(𝑘 + 1)) / 𝑁)) |
| 16 | 15 | eleq1d 2826 |
. . . . 5
⊢ (𝑗 = (𝑘 + 1) → (((!‘𝑗) / 𝑁) ∈ ℕ ↔ ((!‘(𝑘 + 1)) / 𝑁) ∈ ℕ)) |
| 17 | 13, 16 | imbi12d 344 |
. . . 4
⊢ (𝑗 = (𝑘 + 1) → ((𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ) ↔ (𝑁 ≤ (𝑘 + 1) → ((!‘(𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 18 | 17 | imbi2d 340 |
. . 3
⊢ (𝑗 = (𝑘 + 1) → ((𝑁 ∈ ℕ → (𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ)) ↔ (𝑁 ∈ ℕ → (𝑁 ≤ (𝑘 + 1) → ((!‘(𝑘 + 1)) / 𝑁) ∈ ℕ)))) |
| 19 | | breq2 5147 |
. . . . 5
⊢ (𝑗 = 𝑀 → (𝑁 ≤ 𝑗 ↔ 𝑁 ≤ 𝑀)) |
| 20 | | fveq2 6906 |
. . . . . . 7
⊢ (𝑗 = 𝑀 → (!‘𝑗) = (!‘𝑀)) |
| 21 | 20 | oveq1d 7446 |
. . . . . 6
⊢ (𝑗 = 𝑀 → ((!‘𝑗) / 𝑁) = ((!‘𝑀) / 𝑁)) |
| 22 | 21 | eleq1d 2826 |
. . . . 5
⊢ (𝑗 = 𝑀 → (((!‘𝑗) / 𝑁) ∈ ℕ ↔ ((!‘𝑀) / 𝑁) ∈ ℕ)) |
| 23 | 19, 22 | imbi12d 344 |
. . . 4
⊢ (𝑗 = 𝑀 → ((𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ) ↔ (𝑁 ≤ 𝑀 → ((!‘𝑀) / 𝑁) ∈ ℕ))) |
| 24 | 23 | imbi2d 340 |
. . 3
⊢ (𝑗 = 𝑀 → ((𝑁 ∈ ℕ → (𝑁 ≤ 𝑗 → ((!‘𝑗) / 𝑁) ∈ ℕ)) ↔ (𝑁 ∈ ℕ → (𝑁 ≤ 𝑀 → ((!‘𝑀) / 𝑁) ∈ ℕ)))) |
| 25 | | nnnle0 12299 |
. . . 4
⊢ (𝑁 ∈ ℕ → ¬
𝑁 ≤ 0) |
| 26 | 25 | pm2.21d 121 |
. . 3
⊢ (𝑁 ∈ ℕ → (𝑁 ≤ 0 → ((!‘0) /
𝑁) ∈
ℕ)) |
| 27 | | nnre 12273 |
. . . . . . . . . . . 12
⊢ (𝑁 ∈ ℕ → 𝑁 ∈
ℝ) |
| 28 | | peano2nn0 12566 |
. . . . . . . . . . . . 13
⊢ (𝑘 ∈ ℕ0
→ (𝑘 + 1) ∈
ℕ0) |
| 29 | 28 | nn0red 12588 |
. . . . . . . . . . . 12
⊢ (𝑘 ∈ ℕ0
→ (𝑘 + 1) ∈
ℝ) |
| 30 | | leloe 11347 |
. . . . . . . . . . . 12
⊢ ((𝑁 ∈ ℝ ∧ (𝑘 + 1) ∈ ℝ) →
(𝑁 ≤ (𝑘 + 1) ↔ (𝑁 < (𝑘 + 1) ∨ 𝑁 = (𝑘 + 1)))) |
| 31 | 27, 29, 30 | syl2an 596 |
. . . . . . . . . . 11
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 ≤ (𝑘 + 1) ↔ (𝑁 < (𝑘 + 1) ∨ 𝑁 = (𝑘 + 1)))) |
| 32 | | nnnn0 12533 |
. . . . . . . . . . . . . 14
⊢ (𝑁 ∈ ℕ → 𝑁 ∈
ℕ0) |
| 33 | | nn0leltp1 12677 |
. . . . . . . . . . . . . 14
⊢ ((𝑁 ∈ ℕ0
∧ 𝑘 ∈
ℕ0) → (𝑁 ≤ 𝑘 ↔ 𝑁 < (𝑘 + 1))) |
| 34 | 32, 33 | sylan 580 |
. . . . . . . . . . . . 13
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 ≤ 𝑘 ↔ 𝑁 < (𝑘 + 1))) |
| 35 | | nn0p1nn 12565 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝑘 ∈ ℕ0
→ (𝑘 + 1) ∈
ℕ) |
| 36 | | nnmulcl 12290 |
. . . . . . . . . . . . . . . . . . 19
⊢
((((!‘𝑘) /
𝑁) ∈ ℕ ∧
(𝑘 + 1) ∈ ℕ)
→ (((!‘𝑘) /
𝑁) · (𝑘 + 1)) ∈
ℕ) |
| 37 | 35, 36 | sylan2 593 |
. . . . . . . . . . . . . . . . . 18
⊢
((((!‘𝑘) /
𝑁) ∈ ℕ ∧
𝑘 ∈
ℕ0) → (((!‘𝑘) / 𝑁) · (𝑘 + 1)) ∈ ℕ) |
| 38 | 37 | expcom 413 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑘 ∈ ℕ0
→ (((!‘𝑘) /
𝑁) ∈ ℕ →
(((!‘𝑘) / 𝑁) · (𝑘 + 1)) ∈ ℕ)) |
| 39 | 38 | adantl 481 |
. . . . . . . . . . . . . . . 16
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (((!‘𝑘) /
𝑁) ∈ ℕ →
(((!‘𝑘) / 𝑁) · (𝑘 + 1)) ∈ ℕ)) |
| 40 | | faccl 14322 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝑘 ∈ ℕ0
→ (!‘𝑘) ∈
ℕ) |
| 41 | 40 | nncnd 12282 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑘 ∈ ℕ0
→ (!‘𝑘) ∈
ℂ) |
| 42 | 28 | nn0cnd 12589 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑘 ∈ ℕ0
→ (𝑘 + 1) ∈
ℂ) |
| 43 | | nncn 12274 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (𝑁 ∈ ℕ → 𝑁 ∈
ℂ) |
| 44 | | nnne0 12300 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (𝑁 ∈ ℕ → 𝑁 ≠ 0) |
| 45 | 43, 44 | jca 511 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝑁 ∈ ℕ → (𝑁 ∈ ℂ ∧ 𝑁 ≠ 0)) |
| 46 | 45 | adantr 480 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 ∈ ℂ
∧ 𝑁 ≠
0)) |
| 47 | | div23 11941 |
. . . . . . . . . . . . . . . . . 18
⊢
(((!‘𝑘) ∈
ℂ ∧ (𝑘 + 1)
∈ ℂ ∧ (𝑁
∈ ℂ ∧ 𝑁 ≠
0)) → (((!‘𝑘)
· (𝑘 + 1)) / 𝑁) = (((!‘𝑘) / 𝑁) · (𝑘 + 1))) |
| 48 | 41, 42, 46, 47 | syl2an23an 1425 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (((!‘𝑘)
· (𝑘 + 1)) / 𝑁) = (((!‘𝑘) / 𝑁) · (𝑘 + 1))) |
| 49 | 48 | eleq1d 2826 |
. . . . . . . . . . . . . . . 16
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ ((((!‘𝑘)
· (𝑘 + 1)) / 𝑁) ∈ ℕ ↔
(((!‘𝑘) / 𝑁) · (𝑘 + 1)) ∈ ℕ)) |
| 50 | 39, 49 | sylibrd 259 |
. . . . . . . . . . . . . . 15
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (((!‘𝑘) /
𝑁) ∈ ℕ →
(((!‘𝑘) ·
(𝑘 + 1)) / 𝑁) ∈
ℕ)) |
| 51 | 50 | imim2d 57 |
. . . . . . . . . . . . . 14
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (𝑁 ≤ 𝑘 → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 52 | 51 | com23 86 |
. . . . . . . . . . . . 13
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 ≤ 𝑘 → ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 53 | 34, 52 | sylbird 260 |
. . . . . . . . . . . 12
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 < (𝑘 + 1) → ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 54 | 41 | adantl 481 |
. . . . . . . . . . . . . . . 16
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (!‘𝑘) ∈
ℂ) |
| 55 | 43 | adantr 480 |
. . . . . . . . . . . . . . . 16
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ 𝑁 ∈
ℂ) |
| 56 | 44 | adantr 480 |
. . . . . . . . . . . . . . . 16
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ 𝑁 ≠
0) |
| 57 | 54, 55, 56 | divcan4d 12049 |
. . . . . . . . . . . . . . 15
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (((!‘𝑘)
· 𝑁) / 𝑁) = (!‘𝑘)) |
| 58 | 40 | adantl 481 |
. . . . . . . . . . . . . . 15
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (!‘𝑘) ∈
ℕ) |
| 59 | 57, 58 | eqeltrd 2841 |
. . . . . . . . . . . . . 14
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (((!‘𝑘)
· 𝑁) / 𝑁) ∈
ℕ) |
| 60 | | oveq2 7439 |
. . . . . . . . . . . . . . . 16
⊢ (𝑁 = (𝑘 + 1) → ((!‘𝑘) · 𝑁) = ((!‘𝑘) · (𝑘 + 1))) |
| 61 | 60 | oveq1d 7446 |
. . . . . . . . . . . . . . 15
⊢ (𝑁 = (𝑘 + 1) → (((!‘𝑘) · 𝑁) / 𝑁) = (((!‘𝑘) · (𝑘 + 1)) / 𝑁)) |
| 62 | 61 | eleq1d 2826 |
. . . . . . . . . . . . . 14
⊢ (𝑁 = (𝑘 + 1) → ((((!‘𝑘) · 𝑁) / 𝑁) ∈ ℕ ↔ (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ)) |
| 63 | 59, 62 | syl5ibcom 245 |
. . . . . . . . . . . . 13
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 = (𝑘 + 1) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ)) |
| 64 | 63 | a1dd 50 |
. . . . . . . . . . . 12
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 = (𝑘 + 1) → ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 65 | 53, 64 | jaod 860 |
. . . . . . . . . . 11
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ ((𝑁 < (𝑘 + 1) ∨ 𝑁 = (𝑘 + 1)) → ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 66 | 31, 65 | sylbid 240 |
. . . . . . . . . 10
⊢ ((𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)
→ (𝑁 ≤ (𝑘 + 1) → ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ))) |
| 67 | 66 | ex 412 |
. . . . . . . . 9
⊢ (𝑁 ∈ ℕ → (𝑘 ∈ ℕ0
→ (𝑁 ≤ (𝑘 + 1) → ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ)))) |
| 68 | 67 | com34 91 |
. . . . . . . 8
⊢ (𝑁 ∈ ℕ → (𝑘 ∈ ℕ0
→ ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (𝑁 ≤ (𝑘 + 1) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ)))) |
| 69 | 68 | com12 32 |
. . . . . . 7
⊢ (𝑘 ∈ ℕ0
→ (𝑁 ∈ ℕ
→ ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (𝑁 ≤ (𝑘 + 1) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ)))) |
| 70 | 69 | imp4d 424 |
. . . . . 6
⊢ (𝑘 ∈ ℕ0
→ ((𝑁 ∈ ℕ
∧ ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) ∧ 𝑁 ≤ (𝑘 + 1))) → (((!‘𝑘) · (𝑘 + 1)) / 𝑁) ∈ ℕ)) |
| 71 | | facp1 14317 |
. . . . . . . 8
⊢ (𝑘 ∈ ℕ0
→ (!‘(𝑘 + 1)) =
((!‘𝑘) ·
(𝑘 + 1))) |
| 72 | 71 | oveq1d 7446 |
. . . . . . 7
⊢ (𝑘 ∈ ℕ0
→ ((!‘(𝑘 + 1)) /
𝑁) = (((!‘𝑘) · (𝑘 + 1)) / 𝑁)) |
| 73 | 72 | eleq1d 2826 |
. . . . . 6
⊢ (𝑘 ∈ ℕ0
→ (((!‘(𝑘 + 1))
/ 𝑁) ∈ ℕ ↔
(((!‘𝑘) ·
(𝑘 + 1)) / 𝑁) ∈
ℕ)) |
| 74 | 70, 73 | sylibrd 259 |
. . . . 5
⊢ (𝑘 ∈ ℕ0
→ ((𝑁 ∈ ℕ
∧ ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) ∧ 𝑁 ≤ (𝑘 + 1))) → ((!‘(𝑘 + 1)) / 𝑁) ∈ ℕ)) |
| 75 | 74 | exp4d 433 |
. . . 4
⊢ (𝑘 ∈ ℕ0
→ (𝑁 ∈ ℕ
→ ((𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ) → (𝑁 ≤ (𝑘 + 1) → ((!‘(𝑘 + 1)) / 𝑁) ∈ ℕ)))) |
| 76 | 75 | a2d 29 |
. . 3
⊢ (𝑘 ∈ ℕ0
→ ((𝑁 ∈ ℕ
→ (𝑁 ≤ 𝑘 → ((!‘𝑘) / 𝑁) ∈ ℕ)) → (𝑁 ∈ ℕ → (𝑁 ≤ (𝑘 + 1) → ((!‘(𝑘 + 1)) / 𝑁) ∈ ℕ)))) |
| 77 | 6, 12, 18, 24, 26, 76 | nn0ind 12713 |
. 2
⊢ (𝑀 ∈ ℕ0
→ (𝑁 ∈ ℕ
→ (𝑁 ≤ 𝑀 → ((!‘𝑀) / 𝑁) ∈ ℕ))) |
| 78 | 77 | 3imp 1111 |
1
⊢ ((𝑀 ∈ ℕ0
∧ 𝑁 ∈ ℕ
∧ 𝑁 ≤ 𝑀) → ((!‘𝑀) / 𝑁) ∈ ℕ) |