Bivariate Bicycle (BB) codes were introduced in [1]. These families of QEC codes are defined via parity check matrices containing a two block structure of the form $H_{X} = (A|B)$ and $H_{Z} = (B^{T}|A^{T})$. The matrices $A$ and $B$ are both defined as polynomials of the form e.g. $A = x^3 + y^2 + y$, where each variable corresponds to a square matrix. These variables are defined as $x = S_{l} \otimes \mathbf{I}_{m}$ and $y = \mathbf{I}_{l} \otimes S_{m}$, where $S_{k}$ are cyclic matrices, meaning both $x$ and $y$ have dimensions ($lm$ x $lm$).
Counting the number of columns in $H_{X,Z}$, we obtain there are a total of $n=2lm$ data qubits. Adding the number of rows of $H_{X}$ and $H_{Z}$, we obtain a total of $n=2lm$ checks. The number of logicals supported by a specific code is given by $k = n - \textrm{rank}(H_{X}) - \textrm{rank}(H_{Z})$. Assuming that parameters have been chosen such that the code hosts at least one logical qubits, we conclude that the parity-check matrices $H_{X,Z}$ are thus reducible.
Question:
Why are the matrices never reduced in the description of BB codes? In particular, for the Gross code $[[144,12,12]]$ example, a whole circuit is presented in [1], based on the structure of $H_{X,Z}$, which measures $n$ stabilizers. Is there any advantage in measuring more stabilizers than necessary? e.g. does that make it easier to build the syndrome extraction circuit (or other structures associated with the code?)? Does it make decoding easier?...Is this something standard for qLDPC codes?
Refs: