Low-density parity-check codes - Gallager, Robert G. (The MIT Press, 2003)