Section EquivalenceUpToTaus.
Context {E : Type -> Type} {R : Type}.
(** The standard [itree] equivalence: "Equivalence Up To Taus", or _weak bisimulation_. *)
Definition eutt : itree E R -> itree E R -> Prop :=
ITree.Eq.Eq.eutt eq.
Infix "≈" := eutt (at level 40).
(** [eutt] is an equivalence relation. *)
Global Instance Equivalence_eutt : Equivalence eutt.

Lemma interp_bind : forall {E F R S}
(f : E ~> itree F) (t : itree E R) (k : R -> itree E S),
interp f (ITree.bind t k)
≈ ITree.bind (interp f t) (fun r => interp f (k r)).