factored out homset-condition in precategories.v