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.1.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.1-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ariquantum-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 a572ef8f60754bda84c59e8f4d2f80ec35a75cfb8b6cfcb39f517eaaea023a2c
MD5 cd3d209b7339db6748787097875cad48
BLAKE2b-256 e29bd7c86d71fb35bf80317bcb3ea473b7eeb3c95d58b4f590454cd6f7eb13ad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ariquantum-0.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3e8eab39cae41921c6f15b8c1ee0fe02146d584602d09ae404d0e2989ca062b5
MD5 084a4662cc2e791a7b5cbc5a4431bbf0
BLAKE2b-256 228fd348c8d2926522e50c440d9a15f73b7e8cf7459b23a14be43d4b3fa4d070

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