Preface to the Third Edition Preface to the Second Edition Preface to the First Edition CHAPTER 1 Mathematical Background 1.1. Algebra 1.2. Krawtchouk Polynomials 1.3. Combinatorial Theory 1.4. Probability Theory CHAPTER 2 Shannon's Theorem 2.1. Introduction 2.2. Shannon's Theorem 2.3. On Coding Gain 2.4. Comments 2.5. Problems CHAPTER 3 Linear Codes 3.1. Block Codes 3.2. Linear Codes 3.3. Hamming Codes 3.4. Majority Logic Decoding 3.5. Weight Enumerators 3.6. The Lee Metric 3.7. Comments 3.8. Problems CHAPTER 4 Some Good Codes 4.1. Hadamard Codes and Generalizations 4.2. The Binary Golay Code 4.3. The Ternary Golay Code 4.4. Constructing Codes from Other Codes 4.5. Reed-Muller Codes 4.6. Kerdock Codes 4.7. Comments 4.8. Problems CHAPTER 5 Bounds on Codes 5.1. Introduction: The Gilbert Bound 5.2. Upper Bounds 5.3. The Linear Programming Bound 5.4. Comments 5.5. Problems CHAPTER 6 Cyclic Codes 6.1. Definitions 6.2. Generator Matrix and Check Polynomial 6.3. Zeros of a Cyclic Code 6.4. The Idempotent of a Cyclic Code 6.5. Other Representations of Cyclic Codes 6.6. BCH Codes 6.7. Decoding BCH Codes 6.8. Reed-Solomon Codes 6.9. Quadratic Residue Codes 6.10. Binary Cyclic Codes of Length 2n n odd 6.11. Generalized Reed-Muller Codes
6.12. Comments 6.13. Problems CHAPTER 7 Perfect Codes and Uniformly Packed Codes 7.1. Lloyd's Theorem 7.2. The Characteristic Polynomial of a Code 7.3. Uniformly Packed Codes 7.4. Examples of Uniformly Packed Codes 7.5. Nonestence Theorems 7.6. Comments 7.7. Problems CHAPTER 8 Codes over Z4 8.1. Quaternary Codes 8.2. Binary Codes Derived from Codes over Z4 8.3. Galois Rings over Z4 8.4. Cyclic Codes over Z4 8.5. Problems CHAPTER 9 Goppa Codes 9.1. Motivation 9.2. Goppa Codes 9.3. The Minimum Distance of Goppa Codes 9.4. Asymptotic Behaviour of Goppa Codes 9.5. Decoding Goppa Codes 9.6. Generalized BCH Codes 9.7. Comments 9.8. Problems CHAPTER 10 Algebraic Geometry Codes 10.1. Introduction 10.2. Algebraic Curves 10.3. Divisors 10.4. Differentials on a Curve 10.5. The Riemann-Roch Theorem 10.6. Codes from Algebraic Curves 10.7. Some Geometric Codes 10.8. Improvement of the Gilbert-Varshamov Bound 10.9. Comments 10.10. Problems CHAPTER 11 Asymptotically Good Algebraic Codes 11.1. A Simple Nonconstructive Example 11.2. Justesen Codes 11.3. Comments 11.4. Problems CHAPTER 12 Arithmetic Codes 12.1. AN Codes 12.2. The Arithmetic and Modular Weight 12.3. Mandelbaum-Barrows Codes 12.4. Comments 12.5. Problems CHAPTER 13 Convolutional Codes 13.1. Introduction 13.2. Decoding of Convolutional Codes
13.3. An Analog of the Gilbert Bound for Some Convolutional Codes 13.4. Construction of Convolutional Codes from Cyclic Block Codes 13.5. Automorphisms of Convolutional Codes 13.6. Comments 13.7. Problems Hints and Solutions to Problems References Index