-
Notifications
You must be signed in to change notification settings - Fork 4
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
Reconsider Ord
trait on BddValuation
#36
Comments
Just a quick note that the earliest point where we can safely change this is the |
Hi, in this time can we directly add derived I understand this implementation mightly be useless and confused for most of people... But here is one scenarios when I want to sort some BooleanExpression according their Bdd. I don't care the sorting metric, just clustering the same logic as near as possible. (e.g., Thank you! |
Hi! Sorry for the late response. I am a bit reluctant to add an ordering to BDDs directly, since this could be interpreted in many different ways. For example, one could order BDDs by size (in terms of nodes), one could order them by the number of positive results the function gives (function weight/cardinality), one could order them by implication (i.e. However, I see your point. Since Rust supports Add a collection of pre-made sorting methods that can be used with Would this work for you? |
I've added the comparator methods here as This is now included in the library since version |
Hi! Thank you a lot for your help! I've used the |
Right now, this is a "derived" trait implementation. But this may be slightly unintuitive, because it is just a "lexicographic" ordering. On surface, this is reasonable because it follows the normal iteration order. But there are a few considerations to be made:
PartialOrd
between BDD valuations and partial valuations that is instead based on "inclusion"? Wouldn't this be a more natural ordering on valuations?The text was updated successfully, but these errors were encountered: