(**  Impredicative or, which can emulate a classical not-implies.  **)
Definition unless condition property : Prop :=
 forall goal : Prop, (condition -> goal) -> (property -> goal) -> goal.Notation "\unless C , P" := (unless C P) : type_scope.

Lemma bind_unless C P {Q} : implies (\unless C, P) (\unless (\unless C, Q), P).