Require Export C3_Triangles_Egaux.
Section CONGRUENT_STRICT_TRIANGLES.
Definition CongruentStrictTriangles (A B C A' B' C' : Point) :=
CongruentTriangles A B C A' B' C' /\
~Collinear A B C.

(* Specifications: *)
Lemma CongruentStrictTrianglesSym : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
CongruentStrictTriangles A' B' C' A B C.
Lemma CongruentStrictTrianglesBAC : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
CongruentStrictTriangles B A C B' A' C'.
Lemma CongruentStrictTrianglesACB : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
CongruentStrictTriangles A C B A' C' B'.
Lemma CongruentStrictTrianglesCBA : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
CongruentStrictTriangles C B A C' B' A'.
Lemma CongruentStrictTrianglesBCA : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
CongruentStrictTriangles B C A B' C' A'.
Lemma CongruentStrictTrianglesCAB : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
CongruentStrictTriangles C A B C' A' B'.
Lemma CongruentStrictTrianglesAB : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
Distance A B = Distance A' B'.
Lemma CongruentStrictTrianglesBC : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
Distance B C = Distance B' C'.
Lemma CongruentStrictTrianglesCA : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
Distance C A = Distance C' A'.
Lemma CongruentStrictTrianglesA : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
Angle B A C = Angle B' A' C'.
Lemma CongruentStrictTrianglesB : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
Angle A B C = Angle A' B' C'.
Lemma CongruentStrictTrianglesC : forall A B C A' B' C' : Point,
CongruentStrictTriangles A B C A' B' C' ->
Angle A C B = Angle A' C' B'.
Lemma CongruentStrictTrianglesSASA : forall A B C A' B' C' : Point,
Distance A B = Distance A' B' ->
Distance A C = Distance  A' C' ->
Angle B A C = Angle B' A'  C' ->
~Collinear A B C ->
CongruentStrictTriangles A B C A' B' C'.
Lemma CongruentStrictTrianglesSASB : forall A B C A' B' C' : Point,
Distance B A = Distance B' A' ->
Distance B C = Distance  B' C' ->
Angle A B C = Angle A' B' C' ->
~Collinear A B C ->
CongruentStrictTriangles A B C A' B' C'.
Lemma CongruentStrictTrianglesSASC : forall A B C A' B' C' : Point,
Distance C A = Distance C' A'  ->
Distance C B = Distance  C' B'  ->
Angle A C B = Angle A' C' B' ->
~Collinear A B C ->
CongruentStrictTriangles A B C A' B' C'.
Lemma EquiDirectedCollinear : forall A B C : Point,
EquiDirected A B B C ->
Collinear A B C.
Lemma ClockwiseEq : forall A B C D : Point,
Clockwise A B C ->
Collinear A B D ->
Collinear B C D ->
B = D.
Lemma CongruentStrictTrianglesASAAB : forall A B C A' B' C' : Point,
Distance A B = Distance A' B' ->
Angle B A C = Angle B' A'  C' ->
Angle A B C = Angle A' B' C' ->
~Collinear A B C ->
CongruentStrictTriangles A B C A' B' C'.
Lemma CongruentStrictTrianglesASABC : forall A B C A' B' C' : Point,
Distance B C = Distance B' C' ->
Angle A B C = Angle A' B' C' ->
Angle B C A = Angle B'  C' A' ->
~Collinear A B C ->
CongruentStrictTriangles A B C A' B' C'.
Lemma CongruentStrictTrianglesASACA : forall A B C A' B' C' : Point,
Distance C A = Distance C' A' ->
Angle B C A = Angle B' C'  A' ->
Angle B A C = Angle B' A' C' ->
~Collinear A B C ->
CongruentStrictTriangles A B C A' B' C'.