Metamath Proof Explorer


Theorem grpsubsub4

Description: Double group subtraction ( subsub4 analog). (Contributed by Mario Carneiro, 2-Dec-2014)

Ref Expression
Hypotheses grpsubadd.b
|- B = ( Base ` G )
grpsubadd.p
|- .+ = ( +g ` G )
grpsubadd.m
|- .- = ( -g ` G )
Assertion grpsubsub4
|- ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( X .- Y ) .- Z ) = ( X .- ( Z .+ Y ) ) )

Proof

Step Hyp Ref Expression
1 grpsubadd.b
 |-  B = ( Base ` G )
2 grpsubadd.p
 |-  .+ = ( +g ` G )
3 grpsubadd.m
 |-  .- = ( -g ` G )
4 simpl
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> G e. Grp )
5 1 3 grpsubcl
 |-  ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( X .- Y ) e. B )
6 5 3adant3r3
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( X .- Y ) e. B )
7 simpr3
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> Z e. B )
8 1 2 3 grpnpcan
 |-  ( ( G e. Grp /\ ( X .- Y ) e. B /\ Z e. B ) -> ( ( ( X .- Y ) .- Z ) .+ Z ) = ( X .- Y ) )
9 4 6 7 8 syl3anc
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( ( X .- Y ) .- Z ) .+ Z ) = ( X .- Y ) )
10 9 oveq1d
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( ( ( X .- Y ) .- Z ) .+ Z ) .+ Y ) = ( ( X .- Y ) .+ Y ) )
11 1 3 grpsubcl
 |-  ( ( G e. Grp /\ ( X .- Y ) e. B /\ Z e. B ) -> ( ( X .- Y ) .- Z ) e. B )
12 4 6 7 11 syl3anc
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( X .- Y ) .- Z ) e. B )
13 simpr2
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> Y e. B )
14 1 2 grpass
 |-  ( ( G e. Grp /\ ( ( ( X .- Y ) .- Z ) e. B /\ Z e. B /\ Y e. B ) ) -> ( ( ( ( X .- Y ) .- Z ) .+ Z ) .+ Y ) = ( ( ( X .- Y ) .- Z ) .+ ( Z .+ Y ) ) )
15 4 12 7 13 14 syl13anc
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( ( ( X .- Y ) .- Z ) .+ Z ) .+ Y ) = ( ( ( X .- Y ) .- Z ) .+ ( Z .+ Y ) ) )
16 1 2 3 grpnpcan
 |-  ( ( G e. Grp /\ X e. B /\ Y e. B ) -> ( ( X .- Y ) .+ Y ) = X )
17 16 3adant3r3
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( X .- Y ) .+ Y ) = X )
18 10 15 17 3eqtr3d
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( ( X .- Y ) .- Z ) .+ ( Z .+ Y ) ) = X )
19 simpr1
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> X e. B )
20 1 2 grpcl
 |-  ( ( G e. Grp /\ Z e. B /\ Y e. B ) -> ( Z .+ Y ) e. B )
21 4 7 13 20 syl3anc
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( Z .+ Y ) e. B )
22 1 2 3 grpsubadd
 |-  ( ( G e. Grp /\ ( X e. B /\ ( Z .+ Y ) e. B /\ ( ( X .- Y ) .- Z ) e. B ) ) -> ( ( X .- ( Z .+ Y ) ) = ( ( X .- Y ) .- Z ) <-> ( ( ( X .- Y ) .- Z ) .+ ( Z .+ Y ) ) = X ) )
23 4 19 21 12 22 syl13anc
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( X .- ( Z .+ Y ) ) = ( ( X .- Y ) .- Z ) <-> ( ( ( X .- Y ) .- Z ) .+ ( Z .+ Y ) ) = X ) )
24 18 23 mpbird
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( X .- ( Z .+ Y ) ) = ( ( X .- Y ) .- Z ) )
25 24 eqcomd
 |-  ( ( G e. Grp /\ ( X e. B /\ Y e. B /\ Z e. B ) ) -> ( ( X .- Y ) .- Z ) = ( X .- ( Z .+ Y ) ) )