Metamath Proof Explorer


Theorem mulgnn0dir

Description: Sum of group multiples, generalized to NN0 . (Contributed by Mario Carneiro, 11-Dec-2014)

Ref Expression
Hypotheses mulgnndir.b B=BaseG
mulgnndir.t ·˙=G
mulgnndir.p +˙=+G
Assertion mulgnn0dir GMndM0N0XBM+N·˙X=M·˙X+˙N·˙X

Proof

Step Hyp Ref Expression
1 mulgnndir.b B=BaseG
2 mulgnndir.t ·˙=G
3 mulgnndir.p +˙=+G
4 mndsgrp Could not format ( G e. Mnd -> G e. Smgrp ) : No typesetting found for |- ( G e. Mnd -> G e. Smgrp ) with typecode |-
5 4 adantr Could not format ( ( G e. Mnd /\ ( M e. NN0 /\ N e. NN0 /\ X e. B ) ) -> G e. Smgrp ) : No typesetting found for |- ( ( G e. Mnd /\ ( M e. NN0 /\ N e. NN0 /\ X e. B ) ) -> G e. Smgrp ) with typecode |-
6 5 ad2antrr Could not format ( ( ( ( G e. Mnd /\ ( M e. NN0 /\ N e. NN0 /\ X e. B ) ) /\ M e. NN ) /\ N e. NN ) -> G e. Smgrp ) : No typesetting found for |- ( ( ( ( G e. Mnd /\ ( M e. NN0 /\ N e. NN0 /\ X e. B ) ) /\ M e. NN ) /\ N e. NN ) -> G e. Smgrp ) with typecode |-
7 simplr GMndM0N0XBMNM
8 simpr GMndM0N0XBMNN
9 simpr3 GMndM0N0XBXB
10 9 ad2antrr GMndM0N0XBMNXB
11 1 2 3 mulgnndir Could not format ( ( G e. Smgrp /\ ( M e. NN /\ N e. NN /\ X e. B ) ) -> ( ( M + N ) .x. X ) = ( ( M .x. X ) .+ ( N .x. X ) ) ) : No typesetting found for |- ( ( G e. Smgrp /\ ( M e. NN /\ N e. NN /\ X e. B ) ) -> ( ( M + N ) .x. X ) = ( ( M .x. X ) .+ ( N .x. X ) ) ) with typecode |-
12 6 7 8 10 11 syl13anc GMndM0N0XBMNM+N·˙X=M·˙X+˙N·˙X
13 simpll GMndM0N0XBN=0GMnd
14 simpr1 GMndM0N0XBM0
15 14 adantr GMndM0N0XBN=0M0
16 simplr3 GMndM0N0XBN=0XB
17 1 2 13 15 16 mulgnn0cld GMndM0N0XBN=0M·˙XB
18 eqid 0G=0G
19 1 3 18 mndrid GMndM·˙XBM·˙X+˙0G=M·˙X
20 13 17 19 syl2anc GMndM0N0XBN=0M·˙X+˙0G=M·˙X
21 simpr GMndM0N0XBN=0N=0
22 21 oveq1d GMndM0N0XBN=0N·˙X=0·˙X
23 1 18 2 mulg0 XB0·˙X=0G
24 16 23 syl GMndM0N0XBN=00·˙X=0G
25 22 24 eqtrd GMndM0N0XBN=0N·˙X=0G
26 25 oveq2d GMndM0N0XBN=0M·˙X+˙N·˙X=M·˙X+˙0G
27 21 oveq2d GMndM0N0XBN=0M+N=M+0
28 15 nn0cnd GMndM0N0XBN=0M
29 28 addridd GMndM0N0XBN=0M+0=M
30 27 29 eqtrd GMndM0N0XBN=0M+N=M
31 30 oveq1d GMndM0N0XBN=0M+N·˙X=M·˙X
32 20 26 31 3eqtr4rd GMndM0N0XBN=0M+N·˙X=M·˙X+˙N·˙X
33 32 adantlr GMndM0N0XBMN=0M+N·˙X=M·˙X+˙N·˙X
34 simpr2 GMndM0N0XBN0
35 elnn0 N0NN=0
36 34 35 sylib GMndM0N0XBNN=0
37 36 adantr GMndM0N0XBMNN=0
38 12 33 37 mpjaodan GMndM0N0XBMM+N·˙X=M·˙X+˙N·˙X
39 simpll GMndM0N0XBM=0GMnd
40 simplr2 GMndM0N0XBM=0N0
41 simplr3 GMndM0N0XBM=0XB
42 1 2 39 40 41 mulgnn0cld GMndM0N0XBM=0N·˙XB
43 1 3 18 mndlid GMndN·˙XB0G+˙N·˙X=N·˙X
44 39 42 43 syl2anc GMndM0N0XBM=00G+˙N·˙X=N·˙X
45 simpr GMndM0N0XBM=0M=0
46 45 oveq1d GMndM0N0XBM=0M·˙X=0·˙X
47 41 23 syl GMndM0N0XBM=00·˙X=0G
48 46 47 eqtrd GMndM0N0XBM=0M·˙X=0G
49 48 oveq1d GMndM0N0XBM=0M·˙X+˙N·˙X=0G+˙N·˙X
50 45 oveq1d GMndM0N0XBM=0M+N=0+N
51 40 nn0cnd GMndM0N0XBM=0N
52 51 addlidd GMndM0N0XBM=00+N=N
53 50 52 eqtrd GMndM0N0XBM=0M+N=N
54 53 oveq1d GMndM0N0XBM=0M+N·˙X=N·˙X
55 44 49 54 3eqtr4rd GMndM0N0XBM=0M+N·˙X=M·˙X+˙N·˙X
56 elnn0 M0MM=0
57 14 56 sylib GMndM0N0XBMM=0
58 38 55 57 mpjaodan GMndM0N0XBM+N·˙X=M·˙X+˙N·˙X