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

Suggestion to improve implementation of IMC #299

Open
blishko opened this issue Sep 7, 2024 · 1 comment
Open

Suggestion to improve implementation of IMC #299

blishko opened this issue Sep 7, 2024 · 1 comment
Assignees
Labels
core Issue is core/algorithm and not formalism specific enhancement help wanted

Comments

@blishko
Copy link

blishko commented Sep 7, 2024

In the inner loop of IMC
Theta uses the same solver both for checking reachability and for checking fixedpoint.
Because of this, everything is popped from the solver in preparation for the next check.
This is unfortunate because the solver cannot take any advantage of the incremental nature of the checks.

I believe it would be more efficient to have two dedicated solvers.
An interpolating solver that checks reachability and a non-interpolating solver that checks fixedpoint.
The only obstacle there is that the interpolant computed by the first solver must be added to the second solver.
I don't know how difficult this is to do in Theta.
Usually, it is possible to have a single context (like a term manager) and multiple solver instances operated over the same context.

@AdamZsofi
Copy link
Member

@KlevisImeri will work on this. :)

@AdamZsofi AdamZsofi added the core Issue is core/algorithm and not formalism specific label Nov 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Issue is core/algorithm and not formalism specific enhancement help wanted
Projects
None yet
Development

No branches or pull requests

3 participants