fact: Definition translateF {E F R} (h : E ~> F) (rec: itree E R -> itree F R) (t : itreeF E R _) : itree F R := match t with | RetF x => Ret x | TauF t => Tau (rec t) | VisF e k => Vis (h _ e) (fun x => rec (k x)) end.
imports: ExtLib(Structures.Functor Structures.Monad) ITree(Basics.Basics Core.ITreeDefinition Indexed.Relation)