Theory and exercises for formulating the univalence axiom using the Coq proof assistant.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
solutions
.gitignore
README.md
_CoqProject
category.v
equivalences.v
equivalencesDefinitions.v
inductionAndFunctions.v
lemmas.v
makefile
makefile.conf
productStrictlyAssoc.v
products.v
propositionsSets.v
univalence.v
wrongUnivalence.v
yoneda.v

README.md

Introduction to univalence in Coq

Some exercises leading up to the formulation of the univalence axiom using the Coq proof assistant.

Files ending in *Solution.v contain proofs; other *.v files have the proofs removed.

Getting started

Install Coq here.

If developing in emacs place the following lines:

(setq coq-load-path-include-current t)
(setq coq-compile-before-require t)

in your init file. If not then you may have to run coqc on the various dependencies to run the proofs. For instance in CoqIde (which is automatically installed alongside Coq) you may need to do

Compile > Compile buffer

on any files that Coq has trouble loading. Hopefully the addition of a line in _CoqProject has taken care of LoadPath issues. If not please try the solution suggested here.

Intended order of files

  1. inductionAndFunctions.v introduces the Inductive and Definition keywords as well as the induction, destruct and apply tactics.
  2. lemmas.v introduces proofs as programmes and the simpl and rewrite tactics.
  3. propositionsSets.v introduces the basic ideas to analyse equivalences.
  4. equivalencesDefinitions.v introduces the various different types of equivalence.
  5. equivalences.v proves that the type of contractible maps is a proposition; introduces assert.
  6. univalence.v formulates the univalence axiom using contractible maps.
  7. productStrictlyAssoc.v uses the univalence axiom to prove that the product type construction is strictly associative in the appropriate sense.

Acknowledgements