fact: Definition unify_cumul {A B} (x: A) (y: B) (u : Unification) : t bool := of <- unify_univ A B u; match of with | Some f => let fx := reduce RedOneStep (f x) in oeq <- unify fx y u; match oeq with Some _ => ret true | None => ret false end | None => ret false end.