DQPU: Decentralized Quantum Processing Unit#
DQPU
The Decentralized QPU
DQPU (Decentralized Quantum Processing Unit) lets you run your quantum programs in a trustless and decentralized network of quantum resource providers, leveraging the power of blockchain and smart contracts deployed on NEAR blockchain.
pip install dqpu
from dqpu.backends.qiskit import DQPUBackend
backend = DQPUBackend()
backend.load_account("dqpu_alice.testnet")
job = backend.run(quantum_circuit, shots=1024)
counts = job.result().get_counts(circ)
Workflow#
The DQPU system is composed of 3 actors:
Clients: users who need to perform a quantum sampling
Verifiers: delegates who check for data validity and detect cheating users
Samplers: users who run quantum samplers
The following process outlines how clients can submit quantum circuits for sampling using the DQPU contract on NEAR blockchain:
Client Submits Job: A Client sends a quantum circuit along with a reward to the DQPU smart contract
Verifier Validates Circuit: A Verifier validates the submitted circuit adding
trap qubits
Simulation or Hardware Execution: A Sampler executes the job retrieved from the waiting list and submit the result
Verifier Checks Result: The Verifier checks result validity and the rewards are distributed
Client Receives Result: The Client can retrieve the final result from the smart contract.
Read the extended workflow from the README Workflow section
Support DQPU#
Contributions
Contributions and issue reports are very welcome at the GitHub repository.
Citation
@software{dqpu2024,
author = {Davide Gessa},
title = {dqpu: A Web3-Powered, Decentralized Quantum Simulator with Verifiable Computation },
url = {https://github.com/dakk/dqpu},
year = {2024},
}