Skip to main content

Picus (Circom)

Picu (Circom) is a legacy tool to determine if a Circom circuit is underconstrained or not. Picus (Circom) takes as input either a .circom file or a .r1cs file. The tool then returns one of the following status

  • safe (exit code 8): the circuit is guaranteed to not be underconstrained.
  • unknown (exit code 0): the tool can't make any guarantee, but also can't find any counterexample.
  • unsafe (exit code 9): the circuit is underconstrained. In this case, Picus (Circom) can additional output two witness files (.wtns) as counterexamples.

Picus (Circom) is based on a research paper Automated Detection of Under-Constrained Circuits in Zero-Knowledge Proofs (PLDI 2023).

Getting Started

For instructions on how to get started with running Picus (Circom), checkout the guide here.