This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Value of the "variable selection" function. (Contributed by SN, 4-Nov-2023)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | selvffval.i | |- ( ph -> I e. V ) |
|
| selvffval.r | |- ( ph -> R e. W ) |
||
| Assertion | selvffval | |- ( ph -> ( I selectVars R ) = ( j e. ~P I |-> ( f e. ( Base ` ( I mPoly R ) ) |-> [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | selvffval.i | |- ( ph -> I e. V ) |
|
| 2 | selvffval.r | |- ( ph -> R e. W ) |
|
| 3 | df-selv | |- selectVars = ( i e. _V , r e. _V |-> ( j e. ~P i |-> ( f e. ( Base ` ( i mPoly r ) ) |-> [_ ( ( i \ j ) mPoly r ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) ) ) ) |
|
| 4 | 3 | a1i | |- ( ph -> selectVars = ( i e. _V , r e. _V |-> ( j e. ~P i |-> ( f e. ( Base ` ( i mPoly r ) ) |-> [_ ( ( i \ j ) mPoly r ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) ) ) ) ) |
| 5 | pweq | |- ( i = I -> ~P i = ~P I ) |
|
| 6 | 5 | adantr | |- ( ( i = I /\ r = R ) -> ~P i = ~P I ) |
| 7 | oveq12 | |- ( ( i = I /\ r = R ) -> ( i mPoly r ) = ( I mPoly R ) ) |
|
| 8 | 7 | fveq2d | |- ( ( i = I /\ r = R ) -> ( Base ` ( i mPoly r ) ) = ( Base ` ( I mPoly R ) ) ) |
| 9 | difeq1 | |- ( i = I -> ( i \ j ) = ( I \ j ) ) |
|
| 10 | 9 | adantr | |- ( ( i = I /\ r = R ) -> ( i \ j ) = ( I \ j ) ) |
| 11 | simpr | |- ( ( i = I /\ r = R ) -> r = R ) |
|
| 12 | 10 11 | oveq12d | |- ( ( i = I /\ r = R ) -> ( ( i \ j ) mPoly r ) = ( ( I \ j ) mPoly R ) ) |
| 13 | oveq1 | |- ( i = I -> ( i evalSub t ) = ( I evalSub t ) ) |
|
| 14 | 13 | adantr | |- ( ( i = I /\ r = R ) -> ( i evalSub t ) = ( I evalSub t ) ) |
| 15 | 14 | fveq1d | |- ( ( i = I /\ r = R ) -> ( ( i evalSub t ) ` ran d ) = ( ( I evalSub t ) ` ran d ) ) |
| 16 | 15 | fveq1d | |- ( ( i = I /\ r = R ) -> ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) = ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ) |
| 17 | simpl | |- ( ( i = I /\ r = R ) -> i = I ) |
|
| 18 | 10 11 | oveq12d | |- ( ( i = I /\ r = R ) -> ( ( i \ j ) mVar r ) = ( ( I \ j ) mVar R ) ) |
| 19 | 18 | fveq1d | |- ( ( i = I /\ r = R ) -> ( ( ( i \ j ) mVar r ) ` x ) = ( ( ( I \ j ) mVar R ) ` x ) ) |
| 20 | 19 | fveq2d | |- ( ( i = I /\ r = R ) -> ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) = ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) |
| 21 | 20 | ifeq2d | |- ( ( i = I /\ r = R ) -> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) = if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) |
| 22 | 17 21 | mpteq12dv | |- ( ( i = I /\ r = R ) -> ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) = ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) |
| 23 | 16 22 | fveq12d | |- ( ( i = I /\ r = R ) -> ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) = ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) |
| 24 | 23 | csbeq2dv | |- ( ( i = I /\ r = R ) -> [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) = [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) |
| 25 | 24 | csbeq2dv | |- ( ( i = I /\ r = R ) -> [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) = [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) |
| 26 | 25 | csbeq2dv | |- ( ( i = I /\ r = R ) -> [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) = [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) |
| 27 | 12 26 | csbeq12dv | |- ( ( i = I /\ r = R ) -> [_ ( ( i \ j ) mPoly r ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) = [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) |
| 28 | 8 27 | mpteq12dv | |- ( ( i = I /\ r = R ) -> ( f e. ( Base ` ( i mPoly r ) ) |-> [_ ( ( i \ j ) mPoly r ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) ) = ( f e. ( Base ` ( I mPoly R ) ) |-> [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) ) |
| 29 | 6 28 | mpteq12dv | |- ( ( i = I /\ r = R ) -> ( j e. ~P i |-> ( f e. ( Base ` ( i mPoly r ) ) |-> [_ ( ( i \ j ) mPoly r ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) ) ) = ( j e. ~P I |-> ( f e. ( Base ` ( I mPoly R ) ) |-> [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) ) ) |
| 30 | 29 | adantl | |- ( ( ph /\ ( i = I /\ r = R ) ) -> ( j e. ~P i |-> ( f e. ( Base ` ( i mPoly r ) ) |-> [_ ( ( i \ j ) mPoly r ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( i evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. i |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( i \ j ) mVar r ) ` x ) ) ) ) ) ) ) = ( j e. ~P I |-> ( f e. ( Base ` ( I mPoly R ) ) |-> [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) ) ) |
| 31 | 1 | elexd | |- ( ph -> I e. _V ) |
| 32 | 2 | elexd | |- ( ph -> R e. _V ) |
| 33 | 1 | pwexd | |- ( ph -> ~P I e. _V ) |
| 34 | 33 | mptexd | |- ( ph -> ( j e. ~P I |-> ( f e. ( Base ` ( I mPoly R ) ) |-> [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) ) e. _V ) |
| 35 | 4 30 31 32 34 | ovmpod | |- ( ph -> ( I selectVars R ) = ( j e. ~P I |-> ( f e. ( Base ` ( I mPoly R ) ) |-> [_ ( ( I \ j ) mPoly R ) / u ]_ [_ ( j mPoly u ) / t ]_ [_ ( algSc ` t ) / c ]_ [_ ( c o. ( algSc ` u ) ) / d ]_ ( ( ( ( I evalSub t ) ` ran d ) ` ( d o. f ) ) ` ( x e. I |-> if ( x e. j , ( ( j mVar u ) ` x ) , ( c ` ( ( ( I \ j ) mVar R ) ` x ) ) ) ) ) ) ) ) |