Module docstring
{"# Galois connections between preorders are adjunctions.
GaloisConnection.adjunctionis the adjunction associated to a galois connection.
"}
{"# Galois connections between preorders are adjunctions.
GaloisConnection.adjunction is the adjunction associated to a galois connection."}
GaloisConnection.adjunction
definition
{l : X → Y} {u : Y → X} (gc : GaloisConnection l u) : gc.monotone_l.functor ⊣ gc.monotone_u.functor
/-- A galois connection between preorders induces an adjunction between the associated categories.
-/
def GaloisConnection.adjunction {l : X → Y} {u : Y → X} (gc : GaloisConnection l u) :
gc.monotone_l.functor ⊣ gc.monotone_u.functor :=
CategoryTheory.Adjunction.mkOfHomEquiv
{ homEquiv := fun X Y =>
{ toFun := fun f => CategoryTheory.homOfLE (gc.le_u f.le)
invFun := fun f => CategoryTheory.homOfLE (gc.l_le f.le)
left_inv := by aesop_cat
right_inv := by aesop_cat } }
CategoryTheory.Adjunction.gc
theorem
{L : X ⥤ Y} {R : Y ⥤ X} (adj : L ⊣ R) : GaloisConnection L.obj R.obj
/-- An adjunction between preorder categories induces a galois connection.
-/
theorem Adjunction.gc {L : X ⥤ Y} {R : Y ⥤ X} (adj : L ⊣ R) : GaloisConnection L.obj R.obj :=
fun x y =>
⟨fun h => ((adj.homEquiv x y).toFun h.hom).le, fun h => ((adj.homEquiv x y).invFun h.hom).le⟩