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

Theorem fprodmul 16053
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 12430 . . . . 5 (1 · 1) = 1
2 prod0 16036 . . . . . 6 𝑘 ∈ ∅ 𝐵 = 1
3 prod0 16036 . . . . . 6 𝑘 ∈ ∅ 𝐶 = 1
42, 3oveq12i 7429 . . . . 5 (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶) = (1 · 1)
5 prod0 16036 . . . . 5 𝑘 ∈ ∅ (𝐵 · 𝐶) = 1
61, 4, 53eqtr4ri 2796 . . . 4 𝑘 ∈ ∅ (𝐵 · 𝐶) = (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶)
7 prodeq1 16000 . . . 4 (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = ∏𝑘 ∈ ∅ (𝐵 · 𝐶))
8 prodeq1 16000 . . . . 5 (𝐴 = ∅ → ∏𝑘𝐴 𝐵 = ∏𝑘 ∈ ∅ 𝐵)
9 prodeq1 16000 . . . . 5 (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
108, 9oveq12d 7435 . . . 4 (𝐴 = ∅ → (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶) = (∏𝑘 ∈ ∅ 𝐵 · ∏𝑘 ∈ ∅ 𝐶))
116, 7, 103eqtr4a 2823 . . 3 (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶))
1211a1i 11 . 2 (𝜑 → (𝐴 = ∅ → ∏𝑘𝐴 (𝐵 · 𝐶) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)))
13 simprl 783 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (♯‘𝐴) ∈ ℕ)
14 nnuz 12930 . . . . . . . . 9 ℕ = (ℤ‘1)
1513, 14eleqtrdi 2872 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (♯‘𝐴) ∈ (ℤ‘1))
16 fprodmul.2 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐵 ∈ ℂ)
1716fmpttd 7112 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐵):𝐴⟶ℂ)
1817adantr 486 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴𝐵):𝐴⟶ℂ)
19 f1of 6821 . . . . . . . . . . 11 (𝑓:(1...(♯‘𝐴))–1-1-onto𝐴𝑓:(1...(♯‘𝐴))⟶𝐴)
2019ad2antll 742 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → 𝑓:(1...(♯‘𝐴))⟶𝐴)
21 fco 6731 . . . . . . . . . 10 (((𝑘𝐴𝐵):𝐴⟶ℂ ∧ 𝑓:(1...(♯‘𝐴))⟶𝐴) → ((𝑘𝐴𝐵) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2218, 20, 21syl2anc 596 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ((𝑘𝐴𝐵) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2322ffvelcdmda 7081 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) ∈ ℂ)
24 fprodmul.3 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
2524fmpttd 7112 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐶):𝐴⟶ℂ)
2625adantr 486 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴𝐶):𝐴⟶ℂ)
27 fco 6731 . . . . . . . . . 10 (((𝑘𝐴𝐶):𝐴⟶ℂ ∧ 𝑓:(1...(♯‘𝐴))⟶𝐴) → ((𝑘𝐴𝐶) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2826, 20, 27syl2anc 596 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ((𝑘𝐴𝐶) ∘ 𝑓):(1...(♯‘𝐴))⟶ℂ)
2928ffvelcdmda 7081 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) ∈ ℂ)
3020ffvelcdmda 7081 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (𝑓𝑛) ∈ 𝐴)
31 simpr 490 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → 𝑘𝐴)
3216, 24mulcld 11257 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → (𝐵 · 𝐶) ∈ ℂ)
33 eqid 2762 . . . . . . . . . . . . . . 15 (𝑘𝐴 ↦ (𝐵 · 𝐶)) = (𝑘𝐴 ↦ (𝐵 · 𝐶))
3433fvmpt2 7002 . . . . . . . . . . . . . 14 ((𝑘𝐴 ∧ (𝐵 · 𝐶) ∈ ℂ) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (𝐵 · 𝐶))
3531, 32, 34syl2anc 596 . . . . . . . . . . . . 13 ((𝜑𝑘𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (𝐵 · 𝐶))
36 eqid 2762 . . . . . . . . . . . . . . . 16 (𝑘𝐴𝐵) = (𝑘𝐴𝐵)
3736fvmpt2 7002 . . . . . . . . . . . . . . 15 ((𝑘𝐴𝐵 ∈ ℂ) → ((𝑘𝐴𝐵)‘𝑘) = 𝐵)
3831, 16, 37syl2anc 596 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → ((𝑘𝐴𝐵)‘𝑘) = 𝐵)
39 eqid 2762 . . . . . . . . . . . . . . . 16 (𝑘𝐴𝐶) = (𝑘𝐴𝐶)
4039fvmpt2 7002 . . . . . . . . . . . . . . 15 ((𝑘𝐴𝐶 ∈ ℂ) → ((𝑘𝐴𝐶)‘𝑘) = 𝐶)
4131, 24, 40syl2anc 596 . . . . . . . . . . . . . 14 ((𝜑𝑘𝐴) → ((𝑘𝐴𝐶)‘𝑘) = 𝐶)
4238, 41oveq12d 7435 . . . . . . . . . . . . 13 ((𝜑𝑘𝐴) → (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) = (𝐵 · 𝐶))
4335, 42eqtr4d 2800 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
4443ralrimiva 3156 . . . . . . . . . . 11 (𝜑 → ∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
4544ad2antrr 739 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)))
46 nffvmpt1 6893 . . . . . . . . . . . 12 𝑘((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛))
47 nffvmpt1 6893 . . . . . . . . . . . . 13 𝑘((𝑘𝐴𝐵)‘(𝑓𝑛))
48 nfcv 2924 . . . . . . . . . . . . 13 𝑘 ·
49 nffvmpt1 6893 . . . . . . . . . . . . 13 𝑘((𝑘𝐴𝐶)‘(𝑓𝑛))
5047, 48, 49nfov 7447 . . . . . . . . . . . 12 𝑘(((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))
5146, 50nfeq 2937 . . . . . . . . . . 11 𝑘((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))
52 fveq2 6882 . . . . . . . . . . . 12 (𝑘 = (𝑓𝑛) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
53 fveq2 6882 . . . . . . . . . . . . 13 (𝑘 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘𝑘) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
54 fveq2 6882 . . . . . . . . . . . . 13 (𝑘 = (𝑓𝑛) → ((𝑘𝐴𝐶)‘𝑘) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
5553, 54oveq12d 7435 . . . . . . . . . . . 12 (𝑘 = (𝑓𝑛) → (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
5652, 55eqeq12d 2778 . . . . . . . . . . 11 (𝑘 = (𝑓𝑛) → (((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) ↔ ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))))
5751, 56rspc 3567 . . . . . . . . . 10 ((𝑓𝑛) ∈ 𝐴 → (∀𝑘𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑘) = (((𝑘𝐴𝐵)‘𝑘) · ((𝑘𝐴𝐶)‘𝑘)) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛)))))
5830, 45, 57sylc 66 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
59 fvco3 6982 . . . . . . . . . 10 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
6020, 59sylan 592 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
61 fvco3 6982 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
6220, 61sylan 592 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
63 fvco3 6982 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐴))⟶𝐴𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
6420, 63sylan 592 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
6562, 64oveq12d 7435 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → ((((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) · (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛)) = (((𝑘𝐴𝐵)‘(𝑓𝑛)) · ((𝑘𝐴𝐶)‘(𝑓𝑛))))
6658, 60, 653eqtr4d 2807 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑛 ∈ (1...(♯‘𝐴))) → (((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓)‘𝑛) = ((((𝑘𝐴𝐵) ∘ 𝑓)‘𝑛) · (((𝑘𝐴𝐶) ∘ 𝑓)‘𝑛)))
6715, 23, 29, 66prodfmul 15983 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (seq1( · , ((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓))‘(♯‘𝐴)) = ((seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)) · (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴))))
68 fveq2 6882 . . . . . . . 8 (𝑚 = (𝑓𝑛) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘(𝑓𝑛)))
69 simprr 785 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)
7032fmpttd 7112 . . . . . . . . . 10 (𝜑 → (𝑘𝐴 ↦ (𝐵 · 𝐶)):𝐴⟶ℂ)
7170adantr 486 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (𝑘𝐴 ↦ (𝐵 · 𝐶)):𝐴⟶ℂ)
7271ffvelcdmda 7081 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) ∈ ℂ)
7368, 13, 69, 72, 60fprod 16034 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = (seq1( · , ((𝑘𝐴 ↦ (𝐵 · 𝐶)) ∘ 𝑓))‘(♯‘𝐴)))
74 fveq2 6882 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘𝑚) = ((𝑘𝐴𝐵)‘(𝑓𝑛)))
7518ffvelcdmda 7081 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐵)‘𝑚) ∈ ℂ)
7674, 13, 69, 75, 62fprod 16034 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = (seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)))
77 fveq2 6882 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐶)‘𝑚) = ((𝑘𝐴𝐶)‘(𝑓𝑛)))
7826ffvelcdmda 7081 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐶)‘𝑚) ∈ ℂ)
7977, 13, 69, 78, 64fprod 16034 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴)))
8076, 79oveq12d 7435 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)) = ((seq1( · , ((𝑘𝐴𝐵) ∘ 𝑓))‘(♯‘𝐴)) · (seq1( · , ((𝑘𝐴𝐶) ∘ 𝑓))‘(♯‘𝐴))))
8167, 73, 803eqtr4d 2807 . . . . . 6 ((𝜑 ∧ ((♯‘𝐴) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐴))–1-1-onto𝐴)) → ∏𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)))
82 prodfc 16038 . . . . . 6 𝑚𝐴 ((𝑘𝐴 ↦ (𝐵 · 𝐶))‘𝑚) = ∏𝑘𝐴 (𝐵 · 𝐶)
83 prodfc 16038 . . . . . . 7 𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = ∏𝑘𝐴 𝐵
84 prodfc 16038 . . . . . . 7 𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑘𝐴 𝐶
8583, 84oveq12i 7429 . . . . . 6 (∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) · ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚)) = (∏𝑘𝐴 𝐵 · ∏𝑘𝐴 𝐶)
8681, 82, 853eqtr3g 2820 . . . . 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 15800 . . 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 2145  wral 3078  c0 4282  cmpt 5190  ccom 5663  wf 6533  1-1-ontowf1o 6536  cfv 6537  (class class class)co 7417  Fincfn 8956  cc 11126  1c1 11129   · cmul 11133  cn 12261  cuz 12891  ...cfz 13565  seqcseq 14069  chash 14398  cprod 15996
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7740  ax-inf2 9624  ax-cnex 11184  ax-resscn 11185  ax-1cn 11186  ax-icn 11187  ax-addcl 11188  ax-addrcl 11189  ax-mulcl 11190  ax-mulrcl 11191  ax-mulcom 11192  ax-addass 11193  ax-mulass 11194  ax-distr 11195  ax-i2m1 11196  ax-1ne0 11197  ax-1rid 11198  ax-rnegex 11199  ax-rrecex 11200  ax-cnre 11201  ax-pre-lttri 11202  ax-pre-lttrn 11203  ax-pre-ltadd 11204  ax-pre-mulgt0 11205  ax-pre-sup 11206
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 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-int 4911  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-se 5613  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-isom 6546  df-riota 7374  df-ov 7420  df-oprab 7421  df-mpo 7422  df-om 7867  df-1st 7990  df-2nd 7991  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-er 8700  df-en 8957  df-dom 8958  df-sdom 8959  df-fin 8960  df-sup 9416  df-oi 9486  df-card 9948  df-pnf 11273  df-mnf 11274  df-xr 11275  df-ltxr 11276  df-le 11277  df-sub 11471  df-neg 11472  df-div 11900  df-nn 12262  df-2 12331  df-3 12332  df-n0 12533  df-z 12620  df-uz 12892  df-rp 13047  df-fz 13566  df-fzo 13714  df-seq 14070  df-exp 14130  df-hash 14399  df-cj 15190  df-re 15191  df-im 15192  df-sqrt 15326  df-abs 15327  df-clim 15579  df-prod 15997
This theorem is used by:  fprodsplit  16059  risefallfac  16117  gausslemma2dlem5  27615  gausslemma2dlem6  27616  bcprod  36325
  Copyright terms: Public domain W3C validator