| Step | Hyp | Ref
| Expression |
| 1 | | prod0 15979 |
. . . 4
⊢
∏𝑘 ∈
∅ 𝐵 =
1 |
| 2 | | fprodf1o.3 |
. . . . . . . . 9
⊢ (𝜑 → 𝐹:𝐶–1-1-onto→𝐴) |
| 3 | 2 | adantr 480 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝐶 = ∅) → 𝐹:𝐶–1-1-onto→𝐴) |
| 4 | | f1oeq2 6837 |
. . . . . . . . 9
⊢ (𝐶 = ∅ → (𝐹:𝐶–1-1-onto→𝐴 ↔ 𝐹:∅–1-1-onto→𝐴)) |
| 5 | 4 | adantl 481 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝐶 = ∅) → (𝐹:𝐶–1-1-onto→𝐴 ↔ 𝐹:∅–1-1-onto→𝐴)) |
| 6 | 3, 5 | mpbid 232 |
. . . . . . 7
⊢ ((𝜑 ∧ 𝐶 = ∅) → 𝐹:∅–1-1-onto→𝐴) |
| 7 | | f1ofo 6855 |
. . . . . . 7
⊢ (𝐹:∅–1-1-onto→𝐴 → 𝐹:∅–onto→𝐴) |
| 8 | 6, 7 | syl 17 |
. . . . . 6
⊢ ((𝜑 ∧ 𝐶 = ∅) → 𝐹:∅–onto→𝐴) |
| 9 | | fo00 6884 |
. . . . . . 7
⊢ (𝐹:∅–onto→𝐴 ↔ (𝐹 = ∅ ∧ 𝐴 = ∅)) |
| 10 | 9 | simprbi 496 |
. . . . . 6
⊢ (𝐹:∅–onto→𝐴 → 𝐴 = ∅) |
| 11 | 8, 10 | syl 17 |
. . . . 5
⊢ ((𝜑 ∧ 𝐶 = ∅) → 𝐴 = ∅) |
| 12 | 11 | prodeq1d 15956 |
. . . 4
⊢ ((𝜑 ∧ 𝐶 = ∅) → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ ∅ 𝐵) |
| 13 | | prodeq1 15943 |
. . . . . 6
⊢ (𝐶 = ∅ → ∏𝑛 ∈ 𝐶 𝐷 = ∏𝑛 ∈ ∅ 𝐷) |
| 14 | | prod0 15979 |
. . . . . 6
⊢
∏𝑛 ∈
∅ 𝐷 =
1 |
| 15 | 13, 14 | eqtrdi 2793 |
. . . . 5
⊢ (𝐶 = ∅ → ∏𝑛 ∈ 𝐶 𝐷 = 1) |
| 16 | 15 | adantl 481 |
. . . 4
⊢ ((𝜑 ∧ 𝐶 = ∅) → ∏𝑛 ∈ 𝐶 𝐷 = 1) |
| 17 | 1, 12, 16 | 3eqtr4a 2803 |
. . 3
⊢ ((𝜑 ∧ 𝐶 = ∅) → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷) |
| 18 | 17 | ex 412 |
. 2
⊢ (𝜑 → (𝐶 = ∅ → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷)) |
| 19 | | 2fveq3 6911 |
. . . . . . . 8
⊢ (𝑚 = (𝑓‘𝑛) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘(𝑓‘𝑛)))) |
| 20 | | simprl 771 |
. . . . . . . 8
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → (♯‘𝐶) ∈
ℕ) |
| 21 | | simprr 773 |
. . . . . . . 8
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶) |
| 22 | | f1of 6848 |
. . . . . . . . . . . 12
⊢ (𝐹:𝐶–1-1-onto→𝐴 → 𝐹:𝐶⟶𝐴) |
| 23 | 2, 22 | syl 17 |
. . . . . . . . . . 11
⊢ (𝜑 → 𝐹:𝐶⟶𝐴) |
| 24 | 23 | ffvelcdmda 7104 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ 𝑚 ∈ 𝐶) → (𝐹‘𝑚) ∈ 𝐴) |
| 25 | | fprodf1o.5 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ) |
| 26 | 25 | fmpttd 7135 |
. . . . . . . . . . 11
⊢ (𝜑 → (𝑘 ∈ 𝐴 ↦ 𝐵):𝐴⟶ℂ) |
| 27 | 26 | ffvelcdmda 7104 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ (𝐹‘𝑚) ∈ 𝐴) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)) ∈ ℂ) |
| 28 | 24, 27 | syldan 591 |
. . . . . . . . 9
⊢ ((𝜑 ∧ 𝑚 ∈ 𝐶) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)) ∈ ℂ) |
| 29 | 28 | adantlr 715 |
. . . . . . . 8
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑚 ∈ 𝐶) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)) ∈ ℂ) |
| 30 | | simpr 484 |
. . . . . . . . . . . 12
⊢
(((♯‘𝐶)
∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶) → 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶) |
| 31 | | f1oco 6871 |
. . . . . . . . . . . 12
⊢ ((𝐹:𝐶–1-1-onto→𝐴 ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶) → (𝐹 ∘ 𝑓):(1...(♯‘𝐶))–1-1-onto→𝐴) |
| 32 | 2, 30, 31 | syl2an 596 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → (𝐹 ∘ 𝑓):(1...(♯‘𝐶))–1-1-onto→𝐴) |
| 33 | | f1of 6848 |
. . . . . . . . . . 11
⊢ ((𝐹 ∘ 𝑓):(1...(♯‘𝐶))–1-1-onto→𝐴 → (𝐹 ∘ 𝑓):(1...(♯‘𝐶))⟶𝐴) |
| 34 | 32, 33 | syl 17 |
. . . . . . . . . 10
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → (𝐹 ∘ 𝑓):(1...(♯‘𝐶))⟶𝐴) |
| 35 | | fvco3 7008 |
. . . . . . . . . 10
⊢ (((𝐹 ∘ 𝑓):(1...(♯‘𝐶))⟶𝐴 ∧ 𝑛 ∈ (1...(♯‘𝐶))) → (((𝑘 ∈ 𝐴 ↦ 𝐵) ∘ (𝐹 ∘ 𝑓))‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘((𝐹 ∘ 𝑓)‘𝑛))) |
| 36 | 34, 35 | sylan 580 |
. . . . . . . . 9
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → (((𝑘 ∈ 𝐴 ↦ 𝐵) ∘ (𝐹 ∘ 𝑓))‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘((𝐹 ∘ 𝑓)‘𝑛))) |
| 37 | | f1of 6848 |
. . . . . . . . . . . . 13
⊢ (𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶 → 𝑓:(1...(♯‘𝐶))⟶𝐶) |
| 38 | 37 | adantl 481 |
. . . . . . . . . . . 12
⊢
(((♯‘𝐶)
∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶) → 𝑓:(1...(♯‘𝐶))⟶𝐶) |
| 39 | 38 | adantl 481 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → 𝑓:(1...(♯‘𝐶))⟶𝐶) |
| 40 | | fvco3 7008 |
. . . . . . . . . . 11
⊢ ((𝑓:(1...(♯‘𝐶))⟶𝐶 ∧ 𝑛 ∈ (1...(♯‘𝐶))) → ((𝐹 ∘ 𝑓)‘𝑛) = (𝐹‘(𝑓‘𝑛))) |
| 41 | 39, 40 | sylan 580 |
. . . . . . . . . 10
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → ((𝐹 ∘ 𝑓)‘𝑛) = (𝐹‘(𝑓‘𝑛))) |
| 42 | 41 | fveq2d 6910 |
. . . . . . . . 9
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘((𝐹 ∘ 𝑓)‘𝑛)) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘(𝑓‘𝑛)))) |
| 43 | 36, 42 | eqtrd 2777 |
. . . . . . . 8
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → (((𝑘 ∈ 𝐴 ↦ 𝐵) ∘ (𝐹 ∘ 𝑓))‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘(𝑓‘𝑛)))) |
| 44 | 19, 20, 21, 29, 43 | fprod 15977 |
. . . . . . 7
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → ∏𝑚 ∈ 𝐶 ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)) = (seq1( · , ((𝑘 ∈ 𝐴 ↦ 𝐵) ∘ (𝐹 ∘ 𝑓)))‘(♯‘𝐶))) |
| 45 | | fprodf1o.4 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → (𝐹‘𝑛) = 𝐺) |
| 46 | 23 | ffvelcdmda 7104 |
. . . . . . . . . . . . . 14
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → (𝐹‘𝑛) ∈ 𝐴) |
| 47 | 45, 46 | eqeltrrd 2842 |
. . . . . . . . . . . . 13
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → 𝐺 ∈ 𝐴) |
| 48 | | fprodf1o.1 |
. . . . . . . . . . . . . 14
⊢ (𝑘 = 𝐺 → 𝐵 = 𝐷) |
| 49 | | eqid 2737 |
. . . . . . . . . . . . . 14
⊢ (𝑘 ∈ 𝐴 ↦ 𝐵) = (𝑘 ∈ 𝐴 ↦ 𝐵) |
| 50 | 48, 49 | fvmpti 7015 |
. . . . . . . . . . . . 13
⊢ (𝐺 ∈ 𝐴 → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝐺) = ( I ‘𝐷)) |
| 51 | 47, 50 | syl 17 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝐺) = ( I ‘𝐷)) |
| 52 | 45 | fveq2d 6910 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑛)) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝐺)) |
| 53 | | eqid 2737 |
. . . . . . . . . . . . . 14
⊢ (𝑛 ∈ 𝐶 ↦ 𝐷) = (𝑛 ∈ 𝐶 ↦ 𝐷) |
| 54 | 53 | fvmpt2i 7026 |
. . . . . . . . . . . . 13
⊢ (𝑛 ∈ 𝐶 → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ( I ‘𝐷)) |
| 55 | 54 | adantl 481 |
. . . . . . . . . . . 12
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ( I ‘𝐷)) |
| 56 | 51, 52, 55 | 3eqtr4rd 2788 |
. . . . . . . . . . 11
⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑛))) |
| 57 | 56 | ralrimiva 3146 |
. . . . . . . . . 10
⊢ (𝜑 → ∀𝑛 ∈ 𝐶 ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑛))) |
| 58 | | nffvmpt1 6917 |
. . . . . . . . . . . 12
⊢
Ⅎ𝑛((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) |
| 59 | 58 | nfeq1 2921 |
. . . . . . . . . . 11
⊢
Ⅎ𝑛((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)) |
| 60 | | fveq2 6906 |
. . . . . . . . . . . 12
⊢ (𝑛 = 𝑚 → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚)) |
| 61 | | 2fveq3 6911 |
. . . . . . . . . . . 12
⊢ (𝑛 = 𝑚 → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑛)) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚))) |
| 62 | 60, 61 | eqeq12d 2753 |
. . . . . . . . . . 11
⊢ (𝑛 = 𝑚 → (((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑛)) ↔ ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)))) |
| 63 | 59, 62 | rspc 3610 |
. . . . . . . . . 10
⊢ (𝑚 ∈ 𝐶 → (∀𝑛 ∈ 𝐶 ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑛) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑛)) → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚)))) |
| 64 | 57, 63 | mpan9 506 |
. . . . . . . . 9
⊢ ((𝜑 ∧ 𝑚 ∈ 𝐶) → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚))) |
| 65 | 64 | adantlr 715 |
. . . . . . . 8
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑚 ∈ 𝐶) → ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚))) |
| 66 | 65 | prodeq2dv 15958 |
. . . . . . 7
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → ∏𝑚 ∈ 𝐶 ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ∏𝑚 ∈ 𝐶 ((𝑘 ∈ 𝐴 ↦ 𝐵)‘(𝐹‘𝑚))) |
| 67 | | fveq2 6906 |
. . . . . . . 8
⊢ (𝑚 = ((𝐹 ∘ 𝑓)‘𝑛) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐵)‘((𝐹 ∘ 𝑓)‘𝑛))) |
| 68 | 26 | adantr 480 |
. . . . . . . . 9
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → (𝑘 ∈ 𝐴 ↦ 𝐵):𝐴⟶ℂ) |
| 69 | 68 | ffvelcdmda 7104 |
. . . . . . . 8
⊢ (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) ∧ 𝑚 ∈ 𝐴) → ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝑚) ∈ ℂ) |
| 70 | 67, 20, 32, 69, 36 | fprod 15977 |
. . . . . . 7
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝑚) = (seq1( · , ((𝑘 ∈ 𝐴 ↦ 𝐵) ∘ (𝐹 ∘ 𝑓)))‘(♯‘𝐶))) |
| 71 | 44, 66, 70 | 3eqtr4rd 2788 |
. . . . . 6
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝑚) = ∏𝑚 ∈ 𝐶 ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚)) |
| 72 | | prodfc 15981 |
. . . . . 6
⊢
∏𝑚 ∈
𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝑚) = ∏𝑘 ∈ 𝐴 𝐵 |
| 73 | | prodfc 15981 |
. . . . . 6
⊢
∏𝑚 ∈
𝐶 ((𝑛 ∈ 𝐶 ↦ 𝐷)‘𝑚) = ∏𝑛 ∈ 𝐶 𝐷 |
| 74 | 71, 72, 73 | 3eqtr3g 2800 |
. . . . 5
⊢ ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶)) → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷) |
| 75 | 74 | expr 456 |
. . . 4
⊢ ((𝜑 ∧ (♯‘𝐶) ∈ ℕ) → (𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷)) |
| 76 | 75 | exlimdv 1933 |
. . 3
⊢ ((𝜑 ∧ (♯‘𝐶) ∈ ℕ) →
(∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷)) |
| 77 | 76 | expimpd 453 |
. 2
⊢ (𝜑 → (((♯‘𝐶) ∈ ℕ ∧
∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶) → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷)) |
| 78 | | fprodf1o.2 |
. . 3
⊢ (𝜑 → 𝐶 ∈ Fin) |
| 79 | | fz1f1o 15746 |
. . 3
⊢ (𝐶 ∈ Fin → (𝐶 = ∅ ∨
((♯‘𝐶) ∈
ℕ ∧ ∃𝑓
𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶))) |
| 80 | 78, 79 | syl 17 |
. 2
⊢ (𝜑 → (𝐶 = ∅ ∨ ((♯‘𝐶) ∈ ℕ ∧
∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto→𝐶))) |
| 81 | 18, 77, 80 | mpjaod 861 |
1
⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷) |