Metamath Proof Explorer


Theorem mendlmod

Description: The module endomorphism algebra is a left module. (Contributed by Mario Carneiro, 22-Sep-2015)

Ref Expression
Hypotheses mendassa.a
|- A = ( MEndo ` M )
mendassa.s
|- S = ( Scalar ` M )
Assertion mendlmod
|- ( ( M e. LMod /\ S e. CRing ) -> A e. LMod )

Proof

Step Hyp Ref Expression
1 mendassa.a
 |-  A = ( MEndo ` M )
2 mendassa.s
 |-  S = ( Scalar ` M )
3 1 mendbas
 |-  ( M LMHom M ) = ( Base ` A )
4 3 a1i
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( M LMHom M ) = ( Base ` A ) )
5 eqidd
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( +g ` A ) = ( +g ` A ) )
6 1 2 mendsca
 |-  S = ( Scalar ` A )
7 6 a1i
 |-  ( ( M e. LMod /\ S e. CRing ) -> S = ( Scalar ` A ) )
8 eqidd
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( .s ` A ) = ( .s ` A ) )
9 eqidd
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( Base ` S ) = ( Base ` S ) )
10 eqidd
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( +g ` S ) = ( +g ` S ) )
11 eqidd
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( .r ` S ) = ( .r ` S ) )
12 eqidd
 |-  ( ( M e. LMod /\ S e. CRing ) -> ( 1r ` S ) = ( 1r ` S ) )
13 crngring
 |-  ( S e. CRing -> S e. Ring )
14 13 adantl
 |-  ( ( M e. LMod /\ S e. CRing ) -> S e. Ring )
15 1 mendring
 |-  ( M e. LMod -> A e. Ring )
16 15 adantr
 |-  ( ( M e. LMod /\ S e. CRing ) -> A e. Ring )
17 ringgrp
 |-  ( A e. Ring -> A e. Grp )
18 16 17 syl
 |-  ( ( M e. LMod /\ S e. CRing ) -> A e. Grp )
19 eqid
 |-  ( .s ` M ) = ( .s ` M )
20 eqid
 |-  ( Base ` S ) = ( Base ` S )
21 eqid
 |-  ( Base ` M ) = ( Base ` M )
22 eqid
 |-  ( .s ` A ) = ( .s ` A )
23 1 19 3 2 20 21 22 mendvsca
 |-  ( ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) -> ( x ( .s ` A ) y ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) )
24 23 3adant1
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) -> ( x ( .s ` A ) y ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) )
25 21 19 2 20 lmhmvsca
 |-  ( ( S e. CRing /\ x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) -> ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) e. ( M LMHom M ) )
26 25 3adant1l
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) -> ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) e. ( M LMHom M ) )
27 24 26 eqeltrd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) -> ( x ( .s ` A ) y ) e. ( M LMHom M ) )
28 simpr2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> y e. ( M LMHom M ) )
29 simpr3
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> z e. ( M LMHom M ) )
30 eqid
 |-  ( +g ` M ) = ( +g ` M )
31 eqid
 |-  ( +g ` A ) = ( +g ` A )
32 1 3 30 31 mendplusg
 |-  ( ( y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) -> ( y ( +g ` A ) z ) = ( y oF ( +g ` M ) z ) )
33 28 29 32 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( y ( +g ` A ) z ) = ( y oF ( +g ` M ) z ) )
34 33 oveq2d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y ( +g ` A ) z ) ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y oF ( +g ` M ) z ) ) )
35 simpr1
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> x e. ( Base ` S ) )
36 18 adantr
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> A e. Grp )
37 3 31 grpcl
 |-  ( ( A e. Grp /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) -> ( y ( +g ` A ) z ) e. ( M LMHom M ) )
38 36 28 29 37 syl3anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( y ( +g ` A ) z ) e. ( M LMHom M ) )
39 1 19 3 2 20 21 22 mendvsca
 |-  ( ( x e. ( Base ` S ) /\ ( y ( +g ` A ) z ) e. ( M LMHom M ) ) -> ( x ( .s ` A ) ( y ( +g ` A ) z ) ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y ( +g ` A ) z ) ) )
40 35 38 39 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) ( y ( +g ` A ) z ) ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y ( +g ` A ) z ) ) )
41 35 28 23 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) y ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) )
42 1 19 3 2 20 21 22 mendvsca
 |-  ( ( x e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( x ( .s ` A ) z ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) )
