Metadata-Version: 2.1
Name: classiq
Version: 0.1.5
Summary: Classiq SDK Package
Home-page: https://classiq.io
License: Proprietary
Keywords: quantum,sdk,QAD,QDL,circuit
Author: Classiq Technologies
Author-email: support@classiq.io
Requires-Python: >=3.8,<4.0
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Scientific/Engineering
Provides-Extra: all
Requires-Dist: ConfigArgParse (>=1.5,<2.0)
Requires-Dist: Pyomo (>=6.0,<6.1)
Requires-Dist: classiq_interface (>=0.1.2,<0.2.0); extra == "all"
Requires-Dist: httpx (>=0.18.2,<0.19.0)
Requires-Dist: keyring (>=23.0.1,<24.0.0)
Requires-Dist: nest-asyncio (>=1.5.1,<2.0.0)
Requires-Dist: pydantic (>=1.8.2,<2.0.0)
Requires-Dist: websockets (>=9.1,<10.0)
Project-URL: Documentation, https://classiquantum.com/reference/
Description-Content-Type: text/markdown

<p align="center">
  <a href="https://www.classiq.io"><img src="https://uploads-ssl.webflow.com/60000db7a5f449af5e4590ac/6122b22eea7a9583a5c0d560_classiq_RGB_Green_with_margin.png
" alt="Classiq"></a>
</p>
<p align="center">
    <em>The Classiq Quantum Algorithm Design platform helps teams build sophisticated quantum circuits that could not be designed otherwise</em>
</p>


We do this by synthesizing high-level functional models into optimized quantum circuits, taking into account the
constraints that are important to the designer. Furthermore, we are able to generate circuits for practically any
universal gate-based quantum computer and are compatible with most quantum cloud providers.

## Requirements
Python 3.8+


## Installation
```console
pip install --upgrade pip
$ pip install 'classiq[all]'
```

## Example

```python
import asyncio

from classiq import generator
from classiq_interface.generator.state_preparation import (
    StatePreparation,
    PMF,
    StatePreparationOutputs,
    Metrics,
    NonNegativeFloatRange,
)
from classiq_interface.generator.qft import QftInputs, QFT

probabilities = (0.5, 0.1, 0.2, 0.005, 0.015, 0.12, 0.035, 0.025)
pmf = PMF(pmf=probabilities)
sp_params = StatePreparation(
    probabilities=pmf,
    num_qubits=4,
    error_metric={Metrics.KL: NonNegativeFloatRange(upper_bound=0.3)},
)

circuit_generator = generator.Generator(qubit_count=20, max_depth=100)
output_dict = circuit_generator.StatePreparation(params=sp_params)

state_preparation_output = output_dict[StatePreparationOutputs.OUT]

qft_params = QFT(num_qubits=3)
circuit_generator.QFT(
    params=qft_params, in_wires={QftInputs.IN: state_preparation_output}
)

circuit_generator.constraints.use_synthesis_engine = True
circuit = asyncio.run(circuit_generator.generate())
circuit.show()
```

## License
See [license](https://classiq.io/license).

