fact: Definition iso {a b:Type} (sab : S * (a + b)) : (S * a) + (S * b) := match sab with | (s, inl x) => inl (s, x) | (s, inr y) => inr (s, y) end.
imports: Coq(Setoid Morphisms) ExtLib(Structures.Monad) ITree(Basics.Basics Basics.Category Basics.CategoryKleisli Basics.CategoryKleisliFacts Basics.Monad)