= Solution
Write $\mathbf1_n$ for the all-one column vector. The <parity-check extension of a linear code> is
$$
C^+=\{(c_1,\ldots,c_n,c_1+\cdots+c_n):c\in C\}.
$$
The defining map $C\to\mathbb F_2^{n+1}$ is <linear map>[linear], so $C^+$ is a binary <linear code>. If $G$ is a <generator matrix> and $H$ a <parity-check matrix> for $C$, then one may take
$$
G^+=\begin{pmatrix}G&G\mathbf1_n\end{pmatrix},
\qquad
H^+=
\begin{pmatrix}
H&0\\
\mathbf1_n^T&1
\end{pmatrix}.
$$
The <punctured code> in, say, the last coordinate is
$$
C^-=\{(c_1,\ldots,c_{n-1}):c\in C\}.
$$
Coordinate deletion is a <linear map>, so $C^-$ is <linear code>[linear]. Its <generator matrix> $G^-$ is obtained by deleting the last column of $G$. If the <minimum Hamming distance of a linear code>[minimum distance] is at least two, deletion is injective on $C$, and hence $C^-$ has the same dimension as $C$.
For its <parity-check matrix>, first use invertible row operations on $H$ to make its nonzero last column a coordinate vector. The last column is nonzero because otherwise the weight-one word supported there would belong to $C$, contrary to $d\geq2$. Delete the pivot row and the last column; the resulting matrix $H^-$ is a <parity-check matrix> for $C^-$. Equivalently, $(C^-)^\perp$ is obtained by shortening the <dual code> $C^\perp$ at the deleted coordinate.
Finally, the <shortened code> in the last coordinate is
$$
C'=\{(c_1,\ldots,c_{n-1}):(c_1,\ldots,c_{n-1},0)\in C\}.
$$
It is linear whenever $C$ is linear, because it is the puncture of the subspace $C\cap\{x_n=0\}$.
Back to article page