strawberryfields
strawberryfields copied to clipboard
Bloch Messiah decomposition from The Walrus
NOTE: This PR is using thewalrus/main. DO NOT MERGE until there is a new release of The Walrus (don't forget to change the requirement files accordingly).
Context: The current implementation of the Bloch-Messiah decomposition fails for degenerate symplectic matrices.
Description of the Change: The Walrus included a new implementation of the Bloch-Messiah decomposition that solves the issue. This PR swaps the SF implementation for the new improved implementation on TW.
Benefits: Bloch-Messiah works for degenerate symplectic matrices.
Possible Drawbacks: None.
Related GitHub Issues: Closes #728
Codecov Report
Merging #729 (720637e) into master (9a9a352) will decrease coverage by
59.45%
. The diff coverage is66.66%
.
Additional details and impacted files
@@ Coverage Diff @@
## master #729 +/- ##
===========================================
- Coverage 98.33% 38.88% -59.46%
===========================================
Files 78 78
Lines 9603 9578 -25
===========================================
- Hits 9443 3724 -5719
- Misses 160 5854 +5694
Impacted Files | Coverage Δ | |
---|---|---|
strawberryfields/decompositions.py | 12.88% <66.66%> (-86.57%) |
:arrow_down: |
strawberryfields/io/xir_io.py | 8.04% <0.00%> (-90.23%) |
:arrow_down: |
strawberryfields/apps/subgraph.py | 10.11% <0.00%> (-89.89%) |
:arrow_down: |
strawberryfields/apps/clique.py | 10.67% <0.00%> (-89.33%) |
:arrow_down: |
strawberryfields/apps/qchem/dynamics.py | 12.65% <0.00%> (-87.35%) |
:arrow_down: |
strawberryfields/backends/tfbackend/ops.py | 11.96% <0.00%> (-86.31%) |
:arrow_down: |
...fields/backends/gaussianbackend/gaussiancircuit.py | 13.02% <0.00%> (-86.21%) |
:arrow_down: |
strawberryfields/backends/tfbackend/states.py | 13.33% <0.00%> (-85.65%) |
:arrow_down: |
strawberryfields/tdm/utils.py | 11.60% <0.00%> (-85.64%) |
:arrow_down: |
strawberryfields/plot.py | 13.15% <0.00%> (-85.09%) |
:arrow_down: |
... and 49 more |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 9a9a352...720637e. Read the comment docs.