This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: If the difference between two group elements is zero, they are equal. ( subeq0 analog.) (Contributed by NM, 31-Mar-2014)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | grpsubid.b | |- B = ( Base ` G ) |
|
| grpsubid.o | |- .0. = ( 0g ` G ) |
||
| grpsubid.m | |- .- = ( -g ` G ) |
||
| Assertion | grpsubeq0 | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( X .- Y ) = .0. <-> X = Y ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | grpsubid.b | |- B = ( Base ` G ) |
|
| 2 | grpsubid.o | |- .0. = ( 0g ` G ) |
|
| 3 | grpsubid.m | |- .- = ( -g ` G ) |
|
| 4 | eqid | |- ( +g ` G ) = ( +g ` G ) |
|
| 5 | eqid | |- ( invg ` G ) = ( invg ` G ) |
|
| 6 | 1 4 5 3 | grpsubval | |- ( ( X e. B /\ Y e. B ) -> ( X .- Y ) = ( X ( +g ` G ) ( ( invg ` G ) ` Y ) ) ) |
| 7 | 6 | 3adant1 | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( X .- Y ) = ( X ( +g ` G ) ( ( invg ` G ) ` Y ) ) ) |
| 8 | 7 | eqeq1d | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( X .- Y ) = .0. <-> ( X ( +g ` G ) ( ( invg ` G ) ` Y ) ) = .0. ) ) |
| 9 | simp1 | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> G e. Grp ) |
|
| 10 | 1 5 | grpinvcl | |- ( ( G e. Grp /\ Y e. B ) -> ( ( invg ` G ) ` Y ) e. B ) |
| 11 | 10 | 3adant2 | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( invg ` G ) ` Y ) e. B ) |
| 12 | simp2 | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> X e. B ) |
|
| 13 | 1 4 2 5 | grpinvid2 | |- ( ( G e. Grp /\ ( ( invg ` G ) ` Y ) e. B /\ X e. B ) -> ( ( ( invg ` G ) ` ( ( invg ` G ) ` Y ) ) = X <-> ( X ( +g ` G ) ( ( invg ` G ) ` Y ) ) = .0. ) ) |
| 14 | 9 11 12 13 | syl3anc | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( ( invg ` G ) ` ( ( invg ` G ) ` Y ) ) = X <-> ( X ( +g ` G ) ( ( invg ` G ) ` Y ) ) = .0. ) ) |
| 15 | 1 5 | grpinvinv | |- ( ( G e. Grp /\ Y e. B ) -> ( ( invg ` G ) ` ( ( invg ` G ) ` Y ) ) = Y ) |
| 16 | 15 | 3adant2 | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( invg ` G ) ` ( ( invg ` G ) ` Y ) ) = Y ) |
| 17 | 16 | eqeq1d | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( ( invg ` G ) ` ( ( invg ` G ) ` Y ) ) = X <-> Y = X ) ) |
| 18 | eqcom | |- ( Y = X <-> X = Y ) |
|
| 19 | 17 18 | bitrdi | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( ( invg ` G ) ` ( ( invg ` G ) ` Y ) ) = X <-> X = Y ) ) |
| 20 | 8 14 19 | 3bitr2d | |- ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( X .- Y ) = .0. <-> X = Y ) ) |