---
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}