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. Itprovides 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.1.4.tar.gz (14.7 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.1.4-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for eoqrid-0.1.4.tar.gz
Algorithm Hash digest
SHA256 16ed1f6b78d457ccbb46e8f2e9f799b1d597d697fa208510a5fe2597a0244d77
MD5 90146b19ef73d37d5d4f6e96077a4c14
BLAKE2b-256 1d0d34f64e41766472074d28f4713b6f5351f699f726e7895b7e4193e302d318

See more details on using hashes here.

Provenance

The following attestation bundles were made for eoqrid-0.1.4.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.1.4-py3-none-any.whl.

File metadata

  • Download URL: eoqrid-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 12.7 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.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d480ff472f039d23e2ed9c6228ca7a2d5200c9ef57d9f2380971852dac0927f7
MD5 59cd6019f0ce1d384173c4de6a31e9b1
BLAKE2b-256 ea6f8e150d633a9b735651144851f2f5a76f86b707facaf6305a016f67c4482b

See more details on using hashes here.

Provenance

The following attestation bundles were made for eoqrid-0.1.4-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