sp1-zorch
A lean SP1 prover built on zorch's
scheme-agnostic SNARK building blocks. zorch provides the reusable pieces
(hashing, Merkle commitment, sumcheck, fold, …); sp1-zorch adds only the
SP1-specific glue on top — domain separator, verify codes, heap proof layout,
and the FFI byte-match against the SP1 reference prover.
frx ──▶ zorch (scheme-/zkVM-agnostic blocks) ──▶ sp1-zorch (SP1 glue)
Status
The full SP1 shard proving scheme runs on zorch blocks: a ProveChain of
trace commit → LogUp-GKR → zerocheck → jagged PCS, byte-matching SP1's reference
prover end to end (its sp1_verify_shard accepts the assembled proof). See
docs/architecture.md.
Installation
Python 3.11 on Linux x86_64 only.
CPU
pip install sp1-zorch
GPU (CUDA 12)
pip install sp1-zorch 'frx[cuda12]' \
--extra-index-url https://fractalyze.github.io/pypi/simple/
The extra index carries the CUDA plugin wheels, which are too large for PyPI's per-file limit. It is not needed for the CPU tier.
Verify
python -c "import frx, sp1_zorch; print(frx.devices()); print(sp1_zorch.__version__)"
[CpuDevice(id=0)] means the CPU tier; a CUDA install prints the GPU devices.
Development
sp1-zorch is pure Python on frx (Field, Ring Accelerated), run
against the Fractalyze XLA GPU plugin, built with Bazel (bzlmod). It consumes
zorch as a Bazel module, pinned in MODULE.bazel via
git_override for reproducible builds.
python3.11 -m venv .venv && . .venv/bin/activate
pip install -r requirements.in \
--extra-index-url https://fractalyze.github.io/pypi/simple/
Dev against a local zorch checkout instead of the pinned commit — create
.bazelrc.user (gitignored):
common --override_module=zorch=/abs/path/to/your/zorch/checkout
Run the tests (CPU is the default for correctness; the FFI byte-match against the SP1 reference needs a CUDA GPU):
bazel test //...
Documentation
See docs/ — the architecture
(the shard proof as a ProveChain of Stages, each running inner Rounds, threaded
by a Bridge, plus the SP1 dump vocabulary), the
development guide (environment, testing, and the
per-stage SP1 baseline), and the conventions.
License
Licensed under the Apache License, Version 2.0 (see LICENSE).
Metadata
Release files for sp1-zorch 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sp1_zorch-0.1.2.tar.gz | 183.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sp1_zorch-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 402.4 kB
Release files / sp1_zorch-0.1.2.tar.gz
| Download URL | sp1_zorch-0.1.2.tar.gz |
|---|---|
| Size | 183.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7a26dd5cb4f733047d89881ef780f988a328cbcaf73ffda86c261141e17fa7f8
|
|
BLAKE2b-256 checksum How to use checksums |
9d221653367db5a9b078ac87aa34ce3a7ca162a08dce3bb4f1488c52b0f28a31
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 26, 2026.
Transparency logRelease files / sp1_zorch-0.1.2-py3-none-any.whl
| Download URL | sp1_zorch-0.1.2-py3-none-any.whl |
|---|---|
| Size | 218.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
319c4c780a53e28332ea9bf51ad888218943c4a0027e8f8cbb20301b0fa69525
|
|
BLAKE2b-256 checksum How to use checksums |
088dff21ee114e2fed5a79bd7dfbb469383e7d02e831b8d3d32d95a9f032c8f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 26, 2026.
Transparency log