Ltac double A B A' :=
   assert (mp:= symmetric_point_construction A B);
   elim mp; intros A' ; intro; clear mp.

Lemma l8_24 : forall A B P Q R T, Perp P A A B -> Perp Q B A B -> Col A B T -> Bet P T Q -> Bet B R Q -> Cong A P B R -> exists X, Midpoint X A B /\ Midpoint X P R.