Skip to main content

PRISM-Q (Python)

Python bindings for PRISM-Q, a performance-first quantum circuit simulator written in Rust.

Install

pip install prism-q

Quick start

import prism_q

# Build a Bell state and run it.
circuit = prism_q.CircuitBuilder(2).h(0).cx(0, 1).build()
outcome = prism_q.simulate(circuit).seed(42).run()
print(outcome.probabilities)        # array([0.5, 0., 0., 0.5])

# Parse OpenQASM and sample shots.
qasm = """
OPENQASM 3.0;
qubit[2] q;
bit[2] c;
h q[0];
cx q[0], q[1];
c = measure q;
"""
result = prism_q.simulate(prism_q.parse_qasm(qasm)).seed(7).shots(1000)
print(result.counts())              # {'00': ~500, '11': ~500}

# Exact statevector as a NumPy array.
sv = prism_q.simulate(prism_q.circuits.ghz(3)).seed(1).state_vector()
print(sv.dtype, sv.shape)           # complex128 (8,)

Bit ordering

Count keys and measurement bit indices are LSB-first: in a bitstring key, the leftmost character is classical bit 0, and q[0] is the least-significant qubit. This is reversed relative to Qiskit. For example, the state where only q[0] is set reads as "10...", not "...01".

Features

  • Fluent CircuitBuilder and OpenQASM 3.0 parsing.
  • Reusable circuit generators (prism_q.circuits): QFT, GHZ, QAOA, hardware-efficient ansatz, quantum volume, and more.
  • Backend selection via BackendKind (statevector, stabilizer, sparse, MPS, Pauli propagation, ...).
  • Noise models (NoiseModel, NoiseChannel) for shot sampling.
  • Native QEC programs (QecProgram) with detector and observable sampling.
  • NumPy output for probabilities, statevectors, and QEC bit matrices.

License

MIT OR Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prism_q-0.29.0.tar.gz (1.7 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

prism_q-0.29.0-cp311-abi3-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.11+Windows x86-64

prism_q-0.29.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.17+ x86-64

prism_q-0.29.0-cp311-abi3-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

File details

Details for the file prism_q-0.29.0.tar.gz.

File metadata

  • Download URL: prism_q-0.29.0.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for prism_q-0.29.0.tar.gz
Algorithm Hash digest
SHA256 4dff769637caf2202d45765bd89c0556576ff2f933d3406cf99df8500b715fda
MD5 e14f7fa9e40e01b3b461b2d6a398f439
BLAKE2b-256 333b731b985cb681f7adf81b296a292423a182d6fb594ceb9ada3314d7cfc738

See more details on using hashes here.

Provenance

The following attestation bundles were made for prism_q-0.29.0.tar.gz:

Publisher: python.yml on AbeCoull/prism-q

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file prism_q-0.29.0-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: prism_q-0.29.0-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for prism_q-0.29.0-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 4425db4436007cebfcd9fe065070070f5b61a639b5e8f831bbf9527d5e73d31b
MD5 f78f924379d441be9609c8b5d3baae82
BLAKE2b-256 0d881261709b3a1b86365d372aeb0e2afa7e6f1f7eae641764051ae178afcd75

See more details on using hashes here.

Provenance

The following attestation bundles were made for prism_q-0.29.0-cp311-abi3-win_amd64.whl:

Publisher: python.yml on AbeCoull/prism-q

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file prism_q-0.29.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for prism_q-0.29.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0bf5aaecb1238dbeb5430447cc577b041ff6ba1984976c4635886d13e5550cb6
MD5 2ac0be768283db0bf1bc130998ae68a2
BLAKE2b-256 88397029fae54da6c4303ac636957da2f47b4e308aa241f3b2a7772fb7af85c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for prism_q-0.29.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: python.yml on AbeCoull/prism-q

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file prism_q-0.29.0-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for prism_q-0.29.0-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00d94c0c181ce897d4b2e1e255f1505374cd6630583516cc3556ab09069d1e5c
MD5 4620b297f9197d3ca193358126b962bf
BLAKE2b-256 ef4c5fdeb7acb1b6728bcfabe0f85fed78cf182a5b608f83544a616736114119

See more details on using hashes here.

Provenance

The following attestation bundles were made for prism_q-0.29.0-cp311-abi3-macosx_11_0_arm64.whl:

Publisher: python.yml on AbeCoull/prism-q

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.31.0

4 files

0.30.0

4 files

This release

0.29.0 This release

4 files

0.28.0

4 files

0.27.0

4 files

0.26.0

4 files

0.25.0

4 files

0.24.0

4 files

0.23.0

4 files

0.22.1

4 files

0.22.0

4 files

0.21.1

4 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page