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=MEndoM
mendassa.s S=ScalarM
Assertion mendlmod MLModSCRingALMod

Proof

Step Hyp Ref Expression
1 mendassa.a A=MEndoM
2 mendassa.s S=ScalarM
3 1 mendbas MLMHomM=BaseA
4 3 a1i MLModSCRingMLMHomM=BaseA
5 eqidd MLModSCRing+A=+A
6 1 2 mendsca S=ScalarA
7 6 a1i MLModSCRingS=ScalarA
8 eqidd MLModSCRingA=A
9 eqidd MLModSCRingBaseS=BaseS
10 eqidd MLModSCRing+S=+S
11 eqidd MLModSCRingS=S
12 eqidd MLModSCRing1S=1S
13 crngring SCRingSRing
14 13 adantl MLModSCRingSRing
15 1 mendring MLModARing
16 15 adantr MLModSCRingARing
17 ringgrp ARingAGrp
18 16 17 syl MLModSCRingAGrp
19 eqid M=M
20 eqid BaseS=BaseS
21 eqid BaseM=BaseM
22 eqid A=A
23 1 19 3 2 20 21 22 mendvsca xBaseSyMLMHomMxAy=BaseM×xMfy
24 23 3adant1 MLModSCRingxBaseSyMLMHomMxAy=BaseM×xMfy
25 21 19 2 20 lmhmvsca SCRingxBaseSyMLMHomMBaseM×xMfyMLMHomM
26 25 3adant1l MLModSCRingxBaseSyMLMHomMBaseM×xMfyMLMHomM
27 24 26 eqeltrd MLModSCRingxBaseSyMLMHomMxAyMLMHomM
28 simpr2 MLModSCRingxBaseSyMLMHomMzMLMHomMyMLMHomM
29 simpr3 MLModSCRingxBaseSyMLMHomMzMLMHomMzMLMHomM
30 eqid +M=+M
31 eqid +A=+A
32 1 3 30 31 mendplusg yMLMHomMzMLMHomMy+Az=y+Mfz
33 28 29 32 syl2anc MLModSCRingxBaseSyMLMHomMzMLMHomMy+Az=y+Mfz
34 33 oveq2d MLModSCRingxBaseSyMLMHomMzMLMHomMBaseM×xMfy+Az=BaseM×xMfy+Mfz
35 simpr1 MLModSCRingxBaseSyMLMHomMzMLMHomMxBaseS
36 18 adantr MLModSCRingxBaseSyMLMHomMzMLMHomMAGrp
37 3 31 grpcl AGrpyMLMHomMzMLMHomMy+AzMLMHomM
38 36 28 29 37 syl3anc MLModSCRingxBaseSyMLMHomMzMLMHomMy+AzMLMHomM
39 1 19 3 2 20 21 22 mendvsca xBaseSy+AzMLMHomMxAy+Az=BaseM×xMfy+Az
40 35 38 39 syl2anc MLModSCRingxBaseSyMLMHomMzMLMHomMxAy+Az=BaseM×xMfy+Az
41 35 28 23 syl2anc MLModSCRingxBaseSyMLMHomMzMLMHomMxAy=BaseM×xMfy
42 1 19 3 2 20 21 22 mendvsca xBaseSzMLMHomMxAz=BaseM×xMfz
43 35 29 42 syl2anc MLModSCRingxBaseSyMLMHomMzMLMHomMxAz=BaseM×xMfz
44 41 43 oveq12d MLModSCRingxBaseSyMLMHomMzMLMHomMxAy+MfxAz=BaseM×xMfy+MfBaseM×xMfz
45 27 3adant3r3 MLModSCRingxBaseSyMLMHomMzMLMHomMxAyMLMHomM
46 eleq1w y=zyMLMHomMzMLMHomM
47 46 3anbi3d y=zMLModSCRingxBaseSyMLMHomMMLModSCRingxBaseSzMLMHomM
48 oveq2 y=zxAy=xAz
49 48 eleq1d y=zxAyMLMHomMxAzMLMHomM
50 47 49 imbi12d y=zMLModSCRingxBaseSyMLMHomMxAyMLMHomMMLModSCRingxBaseSzMLMHomMxAzMLMHomM
51 50 27 chvarvv MLModSCRingxBaseSzMLMHomMxAzMLMHomM
52 51 3adant3r2 MLModSCRingxBaseSyMLMHomMzMLMHomMxAzMLMHomM
53 1 3 30 31 mendplusg xAyMLMHomMxAzMLMHomMxAy+AxAz=xAy+MfxAz
54 45 52 53 syl2anc MLModSCRingxBaseSyMLMHomMzMLMHomMxAy+AxAz=xAy+MfxAz
55 fvexd MLModSCRingxBaseSyMLMHomMzMLMHomMBaseMV
56 fconst6g xBaseSBaseM×x:BaseMBaseS
57 35 56 syl MLModSCRingxBaseSyMLMHomMzMLMHomMBaseM×x:BaseMBaseS
58 21 21 lmhmf yMLMHomMy:BaseMBaseM
59 28 58 syl MLModSCRingxBaseSyMLMHomMzMLMHomMy:BaseMBaseM
60 21 21 lmhmf zMLMHomMz:BaseMBaseM
61 29 60 syl MLModSCRingxBaseSyMLMHomMzMLMHomMz:BaseMBaseM
62 simpll MLModSCRingxBaseSyMLMHomMzMLMHomMMLMod
63 21 30 2 19 20 lmodvsdi MLModwBaseSvBaseMuBaseMwMv+Mu=wMv+MwMu
64 62 63 sylan MLModSCRingxBaseSyMLMHomMzMLMHomMwBaseSvBaseMuBaseMwMv+Mu=wMv+MwMu
65 55 57 59 61 64 caofdi MLModSCRingxBaseSyMLMHomMzMLMHomMBaseM×xMfy+Mfz=BaseM×xMfy+MfBaseM×xMfz
66 44 54 65 3eqtr4d MLModSCRingxBaseSyMLMHomMzMLMHomMxAy+AxAz=BaseM×xMfy+Mfz
67 34 40 66 3eqtr4d MLModSCRingxBaseSyMLMHomMzMLMHomMxAy+Az=xAy+AxAz
68 fvexd MLModSCRingxBaseSyBaseSzMLMHomMBaseMV
69 simpr3 MLModSCRingxBaseSyBaseSzMLMHomMzMLMHomM
70 69 60 syl MLModSCRingxBaseSyBaseSzMLMHomMz:BaseMBaseM
71 simpr1 MLModSCRingxBaseSyBaseSzMLMHomMxBaseS
72 71 56 syl MLModSCRingxBaseSyBaseSzMLMHomMBaseM×x:BaseMBaseS
73 simpr2 MLModSCRingxBaseSyBaseSzMLMHomMyBaseS
74 fconst6g yBaseSBaseM×y:BaseMBaseS
75 73 74 syl MLModSCRingxBaseSyBaseSzMLMHomMBaseM×y:BaseMBaseS
76 simpll MLModSCRingxBaseSyBaseSzMLMHomMMLMod
77 eqid +S=+S
78 21 30 2 19 20 77 lmodvsdir MLModwBaseSvBaseSuBaseMw+SvMu=wMu+MvMu
79 76 78 sylan MLModSCRingxBaseSyBaseSzMLMHomMwBaseSvBaseSuBaseMw+SvMu=wMu+MvMu
80 68 70 72 75 79 caofdir MLModSCRingxBaseSyBaseSzMLMHomMBaseM×x+SfBaseM×yMfz=BaseM×xMfz+MfBaseM×yMfz
81 14 adantr MLModSCRingxBaseSyBaseSzMLMHomMSRing
82 20 77 ringacl SRingxBaseSyBaseSx+SyBaseS
83 81 71 73 82 syl3anc MLModSCRingxBaseSyBaseSzMLMHomMx+SyBaseS
84 1 19 3 2 20 21 22 mendvsca x+SyBaseSzMLMHomMx+SyAz=BaseM×x+SyMfz
85 83 69 84 syl2anc MLModSCRingxBaseSyBaseSzMLMHomMx+SyAz=BaseM×x+SyMfz
86 68 71 73 ofc12 MLModSCRingxBaseSyBaseSzMLMHomMBaseM×x+SfBaseM×y=BaseM×x+Sy
87 86 oveq1d MLModSCRingxBaseSyBaseSzMLMHomMBaseM×x+SfBaseM×yMfz=BaseM×x+SyMfz
88 85 87 eqtr4d MLModSCRingxBaseSyBaseSzMLMHomMx+SyAz=BaseM×x+SfBaseM×yMfz
89 51 3adant3r2 MLModSCRingxBaseSyBaseSzMLMHomMxAzMLMHomM
90 eleq1w x=yxBaseSyBaseS
91 90 3anbi2d x=yMLModSCRingxBaseSzMLMHomMMLModSCRingyBaseSzMLMHomM
92 oveq1 x=yxAz=yAz
93 92 eleq1d x=yxAzMLMHomMyAzMLMHomM
94 91 93 imbi12d x=yMLModSCRingxBaseSzMLMHomMxAzMLMHomMMLModSCRingyBaseSzMLMHomMyAzMLMHomM
95 94 51 chvarvv MLModSCRingyBaseSzMLMHomMyAzMLMHomM
96 95 3adant3r1 MLModSCRingxBaseSyBaseSzMLMHomMyAzMLMHomM
97 1 3 30 31 mendplusg xAzMLMHomMyAzMLMHomMxAz+AyAz=xAz+MfyAz
98 89 96 97 syl2anc MLModSCRingxBaseSyBaseSzMLMHomMxAz+AyAz=xAz+MfyAz
99 71 69 42 syl2anc MLModSCRingxBaseSyBaseSzMLMHomMxAz=BaseM×xMfz
100 1 19 3 2 20 21 22 mendvsca yBaseSzMLMHomMyAz=BaseM×yMfz
101 73 69 100 syl2anc MLModSCRingxBaseSyBaseSzMLMHomMyAz=BaseM×yMfz
102 99 101 oveq12d MLModSCRingxBaseSyBaseSzMLMHomMxAz+MfyAz=BaseM×xMfz+MfBaseM×yMfz
103 98 102 eqtrd MLModSCRingxBaseSyBaseSzMLMHomMxAz+AyAz=BaseM×xMfz+MfBaseM×yMfz
104 80 88 103 3eqtr4d MLModSCRingxBaseSyBaseSzMLMHomMx+SyAz=xAz+AyAz
105 ovexd MLModSCRingxBaseSyBaseSzMLMHomMkBaseMxSyV
106 70 ffvelcdmda MLModSCRingxBaseSyBaseSzMLMHomMkBaseMzkBaseM
107 fconstmpt BaseM×xSy=kBaseMxSy
108 107 a1i MLModSCRingxBaseSyBaseSzMLMHomMBaseM×xSy=kBaseMxSy
109 70 feqmptd MLModSCRingxBaseSyBaseSzMLMHomMz=kBaseMzk
110 68 105 106 108 109 offval2 MLModSCRingxBaseSyBaseSzMLMHomMBaseM×xSyMfz=kBaseMxSyMzk
111 eqid S=S
112 20 111 ringcl SRingxBaseSyBaseSxSyBaseS
113 81 71 73 112 syl3anc MLModSCRingxBaseSyBaseSzMLMHomMxSyBaseS
114 1 19 3 2 20 21 22 mendvsca xSyBaseSzMLMHomMxSyAz=BaseM×xSyMfz
115 113 69 114 syl2anc MLModSCRingxBaseSyBaseSzMLMHomMxSyAz=BaseM×xSyMfz
116 71 adantr MLModSCRingxBaseSyBaseSzMLMHomMkBaseMxBaseS
117 ovexd MLModSCRingxBaseSyBaseSzMLMHomMkBaseMyMzkV
118 fconstmpt BaseM×x=kBaseMx
119 118 a1i MLModSCRingxBaseSyBaseSzMLMHomMBaseM×x=kBaseMx
120 simplr2 MLModSCRingxBaseSyBaseSzMLMHomMkBaseMyBaseS
121 fconstmpt BaseM×y=kBaseMy
122 121 a1i MLModSCRingxBaseSyBaseSzMLMHomMBaseM×y=kBaseMy
123 68 120 106 122 109 offval2 MLModSCRingxBaseSyBaseSzMLMHomMBaseM×yMfz=kBaseMyMzk
124 101 123 eqtrd MLModSCRingxBaseSyBaseSzMLMHomMyAz=kBaseMyMzk
125 68 116 117 119 124 offval2 MLModSCRingxBaseSyBaseSzMLMHomMBaseM×xMfyAz=kBaseMxMyMzk
126 1 19 3 2 20 21 22 mendvsca xBaseSyAzMLMHomMxAyAz=BaseM×xMfyAz
127 71 96 126 syl2anc MLModSCRingxBaseSyBaseSzMLMHomMxAyAz=BaseM×xMfyAz
128 76 adantr MLModSCRingxBaseSyBaseSzMLMHomMkBaseMMLMod
129 21 2 19 20 111 lmodvsass MLModxBaseSyBaseSzkBaseMxSyMzk=xMyMzk
130 128 116 120 106 129 syl13anc MLModSCRingxBaseSyBaseSzMLMHomMkBaseMxSyMzk=xMyMzk
131 130 mpteq2dva MLModSCRingxBaseSyBaseSzMLMHomMkBaseMxSyMzk=kBaseMxMyMzk
132 125 127 131 3eqtr4d MLModSCRingxBaseSyBaseSzMLMHomMxAyAz=kBaseMxSyMzk
133 110 115 132 3eqtr4d MLModSCRingxBaseSyBaseSzMLMHomMxSyAz=xAyAz
134 14 adantr MLModSCRingxMLMHomMSRing
135 eqid 1S=1S
136 20 135 ringidcl SRing1SBaseS
137 134 136 syl MLModSCRingxMLMHomM1SBaseS
138 1 19 3 2 20 21 22 mendvsca 1SBaseSxMLMHomM1SAx=BaseM×1SMfx
139 137 138 sylancom MLModSCRingxMLMHomM1SAx=BaseM×1SMfx
140 fvexd MLModSCRingxMLMHomMBaseMV
141 21 21 lmhmf xMLMHomMx:BaseMBaseM
142 141 adantl MLModSCRingxMLMHomMx:BaseMBaseM
143 simpll MLModSCRingxMLMHomMMLMod
144 21 2 19 135 lmodvs1 MLModyBaseM1SMy=y
145 143 144 sylan MLModSCRingxMLMHomMyBaseM1SMy=y
146 140 142 137 145 caofid0l MLModSCRingxMLMHomMBaseM×1SMfx=x
147 139 146 eqtrd MLModSCRingxMLMHomM1SAx=x
148 4 5 7 8 9 10 11 12 14 18 27 67 104 133 147 islmodd MLModSCRingALMod