Metamath Proof Explorer


Theorem cgrdegen

Description: Two congruent segments are either both degenerate or both nondegenerate. (Contributed by Scott Fenton, 12-Jun-2013)

Ref Expression
Assertion cgrdegen
|- ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( <. A , B >. Cgr <. C , D >. -> ( A = B <-> C = D ) ) )

Proof

Step Hyp Ref Expression
1 opeq1
 |-  ( A = B -> <. A , B >. = <. B , B >. )
2 1 breq1d
 |-  ( A = B -> ( <. A , B >. Cgr <. C , D >. <-> <. B , B >. Cgr <. C , D >. ) )
3 2 biimpac
 |-  ( ( <. A , B >. Cgr <. C , D >. /\ A = B ) -> <. B , B >. Cgr <. C , D >. )
4 simp1
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> N e. NN )
5 simp2r
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> B e. ( EE ` N ) )
6 simp3l
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> C e. ( EE ` N ) )
7 simp3r
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> D e. ( EE ` N ) )
8 cgrid2
 |-  ( ( N e. NN /\ ( B e. ( EE ` N ) /\ C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( <. B , B >. Cgr <. C , D >. -> C = D ) )
9 4 5 6 7 8 syl13anc
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( <. B , B >. Cgr <. C , D >. -> C = D ) )
10 3 9 syl5
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( ( <. A , B >. Cgr <. C , D >. /\ A = B ) -> C = D ) )
11 10 expdimp
 |-  ( ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) /\ <. A , B >. Cgr <. C , D >. ) -> ( A = B -> C = D ) )
12 opeq1
 |-  ( C = D -> <. C , D >. = <. D , D >. )
13 12 breq2d
 |-  ( C = D -> ( <. A , B >. Cgr <. C , D >. <-> <. A , B >. Cgr <. D , D >. ) )
14 13 biimpac
 |-  ( ( <. A , B >. Cgr <. C , D >. /\ C = D ) -> <. A , B >. Cgr <. D , D >. )
15 simp2l
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> A e. ( EE ` N ) )
16 axcgrid
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( <. A , B >. Cgr <. D , D >. -> A = B ) )
17 4 15 5 7 16 syl13anc
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( <. A , B >. Cgr <. D , D >. -> A = B ) )
18 14 17 syl5
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( ( <. A , B >. Cgr <. C , D >. /\ C = D ) -> A = B ) )
19 18 expdimp
 |-  ( ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) /\ <. A , B >. Cgr <. C , D >. ) -> ( C = D -> A = B ) )
20 11 19 impbid
 |-  ( ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) /\ <. A , B >. Cgr <. C , D >. ) -> ( A = B <-> C = D ) )
21 20 ex
 |-  ( ( N e. NN /\ ( A e. ( EE ` N ) /\ B e. ( EE ` N ) ) /\ ( C e. ( EE ` N ) /\ D e. ( EE ` N ) ) ) -> ( <. A , B >. Cgr <. C , D >. -> ( A = B <-> C = D ) ) )