Skip to content

fix(proof-libs) Remove fields that shouldn't be in PartialOrd.#1473

Merged
maximebuyse merged 2 commits intomainfrom
fix-partialord
May 26, 2025
Merged

fix(proof-libs) Remove fields that shouldn't be in PartialOrd.#1473
maximebuyse merged 2 commits intomainfrom
fix-partialord

Conversation

@maximebuyse
Copy link
Copy Markdown
Contributor

Fixes #1472

@maximebuyse maximebuyse requested a review from a team as a code owner May 26, 2025 07:23
Copy link
Copy Markdown
Contributor

@W95Psp W95Psp left a comment

Choose a reason for hiding this comment

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

Those function are somehow legit: they are indeed part of that trait, but are default.

The F* backend doesn't add the default methods automatically, see #888.

But here those function will probably be missing as well if we remove them.
Can you make standalone functions named the same? e.g.

let f_lt #v_Self #v_Rhs {| t_PartialOrd v_Self v_Rhs |} (self: v_Self) (rhs: v_Rhs) = (* something with partial_cmp *)

Not sure about the naming, let's try to make something where calling f_lt works.

@clementblaudeau clementblaudeau self-assigned this May 26, 2025
@maximebuyse maximebuyse requested a review from W95Psp May 26, 2025 08:52
Copy link
Copy Markdown
Contributor

@W95Psp W95Psp left a comment

Choose a reason for hiding this comment

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

Thanks, that looks good to me!

@clementblaudeau
Copy link
Copy Markdown
Contributor

With this change, fstar still supports the rbe examples that motivated 6dede43. Good to merge for me.

@maximebuyse maximebuyse added this pull request to the merge queue May 26, 2025
Merged via the queue into main with commit f34069a May 26, 2025
14 of 17 checks passed
@maximebuyse maximebuyse deleted the fix-partialord branch May 26, 2025 09:59
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.

PartialOrd requires too many methods in f* core lib

3 participants