∀ {C : Type u_2} [inst : CategoryTheory.Category.{u_1, u_2} C] (X Y : C) (p : {Z : C} → (X ⟶ Z) → (Y ⟶ Z))
  (q : {Z : C} → (Y ⟶ Z) → (X ⟶ Z)),
  (∀ {Z : C} (f : X ⟶ Z), q (p f) = f) →
    ∀ (Z : C),
      CategoryTheory.CategoryStruct.comp p q =
        CategoryTheory.CategoryStruct.id ((CategoryTheory.coyoneda.obj (Opposite.op X)).obj Z)