How large can you make a code such that no subcode is a single parity check code?

89 Views Asked by At

Consider a binary $(k,k,1)$ code $\mathcal C_0$, i.e. $\mathcal C_0 = \mathbb F_2^k$. We extend this to a $(k+1,k,d_1)$ code $\mathcal C_1 = \mathcal C_0 \cup \boldsymbol c_{k+1}$ by appending a column $\boldsymbol c_{k+1} \in \mathbb F_2^{2^k \times 1}$ to the $2^k \times k$ codebook matrix where the rows are codewords. Continuing with the appendation, with $\mathcal C_i = \mathcal C_{i-1} \cup \boldsymbol c_{k+i}$ being a $(k+i,k,d_i)$ code (note that $\mathcal C\cup \boldsymbol c$ is clearly abusing notation - it means "appending the column $\boldsymbol c$ to the codebook matrix representation of the code $\mathcal C$ in this context).

Suppose each $\boldsymbol c_i$ is constrained to have Hamming weight $2^{k-1}$ (i.e. half ones, half zeros) and furthermore must be chosen such that $\boldsymbol c_i \neq \boldsymbol c_j$ and $\boldsymbol x_i \neq \boldsymbol x_j$ where $\boldsymbol x_i$ is a row in the codebook matrix. Then, how many columns can one add before we are certain that $\mathcal C_i$ contains a subcode that is the single-parity check code? Note that any $(k+1,k,2)$ subcode is a single-parity check code.

I'll try to find a solution tomorrow if no one beats me to it. My guess is that the largest value of $k+i$ will have some relation to the sphere-packing bound but I have not formalized that thought yet.

EDIT: Actually, there is one condition missing, namely that the new column $\boldsymbol c_{k+i}$ can not be chosen such that two codewords in $\mathcal C_i$ (i.e. two rows in the codebook matrix) are equal. I've now added it.

For linear codes, it is believable that you can make a $(2^k-2,k)$ code such that no subcode is the SPC because a generator column of Hamming weight $k$ generates a SPC, i.e. just pick all vectors in $\mathbb F_2^k$ except for the all-zero and the all-one vector. This does not work though because there are other ways a SPC subcode can be generated. Indeed, a necessary condition is $\sum_{i=1}^n \alpha_i \boldsymbol g_i = 0, \sum_{i=1}^n \alpha_i = k+1$ where $\boldsymbol g_i$ is the $i$:th column of the generator matrix.