(* Julien Narboux *)
(* Formalization of *)
(* Tarski's axiomatic *)
Require Export Ch06_out_lines.
Unset Regular Subst Tactic.
Definition is_midpoint := fun M A B => Bet A M B /\ Cong A M M B.
Proof with Tarski.
unfold is_midpoint.
intros.
intuition.
Qed.
Proof with Tarski.
unfold is_midpoint.
intros.
intuition.
eTarski.
Qed.
Proof with Tarski.
unfold is_midpoint.
intros.
intuition.
Qed.
Hint Resolve l7_2 l7_3 l7_3_2 : Midpoint.
Ltac Midpoint := eauto with Midpoint.
Proof with Tarski.
unfold is_midpoint.
intros.
assert (exists E : Point, Bet A P E /\ Cong P E A P)...
DecompExAnd H E.
exists E.
intuition.
Qed.
Hint Resolve symmetric_point_construction : Midpoint.
Proof with Tarski.
unfold is_midpoint.
intros.
intuition.
cases_equality A P.
treat_equalities...
eapply construction_unicity; try apply H0...
esTarski.
Qed.
Proof with Tarski.
unfold is_midpoint.
intros;intuition.
cases_equality A X.
treat_equalities...
eapply (construction_unicity X A X A P Q);Between;sTarski.
Qed.

Lemma l7_13 : forall A P Q P' Q',
is_midpoint A P' P -> is_midpoint A Q' Q ->
Cong P Q P' Q'.