mirror of
https://github.com/circify/circ.git
synced 2026-01-10 06:08:02 -05:00
6c896af58fa198eac39552e31a14c89b30c935ac
CirC: The Circuit Compiler
This repository holds an in-progress rewrite of CirC.
CirC is a compiler infrastructure which supports compilation from high-level (stateful, uniform) languages to (existentially quantified) circuits.
Requirements
Developing CirC requires the CVC4 SMT solver, which is used in some tests. Its
binary must be on your path. On Arch Linux and Ubuntu you can install the
cvc4 package from official repositories.
Todo List
- draft circify
- Intern variable names
- Optimize R1CS
- Inlining optimization
- ZoKrates FE
- C FE
- Tune optimizer for ouput, speed, and memory usage.
- More SMT solver support
- More eval support
Description
Languages
Rust
95.8%
Shell
2.1%
Python
2%