Metamath Proof Explorer


Theorem mhpvscacl

Description: Homogeneous polynomials are closed under scalar multiplication. (Contributed by SN, 25-Sep-2023) Remove closure hypotheses. (Revised by SN, 4-Sep-2025)

Ref Expression
Hypotheses mhpvscacl.h
|- H = ( I mHomP R )
mhpvscacl.p
|- P = ( I mPoly R )
mhpvscacl.t
|- .x. = ( .s ` P )
mhpvscacl.k
|- K = ( Base ` R )
mhpvscacl.r
|- ( ph -> R e. Ring )
mhpvscacl.x
|- ( ph -> X e. K )
mhpvscacl.f
|- ( ph -> F e. ( H ` N ) )
Assertion mhpvscacl
|- ( ph -> ( X .x. F ) e. ( H ` N ) )

Proof

Step Hyp Ref Expression
1 mhpvscacl.h
 |-  H = ( I mHomP R )
2 mhpvscacl.p
 |-  P = ( I mPoly R )
3 mhpvscacl.t
 |-  .x. = ( .s ` P )
4 mhpvscacl.k
 |-  K = ( Base ` R )
5 mhpvscacl.r
 |-  ( ph -> R e. Ring )
6 mhpvscacl.x
 |-  ( ph -> X e. K )
7 mhpvscacl.f
 |-  ( ph -> F e. ( H ` N ) )
8 eqid
 |-  ( Base ` P ) = ( Base ` P )
9 eqid
 |-  ( 0g ` R ) = ( 0g ` R )
10 eqid
 |-  { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } = { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin }
11 reldmmhp
 |-  Rel dom mHomP
12 11 1 7 elfvov1
 |-  ( ph -> I e. _V )
13 1 7 mhprcl
 |-  ( ph -> N e. NN0 )
14 eqid
 |-  ( Scalar ` P ) = ( Scalar ` P )
15 eqid
 |-  ( Base ` ( Scalar ` P ) ) = ( Base ` ( Scalar ` P ) )
16 2 12 5 mpllmodd
 |-  ( ph -> P e. LMod )
17 6 4 eleqtrdi
 |-  ( ph -> X e. ( Base ` R ) )
18 2 12 5 mplsca
 |-  ( ph -> R = ( Scalar ` P ) )
19 18 fveq2d
 |-  ( ph -> ( Base ` R ) = ( Base ` ( Scalar ` P ) ) )
20 17 19 eleqtrd
 |-  ( ph -> X e. ( Base ` ( Scalar ` P ) ) )
21 1 2 8 7 mhpmpl
 |-  ( ph -> F e. ( Base ` P ) )
22 8 14 3 15 16 20 21 lmodvscld
 |-  ( ph -> ( X .x. F ) e. ( Base ` P ) )
23 2 4 8 10 22 mplelf
 |-  ( ph -> ( X .x. F ) : { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } --> K )
24 eqid
 |-  ( .r ` R ) = ( .r ` R )
25 6 adantr
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> X e. K )
26 21 adantr
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> F e. ( Base ` P ) )
27 eldifi
 |-  ( k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) -> k e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } )
28 27 adantl
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> k e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } )
29 2 3 4 8 24 10 25 26 28 mplvscaval
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> ( ( X .x. F ) ` k ) = ( X ( .r ` R ) ( F ` k ) ) )
30 2 4 8 10 21 mplelf
 |-  ( ph -> F : { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } --> K )
31 ssidd
 |-  ( ph -> ( F supp ( 0g ` R ) ) C_ ( F supp ( 0g ` R ) ) )
32 fvexd
 |-  ( ph -> ( 0g ` R ) e. _V )
33 30 31 7 32 suppssrg
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> ( F ` k ) = ( 0g ` R ) )
34 33 oveq2d
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> ( X ( .r ` R ) ( F ` k ) ) = ( X ( .r ` R ) ( 0g ` R ) ) )
35 4 24 9 5 6 ringrzd
 |-  ( ph -> ( X ( .r ` R ) ( 0g ` R ) ) = ( 0g ` R ) )
36 35 adantr
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> ( X ( .r ` R ) ( 0g ` R ) ) = ( 0g ` R ) )
37 29 34 36 3eqtrd
 |-  ( ( ph /\ k e. ( { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } \ ( F supp ( 0g ` R ) ) ) ) -> ( ( X .x. F ) ` k ) = ( 0g ` R ) )
38 23 37 suppss
 |-  ( ph -> ( ( X .x. F ) supp ( 0g ` R ) ) C_ ( F supp ( 0g ` R ) ) )
39 1 9 10 7 mhpdeg
 |-  ( ph -> ( F supp ( 0g ` R ) ) C_ { g e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } | ( ( CCfld |`s NN0 ) gsum g ) = N } )
40 38 39 sstrd
 |-  ( ph -> ( ( X .x. F ) supp ( 0g ` R ) ) C_ { g e. { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } | ( ( CCfld |`s NN0 ) gsum g ) = N } )
41 1 2 8 9 10 12 5 13 22 40 ismhp2
 |-  ( ph -> ( X .x. F ) e. ( H ` N ) )