-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Dear Ryan,
thanks for contacting us!
Am 06.06.2018 um 04:28 schrieb
ryanw...@gmail.com:
> I'm using CPAchecker (the version in "trunk" branch) to verify some
> program with float numbers and assertions.
>
> Currently I'm using "-predicateAnalysis" as configuration and
> "-setprop solver.solver=z3" to set z3 as the backend. But I always
> get
>
> Error: Refinement failed: Interpolation failed (theory not
> supported by interpolation or bad proof)
This is a problem of Z3, its interpolation support has several issues.
(And actually, in current Z3 the interpolation was removed completely.)
> switching the backend to MATHSAT5 doesn't help, the error becomes
> "eager fp solver does not support proof generation".
MathSAT unfortunately does not support interpolation that relies on
facts about floats.
So currently there is no real solution for interpolation for floats.
We are implementing a different refinement scheme in CPAchecker that
does not rely on interpolation, but it is not finished yet.
Apart from approximating floats with rationals,
you can also try to verify the program with other approaches that do
not need this kind of interpolation, for example with k-induction
(configuration is "-kInduction") or value analysis (configuration is
"-valueAnalysis").
> From the post Verifying bubble sort
> <
https://groups.google.com/forum/#!topic/cpachecker-users/aU8hunUxbpk>
> I see I can use "-predicateAnalysis-linear" to approximate the
> float numbers, but if I set that the verification result is always
> FALSE even if I remove all the assertions in the source file.
This is something I cannot reproduce. If I remove the asserts, I do
not get FALSE.
Please send us the full command line and the exact source you are using.
Greetings, Philipp
- --
Philipp Wendler
Software and Computational Systems Lab
LMU Munich, Germany
Oettingenstr. 67 Raum F008 - Tel.: 089/2180-9181
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBCAAGBQJbF2huAAoJEGLA94wxqd6Mo7AQAJJRlrJSCSL9PbaG+P6RAe+n
ZxZnlRoDu6grZIDsZd1UX3eccgi6GFUJxksA8YfY09Xwzeq7ZKyVz2Ab6IMVCgWY
AILj/wLl34fIGVtPXeN1GvEVt3rWboEO/l4A/ncQ/farVyPuha551B19C+8iATOO
Aj8aV4pVf3Bna/cNZ2NhDIQEVZQ2/SmccAMtLL2tGqzJX+bLZn/njWhxlRTiaHcc
M+sSnPO1/AplS29KYMH9tvsevN8HlW3D/CsqKm3rB3QnT+mCSTnP0cOhAwuz3eku
MOuxHB7/nc1ZllqBEraK7Q7dZ6SL/KF2BeajtDt6Ow8cMtTVCtK0RvC/wTQLgW2X
lzkZr6te4sMqBcQMsP6BBdHvLgkXv6LUxi4dWjhpsbwvXv3Ie/zZLjld5tECY8S0
tIGdSgSeZwRR9YEfCAn2MeT30mcDGeVtAwcjhPv4ZbQKoTSFZ40yggMPMzAutVdy
LXY7RzIZy4yk6LctYqWmDVCrf+DnMMXzwSjTBL7QIJXH9kvoCrWmYvJHXSfFixUo
E+j5Z5HmrnQZVzVkGZTuepZI5DUGCK/iPAzBATV4mp3or2oVxesTCfp0azeJiCSy
O6gHAfIoYUqJ1i61B1I4Qtbb3ro96GnoUcDUT6ekcnbNEzgue/SdG5cNgf1nsJ6Q
zYAI7ypkmEr0Wq0uFjzM
=jRpV
-----END PGP SIGNATURE-----