Require Export C1_DemiDroite_Prop.
Section BETWEEN_PROPERTIES.

(* Specifications: *)
Lemma BetweenDistinctBC : forall A B C, Between A B C -> B <> C.
Lemma BetweenSym : forall A B C,
Between A B C -> Between C B A.
Lemma BetweenCollinear : forall A B C,
Between A B C -> Collinear A B C.
Lemma BetweenDistinctCA : forall A B C,
Between A B C -> C <> A.
Lemma HalfLineBetween : forall A B C,
A <> B ->
B <> C ->
HalfLine A B C ->
HalfLine C B A ->
Between A B C.
Lemma BetweenAssocLeft : forall A B C D : Point,
Between A B C ->
Between B C D ->
Between A B D.
Lemma BetweenAssocRight : forall A B C D : Point,
Between A B C ->
Between B C D ->
Between A C D.
Lemma EquiOrientedCollinear : forall A B C,
EquiOriented A B C A -> Collinear A B C.
Lemma HalfLineEquiOrientedHalfLine : forall A B C D : Point,
A <> B ->
HalfLine A B C ->
EquiOriented A B C D ->
HalfLine A B D.
Lemma ClockwiseBetweenClockwise : forall A B C D E : Point,
Clockwise A B C ->
Between A D B ->
Between A E C ->
Clockwise A D E.
Lemma NotCollinearBetweenNotCollinear : forall A B C D E : Point,
~Collinear A B C ->
Between A D B ->
Between A E C ->
~Collinear A D E.
Lemma NotCollinearBetweenDistinct : forall A B C D E : Point,
~Collinear A B C ->
Between A D B ->
Between A E C ->
D <> E.
Lemma BetweenNotBetween : forall A B C : Point,
Between A B C -> ~Between A C B.
Lemma ChaslesBetween : forall A B C : Point,
Between A B C ->
LSplus (Distance A B) (Distance B C) = Distance A C.
Lemma HalfLineEquidistantEqualPoints : forall A B C D E : Point, forall d : LS,
HalfLine A C B ->
Distance A C = d ->
HalfLine A B D ->
A <> C ->
Distance A D = LSplus (Distance A B) d ->
Between A C E ->
Distance C E = Distance A B ->
E = D.