Further Reading: Coding Theory — Error-Correcting Codes
Annotated pointers for going deeper. Coding theory sits at the meeting point of linear algebra, finite fields, and systems engineering, so the readings split three ways: the discrete-math treatments that match this chapter's level, the algebra (finite fields) that the theory rests on, and the real systems where the codes live. Start with the textbook sections, then follow whichever thread — distance theory, Hamming codes, or Reed–Solomon — pulls you.
Core textbook treatments
Rosen, Discrete Mathematics and Its Applications (8th ed.), coding-theory sections The market-standard discrete-math presentation of Hamming distance, the detection/correction thresholds, and binary block codes, at exactly this chapter's level and with a large graded exercise bank. The first place to go for more drill on distance and threshold problems.
Lehman, Leighton & Meyer, Mathematics for Computer Science (MIT 6.042), the error-correcting-codes material Freely available. Develops codes the CS way — as subspaces over $\mathrm{GF}(2)$, with the same "linearity collapses the theory" spirit as §38.5. Its treatment of the Hamming code and the sphere-packing (Hamming) bound pairs directly with this chapter's Exercise 38.31.
Levin, Discrete Mathematics: An Open Introduction (3rd ed.) Freely available. A gentle, readable companion if any of the linear-algebra-over-$\mathrm{GF}(2)$ steps in §38.5 felt fast. Good for re-grounding the vector-space view of codes before pushing into Reed–Solomon.
The algebra underneath: finite fields
Rosen, Discrete Mathematics and Its Applications (8th ed.), finite-field and modular-arithmetic sections Re-read alongside §38.6: the "$\le k-1$ roots over a field" fact and the contrast between $\mathrm{GF}(2^8)$ and $\mathbb{Z}_{256}$ (zero divisors) are the load-bearing wall under Reed–Solomon. This is the same material Chapter 24 built on, now paying rent.
Lehman, Leighton & Meyer, Mathematics for Computer Science (MIT 6.042), the number-theory and finite-field chapters Freely available. The cleanest free derivation of why polynomials over a field have at most as many roots as their degree — exactly the theorem that forces $d_{\min} = n - k + 1$ for Reed–Solomon (§38.6).
Algorithms and program correctness
Cormen, Leiserson, Rivest & Stein (CLRS), Introduction to Algorithms (4th ed.), matrix and number-theoretic chapters The canonical reference for the matrix arithmetic behind generator/parity-check matrices and for the modular-arithmetic algorithms that finite-field implementations need. Useful when you turn the §38.5 matrix view into running code.
Knuth, The Art of Computer Programming, Vol. 2: Seminumerical Algorithms, finite-field and polynomial arithmetic sections The deep reference (Tier 1) for implementing arithmetic in $\mathrm{GF}(2^8)$ — the gritty mechanics a production Reed–Solomon encoder needs and that this chapter deliberately treated only structurally. Reach for it when Exercise/capstone work pushes past binary Hamming codes.
Deeper dives (the dedicated literature)
MacWilliams & Sloane, The Theory of Error-Correcting Codes The classic, comprehensive monograph on coding theory (Tier 1): linear codes, Hamming and Reed–Solomon families, the Singleton bound, and far beyond. Encyclopedic and advanced — the reference you graduate into after this chapter, not a first read. Browse the chapters on cyclic and Reed–Solomon codes once §38.6 feels solid.
Reed & Solomon, "Polynomial Codes over Certain Finite Fields" (Journal of the Society for Industrial and Applied Mathematics, 1960) Tier 2 — attributed. The original paper introducing the code that now lives in every QR scanner, CD, and deep-space link. Short and historically illuminating; read it for the "evaluate a polynomial at many points" idea in its first form (§38.6's evaluation view), not for modern decoding algorithms.
Hamming, "Error Detecting and Error Correcting Codes" (Bell System Technical Journal, 1950) Tier 2 — attributed. Hamming's founding paper — the weekend-lost-to-a-card-reader story from §38.4 made rigorous. Remarkably accessible; it builds the $(7,4)$ code and the distance idea from scratch, and reading it is the best way to see why the parity bits sit at powers of two.
On the real systems
Katz & Lindell, Introduction to Modern Cryptography (3rd ed.), the algebra/number-theory background chapters Tier 1. Not about codes per se, but its careful development of groups, rings, and fields is the most exam-friendly refresher for the $\mathrm{GF}(2^8)$ structure that Reed–Solomon (and §38.6) depend on.
Suggested order
- Re-read §§38.2–38.3 here, then do the Rosen coding-theory exercises for drill on distance and the two threshold theorems.
- Read the MIT 6.042 error-correcting-codes material for the subspace/linearity framing of §38.5, and try Exercise 38.31 (the Hamming bound) alongside it.
- Before §38.6 sinks in, revisit a finite-fields treatment (Rosen or 6.042) so the "$\le k-1$ roots over a field" argument is second nature.
- Read Hamming's 1950 paper for the founding intuition, then Reed & Solomon's 1960 paper for the polynomial-evaluation idea.
- Save MacWilliams & Sloane (and Knuth Vol. 2 for implementation) for after the capstone, when you want to build a real Reed–Solomon codec over $\mathrm{GF}(2^8)$.