mmcloughlin / ec3

Elliptic Curve Cryptography Compiler: an incomplete experiment in code-generation for elliptic curves in Go
BSD 3-Clause "New" or "Revised" License
56 stars 6 forks source link

z3 bindings #99

Closed mmcloughlin closed 4 years ago

mmcloughlin commented 4 years ago

In support of #96 we need to be able to use the z3 library from ec3 via cgo.

mmcloughlin commented 4 years ago

Existing z3 bindings in Go:

Useful C API examples: https://github.com/Z3Prover/z3/blob/71d68b8fe082b5efb8cf9990e7275b3b97acbb62/examples/c/test_capi.c

mmcloughlin commented 4 years ago

The version of z3 provided by Ubuntu is too old, and there doesn't seem to be a custom apt repository with newer versions. Building a docker container for the build/development environment might be easier.

mmcloughlin commented 4 years ago

CI pipeline appears to be working on the custom image:

https://circleci.com/workflow-run/25bc1478-719c-4ac5-a9b8-cb0e6baf0df4