Metamath Proof Explorer


Theorem psrass23l

Description: Associative identity for the ring of power series. Part of psrass23 which does not require the scalar ring to be commutative. (Contributed by Mario Carneiro, 7-Jan-2015) (Revised by AV, 14-Aug-2019)

Ref Expression
Hypotheses psrring.s 𝑆 = ( 𝐼 mPwSer 𝑅 )
psrring.i ( 𝜑𝐼𝑉 )
psrring.r ( 𝜑𝑅 ∈ Ring )
psrass.d 𝐷 = { 𝑓 ∈ ( ℕ0m 𝐼 ) ∣ ( 𝑓 “ ℕ ) ∈ Fin }
psrass.t × = ( .r𝑆 )
psrass.b 𝐵 = ( Base ‘ 𝑆 )
psrass.x ( 𝜑𝑋𝐵 )
psrass.y ( 𝜑𝑌𝐵 )
psrass23l.k 𝐾 = ( Base ‘ 𝑅 )
psrass23l.n · = ( ·𝑠𝑆 )
psrass23l.a ( 𝜑𝐴𝐾 )
Assertion psrass23l ( 𝜑 → ( ( 𝐴 · 𝑋 ) × 𝑌 ) = ( 𝐴 · ( 𝑋 × 𝑌 ) ) )

Proof

