Maximal chains in preorders
module order-theory.maximal-chains-preorders where
Imports
open import foundation.dependent-pair-types open import foundation.propositions open import foundation.universe-levels open import order-theory.chains-preorders open import order-theory.preorders
Idea
A maximal chain in a preorder P
is a chain C
in P
such that for every
chain D
in P
we have C ⊆ D ⇒ D ⊆ C
.
Definition
module _ {l1 l2 : Level} (X : Preorder l1 l2) where is-maximal-chain-Preorder-Prop : {l3 : Level} → chain-Preorder l3 X → Prop (l1 ⊔ l2 ⊔ lsuc l3) is-maximal-chain-Preorder-Prop {l3} C = Π-Prop ( chain-Preorder l3 X) ( λ D → function-Prop ( inclusion-chain-Preorder X C D) ( inclusion-chain-Preorder-Prop X D C)) is-maximal-chain-Preorder : {l3 : Level} → chain-Preorder l3 X → UU (l1 ⊔ l2 ⊔ lsuc l3) is-maximal-chain-Preorder C = type-Prop (is-maximal-chain-Preorder-Prop C) is-prop-is-maximal-chain-Preorder : {l3 : Level} (C : chain-Preorder l3 X) → is-prop (is-maximal-chain-Preorder C) is-prop-is-maximal-chain-Preorder C = is-prop-type-Prop (is-maximal-chain-Preorder-Prop C) maximal-chain-Preorder : {l1 l2 : Level} (l3 : Level) (X : Preorder l1 l2) → UU (l1 ⊔ l2 ⊔ lsuc l3) maximal-chain-Preorder l3 X = Σ (chain-Preorder l3 X) (is-maximal-chain-Preorder X) module _ {l1 l2 l3 : Level} (X : Preorder l1 l2) (C : maximal-chain-Preorder l3 X) where chain-maximal-chain-Preorder : chain-Preorder l3 X chain-maximal-chain-Preorder = pr1 C is-maximal-chain-maximal-chain-Preorder : is-maximal-chain-Preorder X chain-maximal-chain-Preorder is-maximal-chain-maximal-chain-Preorder = pr2 C type-maximal-chain-Preorder : UU (l1 ⊔ l3) type-maximal-chain-Preorder = type-chain-Preorder X chain-maximal-chain-Preorder