Skip to main content

LAP Technologies Python SDK for the QPU-1 quantum processor — 170+ algorithms, full gate set with auto-decomposition. v1.0.7: Critical ECC Shor bugfix — compute-copy-uncompute (CCU) Jacobian point addition with dedicated parity ancilla banks; fixes dirty-ancilla contamination that caused u==v measurements on all non-trivial keys.

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.7.0.tar.gz (55.7 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.7.0-py3-none-any.whl (62.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lapq-1.0.7.0.tar.gz
  • Upload date:
  • Size: 55.7 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.7.0.tar.gz
Algorithm Hash digest
SHA256 161a9b831520eaff0727861f13b85721c76c142c1183855b28c1a5a7e3aa34b1
MD5 ee54027bda3ff1602532d4b7ecbb5f7e
BLAKE2b-256 ff5e8ec82c413d447f90029ca49cc3b2edd69336515e0b067f932ee76095b397

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lapq-1.0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 62.1 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.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6cac26b0036161d6dba36201ce166781bed911cd672bb6161396ce8ddc1d2f95
MD5 f600d7f22f063395cfed2f1f73bc8a89
BLAKE2b-256 8db2f326d26632bca853ca25504f35d75ecfced41d1450fe08861f57dc2e664a

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