  The performance of Gallager's error-correcting code is investigated via
methods of statistical physics. In this approach, the transmitted codeword
comprises products of the original message bits selected by two
randomly-constructed sparse matrices; the number of non-zero row/column
elements in these matrices constitutes a family of codes. We show that
Shannon's channel capacity is saturated for many of the codes while slightly
lower performance is obtained for others which may be of higher practical
relevance. Decoding aspects are considered by employing the TAP approach which
is identical to the commonly used belief-propagation-based decoding.
