Metamath Proof Explorer


Theorem mhpaddcl

Description: Homogeneous polynomials are closed under addition. (Contributed by SN, 26-Aug-2023)

Ref Expression
Hypotheses mhpaddcl.h
|- H = ( I mHomP R )
mhpaddcl.p
|- P = ( I mPoly R )
mhpaddcl.a
|- .+ = ( +g ` P )
mhpaddcl.i
|- ( ph -> I e. V )
mhpaddcl.r
|- ( ph -> R e. Grp )
mhpaddcl.n
|- ( ph -> N e. NN0 )
mhpaddcl.x
|- ( ph -> X e. ( H ` N ) )
mhpaddcl.y
|- ( ph -> Y e. ( H ` N ) )
Assertion mhpaddcl
|- ( ph -> ( X .+ Y ) e. ( H ` N ) )

Proof

Step Hyp Ref Expression
1 mhpaddcl.h
 |-  H = ( I mHomP R )
2 mhpaddcl.p
 |-  P = ( I mPoly R )
3 mhpaddcl.a
 |-  .+ = ( +g ` P )
4 mhpaddcl.i
 |-  ( ph -> I e. V )
5 mhpaddcl.r
 |-  ( ph -> R e. Grp )
6 mhpaddcl.n
 |-  ( ph -> N e. NN0 )
7 mhpaddcl.x
 |-  ( ph -> X e. ( H ` N ) )
8 mhpaddcl.y
 |-  ( ph -> Y e. ( H ` N ) )
9 eqid
 |-  ( Base ` P ) = ( Base ` P )
10 eqid
 |-  ( 0g ` R ) = ( 0g ` R )
11 eqid
 |-  { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } = { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin }
12 2 mplgrp
 |-  ( ( I e. V /\ R e. Grp ) -> P e. Grp )
13 4 5 12 syl2anc
 |-  ( ph -> P e. Grp )
14 1 2 9 4 5 6 7 mhpmpl
 |-  ( ph -> X e. ( Base ` P ) )
15 1 2 9 4 5 6 8 mhpmpl
 |-  ( ph -> Y e. ( Base ` P ) )
16 9 3 grpcl
 |-  ( ( P e. Grp /\ X e. ( Base ` P ) /\ Y e. ( Base ` P ) ) -> ( X .+ Y ) e. ( Base ` P ) )
17 13 14 15 16 syl3anc
 |-  ( ph -> ( X .+ Y ) e. ( Base ` P ) )
18 eqid
 |-  ( +g ` R ) = ( +g ` R )
19 2 9 18 3 14 15 mpladd
 |-  ( ph -> ( X .+ Y ) = ( X oF ( +g ` R ) Y ) )
20 19 oveq1d
 |-  ( ph -> ( ( X .+ Y ) supp ( 0g ` R ) ) = ( ( X oF ( +g ` R ) Y ) supp ( 0g ` R ) ) )
21 ovexd
 |-  ( ph -> ( NN0 ^m I ) e. _V )
22 11 21 rabexd
 |-  ( ph -> { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } e. _V )
23 eqid
 |-  ( Base ` R ) = ( Base ` R )
24 23 10 grpidcl
 |-  ( R e. Grp -> ( 0g ` R ) e. ( Base ` R ) )
25 5 24 syl
 |-  ( ph -> ( 0g ` R ) e. ( Base ` R ) )
26 2 23 9 11 14 mplelf
 |-  ( ph -> X : { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } --> ( Base ` R ) )
27 2 23 9 11 15 mplelf
 |-  ( ph -> Y : { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } --> ( Base ` R ) )
28 23 18 10 grplid
 |-  ( ( R e. Grp /\ ( 0g ` R ) e. ( Base ` R ) ) -> ( ( 0g ` R ) ( +g ` R ) ( 0g ` R ) ) = ( 0g ` R ) )
29 5 25 28 syl2anc
 |-  ( ph -> ( ( 0g ` R ) ( +g ` R ) ( 0g ` R ) ) = ( 0g ` R ) )
30 22 25 26 27 29 suppofssd
 |-  ( ph -> ( ( X oF ( +g ` R ) Y ) supp ( 0g ` R ) ) C_ ( ( X supp ( 0g ` R ) ) u. ( Y supp ( 0g ` R ) ) ) )
31 20 30 eqsstrd
 |-  ( ph -> ( ( X .+ Y ) supp ( 0g ` R ) ) C_ ( ( X supp ( 0g ` R ) ) u. ( Y supp ( 0g ` R ) ) ) )
32 1 10 11 4 5 6 7 mhpdeg
 |-  ( ph -> ( X supp ( 0g ` R ) ) C_ { g e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } | ( ( CCfld |`s NN0 ) gsum g ) = N } )
33 1 10 11 4 5 6 8 mhpdeg
 |-  ( ph -> ( Y supp ( 0g ` R ) ) C_ { g e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } | ( ( CCfld |`s NN0 ) gsum g ) = N } )
34 32 33 unssd
 |-  ( ph -> ( ( X supp ( 0g ` R ) ) u. ( Y supp ( 0g ` R ) ) ) C_ { g e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } | ( ( CCfld |`s NN0 ) gsum g ) = N } )
35 31 34 sstrd
 |-  ( ph -> ( ( X .+ Y ) supp ( 0g ` R ) ) C_ { g e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } | ( ( CCfld |`s NN0 ) gsum g ) = N } )
36 1 2 9 10 11 4 5 6 17 35 ismhp2
 |-  ( ph -> ( X .+ Y ) e. ( H ` N ) )