Metamath Proof Explorer


Theorem psrring

Description: The ring of power series is a ring. (Contributed by Mario Carneiro, 29-Dec-2014)

Ref Expression
Hypotheses psrring.s
|- S = ( I mPwSer R )
psrring.i
|- ( ph -> I e. V )
psrring.r
|- ( ph -> R e. Ring )
Assertion psrring
|- ( ph -> S e. Ring )

Proof

Step Hyp Ref Expression
1 psrring.s
 |-  S = ( I mPwSer R )
2 psrring.i
 |-  ( ph -> I e. V )
3 psrring.r
 |-  ( ph -> R e. Ring )
4 eqidd
 |-  ( ph -> ( Base ` S ) = ( Base ` S ) )
5 eqidd
 |-  ( ph -> ( +g ` S ) = ( +g ` S ) )
6 eqidd
 |-  ( ph -> ( .r ` S ) = ( .r ` S ) )
7 3 ringgrpd
 |-  ( ph -> R e. Grp )
8 1 2 7 psrgrp
 |-  ( ph -> S e. Grp )
9 eqid
 |-  ( Base ` S ) = ( Base ` S )
10 eqid
 |-  ( .r ` S ) = ( .r ` S )
11 3 3ad2ant1
 |-  ( ( ph /\ x e. ( Base ` S ) /\ y e. ( Base ` S ) ) -> R e. Ring )
12 simp2
 |-  ( ( ph /\ x e. ( Base ` S ) /\ y e. ( Base ` S ) ) -> x e. ( Base ` S ) )
13 simp3
 |-  ( ( ph /\ x e. ( Base ` S ) /\ y e. ( Base ` S ) ) -> y e. ( Base ` S ) )
14 1 9 10 11 12 13 psrmulcl
 |-  ( ( ph /\ x e. ( Base ` S ) /\ y e. ( Base ` S ) ) -> ( x ( .r ` S ) y ) e. ( Base ` S ) )
15 2 adantr
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> I e. V )
16 3 adantr
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> R e. Ring )
17 eqid
 |-  { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } = { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin }
18 simpr1
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> x e. ( Base ` S ) )
19 simpr2
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> y e. ( Base ` S ) )
20 simpr3
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> z e. ( Base ` S ) )
21 1 15 16 17 10 9 18 19 20 psrass1
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> ( ( x ( .r ` S ) y ) ( .r ` S ) z ) = ( x ( .r ` S ) ( y ( .r ` S ) z ) ) )
22 eqid
 |-  ( +g ` S ) = ( +g ` S )
23 1 15 16 17 10 9 18 19 20 22 psrdi
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> ( x ( .r ` S ) ( y ( +g ` S ) z ) ) = ( ( x ( .r ` S ) y ) ( +g ` S ) ( x ( .r ` S ) z ) ) )
24 1 15 16 17 10 9 18 19 20 22 psrdir
 |-  ( ( ph /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( Base ` S ) ) ) -> ( ( x ( +g ` S ) y ) ( .r ` S ) z ) = ( ( x ( .r ` S ) z ) ( +g ` S ) ( y ( .r ` S ) z ) ) )
25 eqid
 |-  ( 0g ` R ) = ( 0g ` R )
26 eqid
 |-  ( 1r ` R ) = ( 1r ` R )
27 eqid
 |-  ( r e. { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |-> if ( r = ( I X. { 0 } ) , ( 1r ` R ) , ( 0g ` R ) ) ) = ( r e. { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |-> if ( r = ( I X. { 0 } ) , ( 1r ` R ) , ( 0g ` R ) ) )
28 1 2 3 17 25 26 27 9 psr1cl
 |-  ( ph -> ( r e. { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |-> if ( r = ( I X. { 0 } ) , ( 1r ` R ) , ( 0g ` R ) ) ) e. ( Base ` S ) )
29 2 adantr
 |-  ( ( ph /\ x e. ( Base ` S ) ) -> I e. V )
30 3 adantr
 |-  ( ( ph /\ x e. ( Base ` S ) ) -> R e. Ring )
31 simpr
 |-  ( ( ph /\ x e. ( Base ` S ) ) -> x e. ( Base ` S ) )
32 1 29 30 17 25 26 27 9 10 31 psrlidm
 |-  ( ( ph /\ x e. ( Base ` S ) ) -> ( ( r e. { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |-> if ( r = ( I X. { 0 } ) , ( 1r ` R ) , ( 0g ` R ) ) ) ( .r ` S ) x ) = x )
33 1 29 30 17 25 26 27 9 10 31 psrridm
 |-  ( ( ph /\ x e. ( Base ` S ) ) -> ( x ( .r ` S ) ( r e. { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |-> if ( r = ( I X. { 0 } ) , ( 1r ` R ) , ( 0g ` R ) ) ) ) = x )
34 4 5 6 8 14 21 23 24 28 32 33 isringd
 |-  ( ph -> S e. Ring )