Error correction coding techniques allow the detection and correction of errors occurring during the transmission of data in digital communication systems. These techniques are nearly universally employed in modern communication systems, and are thus an important component of the modern information economy.
Error Correction Coding: Mathematical Methods and Algorithms provides a comprehensive introduction to both the theoretical and practical aspects of error correction coding, with a presentation suitable for a wide variety of audiences, including graduate students in electrical engineering, mathematics, or computer science. The pedagogy is arranged so that the mathematical concepts are presented incrementally, followed immediately by applications to coding. A large number of exercises expand and deepen students′ understanding. A unique feature of the book is a set of programming laboratories, supplemented with over 250 programs and functions on an associated Web site, which provides hands–on experience and a better understanding of the material. These laboratories lead students through the implementation and evaluation of Hamming codes, CRC codes, BCH and R–S codes, convolutional codes, turbo codes, and LDPC codes.
This text offers both "classical" coding theorysuch as Hamming, BCH, Reed–Solomon, Reed–Muller, and convolutional codesas well as modern codes and decoding methods, including turbo codes, LDPC codes, repeat–accumulate codes, space time codes, factor graphs, soft–decision decoding, Guruswami–Sudan decoding, EXIT charts, and iterative decoding. Theoretical complements on performance and bounds are presented. Coding is also put into its communications and information theoretic context and connections are drawn to public key cryptosystems.
Ideal as a classroom resource and a professional reference, this thorough guide will benefit electrical and computer engineers, mathematicians, students, researchers, and scientists.
List of Program Files.
List of Laboratory Exercises.
List of Algorithms.
List of Figures.
List of Tables.
List of Boxes.
PART I: INTRODUCTION AND FOUNDATIONS.
1. A Context for Error Correcting Coding.
PART II: BLOCK CODES.
2. Groups and Vector Spaces.
3. Linear Block Codes.
4. Cyclic Codes, Rings, and Polynomials.
5. Rudiments of Number Theory and Algebra.
6. BCH and Reed–Solomon Codes: Designer Cyclic Codes.
7. Alternate Decoding Algorithms for Reed–Solomon Codes.
8. Other Important Block Codes.
9. Bounds on Codes.
10. Bursty Channels, Interleavers, and Concatenation.
11. Soft–Decision Decoding Algorithms.
PART III: CODES ON GRAPHS.
12. Convolution Codes.
13. Trefils Coded Modulation.
PART IV: INTERATIVELY DECODED CODES.
14. Turbo Codes.
15. Low–Density Parity–Check Codes.
16. Decoding Algorithms on Graphs.
PART V: SPACE–TIME CODING.
17. Fading Channels and Space–Time Coding.