--- title: Properties of the way-below relation author: Ayberk Tosun date-started: 2023-08-19 dates-updated: [2024-09-12] --- The module contains properties of the way below relation defined in `Locales.WayBelowRelation.Definition`. \begin{code}[hide] {-# OPTIONS --safe --without-K #-} open import UF.PropTrunc open import UF.FunExt open import MLTT.Spartan open import UF.Logic open import UF.SubtypeClassifier open import Slice.Family module Locales.WayBelowRelation.Properties (pt : propositional-truncations-exist) (fe : Fun-Ext) where open import Locales.WayBelowRelation.Definition pt fe open import Locales.Frame pt fe open PropositionalTruncation pt open AllCombinators pt fe open Locale \end{code} The bottom open `π` is way below anything. \begin{code} π-is-way-below-anything : (X : Locale π€ π₯ π¦) β (U : β¨ πͺ X β©) β (π[ πͺ X ] βͺ[ πͺ X ] U) holds π-is-way-below-anything X U S (ΞΉ , _) p = β₯β₯-rec β-is-prop β ΞΉ where β : index S β β i κ index S , (π[ πͺ X ] β€[ poset-of (πͺ X) ] S [ i ]) holds β i = β£ i , π-is-bottom (πͺ X) (S [ i ]) β£ \end{code} Added on 2024-09-12. \begin{code} way-below-implies-below : (X : Locale π€ π₯ π¦) β {U V : β¨ πͺ X β©} β (U βͺ[ πͺ X ] V β U β€[ poset-of (πͺ X) ] V) holds way-below-implies-below {π€} {π₯} {π¦} X {U} {V} Ο = β₯β₯-rec (holds-is-prop (U β€[ Xβ ] V)) β (Ο S Ξ΄ p) where S : Fam π¦ β¨ πͺ X β© S = π , Ξ» { β β V } Xβ = poset-of (πͺ X) Ξ³ : (i j : index S) β β k κ index S , (S [ i ] β€[ Xβ ] S [ k ]) holds Γ (S [ j ] β€[ Xβ ] S [ k ]) holds Ξ³ β β = β£ β , β€-is-reflexive Xβ V , β€-is-reflexive Xβ V β£ Ξ΄ : is-directed (πͺ X) S holds Ξ΄ = β£ β β£ , Ξ³ p : (V β€[ Xβ ] (β[ πͺ X ] S)) holds p = β[ πͺ X ]-upper S β β : (Ξ£ _ κ π , (U β€[ Xβ ] V) holds) β (U β€[ Xβ ] V) holds β (β , p) = p \end{code} Added on 2024-09-12. \begin{code} ββ-is-upward-closed : (X : Locale π€ π₯ π¦) β {U V W : β¨ πͺ X β©} β (U βͺ[ πͺ X ] V β V β€[ poset-of (πͺ X) ] W β U βͺ[ πͺ X ] W) holds ββ-is-upward-closed X {U} {V} {W} Ο q = β where open PosetReasoning (poset-of (πͺ X)) β : (U βͺ[ πͺ X ] W) holds β S Ξ΄ r = Ο S Ξ΄ p where p : (V β€[ poset-of (πͺ X) ] (β[ πͺ X ] S)) holds p = V β€β¨ q β© W β€β¨ r β© β[ πͺ X ] S β \end{code} Added on 2024-09-12. \begin{code} being-way-below-is-closed-under-binary-joins : (X : Locale π€ π₯ π¦) β {U V W : β¨ πͺ X β©} β (V βͺ[ πͺ X ] U β W βͺ[ πͺ X ] U β (V β¨[ πͺ X ] W) βͺ[ πͺ X ] U) holds being-way-below-is-closed-under-binary-joins X {U} {V} {W} p q S Ξ΄@(_ , Ο ) r = β₯β₯-recβ β-is-prop Ξ³ (p S Ξ΄ r) (q S Ξ΄ r) where open PosetReasoning (poset-of (πͺ X)) β : (V β€[ poset-of (πͺ X) ] (β[ πͺ X ] S)) holds β = way-below-implies-below X (ββ-is-upward-closed X p r) β‘ : (W β€[ poset-of (πͺ X) ] (β[ πͺ X ] S)) holds β‘ = way-below-implies-below X (ββ-is-upward-closed X q r) Xβ = poset-of (πͺ X) Ξ³ : Ξ£ i κ index S , (V β€[ Xβ ] S [ i ]) holds β Ξ£ i κ index S , (W β€[ Xβ ] S [ i ]) holds β β k κ index S , ((V β¨[ πͺ X ] W) β€[ Xβ ] S [ k ]) holds Ξ³ (i , p) (j , q) = β₯β₯-rec β-is-prop Ξ΅ (Ο i j) where Ξ΅ : Ξ£ k κ index S , (S [ i ] β€[ Xβ ] S [ k ] β§ S [ j ] β€[ Xβ ] S [ k ]) holds β β k κ index S , ((V β¨[ πͺ X ] W) β€[ Xβ ] S [ k ]) holds Ξ΅ (k , r , s) = β£ k , β¨[ πͺ X ]-least Ο Ο β£ where Ο : (V β€[ poset-of (πͺ X) ] (S [ k ])) holds Ο = V β€β¨ p β© S [ i ] β€β¨ r β© S [ k ] β Ο : (W β€[ poset-of (πͺ X) ] (S [ k ])) holds Ο = W β€β¨ q β© S [ j ] β€β¨ s β© S [ k ] β \end{code}