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

Adding support for untyped conversion-checking #64

Draft
wants to merge 36 commits into
base: onlytermrel
Choose a base branch
from

Conversation

MevenBertrand
Copy link
Member

This PR does quite a lot, but the base goal was to support the formalisation of an untyped conversion algorithm, basically that of Coq (with term-directed η for functions and pairs).

On the way of doing that, I tried to completely segregate the logical relation and its consequences from the "syntactic" consequences of these properties (eg SR as a consequence of injectivity of type constructors) and the "algorithmic" bit. So there is quite a large reorganisation, hopefully making the whole development more modular and structured. As a nice consequence, the algorithmic bit and logrel bits can now be compiled independently, as they are only put together in the very last file.

This is still somewhat a work in progress, I want to clean it up in the coming weeks. But it should be mostly stable by now.

MevenBertrand and others added 30 commits January 10, 2025 17:18
removing the comparison between the types and endpoints for the equality eliminator (they are obtained by invariants instead) + general quality of life improvement
probably broken due to the changed def
admitted lemma for strengthening – for now
missing neutral cases + unproven injectivities in the universe
that escape at level zero is a terrible hack :(
this commit and the previous one don't make sense, but they are here to help git track things around
leaving deprecated direct usages of completeness
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.

1 participant