14 releases (4 breaking)

Uses new Rust 2021

0.11.1 Aug 13, 2022
0.11.0 Aug 13, 2022
0.10.0 Jun 24, 2022
0.9.0 Jun 11, 2022
0.7.2 May 27, 2022

#384 in Cryptography

Download history 109/week @ 2022-06-03 87/week @ 2022-06-10 56/week @ 2022-06-17 100/week @ 2022-06-24 106/week @ 2022-07-01 170/week @ 2022-07-08 53/week @ 2022-07-15 48/week @ 2022-07-22 42/week @ 2022-07-29 141/week @ 2022-08-05 168/week @ 2022-08-12 52/week @ 2022-08-19 52/week @ 2022-08-26 49/week @ 2022-09-02 63/week @ 2022-09-09 36/week @ 2022-09-16

209 downloads per month
Used in 7 crates (2 directly)

Apache-2.0

180KB
3.5K SLoC

C++ 3.5K SLoC // 0.2% comments Rust 85 SLoC // 0.5% comments Python 3 SLoC // 0.8% comments

risc0_zkvm_circuit_sys

This crate/directory contains C++ code the implements the RISC-V arithmetic circuit.

The circuit is decribed using a C++ EDSL, which leans heavily on operator overloading. This EDSL code then produces a primitive IR, which is 'optimized' further, and results in the generation of code which both generates execution traces and also evaluates the core constraint polynomials.

The rust crate exports a single function which writes this circuit out to a C++ header file.

Dependencies

~5MB
~100K SLoC