-
Notifications
You must be signed in to change notification settings - Fork 444
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
feat: Std.Sat.AIG
#4953
feat: Std.Sat.AIG
#4953
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nicely prepared patch and a big step forward. 🥳 I left some stylistic comments.
Mathlib CI status (docs):
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the super clean implementation! I've read upon CNF.lean
, and will get to the others in a bit.
Co-authored-by: Tobias Grosser <[email protected]>
Co-authored-by: Siddharth <[email protected]>
Co-authored-by: Markus Himmel <[email protected]>
Co-authored-by: Markus Himmel <[email protected]>
❤️ |
Co-authored-by: Kim Morrison <[email protected]>
Co-authored-by: Kim Morrison <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could probably spend more time nitpicking here and there but I don't think there is much point, so let's get this merged after these final remarks.
src/Std/Sat/AIG/CachedGates.lean
Outdated
{ | ||
lhs := { | ||
ref := constRef | ||
inv := false | ||
} | ||
rhs := { | ||
ref := gate.cast <| by | ||
intros | ||
apply LawfulOperator.le_size_of_le_aig_size (f := mkConstCached) | ||
omega | ||
inv := true | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think there is no clear consensus in the existing Lean codebase at the moment (including mixing different styles within the same style), so I think in the interest of making progress I suggest leaving things as you have them now and not losing too much time on this as long as they adhere to one of these styles. However, neither style should have an opening brace on its own line (so this is not okay), and within a declaration you should stick to one style (so this is not okay).
Step 2/~7 in upstreaming LeanSAT.