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

Theorem fprodss 15051
 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 3852 . . . . 5 (𝐵 = ∅ → (𝐴𝐵𝐴 ⊆ ∅))
3 ss0 4199 . . . . 5 (𝐴 ⊆ ∅ → 𝐴 = ∅)
42, 3syl6bi 245 . . . 4 (𝐵 = ∅ → (𝐴𝐵𝐴 = ∅))
5 prodeq1 15012 . . . . . 6 (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
6 prodeq1 15012 . . . . . . 7 (𝐵 = ∅ → ∏𝑘𝐵 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
76eqcomd 2831 . . . . . 6 (𝐵 = ∅ → ∏𝑘 ∈ ∅ 𝐶 = ∏𝑘𝐵 𝐶)
85, 7sylan9eq 2881 . . . . 5 ((𝐴 = ∅ ∧ 𝐵 = ∅) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
98expcom 404 . . . 4 (𝐵 = ∅ → (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
104, 9syld 47 . . 3 (𝐵 = ∅ → (𝐴𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
111, 10syl5com 31 . 2 (𝜑 → (𝐵 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
12 cnvimass 5726 . . . . . . . . 9 (𝑓𝐴) ⊆ dom 𝑓
13 simprr 791 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)
14 f1of 6378 . . . . . . . . . 10 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓:(1...(♯‘𝐵))⟶𝐵)
1513, 14syl 17 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))⟶𝐵)
1612, 15fssdm 6294 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓𝐴) ⊆ (1...(♯‘𝐵)))
17 f1ofn 6379 . . . . . . . . . . . . 13 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓 Fn (1...(♯‘𝐵)))
1813, 17syl 17 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓 Fn (1...(♯‘𝐵)))
19 elpreima 6586 . . . . . . . . . . . 12 (𝑓 Fn (1...(♯‘𝐵)) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
2018, 19syl 17 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
2115ffvelrnda 6608 . . . . . . . . . . . . 13 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (1...(♯‘𝐵))) → (𝑓𝑛) ∈ 𝐵)
2221ex 403 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (1...(♯‘𝐵)) → (𝑓𝑛) ∈ 𝐵))
2322adantrd 487 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ((𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴) → (𝑓𝑛) ∈ 𝐵))
2420, 23sylbid 232 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (𝑓𝐴) → (𝑓𝑛) ∈ 𝐵))
2524imp 397 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → (𝑓𝑛) ∈ 𝐵)
26 fprodss.2 . . . . . . . . . . . . . . 15 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
2726ex 403 . . . . . . . . . . . . . 14 (𝜑 → (𝑘𝐴𝐶 ∈ ℂ))
2827adantr 474 . . . . . . . . . . . . 13 ((𝜑𝑘𝐵) → (𝑘𝐴𝐶 ∈ ℂ))
29 eldif 3808 . . . . . . . . . . . . . . 15 (𝑘 ∈ (𝐵𝐴) ↔ (𝑘𝐵 ∧ ¬ 𝑘𝐴))
30 fprodss.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 = 1)
31 ax-1cn 10310 . . . . . . . . . . . . . . . 16 1 ∈ ℂ
3230, 31syl6eqel 2914 . . . . . . . . . . . . . . 15 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 ∈ ℂ)
3329, 32sylan2br 590 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑘𝐵 ∧ ¬ 𝑘𝐴)) → 𝐶 ∈ ℂ)
3433expr 450 . . . . . . . . . . . . 13 ((𝜑𝑘𝐵) → (¬ 𝑘𝐴𝐶 ∈ ℂ))
3528, 34pm2.61d 172 . . . . . . . . . . . 12 ((𝜑𝑘𝐵) → 𝐶 ∈ ℂ)
3635adantlr 708 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑘𝐵) → 𝐶 ∈ ℂ)
3736fmpttd 6634 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑘𝐵𝐶):𝐵⟶ℂ)
3837ffvelrnda 6608 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ (𝑓𝑛) ∈ 𝐵) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) ∈ ℂ)
3925, 38syldan 587 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) ∈ ℂ)
40 eqid 2825 . . . . . . . . 9 (ℤ‘1) = (ℤ‘1)
41 simprl 789 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (♯‘𝐵) ∈ ℕ)
42 nnuz 12005 . . . . . . . . . 10 ℕ = (ℤ‘1)
4341, 42syl6eleq 2916 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (♯‘𝐵) ∈ (ℤ‘1))
44 ssidd 3849 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (1...(♯‘𝐵)) ⊆ (1...(♯‘𝐵)))
4540, 43, 44fprodntriv 15045 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∃𝑚 ∈ (ℤ‘1)∃𝑦(𝑦 ≠ 0 ∧ seq𝑚( · , (𝑛 ∈ (ℤ‘1) ↦ if(𝑛 ∈ (1...(♯‘𝐵)), ((𝑘𝐵𝐶)‘(𝑓𝑛)), 1))) ⇝ 𝑦))
46 eldifi 3959 . . . . . . . . . . . 12 (𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴)) → 𝑛 ∈ (1...(♯‘𝐵)))
4746, 21sylan2 588 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑓𝑛) ∈ 𝐵)
48 eldifn 3960 . . . . . . . . . . . . 13 (𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴)) → ¬ 𝑛 ∈ (𝑓𝐴))
4948adantl 475 . . . . . . . . . . . 12 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ¬ 𝑛 ∈ (𝑓𝐴))
5020adantr 474 . . . . . . . . . . . . 13 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
5146adantl 475 . . . . . . . . . . . . . 14 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → 𝑛 ∈ (1...(♯‘𝐵)))
5251biantrurd 530 . . . . . . . . . . . . 13 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑓𝑛) ∈ 𝐴 ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
5350, 52bitr4d 274 . . . . . . . . . . . 12 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑓𝑛) ∈ 𝐴))
5449, 53mtbid 316 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ¬ (𝑓𝑛) ∈ 𝐴)
5547, 54eldifd 3809 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑓𝑛) ∈ (𝐵𝐴))
56 difss 3964 . . . . . . . . . . . . 13 (𝐵𝐴) ⊆ 𝐵
57 resmpt 5686 . . . . . . . . . . . . 13 ((𝐵𝐴) ⊆ 𝐵 → ((𝑘𝐵𝐶) ↾ (𝐵𝐴)) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶))
5856, 57ax-mp 5 . . . . . . . . . . . 12 ((𝑘𝐵𝐶) ↾ (𝐵𝐴)) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶)
5958fveq1i 6434 . . . . . . . . . . 11 (((𝑘𝐵𝐶) ↾ (𝐵𝐴))‘(𝑓𝑛)) = ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛))
60 fvres 6452 . . . . . . . . . . 11 ((𝑓𝑛) ∈ (𝐵𝐴) → (((𝑘𝐵𝐶) ↾ (𝐵𝐴))‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
6159, 60syl5eqr 2875 . . . . . . . . . 10 ((𝑓𝑛) ∈ (𝐵𝐴) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
6255, 61syl 17 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
63 1ex 10352 . . . . . . . . . . . . . . 15 1 ∈ V
6463elsn2 4432 . . . . . . . . . . . . . 14 (𝐶 ∈ {1} ↔ 𝐶 = 1)
6530, 64sylibr 226 . . . . . . . . . . . . 13 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 ∈ {1})
6665fmpttd 6634 . . . . . . . . . . . 12 (𝜑 → (𝑘 ∈ (𝐵𝐴) ↦ 𝐶):(𝐵𝐴)⟶{1})
6766ad2antrr 719 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑘 ∈ (𝐵𝐴) ↦ 𝐶):(𝐵𝐴)⟶{1})
6867, 55ffvelrnd 6609 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) ∈ {1})
69 elsni 4414 . . . . . . . . . 10 (((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) ∈ {1} → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = 1)
7068, 69syl 17 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = 1)
7162, 70eqtr3d 2863 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) = 1)
72 fzssuz 12675 . . . . . . . . 9 (1...(♯‘𝐵)) ⊆ (ℤ‘1)
7372a1i 11 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (1...(♯‘𝐵)) ⊆ (ℤ‘1))
7416, 39, 45, 71, 73prodss 15050 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)) = ∏𝑛 ∈ (1...(♯‘𝐵))((𝑘𝐵𝐶)‘(𝑓𝑛)))
751adantr 474 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝐴𝐵)
7675resmptd 5689 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ((𝑘𝐵𝐶) ↾ 𝐴) = (𝑘𝐴𝐶))
7776fveq1d 6435 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (((𝑘𝐵𝐶) ↾ 𝐴)‘𝑚) = ((𝑘𝐴𝐶)‘𝑚))
78 fvres 6452 . . . . . . . . . 10 (𝑚𝐴 → (((𝑘𝐵𝐶) ↾ 𝐴)‘𝑚) = ((𝑘𝐵𝐶)‘𝑚))
7977, 78sylan9req 2882 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐶)‘𝑚) = ((𝑘𝐵𝐶)‘𝑚))
8079prodeq2dv 15026 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑚𝐴 ((𝑘𝐵𝐶)‘𝑚))
81 fveq2 6433 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐵𝐶)‘𝑚) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
82 fzfid 13067 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (1...(♯‘𝐵)) ∈ Fin)
8382, 15fisuppfi 8552 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓𝐴) ∈ Fin)
84 f1of1 6377 . . . . . . . . . . . 12 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓:(1...(♯‘𝐵))–1-1𝐵)
8513, 84syl 17 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))–1-1𝐵)
86 f1ores 6392 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐵))–1-1𝐵 ∧ (𝑓𝐴) ⊆ (1...(♯‘𝐵))) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)))
8785, 16, 86syl2anc 581 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)))
88 f1ofo 6385 . . . . . . . . . . . . 13 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓:(1...(♯‘𝐵))–onto𝐵)
8913, 88syl 17 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))–onto𝐵)
90 foimacnv 6395 . . . . . . . . . . . 12 ((𝑓:(1...(♯‘𝐵))–onto𝐵𝐴𝐵) → (𝑓 “ (𝑓𝐴)) = 𝐴)
9189, 75, 90syl2anc 581 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓 “ (𝑓𝐴)) = 𝐴)
92 f1oeq3 6369 . . . . . . . . . . 11 ((𝑓 “ (𝑓𝐴)) = 𝐴 → ((𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)) ↔ (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴))
9391, 92syl 17 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ((𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)) ↔ (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴))
9487, 93mpbid 224 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴)
95 fvres 6452 . . . . . . . . . 10 (𝑛 ∈ (𝑓𝐴) → ((𝑓 ↾ (𝑓𝐴))‘𝑛) = (𝑓𝑛))
9695adantl 475 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → ((𝑓 ↾ (𝑓𝐴))‘𝑛) = (𝑓𝑛))
9775sselda 3827 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → 𝑚𝐵)
9837ffvelrnda 6608 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐵) → ((𝑘𝐵𝐶)‘𝑚) ∈ ℂ)
9997, 98syldan 587 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → ((𝑘𝐵𝐶)‘𝑚) ∈ ℂ)
10081, 83, 94, 96, 99fprodf1o 15049 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)))
10180, 100eqtrd 2861 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)))
102 eqidd 2826 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (1...(♯‘𝐵))) → (𝑓𝑛) = (𝑓𝑛))
10381, 82, 13, 102, 98fprodf1o 15049 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑛 ∈ (1...(♯‘𝐵))((𝑘𝐵𝐶)‘(𝑓𝑛)))
10474, 101, 1033eqtr4d 2871 . . . . . 6 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚))
105 prodfc 15048 . . . . . 6 𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑘𝐴 𝐶
106 prodfc 15048 . . . . . 6 𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑘𝐵 𝐶
107104, 105, 1063eqtr3g 2884 . . . . 5 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
108107expr 450 . . . 4 ((𝜑 ∧ (♯‘𝐵) ∈ ℕ) → (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
109108exlimdv 2034 . . 3 ((𝜑 ∧ (♯‘𝐵) ∈ ℕ) → (∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
110109expimpd 447 . 2 (𝜑 → (((♯‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
111 fprodss.4 . . 3 (𝜑𝐵 ∈ Fin)
112 fz1f1o 14818 . . 3 (𝐵 ∈ Fin → (𝐵 = ∅ ∨ ((♯‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)))
113111, 112syl 17 . 2 (𝜑 → (𝐵 = ∅ ∨ ((♯‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)))
11411, 110, 113mpjaod 893 1 (𝜑 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
 Colors of variables: wff setvar class Syntax hints:  ¬ wn 3   → wi 4   ↔ wb 198   ∧ wa 386   ∨ wo 880   = wceq 1658  ∃wex 1880   ∈ wcel 2166   ∖ cdif 3795   ⊆ wss 3798  ∅c0 4144  {csn 4397   ↦ cmpt 4952  ◡ccnv 5341   ↾ cres 5344   “ cima 5345   Fn wfn 6118  ⟶wf 6119  –1-1→wf1 6120  –onto→wfo 6121  –1-1-onto→wf1o 6122  ‘cfv 6123  (class class class)co 6905  Fincfn 8222  ℂcc 10250  1c1 10253  ℕcn 11350  ℤ≥cuz 11968  ...cfz 12619  ♯chash 13410  ∏cprod 15008 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1896  ax-4 1910  ax-5 2011  ax-6 2077  ax-7 2114  ax-8 2168  ax-9 2175  ax-10 2194  ax-11 2209  ax-12 2222  ax-13 2391  ax-ext 2803  ax-rep 4994  ax-sep 5005  ax-nul 5013  ax-pow 5065  ax-pr 5127  ax-un 7209  ax-inf2 8815  ax-cnex 10308  ax-resscn 10309  ax-1cn 10310  ax-icn 10311  ax-addcl 10312  ax-addrcl 10313  ax-mulcl 10314  ax-mulrcl 10315  ax-mulcom 10316  ax-addass 10317  ax-mulass 10318  ax-distr 10319  ax-i2m1 10320  ax-1ne0 10321  ax-1rid 10322  ax-rnegex 10323  ax-rrecex 10324  ax-cnre 10325  ax-pre-lttri 10326  ax-pre-lttrn 10327  ax-pre-ltadd 10328  ax-pre-mulgt0 10329  ax-pre-sup 10330 This theorem depends on definitions:  df-bi 199  df-an 387  df-or 881  df-3or 1114  df-3an 1115  df-tru 1662  df-fal 1672  df-ex 1881  df-nf 1885  df-sb 2070  df-mo 2605  df-eu 2640  df-clab 2812  df-cleq 2818  df-clel 2821  df-nfc 2958  df-ne 3000  df-nel 3103  df-ral 3122  df-rex 3123  df-reu 3124  df-rmo 3125  df-rab 3126  df-v 3416  df-sbc 3663  df-csb 3758  df-dif 3801  df-un 3803  df-in 3805  df-ss 3812  df-pss 3814  df-nul 4145  df-if 4307  df-pw 4380  df-sn 4398  df-pr 4400  df-tp 4402  df-op 4404  df-uni 4659  df-int 4698  df-iun 4742  df-br 4874  df-opab 4936  df-mpt 4953  df-tr 4976  df-id 5250  df-eprel 5255  df-po 5263  df-so 5264  df-fr 5301  df-se 5302  df-we 5303  df-xp 5348  df-rel 5349  df-cnv 5350  df-co 5351  df-dm 5352  df-rn 5353  df-res 5354  df-ima 5355  df-pred 5920  df-ord 5966  df-on 5967  df-lim 5968  df-suc 5969  df-iota 6086  df-fun 6125  df-fn 6126  df-f 6127  df-f1 6128  df-fo 6129  df-f1o 6130  df-fv 6131  df-isom 6132  df-riota 6866  df-ov 6908  df-oprab 6909  df-mpt2 6910  df-om 7327  df-1st 7428  df-2nd 7429  df-wrecs 7672  df-recs 7734  df-rdg 7772  df-1o 7826  df-oadd 7830  df-er 8009  df-en 8223  df-dom 8224  df-sdom 8225  df-fin 8226  df-sup 8617  df-oi 8684  df-card 9078  df-pnf 10393  df-mnf 10394  df-xr 10395  df-ltxr 10396  df-le 10397  df-sub 10587  df-neg 10588  df-div 11010  df-nn 11351  df-2 11414  df-3 11415  df-n0 11619  df-z 11705  df-uz 11969  df-rp 12113  df-fz 12620  df-fzo 12761  df-seq 13096  df-exp 13155  df-hash 13411  df-cj 14216  df-re 14217  df-im 14218  df-sqrt 14352  df-abs 14353  df-clim 14596  df-prod 15009 This theorem is referenced by:  fprodsplit  15069
 Copyright terms: Public domain W3C validator