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

kissat_set_terminate is not Implemented #10

Open
ghost opened this issue Aug 30, 2020 · 5 comments
Open

kissat_set_terminate is not Implemented #10

ghost opened this issue Aug 30, 2020 · 5 comments
Labels
enhancement New feature or request

Comments

@ghost
Copy link

ghost commented Aug 30, 2020

Declaration is there but implementation is not.

@arminbiere arminbiere changed the title kissat_terminate is not Implemented kissat_set_terminate is not Implemented Aug 31, 2020
@arminbiere
Copy link
Owner

As we discussed per EMail, the asynchronous 'kissat_terminate' function is implemented (and heavily tested actually), but the function 'kissat_set_terminate' which uses more synchronous call-backs following the IPASIR interface is not implemented yet. It should not be difficult to do so though and I will work on it while making the solver incremental and thus supporting IPASIR completely.

@arminbiere arminbiere added the enhancement New feature or request label Aug 31, 2020
@arminbiere
Copy link
Owner

In the latest release it is implemented but the call back is actually not executed yet, thus the effect is zero at this point. So I will keep the issue and it will need to be addressed during further work on incremental solving.

@arminbiere
Copy link
Owner

The function now exists in the sc2022 variants (so linking works), but it does not trigger checking, i.e., calling the termination function yet. Again, I will work on this if I find time to extend IPASIR support.

@amatuag
Copy link

amatuag commented Oct 20, 2023

Hi Armin,

Is there a Kissat equivalent of Cadical's terminator which is checked periodically for termination or is kissat_set_terminate the synchronous one which is yet to be implemented ?

@arminbiere
Copy link
Owner

There is this 'set_terminate' exactly for this purpose. As Kissat testing is driven by line coverage there is even a complex testing method for all the places termination can be triggered (see testterminate.c and terminate.[ch])

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants