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

Working around regressions in typeclass inference in F* #177

Merged
merged 10 commits into from
Jan 22, 2024

Conversation

karthikbhargavan
Copy link
Contributor

This PR fixes a couple of places where F* 2024.01.13 fails but F* 2023.09.03 used to succeed.
The issue appears when a typeclass instance is used within an arithmetic or logical expression.

@karthikbhargavan
Copy link
Contributor Author

I also added a drive-by fix that adds new hints for the correctness proofs. These are needed when upgrading F* and Z3. Since no code is changed, and it is related to the new F*, I folded it into this PR.

@karthikbhargavan
Copy link
Contributor Author

This depends on cryspen/hax#440

Copy link
Member

@franziskuskiefer franziskuskiefer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's get this in to unbreak ci.

Copy link
Member

@franziskuskiefer franziskuskiefer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like more changes are needed.
This is blocking everything else, so let's get this fixed.

W95Psp added a commit to cryspen/hax that referenced this pull request Jan 22, 2024
`Output` is an associated type, and wasn't constrainted in terms of
universes.  Thus, F* would fail unifying types while using this
instance because the associated type could be of any universe. This is
causing the failure in cryspen/libcrux#177.
@W95Psp
Copy link
Contributor

W95Psp commented Jan 22, 2024

I think I understood why the TC resolution is failing, I think cryspen/hax#444 is solving the issue

I've pushed a temporary commit that pins Hax to the branch of cryspen/hax#444, let's revert it when the PR is merged

@W95Psp W95Psp force-pushed the karthik/secret-independence-fix-new-fstar branch from 3ba0d7d to 17ebe17 Compare January 22, 2024 15:03
@W95Psp W95Psp enabled auto-merge January 22, 2024 15:38
@W95Psp W95Psp merged commit c74d627 into main Jan 22, 2024
15 checks passed
@W95Psp W95Psp deleted the karthik/secret-independence-fix-new-fstar branch January 22, 2024 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

3 participants