This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The indexed structure product that appears in xpsval has the same base as the target of the function F . (Contributed by Mario Carneiro, 15-Aug-2015) (Revised by Jim Kingdon, 25-Sep-2023)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | xpsval.t | |- T = ( R Xs. S ) |
|
| xpsval.x | |- X = ( Base ` R ) |
||
| xpsval.y | |- Y = ( Base ` S ) |
||
| xpsval.1 | |- ( ph -> R e. V ) |
||
| xpsval.2 | |- ( ph -> S e. W ) |
||
| xpsval.f | |- F = ( x e. X , y e. Y |-> { <. (/) , x >. , <. 1o , y >. } ) |
||
| xpsval.k | |- G = ( Scalar ` R ) |
||
| xpsval.u | |- U = ( G Xs_ { <. (/) , R >. , <. 1o , S >. } ) |
||
| Assertion | xpsrnbas | |- ( ph -> ran F = ( Base ` U ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | xpsval.t | |- T = ( R Xs. S ) |
|
| 2 | xpsval.x | |- X = ( Base ` R ) |
|
| 3 | xpsval.y | |- Y = ( Base ` S ) |
|
| 4 | xpsval.1 | |- ( ph -> R e. V ) |
|
| 5 | xpsval.2 | |- ( ph -> S e. W ) |
|
| 6 | xpsval.f | |- F = ( x e. X , y e. Y |-> { <. (/) , x >. , <. 1o , y >. } ) |
|
| 7 | xpsval.k | |- G = ( Scalar ` R ) |
|
| 8 | xpsval.u | |- U = ( G Xs_ { <. (/) , R >. , <. 1o , S >. } ) |
|
| 9 | eqid | |- ( Base ` U ) = ( Base ` U ) |
|
| 10 | 7 | fvexi | |- G e. _V |
| 11 | 10 | a1i | |- ( ph -> G e. _V ) |
| 12 | 2on | |- 2o e. On |
|
| 13 | 12 | a1i | |- ( ph -> 2o e. On ) |
| 14 | fnpr2o | |- ( ( R e. V /\ S e. W ) -> { <. (/) , R >. , <. 1o , S >. } Fn 2o ) |
|
| 15 | 4 5 14 | syl2anc | |- ( ph -> { <. (/) , R >. , <. 1o , S >. } Fn 2o ) |
| 16 | 8 9 11 13 15 | prdsbas2 | |- ( ph -> ( Base ` U ) = X_ k e. 2o ( Base ` ( { <. (/) , R >. , <. 1o , S >. } ` k ) ) ) |
| 17 | fvprif | |- ( ( R e. V /\ S e. W /\ k e. 2o ) -> ( { <. (/) , R >. , <. 1o , S >. } ` k ) = if ( k = (/) , R , S ) ) |
|
| 18 | 17 | 3expia | |- ( ( R e. V /\ S e. W ) -> ( k e. 2o -> ( { <. (/) , R >. , <. 1o , S >. } ` k ) = if ( k = (/) , R , S ) ) ) |
| 19 | 4 5 18 | syl2anc | |- ( ph -> ( k e. 2o -> ( { <. (/) , R >. , <. 1o , S >. } ` k ) = if ( k = (/) , R , S ) ) ) |
| 20 | 19 | imp | |- ( ( ph /\ k e. 2o ) -> ( { <. (/) , R >. , <. 1o , S >. } ` k ) = if ( k = (/) , R , S ) ) |
| 21 | 20 | fveq2d | |- ( ( ph /\ k e. 2o ) -> ( Base ` ( { <. (/) , R >. , <. 1o , S >. } ` k ) ) = ( Base ` if ( k = (/) , R , S ) ) ) |
| 22 | ifeq12 | |- ( ( X = ( Base ` R ) /\ Y = ( Base ` S ) ) -> if ( k = (/) , X , Y ) = if ( k = (/) , ( Base ` R ) , ( Base ` S ) ) ) |
|
| 23 | 2 3 22 | mp2an | |- if ( k = (/) , X , Y ) = if ( k = (/) , ( Base ` R ) , ( Base ` S ) ) |
| 24 | fvif | |- ( Base ` if ( k = (/) , R , S ) ) = if ( k = (/) , ( Base ` R ) , ( Base ` S ) ) |
|
| 25 | 23 24 | eqtr4i | |- if ( k = (/) , X , Y ) = ( Base ` if ( k = (/) , R , S ) ) |
| 26 | 21 25 | eqtr4di | |- ( ( ph /\ k e. 2o ) -> ( Base ` ( { <. (/) , R >. , <. 1o , S >. } ` k ) ) = if ( k = (/) , X , Y ) ) |
| 27 | 26 | ixpeq2dva | |- ( ph -> X_ k e. 2o ( Base ` ( { <. (/) , R >. , <. 1o , S >. } ` k ) ) = X_ k e. 2o if ( k = (/) , X , Y ) ) |
| 28 | 6 | xpsfrn | |- ran F = X_ k e. 2o if ( k = (/) , X , Y ) |
| 29 | 27 28 | eqtr4di | |- ( ph -> X_ k e. 2o ( Base ` ( { <. (/) , R >. , <. 1o , S >. } ` k ) ) = ran F ) |
| 30 | 16 29 | eqtr2d | |- ( ph -> ran F = ( Base ` U ) ) |