Order.Iso¶
Order isomorphisms¶
This is the Order.Iso module of the Agda Universal Algebra Library.
An order isomorphism between two ordered objects is a pair of monotone maps that are mutually inverse up to the respective equivalences. Because both maps are monotone and the round trips are the identity up to the equivalence, an order isomorphism transports every existing infimum and supremum, so isomorphic posets carry the same lattice (indeed, complete-lattice) structure; this is why no separate preservation clauses for meet and join are needed.
OrderIso states this for raw relations rather than for a bundle, so
it applies uniformly to setoid-valued and propositionally-valued orders. That
generality is what the library's two motivating instances need: the congruence poset
(Con π¨ , β , β) of Setoid.Congruences.Lattice carries an equivalence of mutual
containment rather than propositional equality, while a classical lattice carries
its meet order from Classical.Properties.Lattice.
(The standard library's IsOrderIsomorphism packages one map with
surjectivity instead of an explicit inverse; the two presentations are
interconvertible, and the inverse-pair form is the convenient one for transporting
structure.)
The record was introduced in FLRP.Problem, next to its first use, with a note
that it should migrate here once the group-theoretic side of the library needed it.
Classical.Structures.Group.Congruences is that consumer β the correspondence
between normal subgroups and congruences is ordinary group theory, below the FLRP
tree β so the record now lives in Order/ and FLRP.Problem re-exports it.
The record¶
record OrderIso {a b ββ ββ mβ mβ : Level} {A : Type a} {B : Type b} (_ββ_ : BinaryRel A ββ) (_β€β_ : BinaryRel A ββ) (_ββ_ : BinaryRel B mβ) (_β€β_ : BinaryRel B mβ) : Type (a β b β ββ β ββ β mβ β mβ) where field to : A β B from : B β A to-mono : β {x y} β x β€β y β to x β€β to y from-mono : β {u v} β u β€β v β from u β€β from v toβfrom : β u β to (from u) ββ u fromβto : β x β from (to x) ββ x