Metamath Proof Explorer


Theorem psrridm

Description: The identity element of the ring of power series is a right identity. (Contributed by Mario Carneiro, 29-Dec-2014) (Proof shortened by AV, 8-Jul-2019)

Ref Expression
Hypotheses psrring.s
|- S = ( I mPwSer R )
psrring.i
|- ( ph -> I e. V )
psrring.r
|- ( ph -> R e. Ring )
psr1cl.d
|- D = { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin }
psr1cl.z
|- .0. = ( 0g ` R )
psr1cl.o
|- .1. = ( 1r ` R )
psr1cl.u
|- U = ( x e. D |-> if ( x = ( I X. { 0 } ) , .1. , .0. ) )
psr1cl.b
|- B = ( Base ` S )
psrlidm.t
|- .x. = ( .r ` S )
psrlidm.x
|- ( ph -> X e. B )
Assertion psrridm
|- ( ph -> ( X .x. U ) = X )

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 psr1cl.d
 |-  D = { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin }
5 psr1cl.z
 |-  .0. = ( 0g ` R )
6 psr1cl.o
 |-  .1. = ( 1r ` R )
7 psr1cl.u
 |-  U = ( x e. D |-> if ( x = ( I X. { 0 } ) , .1. , .0. ) )
8 psr1cl.b
 |-  B = ( Base ` S )
9 psrlidm.t
 |-  .x. = ( .r ` S )
10 psrlidm.x
 |-  ( ph -> X e. B )
11 eqid
 |-  ( Base ` R ) = ( Base ` R )
12 1 2 3 4 5 6 7 8 psr1cl
 |-  ( ph -> U e. B )
13 1 8 9 3 10 12 psrmulcl
 |-  ( ph -> ( X .x. U ) e. B )
14 1 11 4 8 13 psrelbas
 |-  ( ph -> ( X .x. U ) : D --> ( Base ` R ) )
15 14 ffnd
 |-  ( ph -> ( X .x. U ) Fn D )
16 1 11 4 8 10 psrelbas
 |-  ( ph -> X : D --> ( Base ` R ) )
17 16 ffnd
 |-  ( ph -> X Fn D )
18 eqid
 |-  ( .r ` R ) = ( .r ` R )
19 10 adantr
 |-  ( ( ph /\ y e. D ) -> X e. B )
20 12 adantr
 |-  ( ( ph /\ y e. D ) -> U e. B )
21 simpr
 |-  ( ( ph /\ y e. D ) -> y e. D )
22 1 8 18 9 4 19 20 21 psrmulval
 |-  ( ( ph /\ y e. D ) -> ( ( X .x. U ) ` y ) = ( R gsum ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) ) )
23 breq1
 |-  ( g = y -> ( g oR <_ y <-> y oR <_ y ) )
24 2 adantr
 |-  ( ( ph /\ y e. D ) -> I e. V )
25 4 psrbagf
 |-  ( y e. D -> y : I --> NN0 )
26 25 adantl
 |-  ( ( ph /\ y e. D ) -> y : I --> NN0 )
27 nn0re
 |-  ( z e. NN0 -> z e. RR )
28 27 leidd
 |-  ( z e. NN0 -> z <_ z )
29 28 adantl
 |-  ( ( ( ph /\ y e. D ) /\ z e. NN0 ) -> z <_ z )
30 24 26 29 caofref
 |-  ( ( ph /\ y e. D ) -> y oR <_ y )
31 23 21 30 elrabd
 |-  ( ( ph /\ y e. D ) -> y e. { g e. D | g oR <_ y } )
32 31 snssd
 |-  ( ( ph /\ y e. D ) -> { y } C_ { g e. D | g oR <_ y } )
33 32 resmptd
 |-  ( ( ph /\ y e. D ) -> ( ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) |` { y } ) = ( z e. { y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) )
34 33 oveq2d
 |-  ( ( ph /\ y e. D ) -> ( R gsum ( ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) |` { y } ) ) = ( R gsum ( z e. { y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) ) )
35 ringcmn
 |-  ( R e. Ring -> R e. CMnd )
36 3 35 syl
 |-  ( ph -> R e. CMnd )
37 36 adantr
 |-  ( ( ph /\ y e. D ) -> R e. CMnd )
38 ovex
 |-  ( NN0 ^m I ) e. _V
39 4 38 rab2ex
 |-  { g e. D | g oR <_ y } e. _V
40 39 a1i
 |-  ( ( ph /\ y e. D ) -> { g e. D | g oR <_ y } e. _V )
41 3 ad2antrr
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> R e. Ring )
42 16 ad2antrr
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> X : D --> ( Base ` R ) )
43 breq1
 |-  ( g = z -> ( g oR <_ y <-> z oR <_ y ) )
44 43 elrab
 |-  ( z e. { g e. D | g oR <_ y } <-> ( z e. D /\ z oR <_ y ) )
45 44 bilani
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( z e. D /\ z oR <_ y ) )
46 45 simpld
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> z e. D )
47 42 46 ffvelcdmd
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( X ` z ) e. ( Base ` R ) )
48 1 11 4 8 20 psrelbas
 |-  ( ( ph /\ y e. D ) -> U : D --> ( Base ` R ) )
49 48 adantr
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> U : D --> ( Base ` R ) )
50 21 adantr
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> y e. D )
51 4 psrbagf
 |-  ( z e. D -> z : I --> NN0 )
