FlamingPy Release 0.7.0a4 #39
ghost
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
New features since the last release
Union-Find--- a fast new decoder based on arXiv:1709.06218 and arXiv:1703.01517 --- has been implemented. Now the user may change between the existing minimum-weight perfect matching decoder ("MWPM" setting) and Union-Find ("UF" setting). We have also temporarily disabled the "both"ecoption inSurfaceCodewhile we investigate a bug, and make some further minor changes related to the Union-Find decoder. (#37)(backward incompatible)vizmodule: plot_cube and cuboid_data. (#20)(backward incompatible)Bug fixes
lemonbackend used for MWPM decoding was performing worse compared to the other matching backends. The problem was that missing edges in the graph were associated with 0-entries in the adjacency matrix, leading to them always having the minimal weight and making them indistinguishable from edges with an actual weight of 0. The missing edges are now assigned a very large weight. (#28)test_hybridizeintest_graphstates.pyhas been fixed. (#25)Improvements
The visuals produced by FlamingPy have been improved and made more consistent. (#20)
When drawing, FlamingPy no longer changes the global matplotlib's
rcParams,but uses
rc_contexttogether with the plot parameters defined within thevizmodule.To customize such parameters, simply use the following and every new plot produced by FlamingPy will use them accordingly.
to parse, thanks partially to a new function,
draw_curved_edges.draw_adjanddraw_SCZwrapper methods were added toEGraphandCVLayer, respectively.Several changes were made to improve the visualization of MWPM decoding for debugging and understanding purposes. (#23)
draw_decoding) was added to thevizmodule and new options were added to thecorrectfunction in the decoder module to be able to simply plot all decoding objects (stabilizer graph, matching graph, matching, syndrome plot) in sync with the actual error correction trial.label_cubesargument was renamed to the more accuratelabel_stabilizers.show_matchingwas added to the drawing options to be able to turn the matching plot on or off.The display_axes option has been changed to show_axes and title to show_title for consistency. The show_title option is now respected. (#37)
Decoders have become more organized and compartmentalized. (#37)
algos.py-- containsa cumulative decoding function combining all the steps. This function is imported by
decoder.py, which is now a more general module.draw_decodingfunction invizcan now accommodate plotting generic decoding procedures: a stabilizer graph, a syndrome plot, and the recovery.Tests were added to improve the overall test coverage. These included changes to
.coveragercas well as the refactoring of some examples to allow for properimports from testing modules. Code coverage is now above 95% and
the overall fail threshold was bumped accordingly. (#14)
The PR template has been changed to inform the user about the 95% + codecov requirement. (#25)
CVLayerhas been modified to allow for instantiation with a code objectin addition to an
EGraph. This makes more semantic sense (applying a noise modelto a code), making it conceptually easier for the user and avoiding noise layers having to reference the internal mechanics of codes. (#25)
codecov.ymlwas introduced to customize codecov automated tests. For this version, we have added athreshold: 0.5%to avoid undesired delta failures due to just removing a few lines, etc. (#25)The Walrus has been re-added as a dependency and its functions are used instead of a verbatim
copy of the code. (#27)
Since
retworkxandlemonare the fastest backends andretworkxfollows the same conventionas
networkx, the default backend for stabilizer graphs and MWPM has been changed toretworkx. (#28)Some more tests were added to
test_matching.pyto compare the output of different matching backends. (#28)Documentation changes
retworkxis the default backend. (#28)Contributors
This release contains contributions from (in alphabetical order):
Sebastián Duque Mesa, Priya Nadkarni, Nariman Saadatmand, Maxime Tremblay, Ilan Tzitrin
See full commit details here.
This discussion was created from the release FlamingPy Release 0.7.0a4.
Beta Was this translation helpful? Give feedback.
All reactions