Require Export C9_Triangles_Emboites.
Section MIDPOINT.
Definition Middle (A B : Point) : Figure :=
fun I : Point => Collinear A B I /\ Distance I A = Distance I B.

(* Specifications: *)
Lemma DegeneratedMiddle : forall A : Point, Middle A A A.
Lemma ExistsMiddle : forall A B : Point,
A <> B ->
{I : Point | Middle A B I}.
Lemma MidPointBetween : forall (A B : Point) (H : A <> B),
Between A (MidPoint A B H) B.
Lemma TwoMidPointsNotClockwise : forall A B C I J : Point,
A <> B ->
Between A I B ->
Distance I A = Distance I B ->
Between A J B ->
Distance J A = Distance J B ->
Clockwise A B C ->
~Clockwise C I J.
Lemma UniqueMidPoint : forall (A B : Point) (H : A <> B) (C : Point),
Collinear A B C ->
Distance C A = Distance C B ->
C = MidPoint A B H.
Lemma MidPointBetweenCD : forall (A B C D : Point) (H : A <> B),
Distance C A = Distance C B ->
Distance D A = Distance D B ->
Clockwise A B C ->
Clockwise B A D ->
Between C (MidPoint A B H) D.