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

Adapt to coq#pr19611 #45

Merged
merged 1 commit into from
Nov 1, 2024
Merged

Conversation

Tragicus
Copy link
Contributor

Due to the way Ordered is declared (and probably because of universe polymorphism), the unification algorithm "fails" on problems of the form Ordered.sort A = Ordered.sort ?A because the universe instances of Ordered.sort do not match. This issue is hidden by the canonical structure resolution procedure, but the new algorithm in coq/coq#19611 (purposefully) changes the inferred structure from A to structures_eta__canonical__ordtype_Ordered A, which is not unifiable to A and breaks a few things. This PR adds a few annotations to get the correct structure back.

N.B. The whole repository compiles with the commented declaration of Ordered via HB (also tested on coq-8.19), so I am confused as to why it was necessary to declare it by hand. Restoring the HB declaration would be a much cleaner way to solve the issue, if possible.

@Tragicus Tragicus mentioned this pull request Oct 31, 2024
5 tasks
@aleksnanevski
Copy link
Collaborator

Thanks. I'll take a look at this on Monday, after the holidays in Spain. The reason for hacking Ordered the way it is, is because some of our development that imports the fcsl-pcm repo, requires a specific universe for Ordered.

I think the right way to fix this may be to consider adding universe polymorphism related annotations to HB.

@aleksnanevski aleksnanevski merged commit ad2b680 into imdea-software:master Nov 1, 2024
3 checks passed
@aleksnanevski
Copy link
Collaborator

Ok, I merged it.

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.

2 participants