A method of decoding linear block code uses an iterative message passing
algorithm with a binary image of a parity check matrix of the linear
block code, wherein the parity check matrix is adapted from one iteration
to another based on the reliabilities of bits in the linear block code.
The adaptation involves reducing a submatrix corresponding to the less
reliable bits in the linear block code to a sparse nature before applying
the message passing algorithm in each iteration. An apparatus that
performs the method is also provided and several variations of the
algorithm are also provided.