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

Theorem fprodf1o 15150
Description: Re-index a finite product using a bijection. (Contributed by Scott Fenton, 7-Dec-2017.)
Hypotheses
Ref Expression
fprodf1o.1 (𝑘 = 𝐺𝐵 = 𝐷)
fprodf1o.2 (𝜑𝐶 ∈ Fin)
fprodf1o.3 (𝜑𝐹:𝐶1-1-onto𝐴)
fprodf1o.4 ((𝜑𝑛𝐶) → (𝐹𝑛) = 𝐺)
fprodf1o.5 ((𝜑𝑘𝐴) → 𝐵 ∈ ℂ)
Assertion
Ref Expression
fprodf1o (𝜑 → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷)
Distinct variable groups:   𝐴,𝑘,𝑛   𝐵,𝑛   𝐶,𝑛   𝐷,𝑘   𝑛,𝐹   𝑘,𝐺   𝑘,𝑛,𝜑
Allowed substitution hints:   𝐵(𝑘)   𝐶(𝑘)   𝐷(𝑛)   𝐹(𝑘)   𝐺(𝑛)

Proof of Theorem fprodf1o
Dummy variables 𝑓 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 prod0 15147 . . . 4 𝑘 ∈ ∅ 𝐵 = 1
2 fprodf1o.3 . . . . . . . . 9 (𝜑𝐹:𝐶1-1-onto𝐴)
32adantr 473 . . . . . . . 8 ((𝜑𝐶 = ∅) → 𝐹:𝐶1-1-onto𝐴)
4 f1oeq2 6428 . . . . . . . . 9 (𝐶 = ∅ → (𝐹:𝐶1-1-onto𝐴𝐹:∅–1-1-onto𝐴))
54adantl 474 . . . . . . . 8 ((𝜑𝐶 = ∅) → (𝐹:𝐶1-1-onto𝐴𝐹:∅–1-1-onto𝐴))
63, 5mpbid 224 . . . . . . 7 ((𝜑𝐶 = ∅) → 𝐹:∅–1-1-onto𝐴)
7 f1ofo 6445 . . . . . . 7 (𝐹:∅–1-1-onto𝐴𝐹:∅–onto𝐴)
86, 7syl 17 . . . . . 6 ((𝜑𝐶 = ∅) → 𝐹:∅–onto𝐴)
9 fo00 6473 . . . . . . 7 (𝐹:∅–onto𝐴 ↔ (𝐹 = ∅ ∧ 𝐴 = ∅))
109simprbi 489 . . . . . 6 (𝐹:∅–onto𝐴𝐴 = ∅)
118, 10syl 17 . . . . 5 ((𝜑𝐶 = ∅) → 𝐴 = ∅)
1211prodeq1d 15125 . . . 4 ((𝜑𝐶 = ∅) → ∏𝑘𝐴 𝐵 = ∏𝑘 ∈ ∅ 𝐵)
13 prodeq1 15113 . . . . . 6 (𝐶 = ∅ → ∏𝑛𝐶 𝐷 = ∏𝑛 ∈ ∅ 𝐷)
14 prod0 15147 . . . . . 6 𝑛 ∈ ∅ 𝐷 = 1
1513, 14syl6eq 2824 . . . . 5 (𝐶 = ∅ → ∏𝑛𝐶 𝐷 = 1)
1615adantl 474 . . . 4 ((𝜑𝐶 = ∅) → ∏𝑛𝐶 𝐷 = 1)
171, 12, 163eqtr4a 2834 . . 3 ((𝜑𝐶 = ∅) → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷)
1817ex 405 . 2 (𝜑 → (𝐶 = ∅ → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷))
19 2fveq3 6498 . . . . . . . 8 (𝑚 = (𝑓𝑛) → ((𝑘𝐴𝐵)‘(𝐹𝑚)) = ((𝑘𝐴𝐵)‘(𝐹‘(𝑓𝑛))))
20 simprl 758 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → (♯‘𝐶) ∈ ℕ)
21 simprr 760 . . . . . . . 8 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)
22 f1of 6438 . . . . . . . . . . . 12 (𝐹:𝐶1-1-onto𝐴𝐹:𝐶𝐴)
232, 22syl 17 . . . . . . . . . . 11 (𝜑𝐹:𝐶𝐴)
2423ffvelrnda 6670 . . . . . . . . . 10 ((𝜑𝑚𝐶) → (𝐹𝑚) ∈ 𝐴)
25 fprodf1o.5 . . . . . . . . . . . 12 ((𝜑𝑘𝐴) → 𝐵 ∈ ℂ)
2625fmpttd 6696 . . . . . . . . . . 11 (𝜑 → (𝑘𝐴𝐵):𝐴⟶ℂ)
2726ffvelrnda 6670 . . . . . . . . . 10 ((𝜑 ∧ (𝐹𝑚) ∈ 𝐴) → ((𝑘𝐴𝐵)‘(𝐹𝑚)) ∈ ℂ)
2824, 27syldan 582 . . . . . . . . 9 ((𝜑𝑚𝐶) → ((𝑘𝐴𝐵)‘(𝐹𝑚)) ∈ ℂ)
2928adantlr 702 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑚𝐶) → ((𝑘𝐴𝐵)‘(𝐹𝑚)) ∈ ℂ)
30 simpr 477 . . . . . . . . . . . 12 (((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶) → 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)
31 f1oco 6460 . . . . . . . . . . . 12 ((𝐹:𝐶1-1-onto𝐴𝑓:(1...(♯‘𝐶))–1-1-onto𝐶) → (𝐹𝑓):(1...(♯‘𝐶))–1-1-onto𝐴)
322, 30, 31syl2an 586 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → (𝐹𝑓):(1...(♯‘𝐶))–1-1-onto𝐴)
33 f1of 6438 . . . . . . . . . . 11 ((𝐹𝑓):(1...(♯‘𝐶))–1-1-onto𝐴 → (𝐹𝑓):(1...(♯‘𝐶))⟶𝐴)
3432, 33syl 17 . . . . . . . . . 10 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → (𝐹𝑓):(1...(♯‘𝐶))⟶𝐴)
35 fvco3 6582 . . . . . . . . . 10 (((𝐹𝑓):(1...(♯‘𝐶))⟶𝐴𝑛 ∈ (1...(♯‘𝐶))) → (((𝑘𝐴𝐵) ∘ (𝐹𝑓))‘𝑛) = ((𝑘𝐴𝐵)‘((𝐹𝑓)‘𝑛)))
3634, 35sylan 572 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → (((𝑘𝐴𝐵) ∘ (𝐹𝑓))‘𝑛) = ((𝑘𝐴𝐵)‘((𝐹𝑓)‘𝑛)))
37 f1of 6438 . . . . . . . . . . . . 13 (𝑓:(1...(♯‘𝐶))–1-1-onto𝐶𝑓:(1...(♯‘𝐶))⟶𝐶)
3837adantl 474 . . . . . . . . . . . 12 (((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶) → 𝑓:(1...(♯‘𝐶))⟶𝐶)
3938adantl 474 . . . . . . . . . . 11 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → 𝑓:(1...(♯‘𝐶))⟶𝐶)
40 fvco3 6582 . . . . . . . . . . 11 ((𝑓:(1...(♯‘𝐶))⟶𝐶𝑛 ∈ (1...(♯‘𝐶))) → ((𝐹𝑓)‘𝑛) = (𝐹‘(𝑓𝑛)))
4139, 40sylan 572 . . . . . . . . . 10 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → ((𝐹𝑓)‘𝑛) = (𝐹‘(𝑓𝑛)))
4241fveq2d 6497 . . . . . . . . 9 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → ((𝑘𝐴𝐵)‘((𝐹𝑓)‘𝑛)) = ((𝑘𝐴𝐵)‘(𝐹‘(𝑓𝑛))))
4336, 42eqtrd 2808 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑛 ∈ (1...(♯‘𝐶))) → (((𝑘𝐴𝐵) ∘ (𝐹𝑓))‘𝑛) = ((𝑘𝐴𝐵)‘(𝐹‘(𝑓𝑛))))
4419, 20, 21, 29, 43fprod 15145 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → ∏𝑚𝐶 ((𝑘𝐴𝐵)‘(𝐹𝑚)) = (seq1( · , ((𝑘𝐴𝐵) ∘ (𝐹𝑓)))‘(♯‘𝐶)))
45 fprodf1o.4 . . . . . . . . . . . . . 14 ((𝜑𝑛𝐶) → (𝐹𝑛) = 𝐺)
4623ffvelrnda 6670 . . . . . . . . . . . . . 14 ((𝜑𝑛𝐶) → (𝐹𝑛) ∈ 𝐴)
4745, 46eqeltrrd 2861 . . . . . . . . . . . . 13 ((𝜑𝑛𝐶) → 𝐺𝐴)
48 fprodf1o.1 . . . . . . . . . . . . . 14 (𝑘 = 𝐺𝐵 = 𝐷)
49 eqid 2772 . . . . . . . . . . . . . 14 (𝑘𝐴𝐵) = (𝑘𝐴𝐵)
5048, 49fvmpti 6588 . . . . . . . . . . . . 13 (𝐺𝐴 → ((𝑘𝐴𝐵)‘𝐺) = ( I ‘𝐷))
5147, 50syl 17 . . . . . . . . . . . 12 ((𝜑𝑛𝐶) → ((𝑘𝐴𝐵)‘𝐺) = ( I ‘𝐷))
5245fveq2d 6497 . . . . . . . . . . . 12 ((𝜑𝑛𝐶) → ((𝑘𝐴𝐵)‘(𝐹𝑛)) = ((𝑘𝐴𝐵)‘𝐺))
53 eqid 2772 . . . . . . . . . . . . . 14 (𝑛𝐶𝐷) = (𝑛𝐶𝐷)
5453fvmpt2i 6598 . . . . . . . . . . . . 13 (𝑛𝐶 → ((𝑛𝐶𝐷)‘𝑛) = ( I ‘𝐷))
5554adantl 474 . . . . . . . . . . . 12 ((𝜑𝑛𝐶) → ((𝑛𝐶𝐷)‘𝑛) = ( I ‘𝐷))
5651, 52, 553eqtr4rd 2819 . . . . . . . . . . 11 ((𝜑𝑛𝐶) → ((𝑛𝐶𝐷)‘𝑛) = ((𝑘𝐴𝐵)‘(𝐹𝑛)))
5756ralrimiva 3126 . . . . . . . . . 10 (𝜑 → ∀𝑛𝐶 ((𝑛𝐶𝐷)‘𝑛) = ((𝑘𝐴𝐵)‘(𝐹𝑛)))
58 nffvmpt1 6504 . . . . . . . . . . . 12 𝑛((𝑛𝐶𝐷)‘𝑚)
5958nfeq1 2939 . . . . . . . . . . 11 𝑛((𝑛𝐶𝐷)‘𝑚) = ((𝑘𝐴𝐵)‘(𝐹𝑚))
60 fveq2 6493 . . . . . . . . . . . 12 (𝑛 = 𝑚 → ((𝑛𝐶𝐷)‘𝑛) = ((𝑛𝐶𝐷)‘𝑚))
61 2fveq3 6498 . . . . . . . . . . . 12 (𝑛 = 𝑚 → ((𝑘𝐴𝐵)‘(𝐹𝑛)) = ((𝑘𝐴𝐵)‘(𝐹𝑚)))
6260, 61eqeq12d 2787 . . . . . . . . . . 11 (𝑛 = 𝑚 → (((𝑛𝐶𝐷)‘𝑛) = ((𝑘𝐴𝐵)‘(𝐹𝑛)) ↔ ((𝑛𝐶𝐷)‘𝑚) = ((𝑘𝐴𝐵)‘(𝐹𝑚))))
6359, 62rspc 3523 . . . . . . . . . 10 (𝑚𝐶 → (∀𝑛𝐶 ((𝑛𝐶𝐷)‘𝑛) = ((𝑘𝐴𝐵)‘(𝐹𝑛)) → ((𝑛𝐶𝐷)‘𝑚) = ((𝑘𝐴𝐵)‘(𝐹𝑚))))
6457, 63mpan9 499 . . . . . . . . 9 ((𝜑𝑚𝐶) → ((𝑛𝐶𝐷)‘𝑚) = ((𝑘𝐴𝐵)‘(𝐹𝑚)))
6564adantlr 702 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑚𝐶) → ((𝑛𝐶𝐷)‘𝑚) = ((𝑘𝐴𝐵)‘(𝐹𝑚)))
6665prodeq2dv 15127 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → ∏𝑚𝐶 ((𝑛𝐶𝐷)‘𝑚) = ∏𝑚𝐶 ((𝑘𝐴𝐵)‘(𝐹𝑚)))
67 fveq2 6493 . . . . . . . 8 (𝑚 = ((𝐹𝑓)‘𝑛) → ((𝑘𝐴𝐵)‘𝑚) = ((𝑘𝐴𝐵)‘((𝐹𝑓)‘𝑛)))
6826adantr 473 . . . . . . . . 9 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → (𝑘𝐴𝐵):𝐴⟶ℂ)
6968ffvelrnda 6670 . . . . . . . 8 (((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) ∧ 𝑚𝐴) → ((𝑘𝐴𝐵)‘𝑚) ∈ ℂ)
7067, 20, 32, 69, 36fprod 15145 . . . . . . 7 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → ∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = (seq1( · , ((𝑘𝐴𝐵) ∘ (𝐹𝑓)))‘(♯‘𝐶)))
7144, 66, 703eqtr4rd 2819 . . . . . 6 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → ∏𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = ∏𝑚𝐶 ((𝑛𝐶𝐷)‘𝑚))
72 prodfc 15149 . . . . . 6 𝑚𝐴 ((𝑘𝐴𝐵)‘𝑚) = ∏𝑘𝐴 𝐵
73 prodfc 15149 . . . . . 6 𝑚𝐶 ((𝑛𝐶𝐷)‘𝑚) = ∏𝑛𝐶 𝐷
7471, 72, 733eqtr3g 2831 . . . . 5 ((𝜑 ∧ ((♯‘𝐶) ∈ ℕ ∧ 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)) → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷)
7574expr 449 . . . 4 ((𝜑 ∧ (♯‘𝐶) ∈ ℕ) → (𝑓:(1...(♯‘𝐶))–1-1-onto𝐶 → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷))
7675exlimdv 1892 . . 3 ((𝜑 ∧ (♯‘𝐶) ∈ ℕ) → (∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶 → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷))
7776expimpd 446 . 2 (𝜑 → (((♯‘𝐶) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶) → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷))
78 fprodf1o.2 . . 3 (𝜑𝐶 ∈ Fin)
79 fz1f1o 14917 . . 3 (𝐶 ∈ Fin → (𝐶 = ∅ ∨ ((♯‘𝐶) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)))
8078, 79syl 17 . 2 (𝜑 → (𝐶 = ∅ ∨ ((♯‘𝐶) ∈ ℕ ∧ ∃𝑓 𝑓:(1...(♯‘𝐶))–1-1-onto𝐶)))
8118, 77, 80mpjaod 846 1 (𝜑 → ∏𝑘𝐴 𝐵 = ∏𝑛𝐶 𝐷)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 198  wa 387  wo 833   = wceq 1507  wex 1742  wcel 2048  wral 3082  c0 4173  cmpt 5002   I cid 5304  ccom 5404  wf 6178  ontowfo 6180  1-1-ontowf1o 6181  cfv 6182  (class class class)co 6970  Fincfn 8298  cc 10325  1c1 10328   · cmul 10332  cn 11431  ...cfz 12701  seqcseq 13177  chash 13498  cprod 15109
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1758  ax-4 1772  ax-5 1869  ax-6 1928  ax-7 1964  ax-8 2050  ax-9 2057  ax-10 2077  ax-11 2091  ax-12 2104  ax-13 2299  ax-ext 2745  ax-rep 5043  ax-sep 5054  ax-nul 5061  ax-pow 5113  ax-pr 5180  ax-un 7273  ax-inf2 8890  ax-cnex 10383  ax-resscn 10384  ax-1cn 10385  ax-icn 10386  ax-addcl 10387  ax-addrcl 10388  ax-mulcl 10389  ax-mulrcl 10390  ax-mulcom 10391  ax-addass 10392  ax-mulass 10393  ax-distr 10394  ax-i2m1 10395  ax-1ne0 10396  ax-1rid 10397  ax-rnegex 10398  ax-rrecex 10399  ax-cnre 10400  ax-pre-lttri 10401  ax-pre-lttrn 10402  ax-pre-ltadd 10403  ax-pre-mulgt0 10404  ax-pre-sup 10405
This theorem depends on definitions:  df-bi 199  df-an 388  df-or 834  df-3or 1069  df-3an 1070  df-tru 1510  df-fal 1520  df-ex 1743  df-nf 1747  df-sb 2014  df-mo 2544  df-eu 2580  df-clab 2754  df-cleq 2765  df-clel 2840  df-nfc 2912  df-ne 2962  df-nel 3068  df-ral 3087  df-rex 3088  df-reu 3089  df-rmo 3090  df-rab 3091  df-v 3411  df-sbc 3678  df-csb 3783  df-dif 3828  df-un 3830  df-in 3832  df-ss 3839  df-pss 3841  df-nul 4174  df-if 4345  df-pw 4418  df-sn 4436  df-pr 4438  df-tp 4440  df-op 4442  df-uni 4707  df-int 4744  df-iun 4788  df-br 4924  df-opab 4986  df-mpt 5003  df-tr 5025  df-id 5305  df-eprel 5310  df-po 5319  df-so 5320  df-fr 5359  df-se 5360  df-we 5361  df-xp 5406  df-rel 5407  df-cnv 5408  df-co 5409  df-dm 5410  df-rn 5411  df-res 5412  df-ima 5413  df-pred 5980  df-ord 6026  df-on 6027  df-lim 6028  df-suc 6029  df-iota 6146  df-fun 6184  df-fn 6185  df-f 6186  df-f1 6187  df-fo 6188  df-f1o 6189  df-fv 6190  df-isom 6191  df-riota 6931  df-ov 6973  df-oprab 6974  df-mpo 6975  df-om 7391  df-1st 7494  df-2nd 7495  df-wrecs 7743  df-recs 7805  df-rdg 7843  df-1o 7897  df-oadd 7901  df-er 8081  df-en 8299  df-dom 8300  df-sdom 8301  df-fin 8302  df-sup 8693  df-oi 8761  df-card 9154  df-pnf 10468  df-mnf 10469  df-xr 10470  df-ltxr 10471  df-le 10472  df-sub 10664  df-neg 10665  df-div 11091  df-nn 11432  df-2 11496  df-3 11497  df-n0 11701  df-z 11787  df-uz 12052  df-rp 12198  df-fz 12702  df-fzo 12843  df-seq 13178  df-exp 13238  df-hash 13499  df-cj 14309  df-re 14310  df-im 14311  df-sqrt 14445  df-abs 14446  df-clim 14696  df-prod 15110
This theorem is referenced by:  fprodss  15152  fprodshft  15180  fprodrev  15181  fprod2dlem  15184  fprodcnv  15187  gausslemma2dlem1  25634  hgt750lemg  31534
  Copyright terms: Public domain W3C validator