(** This is equivalent to the out predicate of Tarski. *)

(* Specifications: *)
Lemma outH_out : forall P A B, outH P A B -> Out P A B.
(** The 2D version of the fourth congruence axiom **)
Lemma incident_col : forall M l, IncidentL M l -> Col M (P1 l)(P2 l).
Lemma col_incident : forall M l, Col M (P1 l)(P2 l) -> IncidentL M l.
Lemma Bet_Between_H : forall A B C,
Bet A B C -> A<>B -> B<>C -> Between_H A B C.
Lemma axiom_cong_5' : forall A B C A' B' C', ~ Col_H A B C -> ~ Col_H A' B' C' ->
Cong A B A' B' -> Cong A C A' C' -> CongA B A C B' A' C' -> CongA A B C A' B' C'.
Lemma axiom_hcong_4_existence :  forall A B C O X P,
~ Col_H P O X -> ~ Col_H A B C ->
exists Y, CongA A B C X O Y  (* /\ ~Col O X Y *) /\ same_side' P Y O X.
Lemma same_side_trans :
forall A B C l,
same_side A B l -> same_side B C l -> same_side A C l.
Lemma same_side_sym :
forall A B l,
same_side A B l -> same_side B A l.
Lemma axiom_hcong_4_uniqueness :
forall A B C O P X Y Y', ~ Col_H P O X  -> ~ Col_H A B C -> CongA A B C X O Y -> CongA A B C X O Y' ->
same_side' P Y O X -> same_side' P Y' O X -> outH O Y Y'.
Lemma axiom_conga_comm : forall A B C,
~ Col_H A B C -> CongA A B C C B A.
Lemma axiom_congaH_outH_congaH :
forall A B C D E F A' C' D' F' : Tpoint,
CongA A B C D E F ->
Between_H B A A' \/ Between_H B A' A \/ B <> A /\ A = A' ->
Between_H B C C' \/ Between_H B C' C \/ B <> C /\ C = C' ->
Between_H E D D' \/ Between_H E D' D \/ E <> D /\ D = D' ->
Between_H E F F' \/ Between_H E F' F \/ E <> F /\ F = F' ->
CongA A' B C' D' E F'.
Lemma axiom_conga_permlr:
forall A B C D E F : Tpoint, CongA A B C D E F -> CongA C B A F E D.