Skip to main content

LAP Technologies Python SDK for the QPU-1 quantum processor — 170+ algorithms, full gate set with auto-decomposition. ECC Shor now uses Cuccaro RCA adder (~100x fewer gates).

Project description

lapq — LAP Technologies SDK for QPU-1

PyPI version Python versions License: MIT

lapq is a powerful Python SDK for the QPU-1 quantum processor, designed for both beginners and experts. It features a library of 170+ quantum algorithms across 12 categories and an automatic gate decomposition engine that handles all the math for you.

Made by SK Mahammad Saad Amin | LAP Technologies


🔑 API Access

To use this library, you need a QPU-1 API key.

Get your key here: https://qpu-1.lovable.app/api-access


📦 Installation

pip install lapq

🚀 Quick Start

Basic Usage

from lapq import QPU1

# Initialize client
qpu = QPU1("your_api_key_here")

# Run a Bell State circuit
result = qpu.circuit(2).h(0).cnot(0, 1).run()
print(f"Result: {result.bits}")  # e.g. "00" or "11"

Three Levels of Access

1. High-Level Algorithms (150+ ready-to-run)

from lapq.algorithms import bell_state, grover, vqe_molecular, shors_factorization

# Bell state
result = bell_state(qpu).run()

# Grover's search for state |5⟩ on 3 qubits
result = grover(qpu, n=3, marked=[5]).run()
print(result.bits)  # "101"

# VQE molecular simulation
result = vqe_molecular(qpu, n_qubits=4).run()

2. Mid-Level Circuit Builder (Fluent API)

result = qpu.circuit(3).h(0).crx(0, 1, 0.5).cswap(0, 1, 2).ccz(0, 1, 2).run()

3. Low-Level Raw Access (Qreg / Qiskit / OpenQASM)

# Raw Qreg
qpu.run_qreg("q = Qreg(2)\nq.H(0)\nq.CNOT(0,1)\nprint(q.measure())")

# Qiskit
qpu.run_qiskit("""
from qiskit import QuantumCircuit
qc = QuantumCircuit(2)
qc.h(0); qc.cx(0, 1); qc.measure_all()
""")

# OpenQASM
qpu.run_openqasm("""
OPENQASM 2.0;
include "qelib1.inc";
qreg q[2]; creg c[2];
h q[0]; cx q[0],q[1];
measure q -> c;
""")

🛠 Features

170+ Quantum Algorithms

Category Examples
Search & Optimization Grover, QAOA MaxCut, Amplitude Amplification, TSP
Chemistry & Simulation VQE, QPE, Trotter-Suzuki, Hubbard Model
Machine Learning QNN, QSVM, QGAN, Quantum Autoencoder
Cryptography BB84, E91, Shor's Factorization, Quantum Money
Oracle & Boolean Deutsch-Jozsa, Bernstein-Vazirani, Simon's
Transforms & Arithmetic QFT, Adder, Multiplier, Comparator, GCD
States & Communication Bell, GHZ, W, Teleportation, Superdense
Quantum Walks Discrete, Continuous, Coined, Szegedy
Benchmarking RB, XEB, Quantum Volume, Mirror
Dynamics & Lattice Heisenberg, Ising, XY Model, Floquet
ECC Shor Shor's for Elliptic Curve Cryptography (P-256, secp256k1)
Miscellaneous HHL, VQLS, Monte Carlo, Error Correction

Auto Gate Decomposition

Use high-level gates like CZ, CSWAP, CCZ, RXX, RYY, RZZ, ECR, and more — they are automatically decomposed into QPU-1 native primitives (H, X, Y, Z, S, T, Rx, Ry, Rz, CNOT, CCNOT, SWAP) with minimal CNOT count.

Batch Execution

results = qpu.batch_fast([
    qpu.circuit(2).h(0).cnot(0, 1),
    qpu.circuit(3).ghz(),
    qpu.circuit(4).qft(),
])
for r in results:
    print(r.bits)

📊 Circuit Inspection

Generate and inspect circuits without an API key:

from lapq.circuit import Circuit

c = Circuit(3, client=None)
c.h(0).cnot(0, 1).cnot(1, 2)
print(c.to_qreg())   # View Qreg source code
print(c.gate_count()) # Gate count
c.draw()              # Pretty-print circuit

📄 License

Distributed under the MIT License. See LICENSE for more information.


🔗 Links

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

lapq-1.0.6.tar.gz (60.3 kB view details)

Uploaded Source

Built Distribution

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

lapq-1.0.6-py3-none-any.whl (67.3 kB view details)

Uploaded Python 3

File details

Details for the file lapq-1.0.6.tar.gz.

File metadata

  • Download URL: lapq-1.0.6.tar.gz
  • Upload date:
  • Size: 60.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for lapq-1.0.6.tar.gz
Algorithm Hash digest
SHA256 ac3b7fdcd711e2bde125ceb682cd467b8fc57d0949dc494f82981a833d0ef54e
MD5 a0fcaa7ad5e75c6cb28d8c936db1d8fd
BLAKE2b-256 8860703c61c8296c105cc0f9e59e4d4db7e5e669f99ce4b7b90a9ece0e57e6eb

See more details on using hashes here.

File details

Details for the file lapq-1.0.6-py3-none-any.whl.

File metadata

  • Download URL: lapq-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 67.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for lapq-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8fbcaa9fa4c1d6d9440cc24cbd1d097423c615d107350394b4b7e619a5559dae
MD5 d0c08be8a5965661f29deaae58a772be
BLAKE2b-256 9b3e6119debc4b5e5e3ee598cac96dcd2a13f9aae48a6374f957594b7d899627

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