Proof of Theorem fprodrev
| Step | Hyp | Ref
 | Expression | 
| 1 |   | fprodrev.5 | 
. 2
⊢ (𝑗 = (𝐾 − 𝑘) → 𝐴 = 𝐵) | 
| 2 |   | fprodshft.1 | 
. . . 4
⊢ (𝜑 → 𝐾 ∈ ℤ) | 
| 3 |   | fprodshft.3 | 
. . . 4
⊢ (𝜑 → 𝑁 ∈ ℤ) | 
| 4 | 2, 3 | zsubcld 9453 | 
. . 3
⊢ (𝜑 → (𝐾 − 𝑁) ∈ ℤ) | 
| 5 |   | fprodshft.2 | 
. . . 4
⊢ (𝜑 → 𝑀 ∈ ℤ) | 
| 6 | 2, 5 | zsubcld 9453 | 
. . 3
⊢ (𝜑 → (𝐾 − 𝑀) ∈ ℤ) | 
| 7 | 4, 6 | fzfigd 10523 | 
. 2
⊢ (𝜑 → ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∈ Fin) | 
| 8 |   | eqid 2196 | 
. . 3
⊢ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ↦ (𝐾 − 𝑗)) = (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ↦ (𝐾 − 𝑗)) | 
| 9 | 2 | adantr 276 | 
. . . 4
⊢ ((𝜑 ∧ 𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → 𝐾 ∈ ℤ) | 
| 10 |   | elfzelz 10100 | 
. . . . 5
⊢ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) → 𝑗 ∈ ℤ) | 
| 11 | 10 | adantl 277 | 
. . . 4
⊢ ((𝜑 ∧ 𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → 𝑗 ∈ ℤ) | 
| 12 | 9, 11 | zsubcld 9453 | 
. . 3
⊢ ((𝜑 ∧ 𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → (𝐾 − 𝑗) ∈ ℤ) | 
| 13 | 2 | adantr 276 | 
. . . 4
⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝐾 ∈ ℤ) | 
| 14 |   | elfzelz 10100 | 
. . . . 5
⊢ (𝑘 ∈ (𝑀...𝑁) → 𝑘 ∈ ℤ) | 
| 15 | 14 | adantl 277 | 
. . . 4
⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝑘 ∈ ℤ) | 
| 16 | 13, 15 | zsubcld 9453 | 
. . 3
⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → (𝐾 − 𝑘) ∈ ℤ) | 
| 17 |   | simprr 531 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑘 = (𝐾 − 𝑗)) | 
| 18 |   | simprl 529 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) | 
| 19 | 5 | adantr 276 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑀 ∈ ℤ) | 
| 20 | 3 | adantr 276 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑁 ∈ ℤ) | 
| 21 | 2 | adantr 276 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝐾 ∈ ℤ) | 
| 22 | 10 | ad2antrl 490 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑗 ∈ ℤ) | 
| 23 |   | fzrev 10159 | 
. . . . . . . 8
⊢ (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝐾 ∈ ℤ ∧ 𝑗 ∈ ℤ)) → (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ↔ (𝐾 − 𝑗) ∈ (𝑀...𝑁))) | 
| 24 | 19, 20, 21, 22, 23 | syl22anc 1250 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ↔ (𝐾 − 𝑗) ∈ (𝑀...𝑁))) | 
| 25 | 18, 24 | mpbid 147 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → (𝐾 − 𝑗) ∈ (𝑀...𝑁)) | 
| 26 | 17, 25 | eqeltrd 2273 | 
. . . . 5
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑘 ∈ (𝑀...𝑁)) | 
| 27 |   | oveq2 5930 | 
. . . . . . 7
⊢ (𝑘 = (𝐾 − 𝑗) → (𝐾 − 𝑘) = (𝐾 − (𝐾 − 𝑗))) | 
| 28 | 27 | ad2antll 491 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → (𝐾 − 𝑘) = (𝐾 − (𝐾 − 𝑗))) | 
| 29 | 2 | zcnd 9449 | 
. . . . . . . 8
⊢ (𝜑 → 𝐾 ∈ ℂ) | 
| 30 | 29 | adantr 276 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝐾 ∈ ℂ) | 
| 31 | 10 | zcnd 9449 | 
. . . . . . . 8
⊢ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) → 𝑗 ∈ ℂ) | 
| 32 | 31 | ad2antrl 490 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑗 ∈ ℂ) | 
| 33 | 30, 32 | nncand 8342 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → (𝐾 − (𝐾 − 𝑗)) = 𝑗) | 
| 34 | 28, 33 | eqtr2d 2230 | 
. . . . 5
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → 𝑗 = (𝐾 − 𝑘)) | 
| 35 | 26, 34 | jca 306 | 
. . . 4
⊢ ((𝜑 ∧ (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) → (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) | 
| 36 |   | simprr 531 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑗 = (𝐾 − 𝑘)) | 
| 37 |   | simprl 529 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑘 ∈ (𝑀...𝑁)) | 
| 38 | 5 | adantr 276 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑀 ∈ ℤ) | 
| 39 | 3 | adantr 276 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑁 ∈ ℤ) | 
| 40 | 2 | adantr 276 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝐾 ∈ ℤ) | 
| 41 | 14 | ad2antrl 490 | 
. . . . . . . 8
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑘 ∈ ℤ) | 
| 42 |   | fzrev2 10160 | 
. . . . . . . 8
⊢ (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝐾 ∈ ℤ ∧ 𝑘 ∈ ℤ)) → (𝑘 ∈ (𝑀...𝑁) ↔ (𝐾 − 𝑘) ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)))) | 
| 43 | 38, 39, 40, 41, 42 | syl22anc 1250 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → (𝑘 ∈ (𝑀...𝑁) ↔ (𝐾 − 𝑘) ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)))) | 
| 44 | 37, 43 | mpbid 147 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → (𝐾 − 𝑘) ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) | 
| 45 | 36, 44 | eqeltrd 2273 | 
. . . . 5
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) | 
| 46 |   | oveq2 5930 | 
. . . . . . 7
⊢ (𝑗 = (𝐾 − 𝑘) → (𝐾 − 𝑗) = (𝐾 − (𝐾 − 𝑘))) | 
| 47 | 46 | ad2antll 491 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → (𝐾 − 𝑗) = (𝐾 − (𝐾 − 𝑘))) | 
| 48 | 29 | adantr 276 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝐾 ∈ ℂ) | 
| 49 | 14 | zcnd 9449 | 
. . . . . . . 8
⊢ (𝑘 ∈ (𝑀...𝑁) → 𝑘 ∈ ℂ) | 
| 50 | 49 | ad2antrl 490 | 
. . . . . . 7
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑘 ∈ ℂ) | 
| 51 | 48, 50 | nncand 8342 | 
. . . . . 6
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → (𝐾 − (𝐾 − 𝑘)) = 𝑘) | 
| 52 | 47, 51 | eqtr2d 2230 | 
. . . . 5
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → 𝑘 = (𝐾 − 𝑗)) | 
| 53 | 45, 52 | jca 306 | 
. . . 4
⊢ ((𝜑 ∧ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘))) → (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗))) | 
| 54 | 35, 53 | impbida 596 | 
. . 3
⊢ (𝜑 → ((𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ∧ 𝑘 = (𝐾 − 𝑗)) ↔ (𝑘 ∈ (𝑀...𝑁) ∧ 𝑗 = (𝐾 − 𝑘)))) | 
| 55 | 8, 12, 16, 54 | f1od 6126 | 
. 2
⊢ (𝜑 → (𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ↦ (𝐾 − 𝑗)):((𝐾 − 𝑁)...(𝐾 − 𝑀))–1-1-onto→(𝑀...𝑁)) | 
| 56 |   | oveq2 5930 | 
. . 3
⊢ (𝑗 = 𝑘 → (𝐾 − 𝑗) = (𝐾 − 𝑘)) | 
| 57 |   | simpr 110 | 
. . 3
⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → 𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) | 
| 58 | 2 | adantr 276 | 
. . . 4
⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → 𝐾 ∈ ℤ) | 
| 59 |   | elfzelz 10100 | 
. . . . 5
⊢ (𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) → 𝑘 ∈ ℤ) | 
| 60 | 59 | adantl 277 | 
. . . 4
⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → 𝑘 ∈ ℤ) | 
| 61 | 58, 60 | zsubcld 9453 | 
. . 3
⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → (𝐾 − 𝑘) ∈ ℤ) | 
| 62 | 8, 56, 57, 61 | fvmptd3 5655 | 
. 2
⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))) → ((𝑗 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀)) ↦ (𝐾 − 𝑗))‘𝑘) = (𝐾 − 𝑘)) | 
| 63 |   | fprodshft.4 | 
. 2
⊢ ((𝜑 ∧ 𝑗 ∈ (𝑀...𝑁)) → 𝐴 ∈ ℂ) | 
| 64 | 1, 7, 55, 62, 63 | fprodf1o 11753 | 
1
⊢ (𝜑 → ∏𝑗 ∈ (𝑀...𝑁)𝐴 = ∏𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))𝐵) |