Unit content
Binary linear block codes and parity-check matrices
A binary linear block code encodes $k$ information bits into an $n$-bit codeword using arithmetic modulo $2$.
The set of valid codewords is closed under bitwise modulo-$2$ addition. A generator matrix $G$ maps a message vector $u$ to a codeword
$$c=uG\pmod 2.$$
A parity-check matrix $H$ describes the constraints satisfied by every valid codeword:
$$Hc^T=0\pmod 2.$$
If the received word is
$$r=c+e\pmod 2,$$
where $e$ is an error pattern, the syndrome is
$$s=Hr^T=He^T\pmod 2.$$
A zero syndrome means the received word satisfies all parity checks; a nonzero syndrome provides information about which error pattern may have occurred.
Linear structure makes encoding and checking efficient because many valid codewords can be described by matrix operations rather than stored individually.