Below is an annotated list of topics for the final exam. Several sections have a small amount of notes under them you can use to study, and each has where the topic appears either in Hall’s text or in Prof. Martin’s videos and handouts.
If you would prefer this in PDF form (some of the math appears much nicer in it), you can find that here. It updates as often as this page does, as they are generated from the same source (so the PDF funnily contains a link to itself!)
Prepared with much help from Ethan Washock and Gina Quinn.
- Finite fields (Hall Appendix A)
- Considered prereq, no notes (unless someone wants some)
- Vector spaces (Hall Appendix A)
- Considered prereq, no notes (unless someone wants some)
- Error detection versus error correction
- Bounds
- Hamming (Hall 21)
- Let C be an e-error-correcting code in An with |A| = m. Then:
$$\lvert C \rvert \le \frac{m^n}{\sum_{i=0}^e \binom{n}{i} (m - 1)^i}$$
- Let C be an e-error-correcting code in An with |A| = m. Then:
- Plotkin (Hall 36)
- TODO notes
- Singleton (Hall 44)
- If C is an [n, k] linear code, then dmin(C) ≤ n − k + 1, and |C| ≤ qn − d + 1.
- A code that meets the Singleton bound with equality is called Maximum Distance Separable (MDS), where every subset of n − k + 1 coordinate positions supports (contains the nonzero entries) a codeword in an MDS code.
- Gilbert-Varshamov (Hall 23)
- TODO notes
- Hamming (Hall 21)
- Perfect codes (Hall 22)
- A code C which achieves the Hamming bound for
$$e = \left\lfloor \frac{d - 1}{2} \right\rfloor$$
- A code C which achieves the Hamming bound for
- Channel models (Hall’s intro, 1-6)
- Maximum likelihood decoding (Hall 8) vs. nearest neighbor decoding (Hall 18)
- Linear codes (Hall Ch. 4)
- Examples
- Also see Hamming codes below.
- Cosets
- Decoding (see Prof. Martin’s handout)
- Syndrome decoding (w/ syndromes in Hall 49)
- Iterative syndrome decoding
- Dual codes (Hall 42)
- The dual code of a code C in 𝔽n, denoted C⊥, is the set of codewords x such that the dot product of x with any codeword in C is 0. That is:
C⊥ = {x∈𝔽n ∣ x⋅c=0,∀c∈C} - If C is an [n, k] linear code over 𝔽, then its dual C⊥ is an [n, n − k] linear code over 𝔽 and C ⊥ ⊥ = C.
- The dual code of a code C in 𝔽n, denoted C⊥, is the set of codewords x such that the dot product of x with any codeword in C is 0. That is:
- Examples
- The hexacode
- Defined over the field 𝔽4 = {0, 1, α, β}, (where β = α2).
- Has length 6 and dimension 3.
- We can write a hexacodeword as three pairs, ab cd ef, allowing us to state an equivalent definition with three rules. That is, a 6-tuple is a hexacodeword if and only if:
- The one-rule (also used to calculate the slope s ∈ 𝔽q):
a + b = c + d = e + f = s - The alpha-rule:
a + c + e = a + d + f = b + c + f = b + d + e = αs - The beta-rule:
a + c + f = a + d + e = b + c + e = b + d + f = βs
- The one-rule (also used to calculate the slope s ∈ 𝔽q):
- See Prof. Martin’s worksheet for the following:
- the 3-problem, the correction of up to three erasures.
- the 5-problem, the correction of (at max) one error and an erasure.
- G23
- the extended binary Golay code (G24)
- decoding errors and erasures for G24
- Hamming codes (Hall Ch. 5)
- A linear code over 𝔽q is a Hamming code of redundency r, written Hamr(q), if it has a check matrix whose collection of columns contains a unique nonzero scalar multiple of every r-tuple from 𝔽q (Hall 59).
- Thm: A Hamming code of redundancy r ( ≥ 2) over the field 𝔽, |𝔽| = q, is a linear
$$\left[\frac{q^r - 1}{q - 1}, \frac{q^r - 1}{q - 1} - r, 3 \right]$$
code and is a perfect 1-error-correcting code. (Can you prove it?)
- Evaluation codes (Hall 45)
- TODO notes
- Reed-Solomon codes (Hall Ch. 6)
- Decoding: TODO find in Hall, add notes
- Reed-Muller codes (Hall 66)
- TODO notes
- Quantum error detection
- Prof. Martin’s module of videos (some linked below)
- Definition (see module)
- Knill-Laflamme Theorem
The statement of the theorem (I strongly recommend watching the video again for a more in-depth presentation):
Let Q be a subspace of the n-qubit quantum register A having dimension at least three (n ≥ 2). Let 𝒯 ⊆ Mat2n(ℂ) be any set of 2n × 2n matrices. Then the following are equivalent:
- Q allows correction of all errors in 𝒯.
- All errors in 𝒯†𝒯 = {E†E′ : E, E′ ∈ 𝒯} are detectable relative to Q.
- For all E and E′ in 𝒯, for all x, y ∈ Q, if x ⊥ y, then Ex ⊥ E′y.
- For all E and E′ in 𝒯, there exists a constant λ(E, E′) such that, for all x ∈ Q,
$$\left<Ex, E'x\right> = \lambda_{(E,E')} \lVert x \rVert^2$$ - For each E in 𝒯†𝒯, there is a constant λE such that
πQEπQ = λEπQ
where πQ is the matrix representing the orthogonal projection of A onto Q.
- Cyclic codes (Hall Ch. 8)
- BCH codes (Hall 8.3, starts 111)
- TODO notes