fact: Definition promotable (A : UU0) (p : pred (seq A)) (q : pred (seq A * seq A)) := forall s t, p s -> p t -> p (s ++ t) = q (s, t).
imports: mathcomp(all_ssreflect) monae_lib HB(structures) hierarchy monad_lib fail_lib