I am trying to use the function Z3_benchmark_to_smtlib_string(). Here are the arguments I am using:
Z3_benchmark_to_smtlib_string(
ctx, /* this one is valid */
"test", /* this one is random, I don't understand it */
"QF_UFBV", /* I got this name from the smtlib website, valid ? */
"sat", /* not sure about this one either */
NULL, /* not sure about this one either */
nb_assumptions, /* should be ok */
assumptions, /* should be ok too */
NULL); /* not sure about this one, is this mandatory ? */
Any help would be welcome.
In parallel, I am using displaying my assumptions on the fly, using:
Z3_set_ast_print_mode(ctx,Z3_PRINT_SMTLIB2_COMPLIANT);
en get strange characters like : ?x21, ?x24, ?x37, (see below). Any hint to solve this issue ?
Thanks in advance,
A.G.
(let ((?x21 (bvand (_ bv582 32) (ite (= ((_ sign_extend 24) (_ bv98 8)) ((_ sign_extend 24) |Mem5[8]|)) (_ bv64 32) (_ bv0 32))))) (let ((?x24 (bvand ?x21 (ite (bvsgt ((_ sign_extend 24) (_ bv98 8)) ((_ sign_extend 24) |Mem5[8]|)) (_ bv128 32) (_ bv0 32))))) (let ((?x37 (bvand ?x24 (ite (= ((_ sign_extend 24) (_ bv97 8)) ((_ sign_extend 24) |Mem6[8]|)) (_ bv64 32) (_ bv0 32))))) (bvand ?x37 (ite (bvsgt ((_ sign_extend 24) (_ bv97 8)) ((_ sign_extend 24) |Mem6[8]|)) (_ bv128 32) (_ bv0 32))))))