Skip to content

Commit 1071dc5

Browse files
jamesmckinnaandreasabel
authored andcommitted
implicit to explicit in liftRel (#2433)
1 parent 0c755fc commit 1071dc5

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

src/Algebra/Construct/Pointwise.agda

+22-22
Original file line numberDiff line numberDiff line change
@@ -43,17 +43,17 @@ private
4343
lift₂ _∙_ g h x = (g x) ∙ (h x)
4444

4545
liftRel : Rel C ℓ Rel (A C) (a ⊔ ℓ)
46-
liftRel _≈_ g h = {x} (g x) ≈ (h x)
46+
liftRel _≈_ g h = x (g x) ≈ (h x)
4747

4848

4949
------------------------------------------------------------------------
5050
-- Setoid structure: here rather than elsewhere? (could be imported?)
5151

5252
isEquivalence : IsEquivalence _≈_ IsEquivalence (liftRel _≈_)
5353
isEquivalence isEquivalence = record
54-
{ refl = λ {f x} refl {f x}
55-
; sym = λ f≈g sym f≈g
56-
; trans = λ f≈g g≈h trans f≈g g≈h
54+
{ refl = λ {f} _ refl {f _}
55+
; sym = λ f≈g _ sym (f≈g _)
56+
; trans = λ f≈g g≈h _ trans (f≈g _) (g≈h _)
5757
}
5858
where open IsEquivalence isEquivalence
5959

@@ -63,91 +63,91 @@ isEquivalence isEquivalence = record
6363
isMagma : IsMagma _≈_ _∙_ IsMagma (liftRel _≈_) (lift₂ _∙_)
6464
isMagma isMagma = record
6565
{ isEquivalence = isEquivalence M.isEquivalence
66-
; ∙-cong = λ g h M.∙-cong g h
66+
; ∙-cong = λ g h _ M.∙-cong (g _) (h _)
6767
}
6868
where module M = IsMagma isMagma
6969

7070
isSemigroup : IsSemigroup _≈_ _∙_ IsSemigroup (liftRel _≈_) (lift₂ _∙_)
7171
isSemigroup isSemigroup = record
7272
{ isMagma = isMagma M.isMagma
73-
; assoc = λ f g h M.assoc (f _) (g _) (h _)
73+
; assoc = λ f g h _ M.assoc (f _) (g _) (h _)
7474
}
7575
where module M = IsSemigroup isSemigroup
7676

7777
isBand : IsBand _≈_ _∙_ IsBand (liftRel _≈_) (lift₂ _∙_)
7878
isBand isBand = record
7979
{ isSemigroup = isSemigroup M.isSemigroup
80-
; idem = λ f M.idem (f _)
80+
; idem = λ f _ M.idem (f _)
8181
}
8282
where module M = IsBand isBand
8383

8484
isCommutativeSemigroup : IsCommutativeSemigroup _≈_ _∙_
8585
IsCommutativeSemigroup (liftRel _≈_) (lift₂ _∙_)
8686
isCommutativeSemigroup isCommutativeSemigroup = record
8787
{ isSemigroup = isSemigroup M.isSemigroup
88-
; comm = λ f g M.comm (f _) (g _)
88+
; comm = λ f g _ M.comm (f _) (g _)
8989
}
9090
where module M = IsCommutativeSemigroup isCommutativeSemigroup
9191

9292
isMonoid : IsMonoid _≈_ _∙_ ε IsMonoid (liftRel _≈_) (lift₂ _∙_) (lift₀ ε)
9393
isMonoid isMonoid = record
9494
{ isSemigroup = isSemigroup M.isSemigroup
95-
; identity = (λ f M.identityˡ (f _)) , λ f M.identityʳ (f _)
95+
; identity = (λ f _ M.identityˡ (f _)) , λ f _ M.identityʳ (f _)
9696
}
9797
where module M = IsMonoid isMonoid
9898

9999
isCommutativeMonoid : IsCommutativeMonoid _≈_ _∙_ ε
100100
IsCommutativeMonoid (liftRel _≈_) (lift₂ _∙_) (lift₀ ε)
101101
isCommutativeMonoid isCommutativeMonoid = record
102102
{ isMonoid = isMonoid M.isMonoid
103-
; comm = λ f g M.comm (f _) (g _)
103+
; comm = λ f g _ M.comm (f _) (g _)
104104
}
105105
where module M = IsCommutativeMonoid isCommutativeMonoid
106106

107107
isGroup : IsGroup _≈_ _∙_ ε _⁻¹
108108
IsGroup (liftRel _≈_) (lift₂ _∙_) (lift₀ ε) (lift₁ _⁻¹)
109109
isGroup isGroup = record
110110
{ isMonoid = isMonoid M.isMonoid
111-
; inverse = (λ f M.inverseˡ (f _)) , λ f M.inverseʳ (f _)
112-
; ⁻¹-cong = λ f M.⁻¹-cong f
111+
; inverse = (λ f _ M.inverseˡ (f _)) , λ f _ M.inverseʳ (f _)
112+
; ⁻¹-cong = λ f _ M.⁻¹-cong (f _)
113113
}
114114
where module M = IsGroup isGroup
115115

116116
isAbelianGroup : IsAbelianGroup _≈_ _∙_ ε _⁻¹
117117
IsAbelianGroup (liftRel _≈_) (lift₂ _∙_) (lift₀ ε) (lift₁ _⁻¹)
118118
isAbelianGroup isAbelianGroup = record
119119
{ isGroup = isGroup M.isGroup
120-
; comm = λ f g M.comm (f _) (g _)
120+
; comm = λ f g _ M.comm (f _) (g _)
121121
}
122122
where module M = IsAbelianGroup isAbelianGroup
123123

124124
isSemiringWithoutAnnihilatingZero : IsSemiringWithoutAnnihilatingZero _≈_ _+_ _*_ 0# 1#
125125
IsSemiringWithoutAnnihilatingZero (liftRel _≈_) (lift₂ _+_) (lift₂ _*_) (lift₀ 0#) (lift₀ 1#)
126126
isSemiringWithoutAnnihilatingZero isSemiringWithoutAnnihilatingZero = record
127127
{ +-isCommutativeMonoid = isCommutativeMonoid M.+-isCommutativeMonoid
128-
; *-cong = λ g h M.*-cong g h
129-
; *-assoc = λ f g h M.*-assoc (f _) (g _) (h _)
130-
; *-identity = (λ f M.*-identityˡ (f _)) , λ f M.*-identityʳ (f _)
131-
; distrib = (λ f g h M.distribˡ (f _) (g _) (h _)) , λ f g h M.distribʳ (f _) (g _) (h _)
128+
; *-cong = λ g h _ M.*-cong (g _) (h _)
129+
; *-assoc = λ f g h _ M.*-assoc (f _) (g _) (h _)
130+
; *-identity = (λ f _ M.*-identityˡ (f _)) , λ f _ M.*-identityʳ (f _)
131+
; distrib = (λ f g h _ M.distribˡ (f _) (g _) (h _)) , λ f g h _ M.distribʳ (f _) (g _) (h _)
132132
}
133133
where module M = IsSemiringWithoutAnnihilatingZero isSemiringWithoutAnnihilatingZero
134134

135135
isSemiring : IsSemiring _≈_ _+_ _*_ 0# 1#
136136
IsSemiring (liftRel _≈_) (lift₂ _+_) (lift₂ _*_) (lift₀ 0#) (lift₀ 1#)
137137
isSemiring isSemiring = record
138138
{ isSemiringWithoutAnnihilatingZero = isSemiringWithoutAnnihilatingZero M.isSemiringWithoutAnnihilatingZero
139-
; zero = (λ f M.zeroˡ (f _)) , λ f M.zeroʳ (f _)
139+
; zero = (λ f _ M.zeroˡ (f _)) , λ f _ M.zeroʳ (f _)
140140
}
141141
where module M = IsSemiring isSemiring
142142

143143
isRing : IsRing _≈_ _+_ _*_ -_ 0# 1#
144144
IsRing (liftRel _≈_) (lift₂ _+_) (lift₂ _*_) (lift₁ -_) (lift₀ 0#) (lift₀ 1#)
145145
isRing isRing = record
146146
{ +-isAbelianGroup = isAbelianGroup M.+-isAbelianGroup
147-
; *-cong = λ g h M.*-cong g h
148-
; *-assoc = λ f g h M.*-assoc (f _) (g _) (h _)
149-
; *-identity = (λ f M.*-identityˡ (f _)) , λ f M.*-identityʳ (f _)
150-
; distrib = (λ f g h M.distribˡ (f _) (g _) (h _)) , λ f g h M.distribʳ (f _) (g _) (h _)
147+
; *-cong = λ g h _ M.*-cong (g _) (h _)
148+
; *-assoc = λ f g h _ M.*-assoc (f _) (g _) (h _)
149+
; *-identity = (λ f _ M.*-identityˡ (f _)) , λ f _ M.*-identityʳ (f _)
150+
; distrib = (λ f g h _ M.distribˡ (f _) (g _) (h _)) , λ f g h _ M.distribʳ (f _) (g _) (h _)
151151
}
152152
where module M = IsRing isRing
153153

0 commit comments

Comments
 (0)