Qiskit-qrack-provider

Latest version: v0.11.0

Safety actively analyzes 665902 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 6

0.4.5

2 * math.asin(lam ** (1/4))` is a plausible noise channel angle, for bounds and empirical spot-check.

`asin(x)` has its entire domain between `-1` and `1`, whereas `atan(x)` and `asinh(x)` do not. As we are emulating density matrices, which are "second order," a square root of the noise parameter makes sense, (whereas a fourth root is still a square root _of_ a square root).

This is guess work, and this should be considered experimental, but having a published prototype makes for easier development.

0.4.4

An extraneous rotation gate has been removed from the depolarizing channel of `NoisyCliffordTSimulator`.

0.4.3

The `NoisyCliffordTSimulator` noise model was basically flatly wrong. However, if we do something very similar to the original intent, the noise model might not perfectly match the theoretical model of depolarizing error channels under "weak simulation condition," but it least gives a plausible output, compared to small quantum volume benchmarks. Consider the new simulator back end experimental, for now.

0.4.2

0.4.1

This release adds variational phase gates to `NoisyCliffordTSimulator`. These gates don't break "paradigm" of the simulator, and they're basically a requirement for transpilation.

Variational phase gates that aren't equivalent to Clifford phase gates, (`z`, `s`, `sdg`, `id`) apply the same depolarizing noise channel as `t` and `tdg`. Otherwise, Clifford instances are treated as (noiseless) Clifford gates.

0.4.0

This release adds the `NoisyCliffordTSimulator` back end option to `QrackProvider`.

This back ends injects a tiny amount of noise into `t` and `tdg` gate application, which happens to make simulation much easier and more efficient. The noisy Clifford+T simulator is useful for practical **high-performance computation** in itself, but wrapping the depolarizing noise channel directly into the `t` and `tdg` gates makes interface easier for **error mitigation** libraries, like [`mitiq`](https://github.com/unitaryfund/mitiq).

Besides depolarizing noise in `t` and `tdg`, another expected small source of noise is Schmidt decomposition rounding, which can be controlled by environment variable `QRACK_QUNIT_SEPARABILITY_THRESHOLD`, but this will otherwise be automatically tuned according to the noise magnitude option for the back end.

This back end employs a "weak simulation condition," which in effect means it cannot use "sampling" optimizations and must simulate every "shot" separately and fully. Neither available Qrack back end exposes state vector or density matrix snapshots, but "weak simulation" in this case precludes also that possibility.

Page 4 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.