Calling Z3 as black box from Ocaml

I would like to get access to the quantifier elimination tactic of Z3 in Ocaml, in order to avoiding implementing all the validity and quantifier elimination methods I need.

To do so, I would like to know how to call a Z3 API (for instance, Z3 from Python as a black box) from Ocaml.

Can anyone help?

PS: Would this activity be called multi-paradigm programming? I ask this in order to find more info about similar issues in the future.

>Solution :

z3 already comes with O’Caml bindings:

If the API exposed isn’t enough to do what you want, you should really ask them to expose it through the O’Caml API. I think going through O’Caml-Python-Z3 would be really problematic as you’d have to juggle both layers.

Leave a Reply