(** One needs to define a predicate for which MA is uniquely defined. *)

(* Specifications: *)
Lemma inv_exists_with_notation : forall A,
Col O E A -> exists B, inv O E E' A B.
Lemma inv_col : forall A B, inv O E E' A B -> Col O E B.
Lemma inv_uniqueness : forall A B1 B2,
inv O E E' A B1 -> inv O E E' A B2 -> B1 = B2.
Lemma inv_f : forall A, Col O E A -> {B | inv O E E' A B}.
Definition div O E E' A B C :=
exists IB : Tpoint, inv O E E' B IB /\ Prod O E E' A IB C.
Lemma div_exists : forall A B,
Col O E A -> Col O E B -> exists C, div O E E' A B C.
Lemma div_uniqueness : forall A B C1 C2,
div O E E' A B C1 -> div O E E' A B C2 -> C1 = C2.
Lemma div_col : forall A B C : Tpoint, div O E E' A B C -> Col O E C.
Lemma div_f : forall A B, Col O E A -> Col O E B -> {C | div O E E' A B C}.
End T17.