Lean4
/-- An equivalence of categories `e` between `C` and `D` induces an equivalence between
`MonoOver X` and `MonoOver (e.functor.obj X)` whenever `X` is an object of `C`. -/
@[simps]
def congr (e : C ≌ D) : MonoOver X ≌ MonoOver (e.functor.obj X)
where
functor :=
lift (Over.post e.functor) fun f => by
dsimp
infer_instance
inverse :=
(lift (Over.post e.inverse) fun f => by
dsimp
infer_instance) ⋙
(mapIso (e.unitIso.symm.app X)).functor
unitIso := NatIso.ofComponents fun Y => isoMk (e.unitIso.app Y)
counitIso := NatIso.ofComponents fun Y => isoMk (e.counitIso.app Y)