(****************************************************)

Notation coh := QCoh.(* Making sure that the precondition is legit *)
Definition prec_safe :=
    forall this to q m, Hn this to -> prec q to m ->
                      cohMsg (Msg (TMsg stag m) this to true).(* Generic send-safety *)
Definition send_safe (this n : nid)
           (d : dstatelet) (msg : seq nat) :=
  Hn this n /\ exists (C : coh d), prec (getSt this C) n msg.

(* Specifications: *)
Lemma send_safe_coh this to d m : send_safe this to d m -> coh d.