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

Extended quantifiers refactor #1

Merged
merged 20 commits into from
Feb 26, 2024
Merged

Extended quantifiers refactor #1

merged 20 commits into from
Feb 26, 2024

Conversation

zafer-esen
Copy link
Owner

  • Refactors whole ghost variable implementation so that new ghost variables can easily be added and initialized.
  • Extended quantifier theory is made abstract, with two concrete subclasses.
  • New instrumentation operator class that largely reflects the definition in the paper.
  • Added product instrumentation operator.

Support for multiple ghost variable ranges is dropped for simplicity.

zafer-esen and others added 20 commits January 4, 2024 13:36
The idea is to declare an InstrumentationOperator rather than
ExtendedQuantifier. InstrumentationOperator closely resembles the
instrumentation operators given in the paper, and abstracts away
from implementation details and CHCs.
ClauseInstrumenter currently does not deal with alien terms.
It also needs to be tested. InstrumentationOperator currently
also supports only a single set of ghost variables.
…st variable adder and initializer, but remaining parts are WIP.
Also adds two examples, one of which uses alien terms.
- Ghost variables were not tracking the right terms - fixed.
- Alien terms are WIP - but split Boolean instrumentation operator
  from the general one encoding max/min/sum (which does not need
  to support alien terms).
A new AbstractExtendedQuantifier theory is added. This simplifies
the code for subclasses. There was also conditional
functionality, which is now split into separate classes.
@zafer-esen zafer-esen merged commit 22a712e into master Feb 26, 2024
1 check passed
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.

2 participants