Download Latest Version v0.10.0 source code.tar.gz (3.4 MB)
Email in envelope

Get an email when there's a new version of QuantumClifford.jl

Home / v0.10.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2025-07-02 4.8 kB
v0.10.0 source code.tar.gz 2025-07-02 3.4 MB
v0.10.0 source code.zip 2025-07-02 3.5 MB
Totals: 3 Items   6.9 MB 2

QuantumClifford v0.10.0

Diff since v0.9.19

  • (fix) The gates SQRTY, CXYZ, CZYX were computing phases incorrectly when acting on I stabilizers.
  • (fix) Paulis with imaginary phases had their phases incorrectly tracked.
  • (fix) rowdecompose was not accounting for the phase of the input Pauli string, leading to potential errors in non-Clifford functionality.
  • Various stabilizer data structures can now be constructed out of sequences of Paulis.
  • Most canonicalization routines can now act on sequences of Paulis.
  • project*! family of functions now work on more tableau types.
  • QuantumCliffordJuMPExt is a new extension depending on the JuMP solver suite. It enables computing minimum distance for quantum LDPC codes via Mixed Integer Programming (MIP) using JuMP.
  • QuantumCliffordOscarExt is a new extension depending on the Oscar CAS. It provides more convenient ways to construct two-block-group-algebra codes and more.
  • Improvements to GeneralizedStabilizer API including support for products and tensor product for many Clifford and non-Clifford operators and states.
  • expect is now implemented for GeneralizedStabilizer.
  • projectrand! is now implemented for GeneralizedStabilizer.
  • QuantumClifford now depends on QECCore. QECCore is a new package separate from QuantumClifford, which specifies the interfaces error correction codes, together with declaring a number of the more essential ones. Naming changes:
  • (breaking) parity_checks_x -> parity_matrix_x and parity_checks_z -> parity_matrix_z
  • AbstractECC -> AbstractQECC
  • ClassicalCode -> AbstractCECC
  • Some codes are moved to QECCore from QuantumClifford, including Toric, Surface, RepCode, CSS, Shor9, Steane7, Cleve8, Perfect5, Bitflip3.
  • (breaking) StabMixture was renamed to GeneralizedStabilizer.
  • Constructing a Destabilizer out of a full-rank Stabilizer does not require a canonicalization anymore, i.e. stabilizerview(Destabilizer(s))==s is guaranteed.
  • The maximally_mixed function is now available for creating maximally mixed multi-qubit states.
  • Much faster indexing and slicing of PauliOperator.

Merged pull requests: - improvements to the non-clifford functionality (#259) (@Krastanov) - tensor product of GeneralizedStabilizer (#345) (@Fe-r-oz) - Color codes support 1 (#361) (@amicciche) - add QuantumCliffordOscarExt to provide convenient API for finitely presented groups via specific group presentation (#400) (@thofma) - noncliff: in-place Pauli measurements (projectrand!) for GeneralizedStabilizer (#427) (@Fe-r-oz) - compute the minimum distance of QLDPC using Mixed Integer Programming (#439) (@Fe-r-oz) - CompatHelper: bump compat for Nemo to 0.49, (keep existing compat) (#483) (@github-actions[bot]) - Bump dawidd6/action-download-artifact from 8 to 9 (#484) (@dependabot[bot]) - improve getindex performance for PauliOperator (#455) (#487) (@LEXUGE) - fix typo in print statement (#494) (@Krastanov) - CompatHelper: bump compat for Nemo to 0.50, (keep existing compat) (#496) (@github-actions[bot]) - CompatHelper: bump compat for Hecke in [weakdeps] to 0.36, (keep existing compat) (#497) (@github-actions[bot]) - improvements to GeneralizedStabillizer API: sm⊗S"X", pcT⊗P"X", pcT*sm, pcT⊗pcT (#498) (@Fe-r-oz) - Bump dawidd6/action-download-artifact from 9 to 10 (#499) (@dependabot[bot]) - CompatHelper: bump compat for QuantumInterface to 0.4, (keep existing compat) (#500) (@github-actions[bot]) - Initialize QECCore package and make it as a dependency of QC.jl (#502) (@nzy1997) - CompatHelper: bump compat for Makie in [weakdeps] to 0.23, (keep existing compat) (#507) (@github-actions[bot]) - Move some simple codes into QECCore.jl (#508) (@nzy1997) - Bump dawidd6/action-download-artifact from 10 to 11 (#510) (@dependabot[bot]) - CompatHelper: bump compat for Makie in [weakdeps] to 0.24, (keep existing compat) (#514) (@github-actions[bot]) - constructors from arrays of Paulis, and canonicalization of arrays of Paulis (#515) (@Krastanov) - doc updates and buildkite updates (#516) (@Krastanov) - chore: fix deprecation warnings and remove unused imports in tests (#520) (@LEXUGE) - Fixed incorrect phases on certain single qubit symbolics. (#521) (@Hamiltonian-Action) - Fixing incorrect phase when applying Paulis. (#523) (@Hamiltonian-Action) - fix: single qubit projection now takes Stabilizer (#527) (@LEXUGE) - split out the ECC tests (#536) (@Krastanov)

Closed issues: - Color codes [$200] (#360) - Performance of indexing PauliOperator with UnitRange (#455) - Document the simulator interface (#488) - Measurement doesn't take Stabilizer type. (#492)

Source: README.md, updated 2025-07-02