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.5.tar.gz (60.4 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.5-py3-none-any.whl (67.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lapq-1.0.5.tar.gz
  • Upload date:
  • Size: 60.4 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.5.tar.gz
Algorithm Hash digest
SHA256 68ff2f2a76c5f622165c20c8dded99cd889a417e6850e5473c2b3dfd6850f0d6
MD5 4a2aaab5a15bec17fb81190ee791a64a
BLAKE2b-256 1eebb96b25eaf011b2552fcf447c060269feb55f1c0d4327a0c5341904e02a4f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lapq-1.0.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7851c6ab529e73f7d581e6651e9e8e2a60868b5bd26a9c1736150a5801768a2c
MD5 6520b04f20f5dd94b956af25b77a9f96
BLAKE2b-256 6065a39abb6f6e06b801ff43b449cb2a31327d2707927aff4567886b4a360a19

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