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

Theorem fprodmul 16040
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 12420 . . . . 5 (1 · 1) = 1
2 prod0 16023 . . . . . 6 𝑘 ∈ ∅ 𝐵 = 1
3 prod0 16023 . . . . . 6 𝑘 ∈ ∅ 𝐶 = 1
42, 3oveq12i 7435 . . . . 5 (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶) = (1 · 1)
5 prod0 16023 . . . . 5 𝑘 ∈ ∅ (𝐵 · 𝐶) = 1
61, 4, 53eqtr4ri 2800 . . . 4 𝑘 ∈ ∅ (𝐵 · 𝐶) = (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶)
7 prodeq1 15987 . . . 4 (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = ∏𝑘 ∈ ∅ (𝐵 · 𝐶))
8 prodeq1 15987 . . . . 5 (𝐴 = ∅ → ∏𝑘𝐴 𝐵 = ∏𝑘 ∈ ∅ 𝐵)
9 prodeq1 15987 . . . . 5 (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
108, 9oveq12d 7441 . . . 4 (𝐴 = ∅ → (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶) = (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶))
116, 7, 103eqtr4a 2827 . . 3 (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
1211a1i 11 . 2 (𝜑 → (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
13 simprl 783 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (♯‘𝐴) ∈ ℕ)
14 nnuz 12919 . . . . . . . . 9 ℕ = (ℤ‘1)
1513, 14eleqtrdi 2876 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (♯‘𝐴) ∈ (ℤ‘1))
16 fprodmul.2 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐵 ∈ ℂ)
1716fmpttd 7117 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐵):𝐴⟶ℂ)
1817adantr 486 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴𝐵):𝐴⟶ℂ)
19 f1of 6827 . . . . . . . . . . 11 (𝑓:(1...(♯‘𝐴))–1-1-onto𝐴𝑓:(1...(♯‘𝐴))⟶𝐴)
2019ad2antll 742 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → 𝑓:(1...(♯‘𝐴))⟶𝐴)
21 fco 6737 . . . . . . . . . 10 (((𝑘𝐴𝐵):𝐴⟶ℂ ∧ 𝑓:(1...(♯‘𝐴))⟶𝐴) → ((𝑘𝐴𝐵) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2218, 20, 21syl2anc 596 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ((𝑘𝐴𝐵) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2322ffvelcdmda 7086 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) ∈ ℂ)
24 fprodmul.3 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
2524fmpttd 7117 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐶):𝐴⟶ℂ)
2625adantr 486 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴𝐶):𝐴⟶ℂ)
27 fco 6737 . . . . . . . . . 10 (((𝑘𝐴𝐶):𝐴⟶ℂ ∧ 𝑓:(1...(♯‘𝐴))⟶𝐴) → ((𝑘𝐴𝐶) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2826, 20, 27syl2anc 596 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ((𝑘𝐴𝐶) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2928ffvelcdmda 7086 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) ∈ ℂ)
3020ffvelcdmda 7086 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (𝑓𝑛) ∈ 𝐴)
31 simpr 490 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → 𝑘𝐴)
3216, 24mulcld 11247 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → (𝐵 · 𝐶) ∈ ℂ)
33 eqid 2766 . . . . . . . . . . . . . . 15 (𝑘𝐴 ↦ (𝐵 · 𝐶)) = (𝑘𝐴 ↦ (𝐵 · 𝐶))
3433fvmpt2 7008 . . . . . . . . . . . . . 14 ((𝑘𝐴 ∧ (𝐵 · 𝐶) ∈ ℂ) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (𝐵 · 𝐶))
3531, 32, 34syl2anc 596 . . . . . . . . . . . . 13 ((𝜑𝑘𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (𝐵 · 𝐶))
36 eqid 2766 . . . . . . . . . . . . . . . 16 (𝑘𝐴𝐵) = (𝑘𝐴𝐵)
3736fvmpt2 7008 . . . . . . . . . . . . . . 15 ((𝑘𝐴𝐵 ∈ ℂ) → ((𝑘𝐴𝐵)‘𝑘) = 𝐵)
3831, 16, 37syl2anc 596 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → ((𝑘𝐴𝐵)‘𝑘) = 𝐵)
39 eqid 2766 . . . . . . . . . . . . . . . 16 (𝑘𝐴𝐶) = (𝑘𝐴𝐶)
4039fvmpt2 7008 . . . . . . . . . . . . . . 15 ((𝑘𝐴𝐶 ∈ ℂ) → ((𝑘𝐴𝐶)‘𝑘) = 𝐶)
4131, 24, 40syl2anc 596 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → ((𝑘𝐴𝐶)‘𝑘) = 𝐶)
4238, 41oveq12d 7441 . . . . . . . . . . . . 13 ((𝜑𝑘𝐴) → (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) = (𝐵 · 𝐶))
4335, 42eqtr4d 2804 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
4443ralrimiva 3160 . . . . . . . . . . 11 (𝜑 → ∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
4544ad2antrr 739 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
46 nffvmpt1 6899 . . . . . . . . . . . 12 𝑘((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛))
47 nffvmpt1 6899 . . . . . . . . . . . . 13 𝑘((𝑘𝐴𝐵)‘(𝑓𝑛))
48 nfcv 2928 . . . . . . . . . . . . 13 𝑘 ·
49 nffvmpt1 6899 . . . . . . . . . . . . 13 𝑘((𝑘𝐴𝐶)‘(𝑓𝑛))
5047, 48, 49nfov 7453 . . . . . . . . . . . 12 𝑘(((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))
5146, 50nfeq 2941 . . . . . . . . . . 11 𝑘((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))
52 fveq2 6888 . . . . . . . . . . . 12 (𝑘 = (𝑓𝑛) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
53 fveq2 6888 . . . . . . . . . . . . 13 (𝑘 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘𝑘) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
54 fveq2 6888 . . . . . . . . . . . . 13 (𝑘 = (𝑓𝑛) → ((𝑘𝐴𝐶)‘𝑘) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
5553, 54oveq12d 7441 . . . . . . . . . . . 12 (𝑘 = (𝑓𝑛) → (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
5652, 55eqeq12d 2782 . . . . . . . . . . 11 (𝑘 = (𝑓𝑛) → (((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) ↔ ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))))
5751, 56rspc 3572 . . . . . . . . . 10 ((𝑓𝑛) ∈ 𝐴 → (∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))))
5830, 45, 57sylc 66 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
59 fvco3 6988 . . . . . . . . . 10 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
6020, 59sylan 592 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
61 fvco3 6988 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
6220, 61sylan 592 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
63 fvco3 6988 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
6420, 63sylan 592 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
6562, 64oveq12d 7441 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ((((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) · (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
6658, 60, 653eqtr4d 2811 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) · (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛)))
6715, 23, 29, 66prodfmul 15970 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (seq1( · , ((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓))‘(♯‘𝐴)) = ((seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)) · (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴))))
68 fveq2 6888 . . . . . . . 8 (𝑚 = (𝑓𝑛) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
69 simprr 785 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)
7032fmpttd 7117 . . . . . . . . . 10 (𝜑 → (𝑘𝐴 ↦ (𝐵 · 𝐶)):𝐴⟶ℂ)
7170adantr 486 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴 ↦ (𝐵 · 𝐶)):𝐴⟶ℂ)
7271ffvelcdmda 7086 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) ∈ ℂ)
7368, 13, 69, 72, 60fprod 16021 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = (seq1( · , ((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓))‘(♯‘𝐴)))
74 fveq2 6888 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘𝑚) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
7518ffvelcdmda 7086 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐵)‘𝑚) ∈ ℂ)
7674, 13, 69, 75, 62fprod 16021 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = (seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)))
77 fveq2 6888 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐶)‘𝑚) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
7826ffvelcdmda 7086 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐶)‘𝑚) ∈ ℂ)
7977, 13, 69, 78, 64fprod 16021 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴)))
8076, 79oveq12d 7441 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)) = ((seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)) · (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴))))
8167, 73, 803eqtr4d 2811 . . . . . 6 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)))
82 prodfc 16025 . . . . . 6 𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = ∏𝑘𝐴 (𝐵 · 𝐶)
83 prodfc 16025 . . . . . . 7 𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = ∏𝑘𝐴 𝐵
84 prodfc 16025 . . . . . . 7 𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑘𝐴 𝐶
8583, 84oveq12i 7435 . . . . . 6 (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)
8681, 82, 853eqtr3g 2824 . . . . 5 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
8786expr 462 . . . 4 ((𝜑 ∧ (♯‘𝐴) ∈ ℕ) → (𝑓:(1...(♯‘𝐴))–1-1-onto𝐴 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
8887exlimdv 1966 . . 3 ((𝜑 ∧ (♯‘𝐴) ∈ ℕ) → (∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
8988expimpd 459 . 2 (𝜑 → (((♯‘𝐴) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴) → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
90 fprodmul.1 . . 3 (𝜑𝐴 ∈ Fin)
91 fz1f1o 15787 . . 3 (𝐴 ∈ Fin → (𝐴 = ∅ ∨ ((♯‘𝐴) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)))
9290, 91syl 18 . 2 (𝜑 → (𝐴 = ∅ ∨ ((♯‘𝐴) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)))
9312, 89, 92mpjaod 874 1 (𝜑 → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  wo 861   = wceq 1570  wex 1812  wcel 2146  wral 3082  c0 4289  cmpt 5197  ccom 5670  wf 6539  1-1-ontowf1o 6542  cfv 6543  (class class class)co 7423  Fincfn 8952  cc 11116  1c1 11119   · cmul 11123  cn 12251  cuz 12880  ...cfz 13553  seqcseq 14057  chash 14386  cprod 15983
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-inf2 9620  ax-cnex 11174  ax-resscn 11175  ax-1cn 11176  ax-icn 11177  ax-addcl 11178  ax-addrcl 11179  ax-mulcl 11180  ax-mulrcl 11181  ax-mulcom 11182  ax-addass 11183  ax-mulass 11184  ax-distr 11185  ax-i2m1 11186  ax-1ne0 11187  ax-1rid 11188  ax-rnegex 11189  ax-rrecex 11190  ax-cnre 11191  ax-pre-lttri 11192  ax-pre-lttrn 11193  ax-pre-ltadd 11194  ax-pre-mulgt0 11195  ax-pre-sup 11196
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-rmo 3372  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-int 4918  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-se 5620  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-isom 6552  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8703  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-sup 9412  df-oi 9482  df-card 9944  df-pnf 11263  df-mnf 11264  df-xr 11265  df-ltxr 11266  df-le 11267  df-sub 11461  df-neg 11462  df-div 11890  df-nn 12252  df-2 12321  df-3 12322  df-n0 12523  df-z 12610  df-uz 12881  df-rp 13035  df-fz 13554  df-fzo 13702  df-seq 14058  df-exp 14118  df-hash 14387  df-cj 15176  df-re 15177  df-im 15178  df-sqrt 15312  df-abs 15313  df-clim 15565  df-prod 15984
This theorem is used by:  fprodsplit  16046  risefallfac  16104  gausslemma2dlem5  27572  gausslemma2dlem6  27573  bcprod  36251
  Copyright terms: Public domain W3C validator