Do away with implicit arguments in some places where they can't be inferred
Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>
This commit is contained in:
parent
4aea9a0358
commit
850984ec15
30
Lattice.agda
30
Lattice.agda
|
@ -90,33 +90,33 @@ module IsEquivalenceInstances where
|
||||||
_⊆_ : Map → Map → Set (Agda.Primitive._⊔_ a b)
|
_⊆_ : Map → Map → Set (Agda.Primitive._⊔_ a b)
|
||||||
_⊆_ = subset _≈₂_
|
_⊆_ = subset _≈₂_
|
||||||
|
|
||||||
⊆-refl : {m : Map} → m ⊆ m
|
⊆-refl : (m : Map) → m ⊆ m
|
||||||
⊆-refl k v k,v∈m = (v , (≈₂-refl , k,v∈m))
|
⊆-refl _ k v k,v∈m = (v , (≈₂-refl , k,v∈m))
|
||||||
|
|
||||||
⊆-trans : {m₁ m₂ m₃ : Map} → m₁ ⊆ m₂ → m₂ ⊆ m₃ → m₁ ⊆ m₃
|
⊆-trans : (m₁ m₂ m₃ : Map) → m₁ ⊆ m₂ → m₂ ⊆ m₃ → m₁ ⊆ m₃
|
||||||
⊆-trans m₁⊆m₂ m₂⊆m₃ k v k,v∈m₁ =
|
⊆-trans _ _ _ m₁⊆m₂ m₂⊆m₃ k v k,v∈m₁ =
|
||||||
let
|
let
|
||||||
(v' , (v≈v' , k,v'∈m₂)) = m₁⊆m₂ k v k,v∈m₁
|
(v' , (v≈v' , k,v'∈m₂)) = m₁⊆m₂ k v k,v∈m₁
|
||||||
(v'' , (v'≈v'' , k,v''∈m₃)) = m₂⊆m₃ k v' k,v'∈m₂
|
(v'' , (v'≈v'' , k,v''∈m₃)) = m₂⊆m₃ k v' k,v'∈m₂
|
||||||
in (v'' , (≈₂-trans v≈v' v'≈v'' , k,v''∈m₃))
|
in (v'' , (≈₂-trans v≈v' v'≈v'' , k,v''∈m₃))
|
||||||
|
|
||||||
≈-refl : {m : Map} → m ≈ m
|
≈-refl : (m : Map) → m ≈ m
|
||||||
≈-refl {m} = (⊆-refl {m}, ⊆-refl {m})
|
≈-refl m = (⊆-refl m , ⊆-refl m)
|
||||||
|
|
||||||
≈-sym : {m₁ m₂ : Map} → m₁ ≈ m₂ → m₂ ≈ m₁
|
≈-sym : (m₁ m₂ : Map) → m₁ ≈ m₂ → m₂ ≈ m₁
|
||||||
≈-sym (m₁⊆m₂ , m₂⊆m₁) = (m₂⊆m₁ , m₁⊆m₂)
|
≈-sym _ _ (m₁⊆m₂ , m₂⊆m₁) = (m₂⊆m₁ , m₁⊆m₂)
|
||||||
|
|
||||||
≈-trans : {m₁ m₂ m₃ : Map} → m₁ ≈ m₂ → m₂ ≈ m₃ → m₁ ≈ m₃
|
≈-trans : (m₁ m₂ m₃ : Map) → m₁ ≈ m₂ → m₂ ≈ m₃ → m₁ ≈ m₃
|
||||||
≈-trans {m₁} {m₂} {m₃} (m₁⊆m₂ , m₂⊆m₁) (m₂⊆m₃ , m₃⊆m₂) =
|
≈-trans m₁ m₂ m₃ (m₁⊆m₂ , m₂⊆m₁) (m₂⊆m₃ , m₃⊆m₂) =
|
||||||
( ⊆-trans {m₁} {m₂} {m₃} m₁⊆m₂ m₂⊆m₃
|
( ⊆-trans m₁ m₂ m₃ m₁⊆m₂ m₂⊆m₃
|
||||||
, ⊆-trans {m₃} {m₂} {m₁} m₃⊆m₂ m₂⊆m₁
|
, ⊆-trans m₃ m₂ m₁ m₃⊆m₂ m₂⊆m₁
|
||||||
)
|
)
|
||||||
|
|
||||||
LiftEquivalence : IsEquivalence Map _≈_
|
LiftEquivalence : IsEquivalence Map _≈_
|
||||||
LiftEquivalence = record
|
LiftEquivalence = record
|
||||||
{ ≈-refl = λ {m₁} → ≈-refl {m₁}
|
{ ≈-refl = λ {m₁} → ≈-refl m₁
|
||||||
; ≈-sym = λ {m₁} {m₂} → ≈-sym {m₁} {m₂}
|
; ≈-sym = λ {m₁} {m₂} → ≈-sym m₁ m₂
|
||||||
; ≈-trans = λ {m₁} {m₂} {m₃} → ≈-trans {m₁} {m₂} {m₃}
|
; ≈-trans = λ {m₁} {m₂} {m₃} → ≈-trans m₁ m₂ m₃
|
||||||
}
|
}
|
||||||
|
|
||||||
module IsSemilatticeInstances where
|
module IsSemilatticeInstances where
|
||||||
|
|
Loading…
Reference in New Issue
Block a user