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

Implement any-length BitVectors #335

Draft
wants to merge 8 commits into
base: pure-z3
Choose a base branch
from
Draft

Implement any-length BitVectors #335

wants to merge 8 commits into from

Conversation

shingarov
Copy link
Owner

This PR attempts to address #334. The idea is to have a pre-sort standing somewhere between actual bitvector sorts (of known length) and type variables. At Sprite-level elaboration, unification will "assign" concrete lengths to them (similar to how concrete sorts are assigned to type variables), so the VC level does not see them at all (in other words, the whole concept just does not exist in Fixpoint).

@shingarov shingarov marked this pull request as draft July 16, 2024 11:15
Caveat programmator: I am using the names #with: and #v, trying to
avoid #value: and #value because along the progress of MachineArithmetic
I increasingly feel the fake-polymorphism with function-application
will become extremely dangerous.
Convenient notation consistent with Z3.
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.

1 participant