fact: Record SetoidMorphism@{o h p} `{Setoid@{o p} x} `{Setoid@{o p} y} := { morphism :> x → y; proper_morphism :> Proper@{h p} (respectful@{h p h p h p} equiv equiv) morphism }.
imports: Category.Lib Category.Theory.Category Category.Theory.Morphisms Category.Theory.Functor