cat/README.md

50 lines
2 KiB
Markdown
Raw Normal View History

2017-11-10 16:08:38 +00:00
Description
===========
2018-02-21 12:52:51 +00:00
This project aims to formalize some parts of category theory using cubical agda
— an extension to agda permitting univalence. To learn more about this
[readthedocs](https://agda.readthedocs.io/en/latest/language/cubical.html).
This project draws a lot of inspiration from [the
HoTT-book](https://homotopytypetheory.org/book/).
2017-11-10 16:08:38 +00:00
Installation
============
Dependencies
------------
2018-02-20 13:08:47 +00:00
To succesfully compile the following is needed:
2018-03-07 14:40:52 +00:00
* The Agda release candidate 2.5.4[^1]
2018-05-08 16:45:36 +00:00
* [Agda Standard Library](https://github.com/agda/agda-stdlib)
2018-02-21 12:52:51 +00:00
* [Cubical](https://github.com/Saizan/cubical-demo/)
2018-03-07 14:40:52 +00:00
[^1]: At least version >= [`707ce6042b6a3bdb26521f3fe8dfe5d8a8470a43`](https://github.com/agda/agda/commit/707ce6042b6a3bdb26521f3fe8dfe5d8a8470a43)
2018-05-08 16:45:36 +00:00
The version of the libraries that this depends on can be shown by
executing the following command in the root directory of the project:
git submodule foreach git rev-parse HEAD
Unfortunately Agda's module system does not allow us to automatically
add these dependencies. So you'll have to make sure you're using
versions of these libraries that are compatible with this
project. Since this information is only provided as documentation it
may also noot be up-to-date so beware.
2018-02-21 12:52:51 +00:00
It's important to have the right version of these - but which one is the right
is in constant flux. It's most likely the newest one.
2018-02-20 13:08:47 +00:00
2017-11-10 16:08:38 +00:00
I've used git submodules to manage dependencies. Unfortunately Agda does not
2018-02-21 12:52:51 +00:00
allow specifying libraries to be used only as local dependencies. So the
submodules are mostly used for documentation.
2017-11-10 16:08:38 +00:00
You can let Agda know about these libraries by appending them to your global
libraries file like so: (NB!: There is a good reason this is not in a
makefile. So please verify that you know what you are doing, you probably
already have standard-library in you libraries)
AGDA_LIB=~/.agda
readlink -f libs/*/*.agda-lib | tee -a $AGDA_LIB/libraries
Anyways, assuming you have this set up you should be good to go.