{C : Type u} →
  [inst : CategoryTheory.Category.{v, u} C] →
    {X Y : C} →
      {motive : (X ≅ Y) → Sort u_1} →
        ((hom : X ⟶ Y) →
            (inv : Y ⟶ X) →
              (hom_inv_id : CategoryTheory.CategoryStruct.comp hom inv = CategoryTheory.CategoryStruct.id X) →
                (inv_hom_id : CategoryTheory.CategoryStruct.comp inv hom = CategoryTheory.CategoryStruct.id Y) →
                  motive { hom := hom, inv := inv, hom_inv_id := hom_inv_id, inv_hom_id := inv_hom_id }) →
          (t : X ≅ Y) → motive t