proposition: Lemma apply_rule : forall (A B:Type)(a:(Distr A))(f:A->Distr B)(r:U)(p:A->U)(q:B->U), ok r a p -> okfun p f (fun x => q) -> ok r (Mlet a f) q.
proof: Proof. unfold ok,okfun,Mlet; simpl; intros. apply Ole_trans with (mu a p); auto. Qed.
imports: ALEA(Probas) ALEA(Utheory)