QML Essentials
A toolbox to make working with QML models easier.
📜 About
This repo contains some of the commonly used Ansaetze and coding stuff required for working with QML and Data-Reuploading models.
There are also dedicated classes to calculate entanglement and expressiblity of a provided model as well as its Fourier coefficients.
Checkout our Arxiv Paper to learn more.
🚀 Getting Started
pip install qml-essentials
to install our package from PyPI.
You can find details on how to use it and further documentation on the corresponding Github Page.
📦 Package Structure
The following diagram provides an overview on how the different components within this package depend on each other.
Circuit simulation is provided by jaqsi, our gate- and pulse-level simulator, which this package builds upon.
flowchart LR
qmless([QML Essentials])
qmless --> qmless.ansaetze([Ansaetze])
qmless.ansaetze --> qmless.blocks([Blocks])
qmless.blocks --> qmless.topo([Topologies])
qmless.blocks --> jaqsi.gates([Gates])
qmless --> qmless.coefficients([Coefficients])
qmless.coefficients --> qmless.analytical([Analytical])
qmless.coefficients --> qmless.numerical([Numerical])
qmless.numerical --> qmless.fcc([Fourier Coefficient Correlation])
qmless.numerical --> qmless.fingerprint([Fourier Fingerprints])
qmless --> qmless.models([Models])
qmless.models --> jaqsi.script([Script])
qmless --> qmless.expr([Expressibility])
qmless --> qmless.ent([Entanglement])
qmless.ent --> qmless.mw([Meyer Wallach])
qmless.ent --> qmless.re([Relative Entropy])
qmless.ent --> qmless.bell([Bell Measurement])
qmless.ent --> qmless.ef([Entanglement of Formation])
qmless.ent --> qmless.ce([Concentratable Entanglement])
subgraph jaqsi [jaqsi]
jaqsi.gates
jaqsi.script
end
classDef l1 fill:#1f8f5a,stroke:#1f8f5a,color:#d4f7e8
classDef l2 fill:#2fb170,stroke:#2fb170,color:#d4f7e8
classDef l3 fill:#58e3a6,stroke:#58e3a6,color:#272a35
classDef l4 fill:#a8f0d1,stroke:#a8f0d1,color:#272a35
linkStyle default stroke-width:2px
class qmless l1
class qmless.ansaetze,qmless.coefficients,qmless.models,qmless.expr,qmless.ent l2
class qmless.blocks,qmless.numerical,qmless.analytical,qmless.mw,qmless.bell,qmless.ef,qmless.re,qmless.ce l3
class qmless.topo,qmless.fcc,qmless.fingerprint,jaqsi.gates,jaqsi.script l4
🚧 Contributing
Contributions are highly welcome! 🤗 Take a look at our Contribution Guidelines.
See our coverage report if you would like to contribute with further tests.
Metadata
Release files for qml-essentials 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| qml_essentials-0.3.0.tar.gz | 4.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qml_essentials-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.5 MB
Release files / qml_essentials-0.3.0.tar.gz
| Download URL | qml_essentials-0.3.0.tar.gz |
|---|---|
| Size | 4.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
536deecfcc92f66fb15c71407ede380f0a1d1c09a3f187fb3c4cf53f3bb8ebd2
|
|
BLAKE2b-256 checksum How to use checksums |
83984a0f4db0ecf2ddc914c866d534c29c46cb349110168c84597e2446da019e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / qml_essentials-0.3.0-py3-none-any.whl
| Download URL | qml_essentials-0.3.0-py3-none-any.whl |
|---|---|
| Size | 84.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
114dd7d9741eaa4253b3951d42d3162386f8831adbfe3de9b95cd15664cf2690
|
|
BLAKE2b-256 checksum How to use checksums |
d6f917f9848cc04f281d19ecc9f84ebbeb020c07169b13aec2640cc319ed8d27
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|