Commit Graph
94 Commits
Author SHA1 Message Date
Martin Blicha 4101c67cba Update to let inlining 2023-09-05 12:39:19 +02:00
Martin Blicha ec10f46acb Parse BMC counterexample properly 2023-09-05 12:39:19 +02:00
Martin Blicha af1acaba64 Refactor SMTLib parser to separate file 2023-09-05 12:39:19 +02:00
Martin Blicha 8c99c125c4 Add support for parsing invariants 2023-09-05 12:39:19 +02:00
Martin Blicha 3f22118bbe More checks 2023-09-05 12:39:19 +02:00
Martin Blicha 01ed412714 Stronger checks 2023-09-05 12:39:19 +02:00
Martin Blicha 0c13b7ee8f Turn asserts into solAsserts 2023-09-05 12:39:19 +02:00
Martin Blicha 5569aaee78 Fix coding style 2023-09-05 12:39:19 +02:00
Martin Blicha 4ecaa476fd Handle custom tuple sorts in a general way 2023-09-05 12:39:19 +02:00
Martin Blicha 742642ebae Use answer from second Z3 call only when solved 2023-09-05 12:39:19 +02:00
Martin Blicha 0fbeb3a69d Throw exception on unhandled cases in SMT-LIB Expression conversion 2023-09-05 12:39:19 +02:00
Martin Blicha 779db2d84f Use shared pointers, not raw pointers, for caching sorts 2023-09-05 12:39:19 +02:00
Martin Blicha b65c37029d Fix parsing array expressions from SMT-LIB proof 2023-09-05 12:39:19 +02:00
Martin Blicha d773e76704 Remove outdated FIXME 2023-09-05 12:39:19 +02:00
Martin Blicha 451b6f8ced Fix handling of structs in SMT-LIB CEX 2023-09-05 12:39:19 +02:00
Martin Blicha 9339b7074a Fix parsing of let expression to allow shadowing values 2023-09-05 12:39:19 +02:00
Martin Blicha 92689e4256 Fix code style problems 2023-09-05 12:39:19 +02:00
Martin Blicha 8ea8a1eb99 Cache sorts already in SMTLib2Interface
This allows us to ask for a sort of a sort from its string
representation parsed from an SMT-LIB solver response
2023-09-05 12:39:19 +02:00
Martin Blicha 6acbe2ec35 Towards translating proof from SMT-LIB response 2023-09-05 12:39:19 +02:00
Martin Blicha 479bb9c3de Fix missing std 2023-09-05 12:39:19 +02:00
Martin Blicha 2195b5e57a Solve UNSAT queries again with proof production enabled 2023-09-05 12:39:19 +02:00
Martin Blicha 1d60559551 Use same spacer parameters as before 2023-09-05 12:39:19 +02:00
Martin Blicha d9dc8f475e Enable resource limit for Z3 2023-09-05 12:39:19 +02:00
Martin Blicha c6f274892e Fix SMTLib2Interface 2023-09-05 12:39:19 +02:00
Martin Blicha f4b849972c Remove smtlib2 solver option 2023-09-05 12:39:17 +02:00
Martin Blicha da2f4cb100 Try to parse values only for satisfiable answer 2023-09-05 12:37:56 +02:00
Martin Blicha efb0d4253c Use callback properly in SMTLib2 interface 2023-09-05 12:37:56 +02:00
Martin Blicha cabec89872 Removing SMT portfolio 2023-09-05 12:37:56 +02:00
Martin Blicha 1e190abf6e Initial work on unified way to interact with solvers 2023-09-05 12:37:56 +02:00
Nikola Matic 62723b7534 Purge using namespace std in libsmtutil and libsolc 2023-07-12 14:09:19 +02:00
Pawel Gebal d4be1d9c2f Add --print-smt flag to output SMTChecker SMTLIB code 2023-06-16 14:04:07 +02:00
Matheus Aguiar c1720e62aa Implement missing overrides and relax smtAsserts 2023-05-09 13:20:56 -03:00
Pawel Gebal a38549dc19 Fixes handling bitwise operators for z3 model checker 2023-02-08 18:37:17 +01:00
Leo Alt 24df40de9a Allow running Eldarica from the command line 2022-11-22 21:16:45 +01:00
George Plotnikov 44a2dd864f Update CVC4::BitVector ctor call 2022-09-26 23:03:42 +02:00
Marenz f7cc29bec1 Add std:: qualifier to move() calls 2022-08-30 11:12:15 +02:00
Christian Parpart 4ae43884d0 Apply a better way to annotate unreachability to the C++ compiler. 2022-06-07 16:41:04 +02:00
Kamil Śliwak e19e6ad806 Remove empty assertion messages in a fews places 2022-06-01 20:37:48 +02:00
Kamil Śliwak 539e139555 Add explicit throws after some assertions to work around a spurious warning in GCC 12.1 2022-06-01 20:37:48 +02:00
Leo Alt 60b405aaa9 Support new z3 AST node 2022-05-12 10:50:30 +02:00
Kamil Śliwak 3c5930dd8e Put arguments in parantheses in assert macro definitions 2022-04-06 22:26:21 +02:00
Leo Alt 1d65977769 Adjust Z3Interface::fromZ3 for the extra cases 2021-10-26 11:30:30 +02:00
Leo Alt 9a87680d21 Add invariant to the solver results 2021-10-26 11:30:30 +02:00
Kamil Śliwak 7f7107405f Try out the new assertion macro variants with less arguments 2021-10-04 12:05:00 +02:00
Kamil Śliwak 0745842d46 Use BOOST_PP_OVERLOAD() to allow invoking the assertion macros without a message 2021-10-04 12:05:00 +02:00
Kamil Śliwak 4fe6aa1328 Add default messages to assertion macros 2021-10-04 12:05:00 +02:00
chriseth 1531863835 Split Common.h into Numeric.h. 2021-09-23 15:27:29 +02:00
Kamil Śliwak b3a513d3b6 SMTSolverChoice: Rewrite operator & not to modify its argument 2021-09-17 21:39:29 +02:00
Kamil Śliwak 588ec39eef SMTSolverChoice: Make more members const/noexcept 2021-09-17 21:39:29 +02:00
Leo Alt 61160aa0e7 Add constraints correlating address(this).balance and msg.value 2021-08-25 21:10:08 +02:00