52 46 51 syl
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> z : I --> NN0 )
53 45 simprd
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> z oR <_ y )
54 4 psrbagcon
 |-  ( ( y e. D /\ z : I --> NN0 /\ z oR <_ y ) -> ( ( y oF - z ) e. D /\ ( y oF - z ) oR <_ y ) )
55 50 52 53 54 syl3anc
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( ( y oF - z ) e. D /\ ( y oF - z ) oR <_ y ) )
56 55 simpld
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( y oF - z ) e. D )
57 49 56 ffvelcdmd
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( U ` ( y oF - z ) ) e. ( Base ` R ) )
58 11 18 ringcl
 |-  ( ( R e. Ring /\ ( X ` z ) e. ( Base ` R ) /\ ( U ` ( y oF - z ) ) e. ( Base ` R ) ) -> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) e. ( Base ` R ) )
59 41 47 57 58 syl3anc
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) e. ( Base ` R ) )
60 59 fmpttd
 |-  ( ( ph /\ y e. D ) -> ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) : { g e. D | g oR <_ y } --> ( Base ` R ) )
61 eldifi
 |-  ( z e. ( { g e. D | g oR <_ y } \ { y } ) -> z e. { g e. D | g oR <_ y } )
62 61 56 sylan2
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( y oF - z ) e. D )
63 eqeq1
 |-  ( x = ( y oF - z ) -> ( x = ( I X. { 0 } ) <-> ( y oF - z ) = ( I X. { 0 } ) ) )
64 63 ifbid
 |-  ( x = ( y oF - z ) -> if ( x = ( I X. { 0 } ) , .1. , .0. ) = if ( ( y oF - z ) = ( I X. { 0 } ) , .1. , .0. ) )
65 6 fvexi
 |-  .1. e. _V
66 5 fvexi
 |-  .0. e. _V
67 65 66 ifex
 |-  if ( ( y oF - z ) = ( I X. { 0 } ) , .1. , .0. ) e. _V
68 64 7 67 fvmpt
 |-  ( ( y oF - z ) e. D -> ( U ` ( y oF - z ) ) = if ( ( y oF - z ) = ( I X. { 0 } ) , .1. , .0. ) )
