Metamath Proof Explorer


Theorem grpsubeq0

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 ) )

Proof

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 ) )