fact: Definition Either_join {E X} (x : Either E (Either E X)) : Either E X := match x with | Left e => Left e | Right (Left e) => Left e | Right (Right x') => Right x' end.
imports: Category.Lib Category.Theory.Coq.Functor Category.Theory.Coq.Applicative Category.Theory.Coq.Monad