Step Hyp Ref Expression
1 psrring.s 𝑆 = ( 𝐼 mPwSer 𝑅 )
2 psrring.i ( 𝜑𝐼𝑉 )
3 psrring.r ( 𝜑𝑅 ∈ Ring )
4 psrass.d 𝐷 = { 𝑓 ∈ ( ℕ0m 𝐼 ) ∣ ( 𝑓 “ ℕ ) ∈ Fin }
5 psrass.t × = ( .r𝑆 )
6 psrass.b 𝐵 = ( Base ‘ 𝑆 )
7 psrass.x ( 𝜑𝑋𝐵 )
8 psrass.y ( 𝜑𝑌𝐵 )
9 psrass23l.k 𝐾 = ( Base ‘ 𝑅 )
10 psrass23l.n · = ( ·𝑠𝑆 )
11 psrass23l.a ( 𝜑𝐴𝐾 )
12 eqid ( Base ‘ 𝑅 ) = ( Base ‘ 𝑅 )
13 eqid ( .r𝑅 ) = ( .r𝑅 )
14 11 adantr ( ( 𝜑𝑘𝐷 ) → 𝐴𝐾 )
15 14 9 eleqtrdi ( ( 𝜑𝑘𝐷 ) → 𝐴 ∈ ( Base ‘ 𝑅 ) )
16 15 adantr ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝐴 ∈ ( Base ‘ 𝑅 ) )
17 7 ad2antrr ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑋𝐵 )
18 ssrab2 { 𝑦𝐷𝑦r𝑘 } ⊆ 𝐷
19 simpr ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } )
20 18 19 sselid ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑥𝐷 )
21 1 10 12 6 13 4 16 17 20 psrvscaval ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) = ( 𝐴 ( .r𝑅 ) ( 𝑋𝑥 ) ) )
22 21 oveq1d ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) = ( ( 𝐴 ( .r𝑅 ) ( 𝑋𝑥 ) ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) )
23 3 ad2antrr ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑅 ∈ Ring )
24 1 12 4 6 17 psrelbas ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑋 : 𝐷 ⟶ ( Base ‘ 𝑅 ) )
25 24 20 ffvelcdmd ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( 𝑋𝑥 ) ∈ ( Base ‘ 𝑅 ) )
26 8 ad2antrr ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑌𝐵 )
27 1 12 4 6 26 psrelbas ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → 𝑌 : 𝐷 ⟶ ( Base ‘ 𝑅 ) )
28 eqid { 𝑦𝐷𝑦r𝑘 } = { 𝑦𝐷𝑦r𝑘 }
29 4 28 psrbagconcl ( ( 𝑘𝐷𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( 𝑘f𝑥 ) ∈ { 𝑦𝐷𝑦r𝑘 } )
30 29 adantll ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( 𝑘f𝑥 ) ∈ { 𝑦𝐷𝑦r𝑘 } )
31 18 30 sselid ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( 𝑘f𝑥 ) ∈ 𝐷 )
32 27 31 ffvelcdmd ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ∈ ( Base ‘ 𝑅 ) )
33 12 13 ringass ( ( 𝑅 ∈ Ring ∧ ( 𝐴 ∈ ( Base ‘ 𝑅 ) ∧ ( 𝑋𝑥 ) ∈ ( Base ‘ 𝑅 ) ∧ ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ∈ ( Base ‘ 𝑅 ) ) ) → ( ( 𝐴 ( .r𝑅 ) ( 𝑋𝑥 ) ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) = ( 𝐴 ( .r𝑅 ) ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) )
34 23 16 25 32 33 syl13anc ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( ( 𝐴 ( .r𝑅 ) ( 𝑋𝑥 ) ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) = ( 𝐴 ( .r𝑅 ) ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) )
35 22 34 eqtrd ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) = ( 𝐴 ( .r𝑅 ) ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) )
36 35 mpteq2dva ( ( 𝜑𝑘𝐷 ) → ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) = ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( 𝐴 ( .r𝑅 ) ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) )
37 36 oveq2d ( ( 𝜑𝑘𝐷 ) → ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) = ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( 𝐴 ( .r𝑅 ) ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) )
38 eqid ( 0g𝑅 ) = ( 0g𝑅 )
39 3 adantr ( ( 𝜑𝑘𝐷 ) → 𝑅 ∈ Ring )
40 4 psrbaglefi ( 𝑘𝐷 → { 𝑦𝐷𝑦r𝑘 } ∈ Fin )
41 40 adantl ( ( 𝜑𝑘𝐷 ) → { 𝑦𝐷𝑦r𝑘 } ∈ Fin )
42 12 13 23 25 32 ringcld ( ( ( 𝜑𝑘𝐷 ) ∧ 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ) → ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ∈ ( Base ‘ 𝑅 ) )
43 ovex ( ℕ0m 𝐼 ) ∈ V
44 4 43 rabex2 𝐷 ∈ V
45 44 mptrabex ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∈ V
46 funmpt Fun ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) )
47 fvex ( 0g𝑅 ) ∈ V
48 45 46 47 3pm3.2i ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∈ V ∧ Fun ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∧ ( 0g𝑅 ) ∈ V )
49 48 a1i ( ( 𝜑𝑘𝐷 ) → ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∈ V ∧ Fun ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∧ ( 0g𝑅 ) ∈ V ) )
50 suppssdm ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) supp ( 0g𝑅 ) ) ⊆ dom ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) )
51 eqid ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) = ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) )
52 51 dmmptss dom ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ⊆ { 𝑦𝐷𝑦r𝑘 }
53 50 52 sstri ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) supp ( 0g𝑅 ) ) ⊆ { 𝑦𝐷𝑦r𝑘 }
54 53 a1i ( ( 𝜑𝑘𝐷 ) → ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) supp ( 0g𝑅 ) ) ⊆ { 𝑦𝐷𝑦r𝑘 } )
55 suppssfifsupp ( ( ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∈ V ∧ Fun ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ∧ ( 0g𝑅 ) ∈ V ) ∧ ( { 𝑦𝐷𝑦r𝑘 } ∈ Fin ∧ ( ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) supp ( 0g𝑅 ) ) ⊆ { 𝑦𝐷𝑦r𝑘 } ) ) → ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) finSupp ( 0g𝑅 ) )
56 49 41 54 55 syl12anc ( ( 𝜑𝑘𝐷 ) → ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) finSupp ( 0g𝑅 ) )
57 12 38 13 39 41 15 42 56 gsummulc2 ( ( 𝜑𝑘𝐷 ) → ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( 𝐴 ( .r𝑅 ) ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) = ( 𝐴 ( .r𝑅 ) ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) )
58 37 57 eqtrd ( ( 𝜑𝑘𝐷 ) → ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) = ( 𝐴 ( .r𝑅 ) ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) )
59 58 mpteq2dva ( 𝜑 → ( 𝑘𝐷 ↦ ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) = ( 𝑘𝐷 ↦ ( 𝐴 ( .r𝑅 ) ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) ) )
60 1 10 9 6 3 11 7 psrvscacl ( 𝜑 → ( 𝐴 · 𝑋 ) ∈ 𝐵 )
61 1 6 13 5 4 60 8 psrmulfval ( 𝜑 → ( ( 𝐴 · 𝑋 ) × 𝑌 ) = ( 𝑘𝐷 ↦ ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( ( 𝐴 · 𝑋 ) ‘ 𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) )
62 1 6 5 3 7 8 psrmulcl ( 𝜑 → ( 𝑋 × 𝑌 ) ∈ 𝐵 )
63 1 10 9 6 13 4 11 62 psrvsca ( 𝜑 → ( 𝐴 · ( 𝑋 × 𝑌 ) ) = ( ( 𝐷 × { 𝐴 } ) ∘f ( .r𝑅 ) ( 𝑋 × 𝑌 ) ) )
64 44 a1i ( 𝜑𝐷 ∈ V )
65 ovexd ( ( 𝜑𝑘𝐷 ) → ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ∈ V )
66 fconstmpt ( 𝐷 × { 𝐴 } ) = ( 𝑘𝐷𝐴 )
67 66 a1i ( 𝜑 → ( 𝐷 × { 𝐴 } ) = ( 𝑘𝐷𝐴 ) )
68 1 6 13 5 4 7 8 psrmulfval ( 𝜑 → ( 𝑋 × 𝑌 ) = ( 𝑘𝐷 ↦ ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) )
69 64 14 65 67 68 offval2 ( 𝜑 → ( ( 𝐷 × { 𝐴 } ) ∘f ( .r𝑅 ) ( 𝑋 × 𝑌 ) ) = ( 𝑘𝐷 ↦ ( 𝐴 ( .r𝑅 ) ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) ) )
70 63 69 eqtrd ( 𝜑 → ( 𝐴 · ( 𝑋 × 𝑌 ) ) = ( 𝑘𝐷 ↦ ( 𝐴 ( .r𝑅 ) ( 𝑅 Σg ( 𝑥 ∈ { 𝑦𝐷𝑦r𝑘 } ↦ ( ( 𝑋𝑥 ) ( .r𝑅 ) ( 𝑌 ‘ ( 𝑘f𝑥 ) ) ) ) ) ) ) )
71 59 61 70 3eqtr4d ( 𝜑 → ( ( 𝐴 · 𝑋 ) × 𝑌 ) = ( 𝐴 · ( 𝑋 × 𝑌 ) ) )