69 62 68 syl
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( U ` ( y oF - z ) ) = if ( ( y oF - z ) = ( I X. { 0 } ) , .1. , .0. ) )
70 eldifsni
 |-  ( z e. ( { g e. D | g oR <_ y } \ { y } ) -> z =/= y )
71 70 adantl
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> z =/= y )
72 71 necomd
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> y =/= z )
73 24 adantr
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> I e. V )
74 nn0sscn
 |-  NN0 C_ CC
75 fss
 |-  ( ( y : I --> NN0 /\ NN0 C_ CC ) -> y : I --> CC )
76 26 74 75 sylancl
 |-  ( ( ph /\ y e. D ) -> y : I --> CC )
77 76 adantr
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> y : I --> CC )
78 fss
 |-  ( ( z : I --> NN0 /\ NN0 C_ CC ) -> z : I --> CC )
79 52 74 78 sylancl
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> z : I --> CC )
80 ofsubeq0
 |-  ( ( I e. V /\ y : I --> CC /\ z : I --> CC ) -> ( ( y oF - z ) = ( I X. { 0 } ) <-> y = z ) )
81 73 77 79 80 syl3anc
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( ( y oF - z ) = ( I X. { 0 } ) <-> y = z ) )
82 61 81 sylan2
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( ( y oF - z ) = ( I X. { 0 } ) <-> y = z ) )
83 82 necon3bbid
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( -. ( y oF - z ) = ( I X. { 0 } ) <-> y =/= z ) )
84 72 83 mpbird
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> -. ( y oF - z ) = ( I X. { 0 } ) )
85 84 iffalsed
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> if ( ( y oF - z ) = ( I X. { 0 } ) , .1. , .0. ) = .0. )
86 69 85 eqtrd
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( U ` ( y oF - z ) ) = .0. )
87 86 oveq2d
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) = ( ( X ` z ) ( .r ` R ) .0. ) )
88 11 18 5 ringrz
 |-  ( ( R e. Ring /\ ( X ` z ) e. ( Base ` R ) ) -> ( ( X ` z ) ( .r ` R ) .0. ) = .0. )
89 41 47 88 syl2anc
 |-  ( ( ( ph /\ y e. D ) /\ z e. { g e. D | g oR <_ y } ) -> ( ( X ` z ) ( .r ` R ) .0. ) = .0. )
90 61 89 sylan2
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( ( X ` z ) ( .r ` R ) .0. ) = .0. )
91 87 90 eqtrd
 |-  ( ( ( ph /\ y e. D ) /\ z e. ( { g e. D | g oR <_ y } \ { y } ) ) -> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) = .0. )
92 91 40 suppss2
 |-  ( ( ph /\ y e. D ) -> ( ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) supp .0. ) C_ { y } )
93 40 mptexd
 |-  ( ( ph /\ y e. D ) -> ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) e. _V )
94 funmpt
 |-  Fun ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) )
95 94 a1i
 |-  ( ( ph /\ y e. D ) -> Fun ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) )
96 66 a1i
 |-  ( ( ph /\ y e. D ) -> .0. e. _V )
97 snfi
 |-  { y } e. Fin
98 97 a1i
 |-  ( ( ph /\ y e. D ) -> { y } e. Fin )
99 suppssfifsupp
 |-  ( ( ( ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) e. _V /\ Fun ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) /\ .0. e. _V ) /\ ( { y } e. Fin /\ ( ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) supp .0. ) C_ { y } ) ) -> ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) finSupp .0. )
100 93 95 96 98 92 99 syl32anc
 |-  ( ( ph /\ y e. D ) -> ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) finSupp .0. )