43 35 29 42 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) z ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) )
44 41 43 oveq12d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .s ` A ) y ) oF ( +g ` M ) ( x ( .s ` A ) z ) ) = ( ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) oF ( +g ` M ) ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) ) )
45 27 3adant3r3
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) y ) e. ( M LMHom M ) )
46 eleq1w
 |-  ( y = z -> ( y e. ( M LMHom M ) <-> z e. ( M LMHom M ) ) )
47 46 3anbi3d
 |-  ( y = z -> ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) <-> ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) )
48 oveq2
 |-  ( y = z -> ( x ( .s ` A ) y ) = ( x ( .s ` A ) z ) )
49 48 eleq1d
 |-  ( y = z -> ( ( x ( .s ` A ) y ) e. ( M LMHom M ) <-> ( x ( .s ` A ) z ) e. ( M LMHom M ) ) )
50 47 49 imbi12d
 |-  ( y = z -> ( ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ y e. ( M LMHom M ) ) -> ( x ( .s ` A ) y ) e. ( M LMHom M ) ) <-> ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( x ( .s ` A ) z ) e. ( M LMHom M ) ) ) )
51 50 27 chvarvv
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( x ( .s ` A ) z ) e. ( M LMHom M ) )
52 51 3adant3r2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) z ) e. ( M LMHom M ) )
53 1 3 30 31 mendplusg
 |-  ( ( ( x ( .s ` A ) y ) e. ( M LMHom M ) /\ ( x ( .s ` A ) z ) e. ( M LMHom M ) ) -> ( ( x ( .s ` A ) y ) ( +g ` A ) ( x ( .s ` A ) z ) ) = ( ( x ( .s ` A ) y ) oF ( +g ` M ) ( x ( .s ` A ) z ) ) )
54 45 52 53 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .s ` A ) y ) ( +g ` A ) ( x ( .s ` A ) z ) ) = ( ( x ( .s ` A ) y ) oF ( +g ` M ) ( x ( .s ` A ) z ) ) )
55 fvexd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( Base ` M ) e. _V )
56 fconst6g
 |-  ( x e. ( Base ` S ) -> ( ( Base ` M ) X. { x } ) : ( Base ` M ) --> ( Base ` S ) )
57 35 56 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( ( Base ` M ) X. { x } ) : ( Base ` M ) --> ( Base ` S ) )
58 21 21 lmhmf
 |-  ( y e. ( M LMHom M ) -> y : ( Base ` M ) --> ( Base ` M ) )
59 28 58 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> y : ( Base ` M ) --> ( Base ` M ) )
60 21 21 lmhmf
 |-  ( z e. ( M LMHom M ) -> z : ( Base ` M ) --> ( Base ` M ) )
61 29 60 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> z : ( Base ` M ) --> ( Base ` M ) )
62 simpll
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> M e. LMod )
63 21 30 2 19 20 lmodvsdi
 |-  ( ( M e. LMod /\ ( w e. ( Base ` S ) /\ v e. ( Base ` M ) /\ u e. ( Base ` M ) ) ) -> ( w ( .s ` M ) ( v ( +g ` M ) u ) ) = ( ( w ( .s ` M ) v ) ( +g ` M ) ( w ( .s ` M ) u ) ) )
64 62 63 sylan
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) /\ ( w e. ( Base ` S ) /\ v e. ( Base ` M ) /\ u e. ( Base ` M ) ) ) -> ( w ( .s ` M ) ( v ( +g ` M ) u ) ) = ( ( w ( .s ` M ) v ) ( +g ` M ) ( w ( .s ` M ) u ) ) )
65 55 57 59 61 64 caofdi
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y oF ( +g ` M ) z ) ) = ( ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) y ) oF ( +g ` M ) ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) ) )
66 44 54 65 3eqtr4d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .s ` A ) y ) ( +g ` A ) ( x ( .s ` A ) z ) ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y oF ( +g ` M ) z ) ) )
67 34 40 66 3eqtr4d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( M LMHom M ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) ( y ( +g ` A ) z ) ) = ( ( x ( .s ` A ) y ) ( +g ` A ) ( x ( .s ` A ) z ) ) )
68 fvexd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( Base ` M ) e. _V )
69 simpr3
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> z e. ( M LMHom M ) )
70 69 60 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> z : ( Base ` M ) --> ( Base ` M ) )
71 simpr1
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> x e. ( Base ` S ) )
72 71 56 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( Base ` M ) X. { x } ) : ( Base ` M ) --> ( Base ` S ) )
73 simpr2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> y e. ( Base ` S ) )
74 fconst6g
 |-  ( y e. ( Base ` S ) -> ( ( Base ` M ) X. { y } ) : ( Base ` M ) --> ( Base ` S ) )
75 73 74 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( Base ` M ) X. { y } ) : ( Base ` M ) --> ( Base ` S ) )
76 simpll
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> M e. LMod )
77 eqid
 |-  ( +g ` S ) = ( +g ` S )
