@@ -45,7 +45,7 @@ Non-backwards compatible changes
45
45
affect users who are renaming/hiding the library's equational reasoning combinators.
46
46
47
47
* Previously all equational reasoning combinators (e.g. ` _≈⟨_⟩_ ` , ` _≡⟨_⟩_ ` , ` _≤⟨_⟩_ ` )
48
- have been defined in the following style:
48
+ were defined in the following style:
49
49
``` agda
50
50
infixr 2 _≡⟨_⟩_
51
51
@@ -83,8 +83,9 @@ Non-backwards compatible changes
83
83
compatible. Having said that you may want to switch to the new style for the benefits
84
84
described above.
85
85
86
- * ** Changes required** : The one drawback is that hiding and renaming the combinators no longer works
87
- as before, as ` _≡⟨_⟩_ ` etc. are now syntax instead of names. For example instead of:
86
+ * ** Changes required** : The only drawback to this change is that hiding and renaming the
87
+ combinators no longer works as before, as ` _≡⟨_⟩_ ` etc. are now syntax instead of names.
88
+ For example instead of:
88
89
``` agda
89
90
open SetoidReasoning setoid public
90
91
hiding (_≈⟨_⟩_) renaming (_≡⟨_⟩_ to _↭⟨_⟩_)
@@ -110,17 +111,18 @@ Non-backwards compatible changes
110
111
- ` IsCommutativeMonoid `
111
112
- ` IsCommutativeSemiring `
112
113
- ` IsRing `
113
- In all of these cases, the change has been to give each of these structures
114
- access to * all* of the fields of structures below (weaker) in the hierarchy.
115
114
116
- * For example, consider ` IsCommutativeMonoid ` . The old definition effectively
117
- required the following fields.
118
-
115
+ In each case, the structure now requires fields for all the required properties,
116
+ rather than just an (arbitrary) minimal set of properties.
117
+
118
+ * For example, whereas the old definition of ` IsCommutativeMonoid ` required
119
+ the following fields:
120
+
119
121
- Associativity
120
122
- Left identity
121
123
- Commutativity
122
124
123
- The new definition also requires:
125
+ the new definition also requires:
124
126
125
127
- Right identity.
126
128
@@ -229,8 +231,7 @@ Deprecated modules
229
231
The following modules have been renamed as part of a drive to improve
230
232
consistency across the library. The deprecated modules still exist and
231
233
therefore all existing code should still work, however use of the new names
232
- is encouraged. Automated warnings are attached to deprecated modules to
233
- discourage their use.
234
+ is encouraged.
234
235
235
236
* In ` Algebra ` :
236
237
```
@@ -276,7 +277,7 @@ attached to all deprecated names to discourage their use.
276
277
Any¬→¬All ↦ Any¬⇒¬All
277
278
```
278
279
279
- * In `Data.Nat.Properties
280
+ * In ` Data.Nat.Properties ` :
280
281
``` agda
281
282
∀[m≤n⇒m≢o]⇒o<n ↦ ∀[m≤n⇒m≢o]⇒n<o
282
283
∀[m<n⇒m≢o]⇒o≤n ↦ ∀[m<n⇒m≢o]⇒n≤o
@@ -304,7 +305,7 @@ New modules
304
305
Algebra.Module.Structures
305
306
Algebra.Module.Structures.Biased
306
307
```
307
- Supported are all of {left ,right , bi,} {semi,} modules.
308
+ Supported are all of {left, right , bi} {semi} modules.
308
309
309
310
* Morphisms over group and ring-like algebraic structures:
310
311
``` agda
@@ -356,14 +357,15 @@ New modules
356
357
Data.Tree.Rose
357
358
Data.Tree.Rose.Properties
358
359
```
359
-
360
+
361
+ * New properties and functions over floats and words.
360
362
``` agda
361
363
Data.Float.Base
362
364
Data.Float.Properties
363
365
Data.Word.Base
364
366
Data.Word.Properties
365
367
```
366
-
368
+
367
369
* Helper methods for using reflection with numeric data.
368
370
``` agda
369
371
Data.Nat.Reflection
@@ -399,14 +401,13 @@ Other major changes
399
401
400
402
#### Improved performance of decision processes
401
403
402
- * Rewrote definitions branching on a ` Dec ` value to branch only on the boolean
403
- ` does ` field, wherever possible . Furthermore, branching on the ` proof ` field
404
- has been made as late as possible, using the ` invert ` lemma from
404
+ * All definitions branching on a ` Dec ` value have been rewritten, wherever possible,
405
+ to branch only on the boolean ` does ` field. Furthermore, branching on
406
+ the ` proof ` field has been made as late as possible, using the ` invert ` lemma from
405
407
` Relation.Nullary.Reflects ` .
406
408
407
409
* For example, the old definition of ` filter ` in ` Data.List.Base ` used the
408
- ` yes ` and ` no ` patterns, which desugared to the following.
409
-
410
+ ` yes ` and ` no ` patterns, which desugared to the following:
410
411
``` agda
411
412
filter : ∀ {P : Pred A p} → Decidable P → List A → List A
412
413
filter P? [] = []
@@ -449,7 +450,7 @@ Other major changes
449
450
450
451
#### Other
451
452
452
- * The module ` Reflection ` is no longer unsafe.
453
+ * The module ` Reflection ` is no longer ` -- unsafe` .
453
454
454
455
* Standardised the ` Eq ` modules in structures and bundles in ` Relation.Binary ` hierarchy.
455
456
- ` IsDecTotalOrder.Eq ` now exports ` isDecPartialOrder ` .
0 commit comments