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

Theorem fprodss 16095
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 3957 . . . . 5 (𝐵 = ∅ → (𝐴 ⊆ 𝐵 ↔ 𝐴 ⊆ ∅))
3 ss0 4352 . . . . 5 (𝐴 ⊆ ∅ → 𝐴 = ∅)
42, 3biimtrdi 256 . . . 4 (𝐵 = ∅ → (𝐴 ⊆ 𝐵 → 𝐴 = ∅))
5 prodeq1 16056 . . . . . 6 (𝐴 = ∅ → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
6 prodeq1 16056 . . . . . . 7 (𝐵 = ∅ → ∏𝑘 ∈ 𝐵 𝐶 = ∏𝑘 ∈ ∅ 𝐶)
76eqcomd 2767 . . . . . 6 (𝐵 = ∅ → ∏𝑘 ∈ ∅ 𝐶 = ∏𝑘 ∈ 𝐵 𝐶)
85, 7sylan9eq 2816 . . . . 5 ((𝐴 = ∅ ∧ 𝐵 = ∅) → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶)
98expcom 419 . . . 4 (𝐵 = ∅ → (𝐴 = ∅ → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶))
104, 9syld 48 . . 3 (𝐵 = ∅ → (𝐴 ⊆ 𝐵 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶))
111, 10syl5com 32 . 2 (𝜑 → (𝐵 = ∅ → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶))
12 cnvimass 6076 . . . . . . . . 9 (◡𝑓 “ 𝐴) ⊆ dom 𝑓
13 simprr 785 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)
14 f1of 6816 . . . . . . . . . 10 (𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵 → 𝑓:(1...(♯‘𝐵))⟶𝐵)
1513, 14syl 18 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → 𝑓:(1...(♯‘𝐵))⟶𝐵)
1612, 15fssdm 6721 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (◡𝑓 “ 𝐴) ⊆ (1...(♯‘𝐵)))
17 f1ofn 6817 . . . . . . . . . . . 12 (𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵 → 𝑓 Fn (1...(♯‘𝐵)))
18 elpreima 7049 . . . . . . . . . . . 12 (𝑓 Fn (1...(♯‘𝐵)) → (𝑛 ∈ (◡𝑓 “ 𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓‘𝑛) ∈ 𝐴)))
1913, 17, 183syl 19 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (𝑛 ∈ (◡𝑓 “ 𝐴) ↔ (𝑛 ∈ (1...(♯‘𝐵)) ∧ (𝑓‘𝑛) ∈ 𝐴)))
2015ffvelcdmda 7076 . . . . . . . . . . . . 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 3909 . . . . . . . . . . . . . . 15 (𝑘 ∈ (𝐵 ∖ 𝐴) ↔ (𝑘 ∈ 𝐵 ∧ ¬ 𝑘 ∈ 𝐴))
29 fprodss.3 . . . . . . . . . . . . . . . 16 ((𝜑 ∧ 𝑘 ∈ (𝐵 ∖ 𝐴)) → 𝐶 = 1)
30 ax-1cn 11239 . . . . . . . . . . . . . . . 16 1 ∈ ℂ
3129, 30eqeltrdi 2869 . . . . . . . . . . . . . . 15 ((𝜑 ∧ 𝑘 ∈ (𝐵 ∖ 𝐴)) → 𝐶 ∈ ℂ)
3228, 31sylan2br 607 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑘 ∈ 𝐵 ∧ ¬ 𝑘 ∈ 𝐴)) → 𝐶 ∈ ℂ)
3332expr 462 . . . . . . . . . . . . 13 ((𝜑 ∧ 𝑘 ∈ 𝐵) → (¬ 𝑘 ∈ 𝐴 → 𝐶 ∈ ℂ))
3427, 33pm2.61d 181 . . . . . . . . . . . 12 ((𝜑 ∧ 𝑘 ∈ 𝐵) → 𝐶 ∈ ℂ)
3534adantlr 728 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑘 ∈ 𝐵) → 𝐶 ∈ ℂ)
3635fmpttd 7107 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (𝑘 ∈ 𝐵 ↦ 𝐶):𝐵⟶ℂ)
3736ffvelcdmda 7076 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ (𝑓‘𝑛) ∈ 𝐵) → ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)) ∈ ℂ)
3824, 37syldan 603 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ (◡𝑓 “ 𝐴)) → ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)) ∈ ℂ)
39 eqid 2761 . . . . . . . . 9 (ℤ≥‘1) = (ℤ≥‘1)
40 simprl 783 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (♯‘𝐵) ∈ ℕ)
41 nnuz 12985 . . . . . . . . . 10 ℕ = (ℤ≥‘1)
4240, 41eleqtrdi 2871 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (♯‘𝐵) ∈ (ℤ≥‘1))
43 ssidd 3954 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (1...(♯‘𝐵)) ⊆ (1...(♯‘𝐵)))
4439, 42, 43fprodntriv 16089 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∃𝑚 ∈ (ℤ≥‘1)∃𝑦(𝑦 ≠ 0 ∧ seq𝑚( · , (𝑛 ∈ (ℤ≥‘1) ↦ if(𝑛 ∈ (1...(♯‘𝐵)), ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)), 1))) ⇝ 𝑦))
45 eldifi 4078 . . . . . . . . . . . 12 (𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴)) → 𝑛 ∈ (1...(♯‘𝐵)))
4645, 20sylan2 605 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → (𝑓‘𝑛) ∈ 𝐵)
47 eldifn 4079 . . . . . . . . . . . . 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 3910 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → (𝑓‘𝑛) ∈ (𝐵 ∖ 𝐴))
54 difss 4083 . . . . . . . . . . . . 13 (𝐵 ∖ 𝐴) ⊆ 𝐵
55 resmpt 6031 . . . . . . . . . . . . 13 ((𝐵 ∖ 𝐴) ⊆ 𝐵 → ((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ (𝐵 ∖ 𝐴)) = (𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶))
5654, 55ax-mp 5 . . . . . . . . . . . 12 ((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ (𝐵 ∖ 𝐴)) = (𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)
5756fveq1i 6878 . . . . . . . . . . 11 (((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ (𝐵 ∖ 𝐴))‘(𝑓‘𝑛)) = ((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛))
58 fvres 6896 . . . . . . . . . . 11 ((𝑓‘𝑛) ∈ (𝐵 ∖ 𝐴) → (((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ (𝐵 ∖ 𝐴))‘(𝑓‘𝑛)) = ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
5957, 58eqtr3id 2810 . . . . . . . . . 10 ((𝑓‘𝑛) ∈ (𝐵 ∖ 𝐴) → ((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛)) = ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
6053, 59syl 18 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → ((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛)) = ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
61 1ex 11284 . . . . . . . . . . . . . . 15 1 ∈ V
6261elsn2 4626 . . . . . . . . . . . . . 14 (𝐶 ∈ {1} ↔ 𝐶 = 1)
6329, 62sylibr 237 . . . . . . . . . . . . 13 ((𝜑 ∧ 𝑘 ∈ (𝐵 ∖ 𝐴)) → 𝐶 ∈ {1})
6463fmpttd 7107 . . . . . . . . . . . 12 (𝜑 → (𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶):(𝐵 ∖ 𝐴)⟶{1})
6564ad2antrr 739 . . . . . . . . . . 11 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → (𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶):(𝐵 ∖ 𝐴)⟶{1})
6665, 53ffvelcdmd 7077 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → ((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛)) ∈ {1})
67 elsni 4601 . . . . . . . . . 10 (((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛)) ∈ {1} → ((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛)) = 1)
6866, 67syl 18 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → ((𝑘 ∈ (𝐵 ∖ 𝐴) ↦ 𝐶)‘(𝑓‘𝑛)) = 1)
6960, 68eqtr3d 2798 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ ((1...(♯‘𝐵)) ∖ (◡𝑓 “ 𝐴))) → ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)) = 1)
70 fzssuz 13679 . . . . . . . . 9 (1...(♯‘𝐵)) ⊆ (ℤ≥‘1)
7170a1i 11 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (1...(♯‘𝐵)) ⊆ (ℤ≥‘1))
7216, 38, 44, 69, 71prodss 16094 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∏𝑛 ∈ (◡𝑓 “ 𝐴)((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)) = ∏𝑛 ∈ (1...(♯‘𝐵))((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
731adantr 486 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → 𝐴 ⊆ 𝐵)
7473resmptd 6034 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ 𝐴) = (𝑘 ∈ 𝐴 ↦ 𝐶))
7574fveq1d 6879 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ 𝐴)‘𝑚) = ((𝑘 ∈ 𝐴 ↦ 𝐶)‘𝑚))
76 fvres 6896 . . . . . . . . . 10 (𝑚 ∈ 𝐴 → (((𝑘 ∈ 𝐵 ↦ 𝐶) ↾ 𝐴)‘𝑚) = ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚))
7775, 76sylan9req 2817 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑚 ∈ 𝐴) → ((𝑘 ∈ 𝐴 ↦ 𝐶)‘𝑚) = ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚))
7877prodeq2dv 16070 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐶)‘𝑚) = ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚))
79 fveq2 6877 . . . . . . . . 9 (𝑚 = (𝑓‘𝑛) → ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚) = ((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
80 fzfid 14096 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (1...(♯‘𝐵)) ∈ Fin)
8180, 15fisuppfi 9347 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (◡𝑓 “ 𝐴) ∈ Fin)
82 f1of1 6815 . . . . . . . . . . . 12 (𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵 → 𝑓:(1...(♯‘𝐵))–1-1→𝐵)
8313, 82syl 18 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → 𝑓:(1...(♯‘𝐵))–1-1→𝐵)
84 f1ores 6831 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐵))–1-1→𝐵 ∧ (◡𝑓 “ 𝐴) ⊆ (1...(♯‘𝐵))) → (𝑓 ↾ (◡𝑓 “ 𝐴)):(◡𝑓 “ 𝐴)–1-1-onto→(𝑓 “ (◡𝑓 “ 𝐴)))
8583, 16, 84syl2anc 596 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (𝑓 ↾ (◡𝑓 “ 𝐴)):(◡𝑓 “ 𝐴)–1-1-onto→(𝑓 “ (◡𝑓 “ 𝐴)))
86 f1ofo 6824 . . . . . . . . . . . . 13 (𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵 → 𝑓:(1...(♯‘𝐵))–onto→𝐵)
8713, 86syl 18 . . . . . . . . . . . 12 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → 𝑓:(1...(♯‘𝐵))–onto→𝐵)
88 foimacnv 6834 . . . . . . . . . . . 12 ((𝑓:(1...(♯‘𝐵))–onto→𝐵 ∧ 𝐴 ⊆ 𝐵) → (𝑓 “ (◡𝑓 “ 𝐴)) = 𝐴)
8987, 73, 88syl2anc 596 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (𝑓 “ (◡𝑓 “ 𝐴)) = 𝐴)
9089f1oeq3d 6813 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ((𝑓 ↾ (◡𝑓 “ 𝐴)):(◡𝑓 “ 𝐴)–1-1-onto→(𝑓 “ (◡𝑓 “ 𝐴)) ↔ (𝑓 ↾ (◡𝑓 “ 𝐴)):(◡𝑓 “ 𝐴)–1-1-onto→𝐴))
9185, 90mpbid 235 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → (𝑓 ↾ (◡𝑓 “ 𝐴)):(◡𝑓 “ 𝐴)–1-1-onto→𝐴)
92 fvres 6896 . . . . . . . . . 10 (𝑛 ∈ (◡𝑓 “ 𝐴) → ((𝑓 ↾ (◡𝑓 “ 𝐴))‘𝑛) = (𝑓‘𝑛))
9392adantl 487 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ (◡𝑓 “ 𝐴)) → ((𝑓 ↾ (◡𝑓 “ 𝐴))‘𝑛) = (𝑓‘𝑛))
9473sselda 3931 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑚 ∈ 𝐴) → 𝑚 ∈ 𝐵)
9536ffvelcdmda 7076 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑚 ∈ 𝐵) → ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚) ∈ ℂ)
9694, 95syldan 603 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑚 ∈ 𝐴) → ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚) ∈ ℂ)
9779, 81, 91, 93, 96fprodf1o 16093 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚) = ∏𝑛 ∈ (◡𝑓 “ 𝐴)((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
9878, 97eqtrd 2796 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐶)‘𝑚) = ∏𝑛 ∈ (◡𝑓 “ 𝐴)((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
99 eqidd 2762 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) ∧ 𝑛 ∈ (1...(♯‘𝐵))) → (𝑓‘𝑛) = (𝑓‘𝑛))
10079, 80, 13, 99, 95fprodf1o 16093 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∏𝑚 ∈ 𝐵 ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚) = ∏𝑛 ∈ (1...(♯‘𝐵))((𝑘 ∈ 𝐵 ↦ 𝐶)‘(𝑓‘𝑛)))
10172, 98, 1003eqtr4d 2806 . . . . . 6 ((𝜑 ∧ ((♯‘𝐵) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐵))–1-1-onto→𝐵)) → ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐶)‘𝑚) = ∏𝑚 ∈ 𝐵 ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚))
102 prodfc 16092 . . . . . 6 ∏𝑚 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐶)‘𝑚) = ∏𝑘 ∈ 𝐴 𝐶
103 prodfc 16092 . . . . . 6 ∏𝑚 ∈ 𝐵 ((𝑘 ∈ 𝐵 ↦ 𝐶)‘𝑚) = ∏𝑘 ∈ 𝐵 𝐶
104101, 102, 1033eqtr3g 2819 . . . . 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 15856 . . 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 3896   ⊆ wss 3899  ∅c0 4279  {csn 4584   ↦ cmpt 5186  ◡ccnv 5650   ↾ cres 5653   “ cima 5654   Fn wfn 6526  ⟶wf 6527  –1-1→wf1 6528  –onto→wfo 6529  –1-1-onto→wf1o 6530  ‘cfv 6531  (class class class)co 7412  Fincfn 8957  ℂcc 11179  1c1 11182  ℕcn 12316  ℤ≥cuz 12946  ...cfz 13620  ♯chash 14454  ∏cprod 16052
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 2213  ax-ext 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7740  ax-inf2 9626  ax-cnex 11237  ax-resscn 11238  ax-1cn 11239  ax-icn 11240  ax-addcl 11241  ax-addrcl 11242  ax-mulcl 11243  ax-mulrcl 11244  ax-mulcom 11245  ax-addass 11246  ax-mulass 11247  ax-distr 11248  ax-i2m1 11249  ax-1ne0 11250  ax-1rid 11251  ax-rnegex 11252  ax-rrecex 11253  ax-cnre 11254  ax-pre-lttri 11255  ax-pre-lttrn 11256  ax-pre-ltadd 11257  ax-pre-mulgt0 11258  ax-pre-sup 11259
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 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-rmo 3366  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-se 5605  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6297  df-ord 6358  df-on 6359  df-lim 6360  df-suc 6361  df-iota 6487  df-fun 6533  df-fn 6534  df-f 6535  df-f1 6536  df-fo 6537  df-f1o 6538  df-fv 6539  df-isom 6540  df-riota 7369  df-ov 7415  df-oprab 7416  df-mpo 7417  df-om 7867  df-1st 7990  df-2nd 7991  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8460  df-er 8701  df-en 8958  df-dom 8959  df-sdom 8960  df-fin 8961  df-sup 9418  df-oi 9488  df-card 10001  df-pnf 11326  df-mnf 11327  df-xr 11328  df-ltxr 11329  df-le 11330  df-sub 11524  df-neg 11525  df-div 11955  df-nn 12317  df-2 12386  df-3 12387  df-n0 12588  df-z 12675  df-uz 12947  df-rp 13102  df-fz 13621  df-fzo 13769  df-seq 14125  df-exp 14185  df-hash 14455  df-cj 15246  df-re 15247  df-im 15248  df-sqrt 15382  df-abs 15383  df-clim 15635  df-prod 16053
This theorem is used by:  fprodsplit  16113
  Copyright terms: Public domain W3C validator