78 21 30 2 19 20 77 lmodvsdir
 |-  ( ( M e. LMod /\ ( w e. ( Base ` S ) /\ v e. ( Base ` S ) /\ u e. ( Base ` M ) ) ) -> ( ( w ( +g ` S ) v ) ( .s ` M ) u ) = ( ( w ( .s ` M ) u ) ( +g ` M ) ( v ( .s ` M ) u ) ) )
79 76 78 sylan
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ ( w e. ( Base ` S ) /\ v e. ( Base ` S ) /\ u e. ( Base ` M ) ) ) -> ( ( w ( +g ` S ) v ) ( .s ` M ) u ) = ( ( w ( .s ` M ) u ) ( +g ` M ) ( v ( .s ` M ) u ) ) )
80 68 70 72 75 79 caofdir
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( ( Base ` M ) X. { x } ) oF ( +g ` S ) ( ( Base ` M ) X. { y } ) ) oF ( .s ` M ) z ) = ( ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) oF ( +g ` M ) ( ( ( Base ` M ) X. { y } ) oF ( .s ` M ) z ) ) )
81 14 adantr
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> S e. Ring )
82 20 77 ringacl
 |-  ( ( S e. Ring /\ x e. ( Base ` S ) /\ y e. ( Base ` S ) ) -> ( x ( +g ` S ) y ) e. ( Base ` S ) )
83 81 71 73 82 syl3anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( x ( +g ` S ) y ) e. ( Base ` S ) )
84 1 19 3 2 20 21 22 mendvsca
 |-  ( ( ( x ( +g ` S ) y ) e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( ( x ( +g ` S ) y ) ( .s ` A ) z ) = ( ( ( Base ` M ) X. { ( x ( +g ` S ) y ) } ) oF ( .s ` M ) z ) )
85 83 69 84 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( +g ` S ) y ) ( .s ` A ) z ) = ( ( ( Base ` M ) X. { ( x ( +g ` S ) y ) } ) oF ( .s ` M ) z ) )
86 68 71 73 ofc12
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( Base ` M ) X. { x } ) oF ( +g ` S ) ( ( Base ` M ) X. { y } ) ) = ( ( Base ` M ) X. { ( x ( +g ` S ) y ) } ) )
87 86 oveq1d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( ( Base ` M ) X. { x } ) oF ( +g ` S ) ( ( Base ` M ) X. { y } ) ) oF ( .s ` M ) z ) = ( ( ( Base ` M ) X. { ( x ( +g ` S ) y ) } ) oF ( .s ` M ) z ) )
88 85 87 eqtr4d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( +g ` S ) y ) ( .s ` A ) z ) = ( ( ( ( Base ` M ) X. { x } ) oF ( +g ` S ) ( ( Base ` M ) X. { y } ) ) oF ( .s ` M ) z ) )
89 51 3adant3r2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) z ) e. ( M LMHom M ) )
90 eleq1w
 |-  ( x = y -> ( x e. ( Base ` S ) <-> y e. ( Base ` S ) ) )
91 90 3anbi2d
 |-  ( x = y -> ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ z e. ( M LMHom M ) ) <-> ( ( M e. LMod /\ S e. CRing ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) )
92 oveq1
 |-  ( x = y -> ( x ( .s ` A ) z ) = ( y ( .s ` A ) z ) )
93 92 eleq1d
 |-  ( x = y -> ( ( x ( .s ` A ) z ) e. ( M LMHom M ) <-> ( y ( .s ` A ) z ) e. ( M LMHom M ) ) )
94 91 93 imbi12d
 |-  ( x = y -> ( ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( x ( .s ` A ) z ) e. ( M LMHom M ) ) <-> ( ( ( M e. LMod /\ S e. CRing ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( y ( .s ` A ) z ) e. ( M LMHom M ) ) ) )
95 94 51 chvarvv
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( y ( .s ` A ) z ) e. ( M LMHom M ) )
96 95 3adant3r1
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( y ( .s ` A ) z ) e. ( M LMHom M ) )
97 1 3 30 31 mendplusg
 |-  ( ( ( x ( .s ` A ) z ) e. ( M LMHom M ) /\ ( y ( .s ` A ) z ) e. ( M LMHom M ) ) -> ( ( x ( .s ` A ) z ) ( +g ` A ) ( y ( .s ` A ) z ) ) = ( ( x ( .s ` A ) z ) oF ( +g ` M ) ( y ( .s ` A ) z ) ) )
