Metadata-Version: 2.4
Name: dlr-sc-quapps
Version: 1.1
Summary: This is a software package containing a collection of exemplary application implementations based on ``quark``.
Home-page: https://gitlab.com/dlr-sc-qc/opti/quapps/
Author: DLR-SC
Author-email: qc-software@dlr.de
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pytest
Requires-Dist: numpy
Requires-Dist: networkx
Requires-Dist: sympy
Requires-Dist: dlr-sc-quark==1.3.1
Dynamic: author
Dynamic: author-email
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-python

# quapps - QUantum APPlicationS

[![pipeline status](https://gitlab.com/dlr-sc-qc/opti/quapps//badges/development/pipeline.svg)](https://gitlab.com/dlr-sc-qc/opti/quapps/-/commits/development)

This is a software package containing a collection of exemplary application implementations based on ``quark``.

## Documentation

The full documentation can be found [here](https://dlr-sc-qc.gitlab.io/opti/quapps/).

## Description

List of applications implemented based on [``quark``](https://gitlab.com/dlr-sc-qc/opti/quark):

* [Arbitrary Ising Model](../quapps/arbitrary_ising/README.md)
* [CNF-SAT](../quapps/cnf_sat/README.md)
* [Flight Gate Assignment](../quapps/flight_gate_assignment/README.md)
* [Graph Partitioning](../quapps/graph_partitioning/README.md)
* [Knapsack](../quapps/knapsack/README.md)
* [Maximum Colorable Subgraph](../quapps/max_colorable_subgraph/README.md)
* [Maximum Cut](../quapps/max_cut/README.md)
* [Minimum k-Union](../quapps/min_k_union/README.md)
* [Prime Factorization](../quapps/prime_factorization/README.md)
* [Subset Sum](../quapps/subset_sum/README.md)
* [Traveling Salesperson](../quapps/traveling_salesperson/README.md)


Structure:

Each application subfolder contains

* a ``README.md`` containing the problem description,
* a class derived from ``quark.Instance`` or ``quark.io.InstanceWithIO``, 
  serving as a container for all the data defining an instance of the specific problem, 
* a class derived from ``quark.ConstrainedObjective``, ``quark.ObjectiveTerms`` and/or ``quark.Objective`` 
  (although only one of them is required, we added in most cases more, serving as examples), and
* corresponding tests also serving as demonstrators how to use the classes.
* a script for instance generation


## quapps Instance Data Set

We also created a collection of instances for the problems implemented in this software package, 
which is published on [Zenodo](https://zenodo.org/records/16919083).
The instantiated optimization problems of this database are based on the quapps package and were created with the 
implemented random generators. In view of the qubit numbers available in the near future, the number of instances was 
limited to instances that comprise a maximum of 175 variables. This resulted in different combinations of the 
defining parameters, such as the size of the graphs or their density.

## License

This project is [Apache-2.0](https://gitlab.com/dlr-sc-qc/opti/quapps/-/blob/development/LICENSE) licensed.

Copyright © 2026 German Aerospace Center (DLR) - Institute of Software Technology (SC). 

Please find the individual contributors [here](https://gitlab.com/dlr-sc-qc/opti/quapps/-/blob/development/CONTRIBUTORS) 
and information for citing this package [here](https://gitlab.com/dlr-sc-qc/opti/quapps/-/blob/development/CITATION.cff).
