Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Containers (and W and M) #1129

Merged
merged 12 commits into from
Jun 25, 2024
Merged

Containers (and W and M) #1129

merged 12 commits into from
Jun 25, 2024

Conversation

stefaniatadama
Copy link
Contributor

This PR adds some definitions and proofs on containers. As a prerequisite, it also required adding (non-indexed) W-types and M-types written as a record type.

More specifically,

  • we define the category of generalised containers,
  • we define the container extension functor,
  • we give two different presentations of the proof that the container extension functor is full and faithful,
  • and we give proofs that set-containers are closed under least and greatest fixed points.

Most of the proofs are an adaptation of those in 'Containers: Constructing strictly positive types' by Abbott, Altenkirch, and Ghani.

I am aware of the -W[no]NoGuardednessFlag warning being raised. This warning is raised because MRecord.agda is not tagged with a --guardedness flag. I avoided this tag as I import MRecord.agda from Algebras.agda, which exists in the Data directory, and which therefore causes an error if it is also tagged with --guardedness. I'd be happy to refactor if reviewers have suggestions on how else I can organise things.

@mortberg mortberg marked this pull request as ready for review June 25, 2024 13:24
@mortberg mortberg merged commit 6d6870c into agda:master Jun 25, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants