Pyqrack

Latest version: v1.33.1

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

Scan your dependencies

Page 30 of 55

1.5.2

QUnit optimizes arithmetic logic operations in a custom way; this optimization failed to map qubits properly under QUnit, leading to out-of-bounds exceptions and operations on qubits that weren't intended. This has been fixed.

1.5.1

Unrealized for a long time, `measure_pauli()` previously attempted to pass the Pauli operator enumeration list to the C API as a `c_ulonglong` rather than `c_int`. This release fixes the method.

1.5.0

This release adds `get_unitary_fidelity()` and `reset_unitary_fidelity()` to the simulator API.

It was noted by Andrea Mari of Unitary Fund that, from first principles, for a discarded probability "`ɛ`" in any rounding event, the worst case limit for fidelity loss from "Schmidt decomposition rounding parameter" ("SDRP") methods in `QUnit` should go like

F = Π (1-ɛ_j) (for j events where ɛ less than SDRP threshold).

Implementing this model, Daniel Strano found it to be very pessimistic, but through trial and error it was noticed that

F = Π (1-ɛ_j / 2)^(1/2) (for j events where ɛ less than SDRP threshold)

was very close to "gold standard" results. Collecting tens of thousands of data points on different circuit widths, depths, and SDRP levels, the second model was found to explain >99% of variance among gold standard results, (without a theoretical argument, for now, explaining why this should be close to or exactly the average case behavior).

More than 99% of variance was explained for random circuits that are basically a "nearest-neighbor quantum volume" variant; other cases might not be as well described. This calculation is done automatically by `QUnit`, and the result can be accessed through `get_unitary_fidelity()`, or the calculation might be reset to identically 1 fidelity by `reset_unitary_fidelity()`.

1.4.3

The Qiskit "cp" gate was incorrectly parsed by PyQrack. This has been fixed, (and an identical bug in the Qiskit QrackProvider is being fixed there, as well).

1.4.2

Concurrent with the release of Qrack v.8.2.2, this release improves SIMD performance and disables `QEngine` under `QBdt` by default.

**Full Changelog**: https://github.com/unitaryfund/pyqrack/compare/v0.21.13...v1.4.2

1.4.0

In deciding to remove in_ket() and out_ket() from (Rust) "Qook," it became apparent that mirror circuit fidelity testing could still greatly benefit, in terms of reduced simulation overhead, from a method capable of returning single permutation basis eigenstate probabilities.

This release adds support for PermutationProb() in the Qrack shared library API, wrapped as prob_perm() in the PyQrack API, to allow single permutation basis eigenstate probability checks, (as well as probability checks of permutations of arbitrary qubit lists).

Page 30 of 55

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.