Skip to content

v0.1.1 🚀 🌕

Choose a tag to compare

@github-actions github-actions released this 02 Apr 02:36
· 53 commits to main since this release
e0041cd

This release adds new stabilizer decomposition strategies, faster noise sampling, and scientifically accurate pyzx visualization. A detailed description of Tsim, including some benchmarks, is now available in this publication.

Added

  • Improved stabilizer decomposition strategies. When compiling a sampler, you can now choose between three different strategies: "cat5", "bss", and "cutting". The default is "cat5" and applies to T and arbitrary rotations; see arxiv.org/abs/2106.07740 (#77)
  • Sparse geometric channel sampler for noise modeling based on this repo. This significantly improves performance when the stabilizer rank is low. (#64)
  • Circuit.append method for programmatic circuit construction (#65) by @jaideepkathiresan
  • Circuit.is_clifford property and automatic replacement of U3 gates with Clifford equivalents for pi/2 rotations (#69)
  • Improved pyzx visualization. Now doubled ZX notation is used when using the "pyzx" argument in Circuit.diagram, which is a technically accurate depiction of the quantum circuit (#86)
  • Automatic batch size selection based on available memory (#84)

Changed

  • Tsim now uses pyzx-param==0.9.3 which fixes a bug where diagrams were not fully reduced in the absence of noise
  • Tsim will now make sure that marginal probabilities are normalized and raise an error if they are not. Wrong normalization can be the result of rare underflow errors that will be addressed in a future release (#87)
  • Use BLAS matmul kernel for tensor contractions (#63)
  • Circuit flattening deferred to ZX graph construction time (#71)
  • White background for SVG plots, which are now readable in dark mode (#85)

New Contributors