--- title: Properties of posetal adjunctions author: Ayberk Tosun date-started: 2024-05-20 --- Many facts about posetal adjunctions have previously been recorded in modules - `Locales.GaloisConnection`, and - `Locales.AdjointFunctorTheoremForFrames`. This is a new module in which I will be factoring out some of these facts and organizing them in a more careful way. One motivation for this is that some of these constructions and theorems have been formulated for frames, even though they apply to the much more general setting of arbitrary posets. Now that I want to apply them to distributive lattices, generalizing them has become necessary. \begin{code} {-# OPTIONS --safe --without-K #-} open import MLTT.Spartan open import UF.FunExt open import UF.PropTrunc module Locales.Adjunctions.Properties (pt : propositional-truncations-exist) (fe : Fun-Ext) where open import Locales.ContinuousMap.FrameHomomorphism-Properties pt fe open import Locales.Frame pt fe open import Locales.GaloisConnection pt fe open import UF.Logic open import UF.SubtypeClassifier open AllCombinators pt fe \end{code} We work in a module parameterized by two posets `P` and `Q`. \begin{code} module Some-Properties-Of-Posetal-Adjunctions (P : Poset π€ π₯) (Q : Poset π€' π₯') where open GaloisConnectionBetween P Q \end{code} The two adjunction laws. \begin{code} adjunction-lawβ : (π»@(f , _) : P βmβ Q) (β@(g , _) : Q βmβ P) β (π» β£ β) holds β {x : β£ P β£β} {y : β£ Q β£β} β (f x β€[ Q ] y β x β€[ P ] g y) holds adjunction-lawβ π» β adj {x} {y} = prβ (adj x y) adjunction-lawβ : (π»@(f , _) : P βmβ Q) (β@(g , _) : Q βmβ P) β (π» β£ β) holds β {x : β£ P β£β} {y : β£ Q β£β} β (x β€[ P ] g y β f x β€[ Q ] y) holds adjunction-lawβ π» β adj {x} {y} = prβ (adj x y) \end{code} Monotone equivalences are adjoints. \begin{code} monotone-equivalences-are-adjoint : (sβ@(s , _) : P βmβ Q) (rβ@(r , _) : Q βmβ P) β s β r βΌ id β r β s βΌ id β (sβ β£ rβ) holds monotone-equivalences-are-adjoint (s , πβ) (r , πβ) Ο Ο x y = β , β‘ where open PosetReasoning Q β : (s x β€[ Q ] y β x β€[ P ] r y) holds β p = sections-are-order-embeddings P Q s r πβ Ο β» where β = p β ‘ = Ο y β»ΒΉ β» : (s x β€[ Q ] s (r y)) holds β» = s x β€β¨ β β© y οΌβ¨ β ‘ β©β s (r y) β β‘ : (x β€[ P ] r y β s x β€[ Q ] y) holds β‘ p = s x β€β¨ β β© s (r y) οΌβ¨ β ‘ β©β y β where β = πβ (x , r y) p β ‘ = Ο y \end{code}