This document summarizes key concepts around error detection and correction techniques. It discusses how data can be corrupted during transmission and the need for redundancy to detect and correct errors. Specific techniques covered include cyclic redundancy checks (CRCs), checksums, and cyclic codes. CRCs treat data as polynomials and divide by a generator polynomial to get a remainder that is sent with the data for error checking. Checksums involve sending the sum of data values to check against at the receiver. Cyclic codes allow for cyclic shifts of codewords without changing the meaning. Examples are provided to illustrate these error detection and correction methods.