98 89 96 97 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .s ` A ) z ) ( +g ` A ) ( y ( .s ` A ) z ) ) = ( ( x ( .s ` A ) z ) oF ( +g ` M ) ( y ( .s ` A ) z ) ) )
99 71 69 42 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) z ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) )
100 1 19 3 2 20 21 22 mendvsca
 |-  ( ( y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( y ( .s ` A ) z ) = ( ( ( Base ` M ) X. { y } ) oF ( .s ` M ) z ) )
101 73 69 100 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( y ( .s ` A ) z ) = ( ( ( Base ` M ) X. { y } ) oF ( .s ` M ) z ) )
102 99 101 oveq12d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .s ` A ) z ) oF ( +g ` M ) ( y ( .s ` A ) z ) ) = ( ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) oF ( +g ` M ) ( ( ( Base ` M ) X. { y } ) oF ( .s ` M ) z ) ) )
103 98 102 eqtrd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .s ` A ) z ) ( +g ` A ) ( y ( .s ` A ) z ) ) = ( ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) z ) oF ( +g ` M ) ( ( ( Base ` M ) X. { y } ) oF ( .s ` M ) z ) ) )
104 80 88 103 3eqtr4d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( +g ` S ) y ) ( .s ` A ) z ) = ( ( x ( .s ` A ) z ) ( +g ` A ) ( y ( .s ` A ) z ) ) )
105 ovexd
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> ( x ( .r ` S ) y ) e. _V )
106 70 ffvelrnda
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> ( z ` k ) e. ( Base ` M ) )
107 fconstmpt
 |-  ( ( Base ` M ) X. { ( x ( .r ` S ) y ) } ) = ( k e. ( Base ` M ) |-> ( x ( .r ` S ) y ) )
108 107 a1i
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( Base ` M ) X. { ( x ( .r ` S ) y ) } ) = ( k e. ( Base ` M ) |-> ( x ( .r ` S ) y ) ) )
109 70 feqmptd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> z = ( k e. ( Base ` M ) |-> ( z ` k ) ) )
110 68 105 106 108 109 offval2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( Base ` M ) X. { ( x ( .r ` S ) y ) } ) oF ( .s ` M ) z ) = ( k e. ( Base ` M ) |-> ( ( x ( .r ` S ) y ) ( .s ` M ) ( z ` k ) ) ) )
111 eqid
 |-  ( .r ` S ) = ( .r ` S )
112 20 111 ringcl
 |-  ( ( S e. Ring /\ x e. ( Base ` S ) /\ y e. ( Base ` S ) ) -> ( x ( .r ` S ) y ) e. ( Base ` S ) )
113 81 71 73 112 syl3anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .r ` S ) y ) e. ( Base ` S ) )
114 1 19 3 2 20 21 22 mendvsca
 |-  ( ( ( x ( .r ` S ) y ) e. ( Base ` S ) /\ z e. ( M LMHom M ) ) -> ( ( x ( .r ` S ) y ) ( .s ` A ) z ) = ( ( ( Base ` M ) X. { ( x ( .r ` S ) y ) } ) oF ( .s ` M ) z ) )
115 113 69 114 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .r ` S ) y ) ( .s ` A ) z ) = ( ( ( Base ` M ) X. { ( x ( .r ` S ) y ) } ) oF ( .s ` M ) z ) )
116 71 adantr
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> x e. ( Base ` S ) )
117 ovexd
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> ( y ( .s ` M ) ( z ` k ) ) e. _V )
118 fconstmpt
 |-  ( ( Base ` M ) X. { x } ) = ( k e. ( Base ` M ) |-> x )
119 118 a1i
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( Base ` M ) X. { x } ) = ( k e. ( Base ` M ) |-> x ) )
120 simplr2
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> y e. ( Base ` S ) )
121 fconstmpt
 |-  ( ( Base ` M ) X. { y } ) = ( k e. ( Base ` M ) |-> y )
122 121 a1i
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( Base ` M ) X. { y } ) = ( k e. ( Base ` M ) |-> y ) )
123 68 120 106 122 109 offval2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( Base ` M ) X. { y } ) oF ( .s ` M ) z ) = ( k e. ( Base ` M ) |-> ( y ( .s ` M ) ( z ` k ) ) ) )
124 101 123 eqtrd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( y ( .s ` A ) z ) = ( k e. ( Base ` M ) |-> ( y ( .s ` M ) ( z ` k ) ) ) )
125 68 116 117 119 124 offval2
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y ( .s ` A ) z ) ) = ( k e. ( Base ` M ) |-> ( x ( .s ` M ) ( y ( .s ` M ) ( z ` k ) ) ) ) )
126 1 19 3 2 20 21 22 mendvsca
 |-  ( ( x e. ( Base ` S ) /\ ( y ( .s ` A ) z ) e. ( M LMHom M ) ) -> ( x ( .s ` A ) ( y ( .s ` A ) z ) ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y ( .s ` A ) z ) ) )
