intros.
assert ({A : Point &  {B : Point &  {C : Point | ~ Col A B C}}}).
apply A4.
DecompEx H A1.
DecompEx p B.
DecompEx p0 C.
cases_equality A B.
subst A.
exists A1.
exists C...
assert  (T:=build_point_not_collinear_1 A B H).
DecompEx T C1.
exists B.
exists C1...
Qed.

(* Specifications: *)
Theorem col_not_col_1 :
forall A B O P : Point, A <> O -> Col A P O -> ~ Col P A B -> ~ Col O A B.