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

Theorem fprodss 14517
Description: Change the index set to a subset in a finite sum. (Contributed by Scott Fenton, 16-Dec-2017.)
Hypotheses
Ref Expression
fprodss.1 (𝜑𝐴𝐵)
fprodss.2 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
fprodss.3 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 = 1)
fprodss.4 (𝜑𝐵 ∈ Fin)
Assertion
Ref Expression
fprodss (𝜑 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
Distinct variable groups:   𝐴,𝑘   𝐵,𝑘   𝜑,𝑘
Allowed substitution hint:   𝐶(𝑘)

Proof of Theorem fprodss
Dummy variables 𝑓 𝑚 𝑛 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fprodss.1 . . 3 (𝜑𝐴𝐵)
2 sseq2 3590 . . . . 5 (𝐵 = ∅ → (𝐴𝐵𝐴 ⊆ ∅))
3 ss0 3926 . . . . 5 (𝐴 ⊆ ∅ → 𝐴 = ∅)
42, 3syl6bi 242 . . . 4 (𝐵 = ∅ → (𝐴𝐵𝐴 = ∅))
5 prodeq1 14478 . . . . . 6 (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
6 prodeq1 14478 . . . . . . 7 (𝐵 = ∅ → ∏𝑘𝐵 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
76eqcomd 2616 . . . . . 6 (𝐵 = ∅ → ∏𝑘 ∈ ∅ 𝐶 = ∏𝑘𝐵 𝐶)
85, 7sylan9eq 2664 . . . . 5 ((𝐴 = ∅ ∧ 𝐵 = ∅) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
98expcom 450 . . . 4 (𝐵 = ∅ → (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
104, 9syld 46 . . 3 (𝐵 = ∅ → (𝐴𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
111, 10syl5com 31 . 2 (𝜑 → (𝐵 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
12 cnvimass 5404 . . . . . . . . 9 (𝑓𝐴) ⊆ dom 𝑓
13 simprr 792 . . . . . . . . . . 11 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)
14 f1of 6050 . . . . . . . . . . 11 (𝑓:(1...(#‘𝐵))–1-1-onto𝐵𝑓:(1...(#‘𝐵))⟶𝐵)
1513, 14syl 17 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(#‘𝐵))⟶𝐵)
16 fdm 5964 . . . . . . . . . 10 (𝑓:(1...(#‘𝐵))⟶𝐵 → dom 𝑓 = (1...(#‘𝐵)))
1715, 16syl 17 . . . . . . . . 9 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → dom 𝑓 = (1...(#‘𝐵)))
1812, 17syl5sseq 3616 . . . . . . . 8 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑓𝐴) ⊆ (1...(#‘𝐵)))
19 f1ofn 6051 . . . . . . . . . . . . 13 (𝑓:(1...(#‘𝐵))–1-1-onto𝐵𝑓 Fn (1...(#‘𝐵)))
2013, 19syl 17 . . . . . . . . . . . 12 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → 𝑓 Fn (1...(#‘𝐵)))
21 elpreima 6245 . . . . . . . . . . . 12 (𝑓 Fn (1...(#‘𝐵)) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(#‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
2220, 21syl 17 . . . . . . . . . . 11 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(#‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
2315ffvelrnda 6267 . . . . . . . . . . . . 13 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (1...(#‘𝐵))) → (𝑓𝑛) ∈ 𝐵)
2423ex 449 . . . . . . . . . . . 12 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (1...(#‘𝐵)) → (𝑓𝑛) ∈ 𝐵))
2524adantrd 483 . . . . . . . . . . 11 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ((𝑛 ∈ (1...(#‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴) → (𝑓𝑛) ∈ 𝐵))
2622, 25sylbid 229 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (𝑓𝐴) → (𝑓𝑛) ∈ 𝐵))
2726imp 444 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → (𝑓𝑛) ∈ 𝐵)
28 fprodss.2 . . . . . . . . . . . . . . 15 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
2928ex 449 . . . . . . . . . . . . . 14 (𝜑 → (𝑘𝐴𝐶 ∈ ℂ))
3029adantr 480 . . . . . . . . . . . . 13 ((𝜑𝑘𝐵) → (𝑘𝐴𝐶 ∈ ℂ))
31 eldif 3550 . . . . . . . . . . . . . . 15 (𝑘 ∈ (𝐵𝐴) ↔ (𝑘𝐵 ∧ ¬ 𝑘𝐴))
32 fprodss.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 = 1)
33 ax-1cn 9873 . . . . . . . . . . . . . . . 16 1 ∈ ℂ
3432, 33syl6eqel 2696 . . . . . . . . . . . . . . 15 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 ∈ ℂ)
3531, 34sylan2br 492 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑘𝐵 ∧ ¬ 𝑘𝐴)) → 𝐶 ∈ ℂ)
3635expr 641 . . . . . . . . . . . . 13 ((𝜑𝑘𝐵) → (¬ 𝑘𝐴𝐶 ∈ ℂ))
3730, 36pm2.61d 169 . . . . . . . . . . . 12 ((𝜑𝑘𝐵) → 𝐶 ∈ ℂ)
3837adantlr 747 . . . . . . . . . . 11 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑘𝐵) → 𝐶 ∈ ℂ)
39 eqid 2610 . . . . . . . . . . 11 (𝑘𝐵𝐶) = (𝑘𝐵𝐶)
4038, 39fmptd 6292 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑘𝐵𝐶):𝐵⟶ℂ)
4140ffvelrnda 6267 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ (𝑓𝑛) ∈ 𝐵) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) ∈ ℂ)
4227, 41syldan 486 . . . . . . . 8 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) ∈ ℂ)
43 eqid 2610 . . . . . . . . 9 (ℤ‘1) = (ℤ‘1)
44 simprl 790 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (#‘𝐵) ∈ ℕ)
45 nnuz 11599 . . . . . . . . . 10 ℕ = (ℤ‘1)
4644, 45syl6eleq 2698 . . . . . . . . 9 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (#‘𝐵) ∈ (ℤ‘1))
47 ssid 3587 . . . . . . . . . 10 (1...(#‘𝐵)) ⊆ (1...(#‘𝐵))
4847a1i 11 . . . . . . . . 9 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (1...(#‘𝐵)) ⊆ (1...(#‘𝐵)))
4943, 46, 48fprodntriv 14511 . . . . . . . 8 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∃𝑚 ∈ (ℤ‘1)∃𝑦(𝑦 ≠ 0 ∧ seq𝑚( · , (𝑛 ∈ (ℤ‘1) ↦ if(𝑛 ∈ (1...(#‘𝐵)), ((𝑘𝐵𝐶)‘(𝑓𝑛)), 1))) ⇝ 𝑦))
50 eldifi 3694 . . . . . . . . . . . 12 (𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴)) → 𝑛 ∈ (1...(#‘𝐵)))
5150, 23sylan2 490 . . . . . . . . . . 11 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → (𝑓𝑛) ∈ 𝐵)
52 eldifn 3695 . . . . . . . . . . . . 13 (𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴)) → ¬ 𝑛 ∈ (𝑓𝐴))
5352adantl 481 . . . . . . . . . . . 12 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ¬ 𝑛 ∈ (𝑓𝐴))
5422adantr 480 . . . . . . . . . . . . 13 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(#‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
5550adantl 481 . . . . . . . . . . . . . 14 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → 𝑛 ∈ (1...(#‘𝐵)))
5655biantrurd 528 . . . . . . . . . . . . 13 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ((𝑓𝑛) ∈ 𝐴 ↔ (𝑛 ∈ (1...(#‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
5754, 56bitr4d 270 . . . . . . . . . . . 12 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑓𝑛) ∈ 𝐴))
5853, 57mtbid 313 . . . . . . . . . . 11 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ¬ (𝑓𝑛) ∈ 𝐴)
5951, 58eldifd 3551 . . . . . . . . . 10 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → (𝑓𝑛) ∈ (𝐵𝐴))
60 difss 3699 . . . . . . . . . . . . 13 (𝐵𝐴) ⊆ 𝐵
61 resmpt 5369 . . . . . . . . . . . . 13 ((𝐵𝐴) ⊆ 𝐵 → ((𝑘𝐵𝐶) ↾ (𝐵𝐴)) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶))
6260, 61ax-mp 5 . . . . . . . . . . . 12 ((𝑘𝐵𝐶) ↾ (𝐵𝐴)) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶)
6362fveq1i 6104 . . . . . . . . . . 11 (((𝑘𝐵𝐶) ↾ (𝐵𝐴))‘(𝑓𝑛)) = ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛))
64 fvres 6117 . . . . . . . . . . 11 ((𝑓𝑛) ∈ (𝐵𝐴) → (((𝑘𝐵𝐶) ↾ (𝐵𝐴))‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
6563, 64syl5eqr 2658 . . . . . . . . . 10 ((𝑓𝑛) ∈ (𝐵𝐴) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
6659, 65syl 17 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
67 1ex 9914 . . . . . . . . . . . . . . 15 1 ∈ V
6867elsn2 4158 . . . . . . . . . . . . . 14 (𝐶 ∈ {1} ↔ 𝐶 = 1)
6932, 68sylibr 223 . . . . . . . . . . . . 13 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 ∈ {1})
70 eqid 2610 . . . . . . . . . . . . 13 (𝑘 ∈ (𝐵𝐴) ↦ 𝐶) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶)
7169, 70fmptd 6292 . . . . . . . . . . . 12 (𝜑 → (𝑘 ∈ (𝐵𝐴) ↦ 𝐶):(𝐵𝐴)⟶{1})
7271ad2antrr 758 . . . . . . . . . . 11 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → (𝑘 ∈ (𝐵𝐴) ↦ 𝐶):(𝐵𝐴)⟶{1})
7372, 59ffvelrnd 6268 . . . . . . . . . 10 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) ∈ {1})
74 elsni 4142 . . . . . . . . . 10 (((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) ∈ {1} → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = 1)
7573, 74syl 17 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = 1)
7666, 75eqtr3d 2646 . . . . . . . 8 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(#‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) = 1)
77 fzssuz 12253 . . . . . . . . 9 (1...(#‘𝐵)) ⊆ (ℤ‘1)
7877a1i 11 . . . . . . . 8 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (1...(#‘𝐵)) ⊆ (ℤ‘1))
7918, 42, 49, 76, 78prodss 14516 . . . . . . 7 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)) = ∏𝑛 ∈ (1...(#‘𝐵))((𝑘𝐵𝐶)‘(𝑓𝑛)))
801adantr 480 . . . . . . . . . . . 12 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → 𝐴𝐵)
8180resmptd 5371 . . . . . . . . . . 11 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ((𝑘𝐵𝐶) ↾ 𝐴) = (𝑘𝐴𝐶))
8281fveq1d 6105 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (((𝑘𝐵𝐶) ↾ 𝐴)‘𝑚) = ((𝑘𝐴𝐶)‘𝑚))
83 fvres 6117 . . . . . . . . . 10 (𝑚𝐴 → (((𝑘𝐵𝐶) ↾ 𝐴)‘𝑚) = ((𝑘𝐵𝐶)‘𝑚))
8482, 83sylan9req 2665 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐶)‘𝑚) = ((𝑘𝐵𝐶)‘𝑚))
8584prodeq2dv 14492 . . . . . . . 8 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑚𝐴 ((𝑘𝐵𝐶)‘𝑚))
86 fveq2 6103 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐵𝐶)‘𝑚) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
87 fzfid 12634 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (1...(#‘𝐵)) ∈ Fin)
8887, 15fisuppfi 8166 . . . . . . . . 9 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑓𝐴) ∈ Fin)
89 f1of1 6049 . . . . . . . . . . . 12 (𝑓:(1...(#‘𝐵))–1-1-onto𝐵𝑓:(1...(#‘𝐵))–1-1𝐵)
9013, 89syl 17 . . . . . . . . . . 11 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(#‘𝐵))–1-1𝐵)
91 f1ores 6064 . . . . . . . . . . 11 ((𝑓:(1...(#‘𝐵))–1-1𝐵 ∧ (𝑓𝐴) ⊆ (1...(#‘𝐵))) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)))
9290, 18, 91syl2anc 691 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)))
93 f1ofo 6057 . . . . . . . . . . . . 13 (𝑓:(1...(#‘𝐵))–1-1-onto𝐵𝑓:(1...(#‘𝐵))–onto𝐵)
9413, 93syl 17 . . . . . . . . . . . 12 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(#‘𝐵))–onto𝐵)
95 foimacnv 6067 . . . . . . . . . . . 12 ((𝑓:(1...(#‘𝐵))–onto𝐵𝐴𝐵) → (𝑓 “ (𝑓𝐴)) = 𝐴)
9694, 80, 95syl2anc 691 . . . . . . . . . . 11 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑓 “ (𝑓𝐴)) = 𝐴)
97 f1oeq3 6042 . . . . . . . . . . 11 ((𝑓 “ (𝑓𝐴)) = 𝐴 → ((𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)) ↔ (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴))
9896, 97syl 17 . . . . . . . . . 10 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ((𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)) ↔ (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴))
9992, 98mpbid 221 . . . . . . . . 9 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴)
100 fvres 6117 . . . . . . . . . 10 (𝑛 ∈ (𝑓𝐴) → ((𝑓 ↾ (𝑓𝐴))‘𝑛) = (𝑓𝑛))
101100adantl 481 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → ((𝑓 ↾ (𝑓𝐴))‘𝑛) = (𝑓𝑛))
10280sselda 3568 . . . . . . . . . 10 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → 𝑚𝐵)
10340ffvelrnda 6267 . . . . . . . . . 10 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐵) → ((𝑘𝐵𝐶)‘𝑚) ∈ ℂ)
104102, 103syldan 486 . . . . . . . . 9 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → ((𝑘𝐵𝐶)‘𝑚) ∈ ℂ)
10586, 88, 99, 101, 104fprodf1o 14515 . . . . . . . 8 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)))
10685, 105eqtrd 2644 . . . . . . 7 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)))
107 eqidd 2611 . . . . . . . 8 (((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (1...(#‘𝐵))) → (𝑓𝑛) = (𝑓𝑛))
10886, 87, 13, 107, 103fprodf1o 14515 . . . . . . 7 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑛 ∈ (1...(#‘𝐵))((𝑘𝐵𝐶)‘(𝑓𝑛)))
10979, 106, 1083eqtr4d 2654 . . . . . 6 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚))
110 prodfc 14514 . . . . . 6 𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑘𝐴 𝐶
111 prodfc 14514 . . . . . 6 𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑘𝐵 𝐶
112109, 110, 1113eqtr3g 2667 . . . . 5 ((𝜑 ∧ ((#‘𝐵) ∈ ℕ ∧ 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
113112expr 641 . . . 4 ((𝜑 ∧ (#‘𝐵) ∈ ℕ) → (𝑓:(1...(#‘𝐵))–1-1-onto𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
114113exlimdv 1848 . . 3 ((𝜑 ∧ (#‘𝐵) ∈ ℕ) → (∃𝑓 𝑓:(1...(#‘𝐵))–1-1-onto𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
115114expimpd 627 . 2 (𝜑 → (((#‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(#‘𝐵))–1-1-onto𝐵) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
116 fprodss.4 . . 3 (𝜑𝐵 ∈ Fin)
117 fz1f1o 14288 . . 3 (𝐵 ∈ Fin → (𝐵 = ∅ ∨ ((#‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)))
118116, 117syl 17 . 2 (𝜑 → (𝐵 = ∅ ∨ ((#‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(#‘𝐵))–1-1-onto𝐵)))
11911, 115, 118mpjaod 395 1 (𝜑 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 195  wo 382  wa 383   = wceq 1475  wex 1695  wcel 1977  cdif 3537  wss 3540  c0 3874  {csn 4125  cmpt 4643  ccnv 5037  dom cdm 5038  cres 5040  cima 5041   Fn wfn 5799  wf 5800  1-1wf1 5801  ontowfo 5802  1-1-ontowf1o 5803  cfv 5804  (class class class)co 6549  Fincfn 7841  cc 9813  1c1 9816  cn 10897  cuz 11563  ...cfz 12197  #chash 12979  cprod 14474
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-rep 4699  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847  ax-inf2 8421  ax-cnex 9871  ax-resscn 9872  ax-1cn 9873  ax-icn 9874  ax-addcl 9875  ax-addrcl 9876  ax-mulcl 9877  ax-mulrcl 9878  ax-mulcom 9879  ax-addass 9880  ax-mulass 9881  ax-distr 9882  ax-i2m1 9883  ax-1ne0 9884  ax-1rid 9885  ax-rnegex 9886  ax-rrecex 9887  ax-cnre 9888  ax-pre-lttri 9889  ax-pre-lttrn 9890  ax-pre-ltadd 9891  ax-pre-mulgt0 9892  ax-pre-sup 9893
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3or 1032  df-3an 1033  df-tru 1478  df-fal 1481  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-nel 2783  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-uni 4373  df-int 4411  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-se 4998  df-we 4999  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-isom 5813  df-riota 6511  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-om 6958  df-1st 7059  df-2nd 7060  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-1o 7447  df-oadd 7451  df-er 7629  df-en 7842  df-dom 7843  df-sdom 7844  df-fin 7845  df-sup 8231  df-oi 8298  df-card 8648  df-pnf 9955  df-mnf 9956  df-xr 9957  df-ltxr 9958  df-le 9959  df-sub 10147  df-neg 10148  df-div 10564  df-nn 10898  df-2 10956  df-3 10957  df-n0 11170  df-z 11255  df-uz 11564  df-rp 11709  df-fz 12198  df-fzo 12335  df-seq 12664  df-exp 12723  df-hash 12980  df-cj 13687  df-re 13688  df-im 13689  df-sqrt 13823  df-abs 13824  df-clim 14067  df-prod 14475
This theorem is referenced by:  fprodsplit  14535
  Copyright terms: Public domain W3C validator