mistkit extends the python3 based qiskit quantum computing language state_drawer function with a misty state output possibility.
Project description
Mistkit {▾▴✦◇▮▭■●}
Abstract:
In the book "Q is for quantum", Terry Rudolph describes a formalism with white balls (|0>) and black balls (|1>), termed misty state, to teach quantum theory and quantum computing to folks with only a basic knowledge of arithmetic.
This formalism was for teaching adapted by others and further developed by Adrian German, Edwin Barnes, Marcelo Pias, Qiao Xiang, Sophia Economou.
- https://arxiv.org/abs/2005.07874 # Economou, Rudolph, Barnes 2020
- https://arxiv.org/abs/2210.02868 # Economou, Barnes 2022
- https://dl.acm.org/doi/10.1145/3626253.3633435 # German, Pias, Xiang 2024
For quantum computing, International Business Machines developed Qiskit, a popular, Python based, free and open-source software stack.
All what Mistkit does is adding to Qiskit's state_drawer function the possibility to output Statevectors in misty state formalism, alongside the already available Statevectors output formats (text, latex, latex_source, qsphere, hinton, bloch, city, paulivec).
Header:
- Language: python >= 3.8
- Library dependencies: numpy, qiskit
- Date: 2024-07
- License: Apache 2.0
- Author: Elmar Bucher
- User manual: this README.md file
- Source code: https://github.com/elmbeech/mistkit
- Inspiration: Dan Adrian German's CSCI A590 quantum computing class at Indiana University.
HowTo Guide:
- Install or update to the latest mistkit version:
pip install -U mistkit
- Load mistkit:
import mistkit
- Run minimal example:
# load libraries
from qiskit import QuantumCircuit
from qiskit.quantum_info import Statevector
import pylatex
import mistkit
# generate 8[qubit] quantum circuit
qc = QuantumCircuit(8)
qc.x([0,1,3,5,6,7]) # state 0b11101011
qc.draw()
# read out the quantum circuit state vector
sv = Statevector.from_instruction(qc)
print(sv.data) # numpy state vector array.
print(sv.draw('mist')) # state vector in Terry Rudolph's misty state notation.
sv.draw('latex') # state vector in Paul Dirac's ket notation.
- Uninstall mistkit:
pip uninstall mistkit
Refernce Manual:
- Read the docstrings:
import mistkit
from qiskit import visualization
help(mistkit.state_to_mist)
help(visualization.state_visualization.state_drawer)
help(mistkit.mystify)
Tutorial:
Discussion:
To be developed.
About Documentation:
Within the mistkit library, we tried to stick to the documentation policy laid out by Daniele Procida in his "what nobody tells you about documentation" talk at PyCon 2017 in Portland, Oregon.
Cite:
- ~
Road Map:
- ~
Release Note:
- version 0.1.1 ok implementation.
- version 0.0.0 miskit rises from the ashes.
All we know is falling.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mistkit-0.1.1.tar.gz
.
File metadata
- Download URL: mistkit-0.1.1.tar.gz
- Upload date:
- Size: 12.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5dd519ddaafee674bce2d5d03a5e8309078a73e5eb6b2c0be35f5851d0cda6e |
|
MD5 | c6c6b89ba0fc52a7877f9aaab3424146 |
|
BLAKE2b-256 | 378614de69e70780734f07a55ad47abc419db160bb750957f68d46c088ca2faa |
File details
Details for the file mistkit-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: mistkit-0.1.1-py3-none-any.whl
- Upload date:
- Size: 10.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c8c25528f1a20e0570c1594cedcecdfea01a0c9db3d399f5f107f1b322749df |
|
MD5 | 1391caadcb0e59dd8a14fc63abdba8ba |
|
BLAKE2b-256 | 49c1b631ea70ab3abefa55423ea0857038208c957c958efa285333151ada823e |