Skip to main content

A toolbox to make working with QML models easier.

Project description

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.

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

qml_essentials-0.2.1.tar.gz (8.3 MB view details)

Uploaded Source

Built Distribution

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

qml_essentials-0.2.1-py3-none-any.whl (156.3 kB view details)

Uploaded Python 3

File details

Details for the file qml_essentials-0.2.1.tar.gz.

File metadata

  • Download URL: qml_essentials-0.2.1.tar.gz
  • Upload date:
  • Size: 8.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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}

File hashes

Hashes for qml_essentials-0.2.1.tar.gz
Algorithm Hash digest
SHA256 bc9b4bc7acad7410e8073d9586accb2db58b3a78d1437be334b0fb83d1818a8f
MD5 cd2109ecd0f0874cf2de597f824903e1
BLAKE2b-256 66465c538143c875b7a6a50fa46fad3c149ba851929e80275d747c2e8f1997c1

See more details on using hashes here.

File details

Details for the file qml_essentials-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: qml_essentials-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 156.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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}

File hashes

Hashes for qml_essentials-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c177240de995e03c71758feac92e8eae5531ba420727ef33a3ff59f28a773485
MD5 efe66aa040f0ff856b7a70b6cdbd9813
BLAKE2b-256 c1e29533c2f9a0c705a0087f9f6c4d6273697cad5e2a245ae057dba561aa8cc0

See more details on using hashes here.

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