Proof with Tarski.
unfold is_midpoint.
intros.
unfold Col in *;intuition.
(* *)
assert (Cong A B B B).
eapply l4_3.
apply between_symmetry;apply H.
2:apply cong_commutativity;apply H0.
Tarski.
Tarski.
treat_equalities.
left;auto.
(* *)
assert (Cong B A A A).
eapply l4_3.
apply H.
2:apply cong_commutativity;apply cong_symmetry;apply H0.
Tarski.
Tarski.
treat_equalities.
left;auto.
Qed.

(* Specifications: *)
Lemma l7_21 : forall A B C D P,
~ Col A B C -> B<>D -> Cong A B C D -> Cong B C D A ->
Col A P C -> Col B P D -> is_midpoint P A C /\ is_midpoint P B D.