New features
-
New functions for calculating properties of distinguishable squeezed states of light having passed through an interferometer. #326
-
New function
ltor
is added which allowsthreshold_detector_prob
to act more consistently on displaced and zero-mean Gaussian states. #317 -
New functions for threshold detection probabilities of Fock states, the Bristolian (brs) and the Unitary Bristolian (ubrs). #316
-
Entanglement measures
entanglement_entropy
andlog_negativity
for bipartite Gaussian states are added to the quantum submodule. #332 -
New functions,
recursive_hafnian
andsolve
added in the_hafnian
module. #325 -
New function to check if a matrix is symplectic
is_symplectic
. #334. -
Adds support for Python 3.10. #337
Improvements
-
Update methods for calculating threshold detector probabilities of Gaussian states, now using
ltor
function withinthreshold_detection_prob
#317 -
numba_tor
now can benefit from numba parallelization #317 -
Recursive Torontonian added for faster computation based on paper "Polynomial speedup in Torontonian calculation by a scalable recursive algorithm" by Ágoston Kaposi, Zoltán Kolarovszki, Tamás Kozsik, Zoltán Zimborás, and Péter Rakyta. #321
-
Recursive Loop Torontonian added for faster computation based on combining recursive Torontonian improvement and new loop Torontonian feature. #332
-
Hafnians of odd-sized matrices are calculated roughly twice as fast. #329
-
The new Hafnian functions now use the Labudde method to calculate power traces instead of using diagonalization. #333
Bug fixes
- Permanent algorithms handle 0x0 cases correctly. #320
Contributors
This release contains contributions from (in alphabetical order):
Jake Bulmer, Luke Helt, Martin Houde, Theodor Isacsson, Benjamin Lanthier, Fabian Laudenbach, Dominic Leclerc, Gregory Morse, Nicolas Quesada, Brandon Turcotte, Jiaqi Zhao