intuition.
eapply (evalDist_iso (fun b => b)(fun b => b)); intuition.
eapply getSupport_In_evalDist.
intuition.
eapply getSupport_In_evalDist.
eauto.
rewrite H0.
trivial.
eapply H1.
eapply getSupport_In_evalDist.
intuition.
eapply getSupport_In_evalDist.
eauto.
rewrite <- H0.
trivial.
Qed.

(* Specifications: *)
Theorem oc_comp_invariant :
forall (A B C : Set)(c : OracleComp A B C)(S : Set)(P : S -> Prop)
(eqds : EqDec S)
(o : S -> A -> Comp (B * S))(s : S),
(forall a b c d, In (a, b) (getSupport (o c d)) -> P c -> P b) ->
P s ->
forall a b, In (a, b) (getSupport (c _ _ o s)) -> P b.