Verifying Determinism in Ziren’s Arithmetic Core

Share on

Ziren targets a deterministic execution model: identical inputs must yield identical outputs across all circuit paths. Determinism at the chip level (e.g. ALU primitives) is a prerequisite for soundness and proof reproducibility.

We partnered with ZK auditing company Veridise to check determinism of Ziren’s core arithmetic components using Picus, their formal verification framework. Ziren is built on Plonky3; Veridise constructed a pipeline that extracts Ziren’s Plonky3 constraints, translates them to LLZK (their IR for ZK languages), and packages them for analysis in AuditHub.

Method in brief:

  • Parse Ziren’s constraint definitions (Plonky3 AIR).
  • Translates them into Picus’s internal representation via Veridise’s LLZK.
  • Run determinism checks in Picus via AuditHub for reproducible results and artifacts.

The extractor is presented at Ziren’s branch audit/picus.

Initial results:

Verification covered two ALU primitives - addition and subtraction - implemented together in Ziren’s AddSub chip. Picus confirmed both are deterministic, with checks completing in under two seconds.

What “deterministic” guarantees here:

For the same witness and public inputs, the chip enforces the same output assignment. This rules out multi-solution behavior that could undermine soundness or hinder proof reproducibility.

What’s next (collaboration roadmap):

  • Extend coverage to the full circuits(CPU, Memory, Program, MISC, Bytes etc.).
  • Automate translation for larger composite chips along Ziren’s execution pipeline.
  • Integrate determinism checks into release workflows/CI so regressions are caught pre-merge.

Artifacts and transparency:

Analysis ran through AuditHub, enabling both teams to inspect runs and outputs in a reproducible environment. As scope expands, we will continue to surface verification targets and statuses in our engineering notes and release materials.

Bottom line:

Formal verification on arithmetic building blocks is a concrete step toward a verifiably correct zkVM. This collaboration helps ensure Ziren’s low-level semantics are pinned down formally, paving the way for broader coverage.


Start building with Ziren today: https://github.com/projectzkm/ziren 

More articles
Hybrid Rollup — A Bird’s Eye View
by Ming Guo, ZKM Chief Scientist The need for speed On the blockchain timeline, Ethereum has been around for ages, in the process evolving into the most widely used network — by a mile. Still, many challenges remain. By enabling decentralized application-building, Ethereum has fueled floods of user interest in popular dApps, only to…
Hello World - May Newsletter
​​We were delighted to announce a successful $5M Pre-A funding round in November 2023, led by OKX Ventures, with support from Polygon Ventures, Crypto.com, Amber Group, Leland Ventures, Waterdrip Capital, DFG, JSquare, Contribution Capital, and Metis Foundation 🔥
Verifying Determinism in Ziren’s Arithmetic Core

Ziren targets a deterministic execution model: identical inputs must yield identical outputs across all circuit paths. Determinism at the chip level (e.g. ALU primitives) is a prerequisite for soundness and proof reproducibility.

We partnered with ZK auditing company Veridise to check determinism of Ziren’s core arithmetic components using Picus, their formal verification framework. Ziren is built on Plonky3; Veridise constructed a pipeline that extracts Ziren’s Plonky3 constraints, translates them to LLZK (their IR for ZK languages), and packages them for analysis in AuditHub.

Method in brief:

  • Parse Ziren’s constraint definitions (Plonky3 AIR).
  • Translates them into Picus’s internal representation via Veridise’s LLZK.
  • Run determinism checks in Picus via AuditHub for reproducible results and artifacts.

The extractor is presented at Ziren’s branch audit/picus.

Initial results:

Verification covered two ALU primitives - addition and subtraction - implemented together in Ziren’s AddSub chip. Picus confirmed both are deterministic, with checks completing in under two seconds.

What “deterministic” guarantees here:

For the same witness and public inputs, the chip enforces the same output assignment. This rules out multi-solution behavior that could undermine soundness or hinder proof reproducibility.

What’s next (collaboration roadmap):

  • Extend coverage to the full circuits(CPU, Memory, Program, MISC, Bytes etc.).
  • Automate translation for larger composite chips along Ziren’s execution pipeline.
  • Integrate determinism checks into release workflows/CI so regressions are caught pre-merge.

Artifacts and transparency:

Analysis ran through AuditHub, enabling both teams to inspect runs and outputs in a reproducible environment. As scope expands, we will continue to surface verification targets and statuses in our engineering notes and release materials.

Bottom line:

Formal verification on arithmetic building blocks is a concrete step toward a verifiably correct zkVM. This collaboration helps ensure Ziren’s low-level semantics are pinned down formally, paving the way for broader coverage.


Start building with Ziren today: https://github.com/projectzkm/ziren