Spartan VM project
Noir code -> R1CS and witness
We currently need a custom Noir branch located in the shared parent folder (see Cargo.toml to see where exactly)
RUST_LOG=info RUST_BACKTRACE=1 cargo run --release -- --root=noir_examples/power --public-witness 1 2 3 5
-
--root PATH: The root directory of the Noir project to run.
- Example:
--root noir_examples/power
- Example:
-
--public-witness ...: Zero or more public witness values. Values should be field elements parseable for BN254 (e.g., decimal integers)
- Example:
--public-witness 1 2 3 5
- Example:
- --draw-cfg: Generate CFG and call graph images to
spartan_vm_debug
.- Requires Graphviz (
dot
) installed and available on PATH.
- Requires Graphviz (
Running the VM creates a folder in the provided root path, called spartan_vm_debug
.
It generates a folder structure of the executed passes and creates the diagrams of SSA, which allows for easier debugging.
Important! A prerequisite for running this debug mode is to have Graphviz installed.
On macOS: brew install graphviz
.
RUST_LOG=info RUST_BACKTRACE=1 cargo run --release -- --root=noir_examples/power --public-witness 1 2 3 5 --draw-graphs