Proof with Tarski.
intros.
assert (exists T, Bet C D T /\ Cong C T A B).
apply l5_5_1...
unfold le in H.
DecompExAnd H Y.
DecompExAnd H1 T.
assert (Cong C Y C T).
eapply cong_transitivity with (C:=A) (D:=B);sTarski.
assert (Bet C Y T).
Between.
assert (Y=T).
eapply between_cong;eauto.
smart_subst Y.
assert (T=D).
eTarski.
subst T.
sTarski.
Qed.

(* Specifications: *)
Lemma segment_construction_2 : forall A Q B C,
A<>Q ->  exists X, (Bet Q A X \/  Bet Q X A) /\ Cong Q X B C.