Picus proves your ZK circuits are deterministic

Automated formal verification detects underconstrained bugs with mathematical certainty. Prove determinism or get concrete counterexamples showing exactly how constraints fail.

Automated formal verification with mathematical certainty

Underconstrained Detection

Identifies circuits with missing or incomplete constraints. Finds areas where multiple witness values satisfy the same constraints

Concrete Counterexample

Every bug comes with exact input/output pairs that break determinism. No guesswork required. Reproduce issues immediately with concrete witness values.

Formal Determinism Proofs

Proves circuits are deterministic with mathematical certainty. Guarantees the same inputs always produce the same outputs. Verification completes in minutes, not weeks.

CI/CD Friendly

Runs on Foundry projects with minimal setup. Integrates into GitHub Actions. Get vulnerability reports on every pull request.

Symbolic analysis and solver-based reasoning

Symbolic Analysis

Analyzes constraint systems defined over finite fields. Checks if polynomial equations encode deterministic computation. Verifies that constraints uniquely determine outputs from inputs.

Solver-Based Reasoning

Combines lightweight static analysis with solver-based reasoning. Proves absence of underconstrained bugs or generates counterexamples.

Mathematical Guarantees

Formal verification provides certainty, not probability. When Picus says a circuit is deterministic, it’s mathematically proven. No false negatives for verified properties.

Picus in Action

Essential for production ZK development

Pre-Audit Verification

Catch critical bugs before external audits. Reduce audit findings and costs. Demonstrate thorough verification to auditors.

Continuous Integration

Integrate Picus into CI/CD workflows. Catch regressions immediately when circuits change. Verification completes in a few minutes for each circuit.

Production Assurance

Prove security properties before mainnet deployment. Mathematical certainty for billion-dollar protocols. No probabilistic guarantees, only formal proofs.

Comprehensive ZK security

Picus

Formal Verification

Proves determinism with mathematical certainty. Detects underconstrained bugs. Guarantees same inputs produce same outputs.

ZK Vanguard

Static Analysis

Detects a wide range of ZK vulnerabilities. Private input leakage. Unused signals. Non-deterministic witness code. Overflow errors.

Together, Picus and ZK Vanguard provide complete coverage of your ZK circuit security

Frequently AskedQuestions

How long does Picus take to verify a circuit?

Most circuits verify in under 10 minutes. Complex circuits may take longer depending on constraint count. Fast enough for continuous integration workflows.

Picus uses formal verification, providing mathematical guarantees. For verified circuits, underconstrained bugs are provably absent. When Picus reports a circuit as deterministic, that determination is certain.

Picus supports any language that can be translated to LLZK. Currently that includes Circom, Halo2, Zirgen and Plonky3

Counterexamples show exact witness values that violate determinism. Add constraints to eliminate the non-deterministic behavior. Re-run Picus to verify the fix. Counterexamples help you find where constraints are missing.

Run Picus via AuditHub platform or integrate into CI/CD pipelines. Analysis runs automatically on circuit changes. Results integrate with your existing tooling.

Testing checks specific inputs. Formal verification proves properties hold for all inputs. Testing can miss edge cases. Formal verification provides mathematical certainty.

Prove your circuits are secure

Mathematical guarantees for ZK circuit determinism. Verification in minutes.

Get started in 30 minutes / No setup required / See results immediately