Skip to main content

Exchange-Only Quantum Computation Simulator

Project description

eoqrid

Exchange-Only Quantum Computing Simulator

Feature

eoqrid is a Python library designed to simulate silicon quantum computers that control qubits using the Exchange-Only method. It provides the following two main features:

  • Logical Quantum Circuit Transpilation

    • It can translate logically described quantum circuits into sets of exchange interactions and measurements so they can be executed on silicon qubits. Furthermore, it allows for the transformation and optimization of circuits to match the specific topology of a quantum chip.
  • Physical Quantum Circuit Execution

    • It can simulate and verify the result from executing physical quantum circuits described by sets of exchange interactions and measurements.

Install

pip install eoqrid

or

git clone https://github.com/samn33/eoqrid.git
cd eoqrid
pip install .

Uninstall

pip uninstall eoqrid

Usage

$ cat sample.py
from qiskit import QuantumCircuit
from eoqrid import EoqSimulator

qc = QuantumCircuit(1)
qc.h(0)

print("== quantum circuit ==")
print(qc)

eoq = EoqSimulator()
qc_native = eoq.transpile(qc)

print("== transpiled quantum circuit ==")
print(qc_native)
print(f"depth = {qc_native.depth()}")

res = eoq.execute(qc_native)

print("== quantum state (logical) ==")
res.qstate.draw()

print("== quantum state (physical) ==")
res.qstate.draw(mode='physical')
$ python sample.py
== quantum circuit ==
   ┌───┐
q: ┤ H ├
   └───┘
== transpiled quantum circuit ==
         ┌───────────────┐                 ┌───────────────┐
q_0 -> 0 ┤0              ├─────────────────┤0              ├
         │  Ex(5.3279,1) │┌───────────────┐│  Ex(5.3279,1) │
q_1 -> 1 ┤1              ├┤0              ├┤1              ├
         └───────────────┘│  Ex(1.9106,1) │└───────────────┘
q_2 -> 2 ─────────────────┤1              ├─────────────────
                          └───────────────┘
depth = 3
== quantum state (logical) ==
c[0] = +0.7071+0.0000*i : 0.5000 |++++++
c[1] = +0.7071-0.0000*i : 0.5000 |++++++
== quantum state (physical) ==
c[000] = +0.0000+0.0000*i : 0.0000 |
c[001] = +0.5774-0.0000*i : 0.3333 |++++
c[010] = +0.2113-0.0000*i : 0.0447 |+
c[011] = +0.0000+0.0000*i : 0.0000 |
c[100] = -0.7887-0.0000*i : 0.6220 |+++++++
c[101] = +0.0000+0.0000*i : 0.0000 |
c[110] = +0.0000+0.0000*i : 0.0000 |
c[111] = -0.0000-0.0000*i : 0.0000 |

Documents

References

  1. Aaron J. Weinstein, et al., "Universal logic with encoded spin qubits in silicon",arXiv:2202.03605

  2. Exchange Only 量子ビットの仕組み:3つのスピンで「磁場」を超える(YuichiroMinato)

Requirements

  • Linux (Ubuntu 24.04 LTS)
  • Python 3.12

Licence

MIT

Author

Sam.N

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

eoqrid-0.2.0.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

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

eoqrid-0.2.0-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file eoqrid-0.2.0.tar.gz.

File metadata

  • Download URL: eoqrid-0.2.0.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eoqrid-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a37dd68cf39575195d7acc48d449e939cff5ca4095074b855fa527386a4d876d
MD5 7f501e47418457b255bc7afeaad882b6
BLAKE2b-256 855b2b56a080a171cb8256b9f7fd56b62e64bee6bbcd2ce173bb4119933005fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for eoqrid-0.2.0.tar.gz:

Publisher: pypi.yml on samn33/eoqrid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eoqrid-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: eoqrid-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eoqrid-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aad8c65da04399abe1790c6067d585236944191ae6151cb5dcc1380ff77220a6
MD5 eed1580184ff5915f86e79ea3b4c3c94
BLAKE2b-256 b61e57d6b0612d6a9b652fc25fc02cec9881366138f7149280e841b3b61760f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for eoqrid-0.2.0-py3-none-any.whl:

Publisher: pypi.yml on samn33/eoqrid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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