fact: Definition choose1 {E} `{nondetE -< E} {X} : X -> list X -> itree E X := fix choose1' x xs : itree E X := match xs with | [] => Ret x | x' :: xs => or (Ret x) (choose1' x' xs) end.
imports: Coq(List) ITree(Basics.Basics Core.ITreeDefinition Indexed.Sum Core.Subevent Events.Exception)