i have been using ocaml api of z3 version 4.0 last year or so, bitvector theory. need extract unsat cores after doing z3.solver_check , unfortunately version 4 doesn't have ability. can rewrite use assumptions stand each bitvector equation in formula , unsat core being critical part of code, might affect overall performance.
is there way of unsat core without going through assumptions version 4? long term solution of course move latest version if there less disruptive solution nice. instance, there way extract unsat core proof of unsat (returned z3.solver_get_proof)?
thanks!
if use assert_and_track function solver module, get_unsat_core, in solver module, returns set of tracking literals corresponding tracked assertions. there example of using assert_and_track c# api in method unsatcoreandproofexample2, , in java (https://github.com/z3prover/z3/blob/master/examples/java/javaexample.java). there no corresponding example in ml sample, translation ocaml should not complicated.
Comments
Post a Comment