Releases: Infleqtion/qLDPC
Releases · Infleqtion/qLDPC
v0.0.26
What's Changed
- Fix missing part of
BBCode
layout search space by @perlinm in #205 - Add extended Hamming code by @perlinm in #206
- clean up check script configurations by @perlinm in #207
- Fix return type of
get_encoding_tableau
by @vtomole in #209 - More caching in automorphism group calculation by @perlinm in #210
- Calculate the exact distance of binary codes with brute force in cython by @perlinm in #211
- version bump to 0.0.25 by @perlinm in #212
- pip install to jupyter environment inside notebooks by @perlinm in #215
- bugfix in exact distance calculation for large quantum codes by @perlinm in #217
- fix workflow caching and version bump by @perlinm in #218
Full Changelog: v0.0.24...v0.0.26
v0.0.24
What's Changed
- Improve interface for injecting custom decoders by @perlinm in #180
- Add circuits.get_logical_tableau by @perlinm in #181
- Inherit logical operators when stacking quantum codes by @perlinm in #182
- Add capability to deform a code by physical Clifford operations by @perlinm in #183
- Allow initializing QuditCodes from stabilizers in [X|Z] form by @perlinm in #189
- Make
circuits.get_encoding_circuit
encode arbitrary states of a code by @perlinm in #190 - Using a bipartite matching algorithm by @jmlarson1 in #192
- add
qldpc.objects.conjugate_xz
by @perlinm in #195 - Identify SWAP-transversal gates with code deformation by @perlinm in #193
- Define all Pauli strings (including rows of parity check matrices) in [X|Z] format by @perlinm in #196
- Fix qudit surface/toric codes by @perlinm in #197
- Precomputing distances and locations by @jmlarson1 in #194
- Reproduce Table 1 of arXiv:2404.18809 by @perlinm in #198
- Recycle distance calculations in
examples/find_bbcode_layouts.py
by @perlinm in #199 - Switch from
classmethod
s tostaticmethod
s by @perlinm in #200 - Add IcebergCode by @perlinm in #201
- More speedups and a nicer a nicer user interface in
find_bbcode_layouts.py
by @perlinm in #202 - version bump to 0.0.24 by @perlinm in #203
New Contributors
- @jmlarson1 made their first contribution in #192
Full Changelog: v0.0.23...v0.0.24
v0.0.23
Feature changes
- Add basic example notebook for finding transversal gates by @perlinm in #167
- Add capability to set logical operators by @perlinm in #169
- Compute logical error rates in a code capacity model (and add example notebook) by @perlinm in #172
Implementation / refactoring changes
- Rearrange output of
circuits.get_transversal_ops
by @perlinm in #165 - Hard-code some known groups by @perlinm in #166
- Parallelize brute-force calculation of multiple transversal circuit implementations by @perlinm in #168
- Refactor decoders by @perlinm in #171
- Compute code capacity with importance sampling by @perlinm in #174
- Fix calculation of standard error in code capacity calculations by @perlinm in #178
Full Changelog: v0.0.21...v0.0.23
v0.0.21
What's Changed
- Combine formatting and linting checks by @perlinm in #156
- Add more decoders from
ldpc
and use BP-LSD by default by @perlinm in #157 - Add early stopping to
*Code.get_distance_bound
methods by @perlinm in #158 - Revert to BP-OSD as the default decoder by @perlinm in #159
- Allow stacking many codes by @perlinm in #161
- Flatten logical operator arrays (
QuditCode.get_logical_ops()
) into a matrix by @perlinm in #163 - Add quantum code concatenation by @perlinm in #162
- version bump to 0.0.21 by @perlinm in #164
Full Changelog: v0.0.20...v0.0.21
v0.0.20
What's Changed
- add gap to external/init.py by @perlinm in #147
- Clean up example notebooks by @perlinm in #149
- Simplify encoding tableau and circuit by @perlinm in #150
- Add methods to "stack" codes by @perlinm in #148
- Add (brute force) calculation of code distance for QuditCodes by @perlinm in #151
- Add code cannonicalization and validation by @perlinm in #152
- Add helper functions for qubit placement + layouts in the BBCode by @perlinm in #153
- Update ldpc version by @perlinm in #154
- version bump to 0.0.20 by @perlinm in #155
Full Changelog: v0.0.19...v0.0.20
v0.0.19
Biggest highlights
- Add encoding circuits for qubit codes by @perlinm in #136
- Add calculation of the automorphism group for classical linear codes by @perlinm in #138
- Construct transversal Clifford gates for qubit codes by @perlinm in #139
- Find a physical transversal circuit for a logical Clifford, if possible by @perlinm in #143
Other changes
- Pin working
ldpc
dependency by @dowusu-antwi in #134 - Update to sphinx-autoapi by @cdbf1 in #135
- Factor out GAP interface by @perlinm in #137
- Clean up interactions between cache and pytest by @perlinm in #140
- Upgrade to
ldpc_v2
by @perlinm in #141 - version bump to
0.0.19
by @perlinm in #145
New Contributors
- @dowusu-antwi made their first contribution in #134
- @cdbf1 made their first contribution in #135
Full Changelog: v0.0.18...v0.0.19
v0.0.18
What's Changed
- Add quasi-cyclic code (QCCode) and factor out bivariate bicycle code (BBCode) by @perlinm in #130
- Better interface for identifying "toric layouts" of BBCodes
- Remove conjugated argument from
QuditCode.__init__
methods by @perlinm in #131 - Minor bugfixes
Full Changelog: v0.0.17...v0.0.18
v0.0.17
v0.0.16
What's Changed
- Change convention for logical operators by @perlinm in #97
- Add bare-bones documentation by @perlinm in #98
- Change conventions for
CSSCode.matrix
by @perlinm in #114 - Improved modular coverage by @perlinm in #115
- Remove 'script' dependency by @perlinm in #124
- Use
ruff
for formatting and linting by @perlinm in #126 - Change logical operator format by @perlinm in #127
- Protograph bugfixes by @perlinm in #128
Full Changelog: v0.0.15...v0.0.16
v0.0.15
What's Changed
- PSL by @michaelontiveros in #94
- Additions to the group PSL. by @michaelontiveros in #95
- Rename generalized bicycle code (GBCode) to two-block code (TBCode) by @perlinm in #96
New Contributors
- @michaelontiveros made their first contribution in #94
Full Changelog: v0.0.14...v0.0.15