Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.

Introduction to univalent foundations of mathematics with Agda

New. There is a modular version of the Agda files here at under the name MGS*.lagda.

Sources to generate the lecture notes available at

Agda 2.6.1 is required. Consult the installation instructions to help you set up Agda and Emacs for the Midlands Graduate School.

  • The (literate) *.lagda files are used to generate the html pages with the script ./build.

  • This make also generates ./agda/*.agda files using illiterator.hs.

  • The program agdatomd.hs converts from .lagda to .md for use by the script fastloop.

  • This script is used for editing the notes in conjunction with jekyll serve -watch --incremental so that after an update it is only necessary to reload the page on the browser to view it.

  • The script slowloop serves the same purpose, but calls Agda instead of agdatomd, via the script generatehtml, so that we get syntax highlighting in the html pages. This can be very slow depending on which lagda file is changed. This means that after the first is reload, one is likely to see the Agda code without syntax highlighting.

  • It is possible to run ./slowloop, ./fastloop and jekyll serve in parallel, and we do this for editing these notes.

  • The loop scripts use inotifywait to detect lagda file changes and trigger the appropriate conversion actions.

  • The install action of the makefile allows to run an additional action for particular requirements of users or environments, in a file additionally, which is not distributed and is ignored by git. If this file doesn't exist, an empty executable file is created.