forked from cedille/ial
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.txt
73 lines (47 loc) · 2.34 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
The Iowa Agda Library (IAL)
Aaron Stump
1. About the library
The goal is to provide a concrete library focused on verification
examples, as opposed to mathematics. The library has a good number
of theorems for booleans, natural numbers, and lists. It also has
trees, tries, vectors, and rudimentary IO. A number of good ideas
come from Agda's standard library.
2. Using the library
This library has been tested with Agda 2.5.4. If you are
using an older version of Agda, try version 1.2:
https://svn.divms.uiowa.edu/repos/clc/projects/agda/ial-releases/1.2
Starting with Agda 2.5.1, to use the library you must add it to your
Agda libraries. On linux, create the directory ~/.agda, and add a file
called "libraries" to it, containing the full path to the .agda-lib file
contained in this directory (for the IAL version 1.3). Then create
a file called "defaults", and add the word "ial" to it (no quotes).
These steps tell Agda where the IAL library is, and that you want to
include it when opening .agda files in emacs (or with the command-line
tool).
In Agda, you can include the whole library by importing lib.agda.
You can compile the whole library by running "make".
The library is set up so there are no name conflicts between modules
(except sometimes I have several versions of the same module, like
nat-division and nat-division-wf, and there might
be name conflicts in such cases).
3. Browsing the library
You can get some overview of what is in the library by following
imports from lib.agda (this is the main entry point for the library).
4. Credits
The library is mostly written by myself, but it also includes some
contributions from John Bodeen, Harley Eades, and undergraduates who
took my Programming Language Concepts class, Spring 2014 and 2015,
especially Tom Werner.
5. Releases
Recent releases of the IAL can be found here:
https://github.com/cedille/ial/releases
Older released versions of the library can be found at
https://svn.divms.uiowa.edu/repos/clc/projects/agda/ial-releases
The development version is at
https://github.com/cedille/ial
6. License
This library is currently provided under the MIT License, see LICENSE.txt.
7. Documentation
There is no formal documentation currently, besides comments in the files.
Much of the library is described in my book, "Verified Functional
Programming in Agda", published 2016 with ACM Books.