Skip to content

Commit b85c5d1

Browse files
Admin for v1.7.1 release
1 parent 5d459fd commit b85c5d1

6 files changed

+13
-233
lines changed

CHANGELOG.md

+3-219
Original file line numberDiff line numberDiff line change
@@ -1,222 +1,6 @@
1-
Version 1.7
2-
===========
1+
Version 1.7.1
2+
=============
33

44
The library has been tested using Agda 2.6.2.
55

6-
Highlights
7-
----------
8-
9-
* New module for making system calls during type checking, `Reflection.External`,
10-
which re-exports `Agda.Builtin.Reflection.External`.
11-
12-
* New predicate for lists that are enumerations their type in
13-
`Data.List.Relation.Unary.Enumerates`.
14-
15-
* New weak induction schemes in `Data.Fin.Induction` that allows one to avoid
16-
the complicated use of `Acc`/`inject`/`raise` when proving inductive properties
17-
over finite sets.
18-
19-
Bug-fixes
20-
---------
21-
22-
* Added missing module `Function.Metric` which re-exports
23-
`Function.Metric.(Core/Definitions/Structures/Bundles)`. This module was referred
24-
to in the documentation of its children but until now was not present.
25-
26-
* Added missing fixity declaration to `_<_` in
27-
`Relation.Binary.Construct.NonStrictToStrict`.
28-
29-
Non-backwards compatible changes
30-
--------------------------------
31-
32-
#### Floating-point arithmetic
33-
34-
* The functions in `Data.Float.Base` were updated following changes upstream,
35-
in `Agda.Builtin.Float`, see <https://github.com/agda/agda/pull/4885>.
36-
37-
* The bitwise binary relations on floating-point numbers (`_<_`, `_≈ᵇ_`, `_==_`)
38-
have been removed without replacement, as they were deeply unintuitive,
39-
e.g., `∀ x → x < -x`.
40-
41-
#### Reflection
42-
43-
* The representation of reflected syntax in `Reflection.Term`,
44-
`Reflection.Pattern`, `Reflection.Argument` and
45-
`Reflection.Argument.Information` has been updated to match the new
46-
representation used in Agda 2.6.2. Specifically, the following
47-
changes were made:
48-
49-
* The type of the `var` constructor of the `Pattern` datatype has
50-
been changed from `(x : String) → Pattern` to `(x : Int) →
51-
Pattern`.
52-
53-
* The type of the `dot` constructor of the `Pattern` datatype has
54-
been changed from `Pattern` to `(t : Term) → Pattern`.
55-
56-
* The types of the `clause` and `absurd-clause` constructors of the
57-
`Clause` datatype now take an extra argument `(tel : Telescope)`,
58-
where `Telescope = List (String × Arg Type)`.
59-
60-
* The following constructors have been added to the `Sort` datatype:
61-
`prop : (t : Term) → Sort`, `propLit : (n : Nat) → Sort`, and
62-
`inf : (n : Nat) → Sort`.
63-
64-
* In `Reflection.Argument.Information` the function `relevance` was
65-
replaced by `modality`.
66-
67-
* The type of the `arg-info` constructor is now
68-
`(v : Visibility) (m : Modality) → ArgInfo`.
69-
70-
* In `Reflection.Argument` (as well as `Reflection`) there is a new
71-
pattern synonym `defaultModality`, and the pattern synonyms
72-
`vArg`, `hArg` and `iArg` have been changed.
73-
74-
* Two new modules have been added, `Reflection.Argument.Modality`
75-
and `Reflection.Argument.Quantity`. The constructors of the types
76-
`Modality` and `Quantity` are reexported from `Reflection`.
77-
78-
#### Sized types
79-
80-
* Sized types are no longer considered safe in Agda 2.6.2. As a
81-
result, all modules that use `--sized-types` no longer have the
82-
`--safe` flag. For a full list of affected modules, refer to the
83-
relevant [commit](https://github.com/agda/agda-stdlib/pull/1465/files#diff-e1c0e3196e4cea6ff808f5d2906031a7657130e10181516206647b83c7014584R91-R131.)
84-
85-
* In order to maintain the safety of `Data.Nat.Pseudorandom.LCG`, the function
86-
`stream` that relies on the newly unsafe `Codata` modules has
87-
been moved to the new module `Data.Nat.Pseudorandom.LCG.Unsafe`.
88-
89-
* In order to maintain the safety of the modules in the `Codata.Musical` directory,
90-
the functions `fromMusical` and `toMusical` defined in:
91-
```
92-
Codata.Musical.Colist
93-
Codata.Musical.Conat
94-
Codata.Musical.Cofin
95-
Codata.Musical.M
96-
Codata.Musical.Stream
97-
```
98-
have been moved to a new module `Codata.Musical.Conversion` and renamed to
99-
`X.fromMusical` and `X.toMusical` for each of `Codata.Musical.X`.
100-
101-
* In order to maintain the safety of `Data.Container(.Indexed)`, the greatest fixpoint
102-
of containers, `ν`, has been moved from `Data.Container(.Indexed)` to a new module
103-
`Data.Container(.Indexed).Fixpoints.Guarded` which also re-exports the least fixpoint.
104-
105-
#### Other
106-
107-
* Replaced existing O(n) implementation of `Data.Nat.Binary.fromℕ` with a new O(log n)
108-
implementation. The old implementation is maintained under `Data.Nat.Binary.fromℕ'`
109-
and proven to be equivalent to the new one.
110-
111-
* `Data.Maybe.Base` now re-exports the definition of `Maybe` given by
112-
`Agda.Builtin.Maybe`. The `Foreign.Haskell` modules and definitions
113-
corresponding to `Maybe` have been removed. See the release notes of
114-
Agda 2.6.2 for more information.
115-
116-
Deprecated modules
117-
------------------
118-
119-
Deprecated names
120-
----------------
121-
122-
New modules
123-
-----------
124-
125-
* New module for making system calls during type checking:
126-
```agda
127-
Reflection.External
128-
```
129-
130-
* New modules for universes and annotations of reflected syntax:
131-
```
132-
Reflection.Universe
133-
Reflection.Annotated
134-
Reflection.Annotated.Free
135-
```
136-
137-
* Added new module for unary relations over sized types now that `Size`
138-
lives in it's own universe since Agda 2.6.2.
139-
```agda
140-
Relation.Unary.Sized
141-
```
142-
143-
* Metrics specialised to co-domains with rational numbers:
144-
```
145-
Function.Metric.Rational
146-
Function.Metric.Rational.Definitions
147-
Function.Metric.Rational.Structures
148-
Function.Metric.Rational.Bundles
149-
```
150-
151-
* Lists that contain every element of a type:
152-
```
153-
Data.List.Relation.Unary.Enumerates.Setoid
154-
Data.List.Relation.Unary.Enumerates.Setoid.Properties
155-
```
156-
157-
* (Unsafe) sized W type:
158-
```
159-
Data.W.Sized
160-
```
161-
162-
* (Unsafe) container fixpoints:
163-
```
164-
Data.Container.Fixpoints.Sized
165-
```
166-
167-
Other minor additions
168-
---------------------
169-
170-
* Added new relations to `Data.Fin.Base`:
171-
```agda
172-
_≥_ = ℕ._≥_ on toℕ
173-
_>_ = ℕ._>_ on toℕ
174-
```
175-
176-
* Added new proofs to `Data.Fin.Induction`:
177-
```agda
178-
>-wellFounded : WellFounded {A = Fin n} _>_
179-
180-
<-weakInduction : P zero → (∀ i → P (inject₁ i) → P (suc i)) → ∀ i → P i
181-
>-weakInduction : P (fromℕ n) → (∀ i → P (suc i) → P (inject₁ i)) → ∀ i → P i
182-
```
183-
184-
* Added new proofs to `Relation.Binary.Properties.Setoid`:
185-
```agda
186-
respʳ-flip : _≈_ Respectsʳ (flip _≈_)
187-
respˡ-flip : _≈_ Respectsˡ (flip _≈_)
188-
```
189-
190-
* Added new function to `Data.Fin.Base`:
191-
```agda
192-
pinch : Fin n → Fin (suc n) → Fin n
193-
```
194-
195-
* Added new proofs to `Data.Fin.Properties`:
196-
```agda
197-
pinch-surjective : Surjective _≡_ (pinch i)
198-
pinch-mono-≤ : (pinch i) Preserves _≤_ ⟶ _≤_
199-
```
200-
201-
* Added new proofs to `Data.Nat.Binary.Properties`:
202-
```agda
203-
fromℕ≡fromℕ' : fromℕ ≗ fromℕ'
204-
toℕ-fromℕ' : toℕ ∘ fromℕ' ≗ id
205-
fromℕ'-homo-+ : fromℕ' (m ℕ.+ n) ≡ fromℕ' m + fromℕ' n
206-
```
207-
208-
* Rewrote proofs in `Data.Nat.Binary.Properties` for new implementation of `fromℕ`:
209-
```agda
210-
toℕ-fromℕ : toℕ ∘ fromℕ ≗ id
211-
fromℕ-homo-+ : fromℕ (m ℕ.+ n) ≡ fromℕ m + fromℕ n
212-
```
213-
214-
* Added new proof to `Data.Nat.DivMod`:
215-
```agda
216-
m/n≤m : (m / n) {≢0} ≤ m
217-
```
218-
219-
* Added new type in `Size`:
220-
```agda
221-
SizedSet ℓ = Size → Set ℓ
222-
```
6+
* The only change over v1.7 is that the library's Cabal file is now compatible with GHC 9.2.

README.agda

+2-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
module README where
44

55
------------------------------------------------------------------------
6-
-- The Agda standard library, version 1.7
6+
-- The Agda standard library, version 1.7.1
77
--
88
-- Authors: Nils Anders Danielsson, Matthew Daggitt, Guillaume Allais
99
-- with contributions from Andreas Abel, Stevan Andjelkovic,
@@ -18,8 +18,7 @@ module README where
1818
-- Noam Zeilberger and other anonymous contributors.
1919
------------------------------------------------------------------------
2020

21-
-- This version of the library has been tested using Agda 2.6.1 and
22-
-- 2.6.1.3.
21+
-- This version of the library has been tested using Agda 2.6.2.
2322

2423
-- The library comes with a .agda-lib file, for use with the library
2524
-- management system.

README.md

-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@
55
The Agda standard library
66
=========================
77

8-
**NOTE**: The library is currently gearing up for the release of v2.6.2 therefore the
9-
`master` branch is currently only compatible with release candidate 1 of Agda-2.6.2!
10-
118
The standard library aims to contain all the tools needed to write both
129
programs and proofs easily. While we always try and write efficient
1310
code, we prioritize ease of proof over type-checking and normalization

agda-stdlib-utils.cabal

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: agda-stdlib-utils
2-
version: 1.7
2+
version: 1.7.1
33
cabal-version: >= 1.10
44
build-type: Simple
55
description: Helper programs.

notes/installation-guide.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
Installation instructions
22
=========================
33

4-
Use version v1.7 of the standard library with Agda 2.6.2.
4+
Use version v1.7.1 of the standard library with Agda 2.6.2.
55

66
1. Navigate to a suitable directory `$HERE` (replace appropriately) where
77
you would like to install the library.
88

9-
2. Download the tarball of v1.7 of the standard library. This can either be
9+
2. Download the tarball of v1.7.1 of the standard library. This can either be
1010
done manually by visiting the Github repository for the library, or via the
1111
command line as follows:
1212
```
13-
wget -O agda-stdlib.tar https://github.com/agda/agda-stdlib/archive/v1.7.tar.gz
13+
wget -O agda-stdlib.tar https://github.com/agda/agda-stdlib/archive/v1.7.1.tar.gz
1414
```
1515
Note that you can replace `wget` with other popular tools such as `curl` and that
16-
you can replace `1.7` with any other version of the library you desire.
16+
you can replace `1.7.1` with any other version of the library you desire.
1717

1818
3. Extract the standard library from the tarball. Again this can either be
1919
done manually or via the command line as follows:
@@ -24,14 +24,14 @@ Use version v1.7 of the standard library with Agda 2.6.2.
2424
4. [ OPTIONAL ] If using [cabal](https://www.haskell.org/cabal/) then run
2525
the commands to install via cabal:
2626
```
27-
cd agda-stdlib-1.7
27+
cd agda-stdlib-1.7.1
2828
cabal install
2929
```
3030

3131
5. Register the standard library with Agda's package system by adding
3232
the following line to `$HOME/.agda/libraries`:
3333
```
34-
$HERE/agda-stdlib-1.7/standard-library.agda-lib
34+
$HERE/agda-stdlib-1.7.1/standard-library.agda-lib
3535
```
3636

3737
Now, the standard library is ready to be used either:

standard-library.agda-lib

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
name: standard-library-1.7
1+
name: standard-library-1.7.1
22
include: src

0 commit comments

Comments
 (0)