This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The "variable selection" function evaluated at a scalar. (Contributed by Thierry Arnoux, 4-May-2026)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | selvascl.1 | |- B = ( Base ` R ) |
|
| selvascl.2 | |- P = ( I mPoly R ) |
||
| selvascl.3 | |- A = ( algSc ` P ) |
||
| selvascl.4 | |- C = ( algSc ` T ) |
||
| selvascl.5 | |- ( ph -> I e. V ) |
||
| selvascl.6 | |- ( ph -> X e. B ) |
||
| selvascl.7 | |- U = ( ( I \ J ) mPoly R ) |
||
| selvascl.8 | |- T = ( J mPoly U ) |
||
| selvascl.9 | |- D = ( C o. ( algSc ` U ) ) |
||
| selvascl.10 | |- ( ph -> R e. CRing ) |
||
| selvascl.11 | |- ( ph -> J C_ I ) |
||
| Assertion | selvascl | |- ( ph -> ( ( ( I selectVars R ) ` J ) ` ( A ` X ) ) = ( D ` X ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | selvascl.1 | |- B = ( Base ` R ) |
|
| 2 | selvascl.2 | |- P = ( I mPoly R ) |
|
| 3 | selvascl.3 | |- A = ( algSc ` P ) |
|
| 4 | selvascl.4 | |- C = ( algSc ` T ) |
|
| 5 | selvascl.5 | |- ( ph -> I e. V ) |
|
| 6 | selvascl.6 | |- ( ph -> X e. B ) |
|
| 7 | selvascl.7 | |- U = ( ( I \ J ) mPoly R ) |
|
| 8 | selvascl.8 | |- T = ( J mPoly U ) |
|
| 9 | selvascl.9 | |- D = ( C o. ( algSc ` U ) ) |
|
| 10 | selvascl.10 | |- ( ph -> R e. CRing ) |
|
| 11 | selvascl.11 | |- ( ph -> J C_ I ) |
|
| 12 | 9 | coeq1i | |- ( D o. ( A ` X ) ) = ( ( C o. ( algSc ` U ) ) o. ( A ` X ) ) |
| 13 | coass | |- ( ( C o. ( algSc ` U ) ) o. ( A ` X ) ) = ( C o. ( ( algSc ` U ) o. ( A ` X ) ) ) |
|
| 14 | 12 13 | eqtri | |- ( D o. ( A ` X ) ) = ( C o. ( ( algSc ` U ) o. ( A ` X ) ) ) |
| 15 | eqid | |- ( I mPoly U ) = ( I mPoly U ) |
|
| 16 | eqid | |- ( algSc ` U ) = ( algSc ` U ) |
|
| 17 | eqid | |- ( algSc ` ( I mPoly U ) ) = ( algSc ` ( I mPoly U ) ) |
|
| 18 | eqid | |- { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } = { h e. ( NN0 ^m I ) | ( `' h " NN ) e. Fin } |
|
| 19 | eqid | |- { h e. ( NN0 ^m ( I \ J ) ) | ( `' h " NN ) e. Fin } = { h e. ( NN0 ^m ( I \ J ) ) | ( `' h " NN ) e. Fin } |
|
| 20 | difssd | |- ( ph -> ( I \ J ) C_ I ) |
|
| 21 | 1 7 2 15 16 3 17 18 19 5 20 10 6 | mplasclco | |- ( ph -> ( ( algSc ` U ) o. ( A ` X ) ) = ( ( algSc ` ( I mPoly U ) ) ` ( ( algSc ` U ) ` X ) ) ) |
| 22 | 21 | coeq2d | |- ( ph -> ( C o. ( ( algSc ` U ) o. ( A ` X ) ) ) = ( C o. ( ( algSc ` ( I mPoly U ) ) ` ( ( algSc ` U ) ` X ) ) ) ) |
| 23 | 14 22 | eqtrid | |- ( ph -> ( D o. ( A ` X ) ) = ( C o. ( ( algSc ` ( I mPoly U ) ) ` ( ( algSc ` U ) ` X ) ) ) ) |
| 24 | eqid | |- ( Base ` U ) = ( Base ` U ) |
|
| 25 | eqid | |- ( I mPoly T ) = ( I mPoly T ) |
|
| 26 | eqid | |- ( algSc ` ( I mPoly T ) ) = ( algSc ` ( I mPoly T ) ) |
|
| 27 | eqid | |- { h e. ( NN0 ^m J ) | ( `' h " NN ) e. Fin } = { h e. ( NN0 ^m J ) | ( `' h " NN ) e. Fin } |
|
| 28 | 5 | difexd | |- ( ph -> ( I \ J ) e. _V ) |
| 29 | 7 28 10 | mplcrngd | |- ( ph -> U e. CRing ) |
| 30 | eqid | |- ( Scalar ` U ) = ( Scalar ` U ) |
|
| 31 | 10 | crngringd | |- ( ph -> R e. Ring ) |
| 32 | 7 28 31 | mplringd | |- ( ph -> U e. Ring ) |
| 33 | 7 28 31 | mpllmodd | |- ( ph -> U e. LMod ) |
| 34 | eqid | |- ( Base ` ( Scalar ` U ) ) = ( Base ` ( Scalar ` U ) ) |
|
| 35 | 16 30 32 33 34 24 | asclf | |- ( ph -> ( algSc ` U ) : ( Base ` ( Scalar ` U ) ) --> ( Base ` U ) ) |
| 36 | 7 28 31 | mplsca | |- ( ph -> R = ( Scalar ` U ) ) |
| 37 | 36 | fveq2d | |- ( ph -> ( Base ` R ) = ( Base ` ( Scalar ` U ) ) ) |
| 38 | 1 37 | eqtr2id | |- ( ph -> ( Base ` ( Scalar ` U ) ) = B ) |
| 39 | 6 38 | eleqtrrd | |- ( ph -> X e. ( Base ` ( Scalar ` U ) ) ) |
| 40 | 35 39 | ffvelcdmd | |- ( ph -> ( ( algSc ` U ) ` X ) e. ( Base ` U ) ) |
| 41 | 24 8 15 25 4 17 26 18 27 5 11 29 40 | mplasclco | |- ( ph -> ( C o. ( ( algSc ` ( I mPoly U ) ) ` ( ( algSc ` U ) ` X ) ) ) = ( ( algSc ` ( I mPoly T ) ) ` ( C ` ( ( algSc ` U ) ` X ) ) ) ) |
| 42 | 23 41 | eqtrd | |- ( ph -> ( D o. ( A ` X ) ) = ( ( algSc ` ( I mPoly T ) ) ` ( C ` ( ( algSc ` U ) ` X ) ) ) ) |
| 43 | 42 | fveq2d | |- ( ph -> ( ( I eval T ) ` ( D o. ( A ` X ) ) ) = ( ( I eval T ) ` ( ( algSc ` ( I mPoly T ) ) ` ( C ` ( ( algSc ` U ) ` X ) ) ) ) ) |
| 44 | eqid | |- ( I eval T ) = ( I eval T ) |
|
| 45 | eqid | |- ( Base ` T ) = ( Base ` T ) |
|
| 46 | 5 11 | ssexd | |- ( ph -> J e. _V ) |
| 47 | 8 46 29 | mplcrngd | |- ( ph -> T e. CRing ) |
| 48 | 8 45 24 4 46 32 | mplasclf | |- ( ph -> C : ( Base ` U ) --> ( Base ` T ) ) |
| 49 | 48 40 | ffvelcdmd | |- ( ph -> ( C ` ( ( algSc ` U ) ` X ) ) e. ( Base ` T ) ) |
| 50 | 44 25 45 26 5 47 49 | evlsca | |- ( ph -> ( ( I eval T ) ` ( ( algSc ` ( I mPoly T ) ) ` ( C ` ( ( algSc ` U ) ` X ) ) ) ) = ( ( ( Base ` T ) ^m I ) X. { ( C ` ( ( algSc ` U ) ` X ) ) } ) ) |
| 51 | 43 50 | eqtrd | |- ( ph -> ( ( I eval T ) ` ( D o. ( A ` X ) ) ) = ( ( ( Base ` T ) ^m I ) X. { ( C ` ( ( algSc ` U ) ` X ) ) } ) ) |
| 52 | 51 | fveq1d | |- ( ph -> ( ( ( I eval T ) ` ( D o. ( A ` X ) ) ) ` ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) ) = ( ( ( ( Base ` T ) ^m I ) X. { ( C ` ( ( algSc ` U ) ` X ) ) } ) ` ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) ) ) |
| 53 | 47 | crngringd | |- ( ph -> T e. Ring ) |
| 54 | 45 | subrgid | |- ( T e. Ring -> ( Base ` T ) e. ( SubRing ` T ) ) |
| 55 | 53 54 | syl | |- ( ph -> ( Base ` T ) e. ( SubRing ` T ) ) |
| 56 | eqid | |- ( J mVar U ) = ( J mVar U ) |
|
| 57 | 46 | ad2antrr | |- ( ( ( ph /\ i e. I ) /\ i e. J ) -> J e. _V ) |
| 58 | 32 | ad2antrr | |- ( ( ( ph /\ i e. I ) /\ i e. J ) -> U e. Ring ) |
| 59 | simpr | |- ( ( ( ph /\ i e. I ) /\ i e. J ) -> i e. J ) |
|
| 60 | 8 56 45 57 58 59 | mvrcl | |- ( ( ( ph /\ i e. I ) /\ i e. J ) -> ( ( J mVar U ) ` i ) e. ( Base ` T ) ) |
| 61 | 48 | ad2antrr | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> C : ( Base ` U ) --> ( Base ` T ) ) |
| 62 | eqid | |- ( ( I \ J ) mVar R ) = ( ( I \ J ) mVar R ) |
|
| 63 | 28 | ad2antrr | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> ( I \ J ) e. _V ) |
| 64 | 31 | ad2antrr | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> R e. Ring ) |
| 65 | simplr | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> i e. I ) |
|
| 66 | simpr | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> -. i e. J ) |
|
| 67 | 65 66 | eldifd | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> i e. ( I \ J ) ) |
| 68 | 7 62 24 63 64 67 | mvrcl | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> ( ( ( I \ J ) mVar R ) ` i ) e. ( Base ` U ) ) |
| 69 | 61 68 | ffvelcdmd | |- ( ( ( ph /\ i e. I ) /\ -. i e. J ) -> ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) e. ( Base ` T ) ) |
| 70 | 60 69 | ifclda | |- ( ( ph /\ i e. I ) -> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) e. ( Base ` T ) ) |
| 71 | 70 | fmpttd | |- ( ph -> ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) : I --> ( Base ` T ) ) |
| 72 | 55 5 71 | elmapdd | |- ( ph -> ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) e. ( ( Base ` T ) ^m I ) ) |
| 73 | fvex | |- ( C ` ( ( algSc ` U ) ` X ) ) e. _V |
|
| 74 | 73 | fvconst2 | |- ( ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) e. ( ( Base ` T ) ^m I ) -> ( ( ( ( Base ` T ) ^m I ) X. { ( C ` ( ( algSc ` U ) ` X ) ) } ) ` ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) ) = ( C ` ( ( algSc ` U ) ` X ) ) ) |
| 75 | 72 74 | syl | |- ( ph -> ( ( ( ( Base ` T ) ^m I ) X. { ( C ` ( ( algSc ` U ) ` X ) ) } ) ` ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) ) = ( C ` ( ( algSc ` U ) ` X ) ) ) |
| 76 | 52 75 | eqtrd | |- ( ph -> ( ( ( I eval T ) ` ( D o. ( A ` X ) ) ) ` ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) ) = ( C ` ( ( algSc ` U ) ` X ) ) ) |
| 77 | eqid | |- ( Base ` P ) = ( Base ` P ) |
|
| 78 | eqid | |- ( Scalar ` P ) = ( Scalar ` P ) |
|
| 79 | 2 5 31 | mplringd | |- ( ph -> P e. Ring ) |
| 80 | 2 5 31 | mpllmodd | |- ( ph -> P e. LMod ) |
| 81 | eqid | |- ( Base ` ( Scalar ` P ) ) = ( Base ` ( Scalar ` P ) ) |
|
| 82 | 3 78 79 80 81 77 | asclf | |- ( ph -> A : ( Base ` ( Scalar ` P ) ) --> ( Base ` P ) ) |
| 83 | 2 5 31 | mplsca | |- ( ph -> R = ( Scalar ` P ) ) |
| 84 | 83 | fveq2d | |- ( ph -> ( Base ` R ) = ( Base ` ( Scalar ` P ) ) ) |
| 85 | 1 84 | eqtr2id | |- ( ph -> ( Base ` ( Scalar ` P ) ) = B ) |
| 86 | 6 85 | eleqtrrd | |- ( ph -> X e. ( Base ` ( Scalar ` P ) ) ) |
| 87 | 82 86 | ffvelcdmd | |- ( ph -> ( A ` X ) e. ( Base ` P ) ) |
| 88 | 2 77 7 8 4 9 10 11 87 | selvval2 | |- ( ph -> ( ( ( I selectVars R ) ` J ) ` ( A ` X ) ) = ( ( ( I eval T ) ` ( D o. ( A ` X ) ) ) ` ( i e. I |-> if ( i e. J , ( ( J mVar U ) ` i ) , ( C ` ( ( ( I \ J ) mVar R ) ` i ) ) ) ) ) ) |
| 89 | 35 | ffund | |- ( ph -> Fun ( algSc ` U ) ) |
| 90 | 35 | fdmd | |- ( ph -> dom ( algSc ` U ) = ( Base ` ( Scalar ` U ) ) ) |
| 91 | 39 90 | eleqtrrd | |- ( ph -> X e. dom ( algSc ` U ) ) |
| 92 | 89 91 9 | fvcod | |- ( ph -> ( D ` X ) = ( C ` ( ( algSc ` U ) ` X ) ) ) |
| 93 | 76 88 92 | 3eqtr4d | |- ( ph -> ( ( ( I selectVars R ) ` J ) ` ( A ` X ) ) = ( D ` X ) ) |