Qiskit-qrack-provider

Latest version: v0.11.0

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

Scan your dependencies

Page 3 of 6

0.5.0

is_1qb_fusion` is no longer a valid option, for PyQrack.

0.4.10

A problem with type incompatibility of gate variational parameters has been fixed with an explicit cast to `float`.

0.4.9

In some cases, an experiment has no `metadata` attribute. This fixes a bug that breaks execution, when `metadata` attribute is not present,

0.4.8

There were an extraneous couple of gates in the noise channel of `NoisyCliffordTSimulator`, which had no effect. These have been removed, to hopefully benefit performance.

I have been testing `NoisyCliffordTSimulator` against Qiskit's old quantum volume demonstration notebook, as well, and it was a minor annoyance that the base 2 logarithm of quantum volume tended to cap out at around only 4 or 5 qubits. By reducing the default noise by a factor of 4, to `0.0001`, the noise is still easily detectable in quantum volume benchmarks, while the test usually passes for at least 6 qubit level of volume. (The noise level parameter will commonly be set to custom values for end use cases, anyway.)

0.4.7

It is possible to tighten the "weak simulation condition" of `NoisyCliffordTSimulator` to a "strong condition" for purposes of unitary sampling, by _not_ measuring and discarding each noise channel ancilla. The extra bits are retained, and the partial projection of the original (noiseless) qubit state on the ancillary qubits recreates the right distribution, if sampled as unitary preamble.

This is **extremely expensive** in many cases, hence it is turned off by default. However, some optimization might be recovered elsewhere with unitary preambles and sampling noiseless circuits.

0.4.6

try_separate_1qb()` has been added at the end of the depolarizing noise channel.

Usually, manually calling `try_separate_1qb()` is unnecessary, because it is automatically called after theoretically entangling or disentangling gates. However, because the depolarizing channel is basically a 1 qubit gate with a non-unitary component, the potential effect of the channel on separability of the original qubit is not automatically recognized.

Only if the `try_separate_1qb()` check succeeds, _this will add more noise_, from destroying a small amount of entanglement. However, this is exactly the intended "paradigm" of `NoisyCliffordTSimulator`, to try to recover performance from noise.

Page 3 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.