Skip to content

Commit 306e819

Browse files
committed
[ edit ] pull out isEquivalence and do some renaming
1 parent ade4110 commit 306e819

File tree

1 file changed

+26
-22
lines changed

1 file changed

+26
-22
lines changed

src/Relation/Binary/Construct/Interior/Symmetric.agda

+26-22
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,13 @@ open SymInterior public
3333
------------------------------------------------------------------------
3434
-- Properties
3535

36+
-- A reflexive transitive relation _≤_ gives rise to a poset in which the
37+
-- equivalence relation is SymInterior _≤_.
38+
record IsProset {a ℓ} {A : Set a} (_≤_ : Rel A ℓ) : Set (a ⊔ ℓ) where
39+
field
40+
refl : Reflexive _≤_
41+
trans : Transitive _≤_
42+
3643
-- The symmetric interior is symmetric.
3744
symmetric : Symmetric (SymInterior R)
3845
symmetric (r , r′) = r′ , r
@@ -46,46 +53,43 @@ unfold sym f s = f s , f (sym s)
4653
reflexive : Reflexive R Reflexive (SymInterior R)
4754
reflexive refl = refl , refl
4855

49-
trans : Trans R S T Trans S R T
56+
trans : Trans R S T Trans S R T
5057
Trans (SymInterior R) (SymInterior S) (SymInterior T)
51-
trans trans-rs trans-sr (r , r′) (s , s′) = trans-rs r s , trans-sr s′ r′
58+
trans trans-rs trans-sr (r , r′) (s , s′) = trans-rs r s , trans-sr s′ r′
5259

5360
transitive : Transitive R Transitive (SymInterior R)
54-
transitive tr = trans tr tr
61+
transitive tr = trans tr tr
5562

5663
-- The symmetric interior of a strict relation is empty.
5764
Empty-SymInterior : Asymmetric R Empty (SymInterior R)
5865
Empty-SymInterior asym (r , r′) = asym r r′
5966

60-
-- A reflexive transitive relation _≤_ gives rise to a poset in which the
61-
-- equivalence relation is SymInterior _≤_.
62-
record IsProset {a ℓ} {A : Set a} (_≤_ : Rel A ℓ) : Set (a ⊔ ℓ) where
63-
field
64-
refl : Reflexive _≤_
65-
trans : Transitive _≤_
66-
6767
record Proset c ℓ : Set (suc (c ⊔ ℓ)) where
6868
infix 4 _≤_
6969
field
7070
Carrier : Set c
7171
_≤_ : Rel Carrier ℓ
7272
isProset : IsProset _≤_
7373

74-
IsProset⇒IsPartialOrder : {a ℓ} {A : Set a} {≤ : Rel A ℓ}
74+
isEquivalence : {a ℓ} {A : Set a} {≤ : Rel A ℓ}
75+
IsProset ≤ IsEquivalence (SymInterior ≤)
76+
isEquivalence isProset = record
77+
{ refl = reflexive ≤-refl
78+
; sym = symmetric
79+
; trans = transitive ≤-trans
80+
} where open IsProset isProset renaming (refl to ≤-refl; trans to ≤-trans)
81+
82+
isPartialOrder : {a ℓ} {A : Set a} {≤ : Rel A ℓ}
7583
IsProset ≤ IsPartialOrder (SymInterior ≤) ≤
76-
IsProset⇒IsPartialOrder {≤ = ≤} isProset = record
84+
isPartialOrder isProset = record
7785
{ isPreorder = record
78-
{ isEquivalence = record
79-
{ refl = reflexive refl
80-
; sym = symmetric
81-
; trans = transitive trans
82-
}
86+
{ isEquivalence = isEquivalence isProset
8387
; reflexive = lhs≤rhs
84-
; trans = trans
88+
; trans = ≤-trans
8589
}
8690
; antisym = _,_
87-
} where open IsProset isProset
91+
} where open IsProset isProset renaming (trans to ≤-trans)
8892

89-
Proset⇒Poset : Proset c ℓ Poset c ℓ ℓ
90-
Proset⇒Poset record { isProset = isProset } =
91-
record { isPartialOrder = IsProset⇒IsPartialOrder isProset }
93+
poset : Proset c ℓ Poset c ℓ ℓ
94+
poset record { isProset = isProset } =
95+
record { isPartialOrder = isPartialOrder isProset }

0 commit comments

Comments
 (0)