This repository hosts Nix derivations for program synthesis-related tools. Its aim is to consolidate the efforts of individuals who set up and run these tools by leveraging the reproducibility power of Nix. Contributions are welcomed!
We provide template.nix
, a minimal Nix flake template that defines a development shell environment with z3
, cvc5
, and Sketch
.
- Initialize Your Project: Copy the
template.nix
file into your project's root directory and rename it toflake.nix
- Customize Your Environment/Package: Change your devShell environment or define your packages
- Launch/Build: Use
nix develop
to enter the default devShell, or usenix build
to build your package
- EUSolver: https://github.com/mistzzt/EUSolver
- Synduce: https://github.com/mistzzt/Synduce
- parsynt: https://github.com/mistzzt/parsynt
- Opera: https://github.com/utopia-group/Opera
If you're working with or developing a tool that you believe should be listed here, please reach out.