This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Membership in the finitely supported hull of a structure product in terms of the index set. (Contributed by Stefan O'Rear, 11-Jan-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | dsmmelbas.p | |- P = ( S Xs_ R ) |
|
| dsmmelbas.c | |- C = ( S (+)m R ) |
||
| dsmmelbas.b | |- B = ( Base ` P ) |
||
| dsmmelbas.h | |- H = ( Base ` C ) |
||
| dsmmelbas.i | |- ( ph -> I e. V ) |
||
| dsmmelbas.r | |- ( ph -> R Fn I ) |
||
| Assertion | dsmmelbas | |- ( ph -> ( X e. H <-> ( X e. B /\ { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | dsmmelbas.p | |- P = ( S Xs_ R ) |
|
| 2 | dsmmelbas.c | |- C = ( S (+)m R ) |
|
| 3 | dsmmelbas.b | |- B = ( Base ` P ) |
|
| 4 | dsmmelbas.h | |- H = ( Base ` C ) |
|
| 5 | dsmmelbas.i | |- ( ph -> I e. V ) |
|
| 6 | dsmmelbas.r | |- ( ph -> R Fn I ) |
|
| 7 | 2 | fveq2i | |- ( Base ` C ) = ( Base ` ( S (+)m R ) ) |
| 8 | 4 7 | eqtri | |- H = ( Base ` ( S (+)m R ) ) |
| 9 | fnex | |- ( ( R Fn I /\ I e. V ) -> R e. _V ) |
|
| 10 | 6 5 9 | syl2anc | |- ( ph -> R e. _V ) |
| 11 | eqid | |- { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } = { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } |
|
| 12 | 11 | dsmmbase | |- ( R e. _V -> { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } = ( Base ` ( S (+)m R ) ) ) |
| 13 | 10 12 | syl | |- ( ph -> { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } = ( Base ` ( S (+)m R ) ) ) |
| 14 | 8 13 | eqtr4id | |- ( ph -> H = { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } ) |
| 15 | 14 | eleq2d | |- ( ph -> ( X e. H <-> X e. { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } ) ) |
| 16 | fveq1 | |- ( b = X -> ( b ` a ) = ( X ` a ) ) |
|
| 17 | 16 | neeq1d | |- ( b = X -> ( ( b ` a ) =/= ( 0g ` ( R ` a ) ) <-> ( X ` a ) =/= ( 0g ` ( R ` a ) ) ) ) |
| 18 | 17 | rabbidv | |- ( b = X -> { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } = { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } ) |
| 19 | 18 | eleq1d | |- ( b = X -> ( { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin <-> { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) |
| 20 | 19 | elrab | |- ( X e. { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } <-> ( X e. ( Base ` ( S Xs_ R ) ) /\ { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) |
| 21 | 1 | fveq2i | |- ( Base ` P ) = ( Base ` ( S Xs_ R ) ) |
| 22 | 3 21 | eqtr2i | |- ( Base ` ( S Xs_ R ) ) = B |
| 23 | 22 | eleq2i | |- ( X e. ( Base ` ( S Xs_ R ) ) <-> X e. B ) |
| 24 | 23 | a1i | |- ( ph -> ( X e. ( Base ` ( S Xs_ R ) ) <-> X e. B ) ) |
| 25 | fndm | |- ( R Fn I -> dom R = I ) |
|
| 26 | rabeq | |- ( dom R = I -> { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } = { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } ) |
|
| 27 | 6 25 26 | 3syl | |- ( ph -> { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } = { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } ) |
| 28 | 27 | eleq1d | |- ( ph -> ( { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin <-> { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) |
| 29 | 24 28 | anbi12d | |- ( ph -> ( ( X e. ( Base ` ( S Xs_ R ) ) /\ { a e. dom R | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) <-> ( X e. B /\ { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) ) |
| 30 | 20 29 | bitrid | |- ( ph -> ( X e. { b e. ( Base ` ( S Xs_ R ) ) | { a e. dom R | ( b ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin } <-> ( X e. B /\ { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) ) |
| 31 | 15 30 | bitrd | |- ( ph -> ( X e. H <-> ( X e. B /\ { a e. I | ( X ` a ) =/= ( 0g ` ( R ` a ) ) } e. Fin ) ) ) |