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

Theorem fprodss 16041
Description: Change the index set to a subset in a finite product. (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 3960 . . . . 5 (𝐵 = ∅ → (𝐴𝐵𝐴 ⊆ ∅))
3 ss0 4355 . . . . 5 (𝐴 ⊆ ∅ → 𝐴 = ∅)
42, 3biimtrdi 256 . . . 4 (𝐵 = ∅ → (𝐴𝐵𝐴 = ∅))
5 prodeq1 16000 . . . . . 6 (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
6 prodeq1 16000 . . . . . . 7 (𝐵 = ∅ → ∏𝑘𝐵 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
76eqcomd 2768 . . . . . 6 (𝐵 = ∅ → ∏𝑘 ∈ ∅ 𝐶 = ∏𝑘𝐵 𝐶)
85, 7sylan9eq 2817 . . . . 5 ((𝐴 = ∅ ∧ 𝐵 = ∅) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
98expcom 419 . . . 4 (𝐵 = ∅ → (𝐴 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
104, 9syld 48 . . 3 (𝐵 = ∅ → (𝐴𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
111, 10syl5com 32 . 2 (𝜑 → (𝐵 = ∅ → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
12 cnvimass 6082 . . . . . . . . 9 (𝑓𝐴) ⊆ dom 𝑓
13 simprr 785 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)
14 f1of 6821 . . . . . . . . . 10 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓:(1...(♯‘𝐵))⟶𝐵)
1513, 14syl 18 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))⟶𝐵)
1612, 15fssdm 6726 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓𝐴) ⊆ (1...(♯‘𝐵)))
17 f1ofn 6822 . . . . . . . . . . . 12 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓 Fn (1...(♯‘𝐵)))
18 elpreima 7054 . . . . . . . . . . . 12 (𝑓 Fn (1...(♯‘𝐵)) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
1913, 17, 183syl 19 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
2015ffvelcdmda 7081 . . . . . . . . . . . . 13 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (1...(♯‘𝐵))) → (𝑓𝑛) ∈ 𝐵)
2120ex 418 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (1...(♯‘𝐵)) → (𝑓𝑛) ∈ 𝐵))
2221adantrd 497 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ((𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴) → (𝑓𝑛) ∈ 𝐵))
2319, 22sylbid 243 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑛 ∈ (𝑓𝐴) → (𝑓𝑛) ∈ 𝐵))
2423imp 412 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → (𝑓𝑛) ∈ 𝐵)
25 fprodss.2 . . . . . . . . . . . . . . 15 ((𝜑𝑘𝐴) → 𝐶 ∈ ℂ)
2625ex 418 . . . . . . . . . . . . . 14 (𝜑 → (𝑘𝐴𝐶 ∈ ℂ))
2726adantr 486 . . . . . . . . . . . . 13 ((𝜑𝑘𝐵) → (𝑘𝐴𝐶 ∈ ℂ))
28 eldif 3912 . . . . . . . . . . . . . . 15 (𝑘 ∈ (𝐵𝐴) ↔ (𝑘𝐵 ∧ ¬ 𝑘𝐴))
29 fprodss.3 . . . . . . . . . . . . . . . 16 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 = 1)
30 ax-1cn 11186 . . . . . . . . . . . . . . . 16 1 ∈ ℂ
3129, 30eqeltrdi 2870 . . . . . . . . . . . . . . 15 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 ∈ ℂ)
3228, 31sylan2br 607 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑘𝐵 ∧ ¬ 𝑘𝐴)) → 𝐶 ∈ ℂ)
3332expr 462 . . . . . . . . . . . . 13 ((𝜑𝑘𝐵) → (¬ 𝑘𝐴𝐶 ∈ ℂ))
3427, 33pm2.61d 181 . . . . . . . . . . . 12 ((𝜑𝑘𝐵) → 𝐶 ∈ ℂ)
3534adantlr 728 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑘𝐵) → 𝐶 ∈ ℂ)
3635fmpttd 7112 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑘𝐵𝐶):𝐵⟶ℂ)
3736ffvelcdmda 7081 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ (𝑓𝑛) ∈ 𝐵) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) ∈ ℂ)
3824, 37syldan 603 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) ∈ ℂ)
39 eqid 2762 . . . . . . . . 9 (ℤ‘1) = (ℤ‘1)
40 simprl 783 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (♯‘𝐵) ∈ ℕ)
41 nnuz 12930 . . . . . . . . . 10 ℕ = (ℤ‘1)
4240, 41eleqtrdi 2872 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (♯‘𝐵) ∈ (ℤ‘1))
43 ssidd 3957 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (1...(♯‘𝐵)) ⊆ (1...(♯‘𝐵)))
4439, 42, 43fprodntriv 16035 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∃𝑚 ∈ (ℤ‘1)∃𝑦(𝑦 ≠ 0 ∧ seq𝑚( · , (𝑛 ∈ (ℤ‘1) ↦ if(𝑛 ∈ (1...(♯‘𝐵)), ((𝑘𝐵𝐶)‘(𝑓𝑛)), 1))) ⇝ 𝑦))
45 eldifi 4081 . . . . . . . . . . . 12 (𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴)) → 𝑛 ∈ (1...(♯‘𝐵)))
4645, 20sylan2 605 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑓𝑛) ∈ 𝐵)
47 eldifn 4082 . . . . . . . . . . . . 13 (𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴)) → ¬ 𝑛 ∈ (𝑓𝐴))
4847adantl 487 . . . . . . . . . . . 12 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ¬ 𝑛 ∈ (𝑓𝐴))
4945adantl 487 . . . . . . . . . . . . 13 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → 𝑛 ∈ (1...(♯‘𝐵)))
5019adantr 486 . . . . . . . . . . . . 13 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓𝑛) ∈ 𝐴)))
5149, 50mpbirand 720 . . . . . . . . . . . 12 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑛 ∈ (𝑓𝐴) ↔ (𝑓𝑛) ∈ 𝐴))
5248, 51mtbid 327 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ¬ (𝑓𝑛) ∈ 𝐴)
5346, 52eldifd 3913 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑓𝑛) ∈ (𝐵𝐴))
54 difss 4086 . . . . . . . . . . . . 13 (𝐵𝐴) ⊆ 𝐵
55 resmpt 6037 . . . . . . . . . . . . 13 ((𝐵𝐴) ⊆ 𝐵 → ((𝑘𝐵𝐶) ↾ (𝐵𝐴)) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶))
5654, 55ax-mp 5 . . . . . . . . . . . 12 ((𝑘𝐵𝐶) ↾ (𝐵𝐴)) = (𝑘 ∈ (𝐵𝐴) ↦ 𝐶)
5756fveq1i 6883 . . . . . . . . . . 11 (((𝑘𝐵𝐶) ↾ (𝐵𝐴))‘(𝑓𝑛)) = ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛))
58 fvres 6901 . . . . . . . . . . 11 ((𝑓𝑛) ∈ (𝐵𝐴) → (((𝑘𝐵𝐶) ↾ (𝐵𝐴))‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
5957, 58eqtr3id 2811 . . . . . . . . . 10 ((𝑓𝑛) ∈ (𝐵𝐴) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
6053, 59syl 18 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
61 1ex 11231 . . . . . . . . . . . . . . 15 1 ∈ V
6261elsn2 4629 . . . . . . . . . . . . . 14 (𝐶 ∈ {1} ↔ 𝐶 = 1)
6329, 62sylibr 237 . . . . . . . . . . . . 13 ((𝜑𝑘 ∈ (𝐵𝐴)) → 𝐶 ∈ {1})
6463fmpttd 7112 . . . . . . . . . . . 12 (𝜑 → (𝑘 ∈ (𝐵𝐴) ↦ 𝐶):(𝐵𝐴)⟶{1})
6564ad2antrr 739 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → (𝑘 ∈ (𝐵𝐴) ↦ 𝐶):(𝐵𝐴)⟶{1})
6665, 53ffvelcdmd 7082 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) ∈ {1})
67 elsni 4604 . . . . . . . . . 10 (((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) ∈ {1} → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = 1)
6866, 67syl 18 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘 ∈ (𝐵𝐴) ↦ 𝐶)‘(𝑓𝑛)) = 1)
6960, 68eqtr3d 2799 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (𝑓𝐴))) → ((𝑘𝐵𝐶)‘(𝑓𝑛)) = 1)
70 fzssuz 13624 . . . . . . . . 9 (1...(♯‘𝐵)) ⊆ (ℤ‘1)
7170a1i 11 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (1...(♯‘𝐵)) ⊆ (ℤ‘1))
7216, 38, 44, 69, 71prodss 16040 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)) = ∏𝑛 ∈ (1...(♯‘𝐵))((𝑘𝐵𝐶)‘(𝑓𝑛)))
731adantr 486 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝐴𝐵)
7473resmptd 6040 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ((𝑘𝐵𝐶) ↾ 𝐴) = (𝑘𝐴𝐶))
7574fveq1d 6884 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (((𝑘𝐵𝐶) ↾ 𝐴)‘𝑚) = ((𝑘𝐴𝐶)‘𝑚))
76 fvres 6901 . . . . . . . . . 10 (𝑚𝐴 → (((𝑘𝐵𝐶) ↾ 𝐴)‘𝑚) = ((𝑘𝐵𝐶)‘𝑚))
7775, 76sylan9req 2818 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐶)‘𝑚) = ((𝑘𝐵𝐶)‘𝑚))
7877prodeq2dv 16015 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑚𝐴 ((𝑘𝐵𝐶)‘𝑚))
79 fveq2 6882 . . . . . . . . 9 (𝑚 = (𝑓𝑛) → ((𝑘𝐵𝐶)‘𝑚) = ((𝑘𝐵𝐶)‘(𝑓𝑛)))
80 fzfid 14041 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (1...(♯‘𝐵)) ∈ Fin)
8180, 15fisuppfi 9345 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓𝐴) ∈ Fin)
82 f1of1 6820 . . . . . . . . . . . 12 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓:(1...(♯‘𝐵))–1-1𝐵)
8313, 82syl 18 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))–1-1𝐵)
84 f1ores 6836 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐵))–1-1𝐵 ∧ (𝑓𝐴) ⊆ (1...(♯‘𝐵))) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)))
8583, 16, 84syl2anc 596 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)))
86 f1ofo 6829 . . . . . . . . . . . . 13 (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵𝑓:(1...(♯‘𝐵))–onto𝐵)
8713, 86syl 18 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → 𝑓:(1...(♯‘𝐵))–onto𝐵)
88 foimacnv 6839 . . . . . . . . . . . 12 ((𝑓:(1...(♯‘𝐵))–onto𝐵𝐴𝐵) → (𝑓 “ (𝑓𝐴)) = 𝐴)
8987, 73, 88syl2anc 596 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓 “ (𝑓𝐴)) = 𝐴)
9089f1oeq3d 6818 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ((𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto→(𝑓 “ (𝑓𝐴)) ↔ (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴))
9185, 90mpbid 235 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → (𝑓 ↾ (𝑓𝐴)):(𝑓𝐴)–1-1-onto𝐴)
92 fvres 6901 . . . . . . . . . 10 (𝑛 ∈ (𝑓𝐴) → ((𝑓 ↾ (𝑓𝐴))‘𝑛) = (𝑓𝑛))
9392adantl 487 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (𝑓𝐴)) → ((𝑓 ↾ (𝑓𝐴))‘𝑛) = (𝑓𝑛))
9473sselda 3934 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → 𝑚𝐵)
9536ffvelcdmda 7081 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐵) → ((𝑘𝐵𝐶)‘𝑚) ∈ ℂ)
9694, 95syldan 603 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑚𝐴) → ((𝑘𝐵𝐶)‘𝑚) ∈ ℂ)
9779, 81, 91, 93, 96fprodf1o 16039 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)))
9878, 97eqtrd 2797 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑛 ∈ (𝑓𝐴)((𝑘𝐵𝐶)‘(𝑓𝑛)))
99 eqidd 2763 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) ∧ 𝑛 ∈ (1...(♯‘𝐵))) → (𝑓𝑛) = (𝑓𝑛))
10079, 80, 13, 99, 95fprodf1o 16039 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑛 ∈ (1...(♯‘𝐵))((𝑘𝐵𝐶)‘(𝑓𝑛)))
10172, 98, 1003eqtr4d 2807 . . . . . 6 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚))
102 prodfc 16038 . . . . . 6 𝑚𝐴 ((𝑘𝐴𝐶)‘𝑚) = ∏𝑘𝐴 𝐶
103 prodfc 16038 . . . . . 6 𝑚𝐵 ((𝑘𝐵𝐶)‘𝑚) = ∏𝑘𝐵 𝐶
104101, 102, 1033eqtr3g 2820 . . . . 5 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
105104expr 462 . . . 4 ((𝜑 ∧ (♯‘𝐵) ∈ ℕ) → (𝑓:(1...(♯‘𝐵))–1-1-onto𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
106105exlimdv 1966 . . 3 ((𝜑 ∧ (♯‘𝐵) ∈ ℕ) → (∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
107106expimpd 459 . 2 (𝜑 → (((♯‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵) → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶))
108 fprodss.4 . . 3 (𝜑𝐵 ∈ Fin)
109 fz1f1o 15800 . . 3 (𝐵 ∈ Fin → (𝐵 = ∅ ∨ ((♯‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)))
110108, 109syl 18 . 2 (𝜑 → (𝐵 = ∅ ∨ ((♯‘𝐵) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐵))–1-1-onto𝐵)))
11111, 107, 110mpjaod 874 1 (𝜑 → ∏𝑘𝐴 𝐶 = ∏𝑘𝐵 𝐶)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861   = wceq 1570  wex 1812  wcel 2145  cdif 3899  wss 3902  c0 4282  {csn 4587  cmpt 5190  ccnv 5658  cres 5661  cima 5662   Fn wfn 6532  wf 6533  1-1wf1 6534  ontowfo 6535  1-1-ontowf1o 6536  cfv 6537  (class class class)co 7417  Fincfn 8956  cc 11126  1c1 11129  cn 12261  cuz 12891  ...cfz 13565  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
  Copyright terms: Public domain W3C validator