101 11 5 37 40 60 92 100 gsumres
 |-  ( ( ph /\ y e. D ) -> ( R gsum ( ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) |` { y } ) ) = ( R gsum ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) ) )
102 3 adantr
 |-  ( ( ph /\ y e. D ) -> R e. Ring )
103 ringmnd
 |-  ( R e. Ring -> R e. Mnd )
104 102 103 syl
 |-  ( ( ph /\ y e. D ) -> R e. Mnd )
105 eqid
 |-  y = y
106 ofsubeq0
 |-  ( ( I e. V /\ y : I --> CC /\ y : I --> CC ) -> ( ( y oF - y ) = ( I X. { 0 } ) <-> y = y ) )
107 24 76 76 106 syl3anc
 |-  ( ( ph /\ y e. D ) -> ( ( y oF - y ) = ( I X. { 0 } ) <-> y = y ) )
108 105 107 mpbiri
 |-  ( ( ph /\ y e. D ) -> ( y oF - y ) = ( I X. { 0 } ) )
109 108 fveq2d
 |-  ( ( ph /\ y e. D ) -> ( U ` ( y oF - y ) ) = ( U ` ( I X. { 0 } ) ) )
110 fconstmpt
 |-  ( I X. { 0 } ) = ( w e. I |-> 0 )
111 4 fczpsrbag
 |-  ( I e. V -> ( w e. I |-> 0 ) e. D )
112 2 111 syl
 |-  ( ph -> ( w e. I |-> 0 ) e. D )
113 110 112 eqeltrid
 |-  ( ph -> ( I X. { 0 } ) e. D )
114 113 adantr
 |-  ( ( ph /\ y e. D ) -> ( I X. { 0 } ) e. D )
115 iftrue
 |-  ( x = ( I X. { 0 } ) -> if ( x = ( I X. { 0 } ) , .1. , .0. ) = .1. )
116 115 7 65 fvmpt
 |-  ( ( I X. { 0 } ) e. D -> ( U ` ( I X. { 0 } ) ) = .1. )
117 114 116 syl
 |-  ( ( ph /\ y e. D ) -> ( U ` ( I X. { 0 } ) ) = .1. )
118 109 117 eqtrd
 |-  ( ( ph /\ y e. D ) -> ( U ` ( y oF - y ) ) = .1. )
119 118 oveq2d
 |-  ( ( ph /\ y e. D ) -> ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) = ( ( X ` y ) ( .r ` R ) .1. ) )
120 16 ffvelcdmda
 |-  ( ( ph /\ y e. D ) -> ( X ` y ) e. ( Base ` R ) )
121 11 18 6 ringridm
 |-  ( ( R e. Ring /\ ( X ` y ) e. ( Base ` R ) ) -> ( ( X ` y ) ( .r ` R ) .1. ) = ( X ` y ) )
122 102 120 121 syl2anc
 |-  ( ( ph /\ y e. D ) -> ( ( X ` y ) ( .r ` R ) .1. ) = ( X ` y ) )
123 119 122 eqtrd
 |-  ( ( ph /\ y e. D ) -> ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) = ( X ` y ) )
124 123 120 eqeltrd
 |-  ( ( ph /\ y e. D ) -> ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) e. ( Base ` R ) )
125 fveq2
 |-  ( z = y -> ( X ` z ) = ( X ` y ) )
126 oveq2
 |-  ( z = y -> ( y oF - z ) = ( y oF - y ) )
127 126 fveq2d
 |-  ( z = y -> ( U ` ( y oF - z ) ) = ( U ` ( y oF - y ) ) )
128 125 127 oveq12d
 |-  ( z = y -> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) = ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) )
129 11 128 gsumsn
 |-  ( ( R e. Mnd /\ y e. D /\ ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) e. ( Base ` R ) ) -> ( R gsum ( z e. { y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) ) = ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) )
130 104 21 124 129 syl3anc
 |-  ( ( ph /\ y e. D ) -> ( R gsum ( z e. { y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) ) = ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) )
131 34 101 130 3eqtr3d
 |-  ( ( ph /\ y e. D ) -> ( R gsum ( z e. { g e. D | g oR <_ y } |-> ( ( X ` z ) ( .r ` R ) ( U ` ( y oF - z ) ) ) ) ) = ( ( X ` y ) ( .r ` R ) ( U ` ( y oF - y ) ) ) )
132 22 131 123 3eqtrd
 |-  ( ( ph /\ y e. D ) -> ( ( X .x. U ) ` y ) = ( X ` y ) )
133 15 17 132 eqfnfvd
 |-  ( ph -> ( X .x. U ) = X )