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

Native support for distinct #1157

Open
bclement-ocp opened this issue Jul 11, 2024 · 0 comments
Open

Native support for distinct #1157

bclement-ocp opened this issue Jul 11, 2024 · 0 comments
Assignees
Labels

Comments

@bclement-ocp
Copy link
Collaborator

After #890 we explode n-ary distinct constraints into a clique of pairwise disequalities. As mentioned in #889, we should implement n-ary distinct correctly at some point.

Currently this is tricky because while an n-ary distinct is a literal, its negation is not, and we need to figure out the best way to deal with this.

bclement-ocp added a commit to bclement-ocp/alt-ergo that referenced this issue Aug 28, 2024
This used to be impossible to do in the general case when we have only
bitlist domains, but is possible since we also have interval domains.

This implementation only supports binary distinct operators, and will
need to be revisited as part of OCamlPro#1157.
bclement-ocp added a commit to bclement-ocp/alt-ergo that referenced this issue Aug 28, 2024
This used to be impossible to do in the general case when we have only
bitlist domains, but is possible since we also have interval domains.

This implementation only supports binary distinct operators, and will
need to be revisited as part of OCamlPro#1157.
bclement-ocp added a commit to bclement-ocp/alt-ergo that referenced this issue Aug 30, 2024
This used to be impossible to do in the general case when we have only
bitlist domains, but is possible since we also have interval domains.

This implementation only supports binary distinct operators, and will
need to be revisited as part of OCamlPro#1157.
Halbaroth pushed a commit that referenced this issue Aug 30, 2024
* feat(BV): Support binary distinct on arbitrary bit-widths

This used to be impossible to do in the general case when we have only
bitlist domains, but is possible since we also have interval domains.

This implementation only supports binary distinct operators, and will
need to be revisited as part of #1157.

* Debug message instead of error
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants