MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  fprodmul Structured version   Visualization version   GIF version

Theorem fprodmul 15024
Description: The product of two finite products. (Contributed by Scott Fenton, 14-Dec-2017.)
Hypotheses
Ref Expression
fprodmul.1 (𝜑𝐴 ∈ Fin)
fprodmul.2 ((𝜑𝑘𝐴) → 𝐵 ∈ ℂ)
fprodmul.3 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
Assertion
Ref Expression
fprodmul (𝜑 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
Distinct variable groups:   𝐴,𝑘   𝜑,𝑘
Allowed substitution hints:   𝐵(𝑘)   𝐶(𝑘)

Proof of Theorem fprodmul
Dummy variables 𝑓 𝑚 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 1t1e1 11479 . . . . 5 (1 · 1) = 1
2 prod0 15007 . . . . . 6 𝑘 ∈ ∅ 𝐵 = 1
3 prod0 15007 . . . . . 6 𝑘 ∈ ∅ 𝐶 = 1
42, 3oveq12i 6889 . . . . 5 (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶) = (1 · 1)
5 prod0 15007 . . . . 5 𝑘 ∈ ∅ (𝐵 · 𝐶) = 1
61, 4, 53eqtr4ri 2831 . . . 4 𝑘 ∈ ∅ (𝐵 · 𝐶) = (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶)
7 prodeq1 14973 . . . 4 (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = ∏𝑘 ∈ ∅ (𝐵 · 𝐶))
8 prodeq1 14973 . . . . 5 (𝐴 = ∅ → ∏𝑘𝐴 𝐵 = ∏𝑘 ∈ ∅ 𝐵)
9 prodeq1 14973 . . . . 5 (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
108, 9oveq12d 6895 . . . 4 (𝐴 = ∅ → (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶) = (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶))
116, 7, 103eqtr4a 2858 . . 3 (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
1211a1i 11 . 2 (𝜑 → (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
13 simprl 788 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (♯‘𝐴) ∈ ℕ)
14 nnuz 11964 . . . . . . . . 9 ℕ = (ℤ‘1)
1513, 14syl6eleq 2887 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (♯‘𝐴) ∈ (ℤ‘1))
16 fprodmul.2 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐵 ∈ ℂ)
1716fmpttd 6610 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐵):𝐴⟶ℂ)
1817adantr 473 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴𝐵):𝐴⟶ℂ)
19 f1of 6355 . . . . . . . . . . 11 (𝑓:(1...(♯‘𝐴))–1-1-onto𝐴𝑓:(1...(♯‘𝐴))⟶𝐴)
2019ad2antll 721 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → 𝑓:(1...(♯‘𝐴))⟶𝐴)
21 fco 6272 . . . . . . . . . 10 (((𝑘𝐴𝐵):𝐴⟶ℂ ∧ 𝑓:(1...(♯‘𝐴))⟶𝐴) → ((𝑘𝐴𝐵) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2218, 20, 21syl2anc 580 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ((𝑘𝐴𝐵) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2322ffvelrnda 6584 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) ∈ ℂ)
24 fprodmul.3 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
2524fmpttd 6610 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐶):𝐴⟶ℂ)
2625adantr 473 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴𝐶):𝐴⟶ℂ)
27 fco 6272 . . . . . . . . . 10 (((𝑘𝐴𝐶):𝐴⟶ℂ ∧ 𝑓:(1...(♯‘𝐴))⟶𝐴) → ((𝑘𝐴𝐶) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2826, 20, 27syl2anc 580 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ((𝑘𝐴𝐶) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2928ffvelrnda 6584 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) ∈ ℂ)
3020ffvelrnda 6584 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (𝑓𝑛) ∈ 𝐴)
31 simpr 478 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → 𝑘𝐴)
3216, 24mulcld 10348 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → (𝐵 · 𝐶) ∈ ℂ)
33 eqid 2798 . . . . . . . . . . . . . . 15 (𝑘𝐴 ↦ (𝐵 · 𝐶)) = (𝑘𝐴 ↦ (𝐵 · 𝐶))
3433fvmpt2 6515 . . . . . . . . . . . . . 14 ((𝑘𝐴 ∧ (𝐵 · 𝐶) ∈ ℂ) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (𝐵 · 𝐶))
3531, 32, 34syl2anc 580 . . . . . . . . . . . . 13 ((𝜑𝑘𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (𝐵 · 𝐶))
36 eqid 2798 . . . . . . . . . . . . . . . 16 (𝑘𝐴𝐵) = (𝑘𝐴𝐵)
3736fvmpt2 6515 . . . . . . . . . . . . . . 15 ((𝑘𝐴𝐵 ∈ ℂ) → ((𝑘𝐴𝐵)‘𝑘) = 𝐵)
3831, 16, 37syl2anc 580 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → ((𝑘𝐴𝐵)‘𝑘) = 𝐵)
39 eqid 2798 . . . . . . . . . . . . . . . 16 (𝑘𝐴𝐶) = (𝑘𝐴𝐶)
4039fvmpt2 6515 . . . . . . . . . . . . . . 15 ((𝑘𝐴𝐶 ∈ ℂ) → ((𝑘𝐴𝐶)‘𝑘) = 𝐶)
4131, 24, 40syl2anc 580 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → ((𝑘𝐴𝐶)‘𝑘) = 𝐶)
4238, 41oveq12d 6895 . . . . . . . . . . . . 13 ((𝜑𝑘𝐴) → (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) = (𝐵 · 𝐶))
4335, 42eqtr4d 2835 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
4443ralrimiva 3146 . . . . . . . . . . 11 (𝜑 → ∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
4544ad2antrr 718 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
46 nffvmpt1 6421 . . . . . . . . . . . 12 𝑘((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛))
47 nffvmpt1 6421 . . . . . . . . . . . . 13 𝑘((𝑘𝐴𝐵)‘(𝑓𝑛))
48 nfcv 2940 . . . . . . . . . . . . 13 𝑘 ·
49 nffvmpt1 6421 . . . . . . . . . . . . 13 𝑘((𝑘𝐴𝐶)‘(𝑓𝑛))
5047, 48, 49nfov 6907 . . . . . . . . . . . 12 𝑘(((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))
5146, 50nfeq 2952 . . . . . . . . . . 11 𝑘((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))
52 fveq2 6410 . . . . . . . . . . . 12 (𝑘 = (𝑓𝑛) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
53 fveq2 6410 . . . . . . . . . . . . 13 (𝑘 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘𝑘) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
54 fveq2 6410 . . . . . . . . . . . . 13 (𝑘 = (𝑓𝑛) → ((𝑘𝐴𝐶)‘𝑘) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
5553, 54oveq12d 6895 . . . . . . . . . . . 12 (𝑘 = (𝑓𝑛) → (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
5652, 55eqeq12d 2813 . . . . . . . . . . 11 (𝑘 = (𝑓𝑛) → (((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) ↔ ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))))
5751, 56rspc 3490 . . . . . . . . . 10 ((𝑓𝑛) ∈ 𝐴 → (∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))))
5830, 45, 57sylc 65 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
59 fvco3 6499 . . . . . . . . . 10 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
6020, 59sylan 576 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
61 fvco3 6499 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
6220, 61sylan 576 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
63 fvco3 6499 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
6420, 63sylan 576 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
6562, 64oveq12d 6895 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ((((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) · (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
6658, 60, 653eqtr4d 2842 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) · (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛)))
6715, 23, 29, 66prodfmul 14956 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (seq1( · , ((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓))‘(♯‘𝐴)) = ((seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)) · (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴))))
68 fveq2 6410 . . . . . . . 8 (𝑚 = (𝑓𝑛) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
69 simprr 790 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)
7032fmpttd 6610 . . . . . . . . . 10 (𝜑 → (𝑘𝐴 ↦ (𝐵 · 𝐶)):𝐴⟶ℂ)
7170adantr 473 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴 ↦ (𝐵 · 𝐶)):𝐴⟶ℂ)
7271ffvelrnda 6584 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) ∈ ℂ)
7368, 13, 69, 72, 60fprod 15005 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = (seq1( · , ((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓))‘(♯‘𝐴)))
74 fveq2 6410 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘𝑚) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
7518ffvelrnda 6584 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐵)‘𝑚) ∈ ℂ)
7674, 13, 69, 75, 62fprod 15005 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = (seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)))
77 fveq2 6410 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐶)‘𝑚) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
7826ffvelrnda 6584 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐶)‘𝑚) ∈ ℂ)
7977, 13, 69, 78, 64fprod 15005 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴)))
8076, 79oveq12d 6895 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)) = ((seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)) · (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴))))
8167, 73, 803eqtr4d 2842 . . . . . 6 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)))
82 prodfc 15009 . . . . . 6 𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = ∏𝑘𝐴 (𝐵 · 𝐶)
83 prodfc 15009 . . . . . . 7 𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = ∏𝑘𝐴 𝐵
84 prodfc 15009 . . . . . . 7 𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑘𝐴 𝐶
8583, 84oveq12i 6889 . . . . . 6 (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)
8681, 82, 853eqtr3g 2855 . . . . 5 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
8786expr 449 . . . 4 ((𝜑 ∧ (♯‘𝐴) ∈ ℕ) → (𝑓:(1...(♯‘𝐴))–1-1-onto𝐴 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
8887exlimdv 2029 . . 3 ((𝜑 ∧ (♯‘𝐴) ∈ ℕ) → (∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
8988expimpd 446 . 2 (𝜑 → (((♯‘𝐴) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴) → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
90 fprodmul.1 . . 3 (𝜑𝐴 ∈ Fin)
91 fz1f1o 14779 . . 3 (𝐴 ∈ Fin → (𝐴 = ∅ ∨ ((♯‘𝐴) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)))
9290, 91syl 17 . 2 (𝜑 → (𝐴 = ∅ ∨ ((♯‘𝐴) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)))
9312, 89, 92mpjaod 887 1 (𝜑 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 385  wo 874   = wceq 1653  wex 1875  wcel 2157  wral 3088  c0 4114  cmpt 4921  ccom 5315  wf 6096  1-1-ontowf1o 6099  cfv 6100  (class class class)co 6877  Fincfn 8194  cc 10221  1c1 10224   · cmul 10228  cn 11311  cuz 11927  ...cfz 12577  seqcseq 13052  chash 13367  cprod 14969
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1891  ax-4 1905  ax-5 2006  ax-6 2072  ax-7 2107  ax-8 2159  ax-9 2166  ax-10 2185  ax-11 2200  ax-12 2213  ax-13 2377  ax-ext 2776  ax-rep 4963  ax-sep 4974  ax-nul 4982  ax-pow 5034  ax-pr 5096  ax-un 7182  ax-inf2 8787  ax-cnex 10279  ax-resscn 10280  ax-1cn 10281  ax-icn 10282  ax-addcl 10283  ax-addrcl 10284  ax-mulcl 10285  ax-mulrcl 10286  ax-mulcom 10287  ax-addass 10288  ax-mulass 10289  ax-distr 10290  ax-i2m1 10291  ax-1ne0 10292  ax-1rid 10293  ax-rnegex 10294  ax-rrecex 10295  ax-cnre 10296  ax-pre-lttri 10297  ax-pre-lttrn 10298  ax-pre-ltadd 10299  ax-pre-mulgt0 10300  ax-pre-sup 10301
This theorem depends on definitions:  df-bi 199  df-an 386  df-or 875  df-3or 1109  df-3an 1110  df-tru 1657  df-fal 1667  df-ex 1876  df-nf 1880  df-sb 2065  df-mo 2591  df-eu 2609  df-clab 2785  df-cleq 2791  df-clel 2794  df-nfc 2929  df-ne 2971  df-nel 3074  df-ral 3093  df-rex 3094  df-reu 3095  df-rmo 3096  df-rab 3097  df-v 3386  df-sbc 3633  df-csb 3728  df-dif 3771  df-un 3773  df-in 3775  df-ss 3782  df-pss 3784  df-nul 4115  df-if 4277  df-pw 4350  df-sn 4368  df-pr 4370  df-tp 4372  df-op 4374  df-uni 4628  df-int 4667  df-iun 4711  df-br 4843  df-opab 4905  df-mpt 4922  df-tr 4945  df-id 5219  df-eprel 5224  df-po 5232  df-so 5233  df-fr 5270  df-se 5271  df-we 5272  df-xp 5317  df-rel 5318  df-cnv 5319  df-co 5320  df-dm 5321  df-rn 5322  df-res 5323  df-ima 5324  df-pred 5897  df-ord 5943  df-on 5944  df-lim 5945  df-suc 5946  df-iota 6063  df-fun 6102  df-fn 6103  df-f 6104  df-f1 6105  df-fo 6106  df-f1o 6107  df-fv 6108  df-isom 6109  df-riota 6838  df-ov 6880  df-oprab 6881  df-mpt2 6882  df-om 7299  df-1st 7400  df-2nd 7401  df-wrecs 7644  df-recs 7706  df-rdg 7744  df-1o 7798  df-oadd 7802  df-er 7981  df-en 8195  df-dom 8196  df-sdom 8197  df-fin 8198  df-sup 8589  df-oi 8656  df-card 9050  df-pnf 10364  df-mnf 10365  df-xr 10366  df-ltxr 10367  df-le 10368  df-sub 10557  df-neg 10558  df-div 10976  df-nn 11312  df-2 11373  df-3 11374  df-n0 11578  df-z 11664  df-uz 11928  df-rp 12072  df-fz 12578  df-fzo 12718  df-seq 13053  df-exp 13112  df-hash 13368  df-cj 14177  df-re 14178  df-im 14179  df-sqrt 14313  df-abs 14314  df-clim 14557  df-prod 14970
This theorem is referenced by:  fprodsplit  15030  risefallfac  15088  gausslemma2dlem5  25445  gausslemma2dlem6  25446  bcprod  32131
  Copyright terms: Public domain W3C validator