Closed btwael closed 3 years ago
Hi @btwael , thanks for reporting this!
We based our get-interpolants
command on that proposal, but we did not cover all its aspects.
Makes sense to improve our compliance to the proposal.
Hi @btwael, thanks again for pointing this out. Hopefully now that #215 is merged, the issue is fixed.
Hi @blishko, hi @aehyvari, Thank you for your fast reply and solution.
In deed, your commit solves the problem when outputing a sequence of interpolants as I showed in the example above. However for binary interpolation, the output is still not respecting the proposal.
For binary interpolation, the solver is supposed to output one interpolant I1
as follow:
(I1)
opensmt is printing
I1
To be more concrete, in one given exemple, opensmt
outputs:
(not (<= 0 (+ (* -1 x) y)))
while we expected:
((not (<= 0 (+ (* -1 x) y))))
Thank you very much.
@btwael hopefully it now works as the standard dictates. Let me know if there are other problems!
Perfect, thank you very much, this works as supposed.
Seems resolved to everyone's satisfaction.
The description of
get-interpolants
command is given in this proposal. Whileopensmt
respects most of it, it violates how result (interpolants) must be shown.In the standard proposal, if
get-interpolants
must produce two interpolantsI1
andI2
(I1
andI2
are formulas), they are printed as follow:opensmt
prints instead the following: