Skip to main content

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

or with the uv package manager:

uv add 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.

flowchart LR
    qmless([QML Essentials])
    qmless --> qmless.ansaetze([Ansaetze])
    qmless.ansaetze --> qmless.blocks([Blocks])
    qmless.blocks --> qmless.gates([Gates])
    qmless.blocks --> qmless.topo([Topologies])
    qmless.gates --> qmless.unitary([UnitaryGates])
    qmless.gates --> qmless.pulse([PulseGates])
    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 --> 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])

    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.gates,qmless.numerical,qmless.analytical,qmless.mw,qmless.bell,qmless.ef,qmless.re,qmless.ce l3
    class qmless.unitary,qmless.pulse,qmless.topo,qmless.fcc,qmless.fingerprint 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.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for qml-essentials 0.2.3
File Size Uploaded
qml_essentials-0.2.3.tar.gz 8.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for qml-essentials 0.2.3
File Interpreter ABI Platform
qml_essentials-0.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 8.6 MB

Release files / qml_essentials-0.2.3.tar.gz

Download URL qml_essentials-0.2.3.tar.gz
Size 8.4 MB
Tags Source
SHA-256 checksum
How to use checksums
add52a9e8a4dd0fa9b2d72b0fbe93a88c9216d3a925a08e5a24c9074fb9010ac
BLAKE2b-256 checksum
How to use checksums
092b10f92c3e7263845603f1f3b4b558b0348cc0a111520af94be1175448bd37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","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.2.3-py3-none-any.whl

Download URL qml_essentials-0.2.3-py3-none-any.whl
Size 203.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8f7fa671b430a8fc3a9c1984b90a5f57d2b22c40e6a8e1f2b6de6172a5694e09
BLAKE2b-256 checksum
How to use checksums
0a76934fb75592beb191269807c1d9407a2a6b3a6b627e5cda86f88ff0761aa2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","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}
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page