Skip to main content

Simple quantum computing simulation library

Project description

AriQuantum ๐ŸŒŒ

A simple quantum computing simulation library with an intuitive interface.
Perfect for students and beginners in quantum computing โ€” no complex dependencies or noise models, just core operations and visualization.


๐Ÿš€ Installation

Requires Python 3.9+ and numpy:

pip install ariquantum

๐Ÿงช Quick Start

1. Working with individual qubits

from ariquantum.qubit import Qubit

# Create qubits in different initial states
q0 = Qubit('0')
q_plus = Qubit('+')

# Display states in Dirac bra-ket notation
print(q0.as_bracket_string())     # |0โŸฉ
print(q_plus.as_bracket_string()) # 0.70711|0โŸฉ + 0.70711|1โŸฉ

2. Quantum circuits and visualization

from ariquantum.quantum_register import QuantumRegister

qr = QuantumRegister(2)  # 2-qubit register

# Apply gates: H on qubit 0, CX between 0 and 1
qr.h(0)
qr.cx(0, 1)

# Display state and circuit diagram
print(qr.as_bracket_string())
# 0.7071|00โŸฉ + 0.7071|11โŸฉ

qr.draw_circuit()
#       โ”Œโ”€โ”€โ”€โ”       
# q0 : โ”€โ”‚ H โ”‚โ”€โ”€โ”€โ—โ”€โ”€โ”€ :
#       โ””โ”€โ”€โ”€โ”˜   โ”‚
#             โ”Œโ”€โ”ดโ”€โ”
# q1 : โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚ X โ”‚โ”€ :
#             โ””โ”€โ”€โ”€โ”˜

3. Measurements

qr.measure(qubits=[0, 1])  # Deferred measurement
print(qr.get_counts(shots=100))
# Example output: {'11': 53, '00': 47}

โœจ Key Features

  • Flexible control: Manage individual qubits or full quantum registers.
  • Circuit visualization: Auto-generated ASCII diagrams of quantum circuits.
  • Bra-ket notation: Human-readable state representation (e.g., 0.7|00โŸฉ + 0.7|11โŸฉ).
  • Measurements: Support for deferred execution with customizable shot counts.

๐Ÿ“‚ Project Structure

ariquantum/
โ”œโ”€โ”€ __init__.py
โ”œโ”€โ”€ build_operator.py    # Building operators for multi-qubit systems
โ”œโ”€โ”€ exceptions.py        # Quantum-specific error handling
โ”œโ”€โ”€ helpers.py           # Utility functions
โ”œโ”€โ”€ quantum_register.py  # Core: QuantumRegister class for state management
โ”œโ”€โ”€ qubit.py             # Single-qubit operations and state handling
โ””โ”€โ”€ visualization.py     # State/circuit visualization tools

โš–๏ธ License

Distributed under the MIT License.


โ“ Support

For questions or feedback:

๐Ÿ‡ท๐Ÿ‡บ ะ ัƒััะบะฐั ะฒะตั€ัะธั: README_RU.md

Project details


Download files

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

Source Distribution

ariquantum-0.1.2.tar.gz (21.5 kB view details)

Uploaded Source

Built Distribution

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

ariquantum-0.1.2-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file ariquantum-0.1.2.tar.gz.

File metadata

  • Download URL: ariquantum-0.1.2.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for ariquantum-0.1.2.tar.gz
Algorithm Hash digest
SHA256 de768596f1f77bcf11109f8117278f5cfe23f2462d9efff089d841ddbaeaa920
MD5 11e5d3bb633bf4e68371df11513aad5d
BLAKE2b-256 69ff64f93642ecd14dc0beadf4dcd3e0636aa5e3104b49c9336f56de5d7c09df

See more details on using hashes here.

File details

Details for the file ariquantum-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: ariquantum-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for ariquantum-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2ec50aad8eed24619f5de9891ac5f9aeb9ca9d3d7cc38e0b703bf6cfcbc2fad6
MD5 6f6272842e8b6a2e663fab6739302ada
BLAKE2b-256 39c559958f8bde382cc63161eb5f268ceeeb178f70784f686bd0018a35824d66

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page