127 71 96 126 syl2anc
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) ( y ( .s ` A ) z ) ) = ( ( ( Base ` M ) X. { x } ) oF ( .s ` M ) ( y ( .s ` A ) z ) ) )
128 76 adantr
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> M e. LMod )
129 21 2 19 20 111 lmodvsass
 |-  ( ( M e. LMod /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ ( z ` k ) e. ( Base ` M ) ) ) -> ( ( x ( .r ` S ) y ) ( .s ` M ) ( z ` k ) ) = ( x ( .s ` M ) ( y ( .s ` M ) ( z ` k ) ) ) )
130 128 116 120 106 129 syl13anc
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) /\ k e. ( Base ` M ) ) -> ( ( x ( .r ` S ) y ) ( .s ` M ) ( z ` k ) ) = ( x ( .s ` M ) ( y ( .s ` M ) ( z ` k ) ) ) )
131 130 mpteq2dva
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( k e. ( Base ` M ) |-> ( ( x ( .r ` S ) y ) ( .s ` M ) ( z ` k ) ) ) = ( k e. ( Base ` M ) |-> ( x ( .s ` M ) ( y ( .s ` M ) ( z ` k ) ) ) ) )
132 125 127 131 3eqtr4d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( x ( .s ` A ) ( y ( .s ` A ) z ) ) = ( k e. ( Base ` M ) |-> ( ( x ( .r ` S ) y ) ( .s ` M ) ( z ` k ) ) ) )
133 110 115 132 3eqtr4d
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ ( x e. ( Base ` S ) /\ y e. ( Base ` S ) /\ z e. ( M LMHom M ) ) ) -> ( ( x ( .r ` S ) y ) ( .s ` A ) z ) = ( x ( .s ` A ) ( y ( .s ` A ) z ) ) )
134 14 adantr
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> S e. Ring )
135 eqid
 |-  ( 1r ` S ) = ( 1r ` S )
136 20 135 ringidcl
 |-  ( S e. Ring -> ( 1r ` S ) e. ( Base ` S ) )
137 134 136 syl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> ( 1r ` S ) e. ( Base ` S ) )
138 1 19 3 2 20 21 22 mendvsca
 |-  ( ( ( 1r ` S ) e. ( Base ` S ) /\ x e. ( M LMHom M ) ) -> ( ( 1r ` S ) ( .s ` A ) x ) = ( ( ( Base ` M ) X. { ( 1r ` S ) } ) oF ( .s ` M ) x ) )
139 137 138 sylancom
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> ( ( 1r ` S ) ( .s ` A ) x ) = ( ( ( Base ` M ) X. { ( 1r ` S ) } ) oF ( .s ` M ) x ) )
140 fvexd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> ( Base ` M ) e. _V )
141 21 21 lmhmf
 |-  ( x e. ( M LMHom M ) -> x : ( Base ` M ) --> ( Base ` M ) )
142 141 adantl
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> x : ( Base ` M ) --> ( Base ` M ) )
143 simpll
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> M e. LMod )
144 21 2 19 135 lmodvs1
 |-  ( ( M e. LMod /\ y e. ( Base ` M ) ) -> ( ( 1r ` S ) ( .s ` M ) y ) = y )
145 143 144 sylan
 |-  ( ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) /\ y e. ( Base ` M ) ) -> ( ( 1r ` S ) ( .s ` M ) y ) = y )
146 140 142 137 145 caofid0l
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> ( ( ( Base ` M ) X. { ( 1r ` S ) } ) oF ( .s ` M ) x ) = x )
147 139 146 eqtrd
 |-  ( ( ( M e. LMod /\ S e. CRing ) /\ x e. ( M LMHom M ) ) -> ( ( 1r ` S ) ( .s ` A ) x ) = x )
148 4 5 7 8 9 10 11 12 14 18 27 67 104 133 147 islmodd
 |-  ( ( M e. LMod /\ S e. CRing ) -> A e. LMod )