
Submit OpenQASM. Receive exact Pauli expectation values bound to your circuit by a cryptographically signed receipt, verifiable offline.
↓ Or read onThe O(2ᴺ) memory wall constrains general state-vector simulation. Past roughly 30 qubits, the tensor product of amplitudes overflows any reasonable hardware budget.
Vitnis Verifier computes Pauli expectations directly via observable-space evolution rather than amplitude evolution, sidestepping the 2ᴺ memory wall for circuits within its documented envelope. The result: deterministic, machine-precision quantum verification at qubit counts where state-vector simulators cannot run.
No stochastic approximations. Exact mathematics, within explicit scope.
Three properties distinguish what comes back from a Vitnis verification:
Machine-precision Pauli expectation values within the documented envelope. No sampling, no shot noise, no bond-dimension truncation, no statistical estimation.
Every result is an ECDSA-P256 signed JSON receipt binding the circuit hash, observables, expectation values, and metadata. Verify the signature client-side against the published public key with no Vitnis roundtrip required.
Your QASM source is parsed, hashed, and dropped from memory. Only a one-way SHA-256 hash of the normalised circuit persists. We cannot reconstruct what you computed; you can prove a receipt is yours by re-hashing your local QASM and matching.
Different simulators are built for different regimes. Vitnis doesn't replace any of them — it fills a specific cell none of them serve.
H, CNOT, S, and Pauli gates, Stim is faster and free.Vitnis sits in the cell these don't address: deterministic, exact Pauli expectations for circuits with non-Clifford 1-qubit rotations at N up to 124, with a cryptographically signed receipt any third party can verify offline.
We don't compete with Stim on Clifford workloads or with Aer on arbitrary small-N circuits. We provide the trust artifact those tools don't.
Exact Pauli expectation values validated to N = 124 qubits for structured circuits — beyond the classical state-vector limit. Gate set: single-qubit gates including non-Clifford rotations, plus 2-qubit Clifford gates.
Static OpenQASM 2.0 and 3.0 parsing, with circuit evaluation in observable space rather than state space. Dynamic features — measurements, classical control, loops, user-defined gates — are not in the v1 envelope and receive a structured parse refusal.
Lightweight circuits run synchronously and return signed receipts inline for CI/CD pipelines. Heavier circuits route to async tiers automatically with transparent compute-cost previews.
Inputs outside the documented envelope receive a structured refusal before compute begins — never a silently wrong answer. Partial verdicts and actionable refusal reasons make the contract predictable.
Verifying a 5-qubit p=1 QAOA circuit on a line graph against five Pauli observables. Captured from a live Verifier session via the MCP tool interface.
>>> vitnis_verify_circuit(
... qasm=open("qaoa_p1_line5.qasm").read(),
... paulis=["ZIZII", "IZIZI", "IIZIZ", "ZIIIZ", "IIIII"],
... )
[vitnis] Validating circuit scope...
[vitnis] Routing: sync tier (est. 7.3s)
[vitnis] Computing expectations...
[vitnis] Signing receipt...
// receipt shape — v1.0 GA; signature and hash abbreviated
{
"verdict": "VERIFIED",
"circuit_hash": "199638d319f7…effad87b6f56b8",
"pauli_results": [
{"observable": "ZIZII", "expectation": 0.11431, "verdict": "VERIFIED"},
{"observable": "IZIZI", "expectation": 0.07964, "verdict": "VERIFIED"},
{"observable": "IIZIZ", "expectation": 0.11431, "verdict": "VERIFIED"},
{"observable": "ZIIIZ", "expectation": 0.00000, "verdict": "VERIFIED"},
{"observable": "IIIII", "expectation": 1.00000, "verdict": "VERIFIED"}
],
"metrics": {
"estimated_seconds": 7.312,
"actual_compute_ms": 4.6,
"routing_tier": "SYNC",
"gate_count": 22,
"non_clifford_gate_count": 9
},
"signature_algorithm": "ECDSA-P256-SHA256-DER",
"signature": "MEQCIDdW3…QtkAkx9wQ=="
}Two physics signatures visible in the output: the reflection symmetry of the chain (ZIZII and IIZIZ agree to full precision because they're mirror-image observables), and the exact-zero gap-4 correlation (ZIIIZ is exactly 0 at p=1 because the lightcones of qubits 0 and 4 don't connect). A noisy or approximate simulator would not reproduce these identities exactly.
Receipt schema shown reflects the v1.0 GA response shape. The signature (96-char base64 ECDSA-P256 DER) and circuit hash (64-char hex SHA-256) are abbreviated for readability — real receipts carry these fields at full length.
The receipt above is a signed JSON object. You verify it with the published public key — no network call to Vitnis, no dependency at verification time. The check below runs entirely in your browser using the Web Crypto API.
Public key: /.well-known/signing-key.pem. Receipts remain verifiable indefinitely.
Vitnis Verifier is currently in closed beta, validated against public benchmark circuits and being prepared for integration with quantum CI/CD pipelines and AI agent workflows.
Public API access opens as we scale the asynchronous cloud infrastructure and publish full envelope documentation. Pricing will be set from observed beta usage rather than announced upfront.
Three emails, no marketing: when the verifier opens to your tier, when envelope documentation is published, and once when pricing is set.