Skip to content

feat: add set algebra support#188

Open
Kaptch wants to merge 12 commits intoleanprover-community:masterfrom
Kaptch:set-algebra-rb
Open

feat: add set algebra support#188
Kaptch wants to merge 12 commits intoleanprover-community:masterfrom
Kaptch:set-algebra-rb

Conversation

@Kaptch
Copy link
Copy Markdown
Contributor

@Kaptch Kaptch commented Mar 20, 2026

Description

Adds set and finite sets interfaces to Std, set algebra and bigOpS. There's an example of usage in Examples/Namesets. Set algebra should work for LawfulSet (not necessarily finite) with decidable disjointedness.

This is still wip.
Before it can be finished, I will do two things:

  • Double-check that all necessary lemmas are ported/add comments that link definitions/lemmas to Rocq names;
  • Refactor some proofs to match the conventions.

Checklist

  • My code follows the mathlib naming and code style conventions
  • I have updated PORTING.md as appropriate
  • I have added my name to the authors section of any appropriate files

@Kaptch Kaptch marked this pull request as ready for review March 20, 2026 16:28
Copy link
Copy Markdown
Collaborator

@markusdemedeiros markusdemedeiros left a comment

Choose a reason for hiding this comment

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

Hey! Great work on this PR, it's a very nice solution.

I left a lot of refactoring comments, many of them apply multiple times. If you want, I can do a cleanup pass on this PR, but I figured I'd give them to you first if you wanted to try. Let me know what you want to do.

@Kaptch
Copy link
Copy Markdown
Contributor Author

Kaptch commented Apr 1, 2026

Hi! Thank you for the review!
I made a few passes, keeping your comments in mind.
There's one place, where i thought that conv improves readability, but if there's strict no-conv policy, i don't mind changing it.

@markusdemedeiros
Copy link
Copy Markdown
Collaborator

Thanks for the updates, I'll do my best to give it another look soon!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants