Chapter 1

Introduction to Coding

Theory

1.1. Overview

Whenever data is transmitted across a channel, errors are likely to

occur. It is the goal of coding theory to ﬁnd eﬃcient ways of encod-

ing the data so that these errors can be detected, or even corrected.

Traditionally, the main tools used in coding theory have been those

of combinatorics and group theory. In 1977, V. D. Goppa deﬁned

algebraic geometric codes [Go], thus allowing a wide range of tech-

niques from algebraic geometry to be applied. Goppa’s idea has had

a great impact on the ﬁeld. Not long after Goppa’s original paper,

Tsfasman, Vladut and Zink [TVZ] used modular curves to construct

a sequence of codes with asymptotically better parameters than any

previously known codes. The goal of this course is to introduce you to

some of the basics of coding theory, algebraic geometry, and algebraic

geometric codes.

Before we write down a rigorous deﬁnition of a code, let’s look

at some examples. Probably the most commonly seen code in day-

to-day life is the International Standardized Book Number (ISBN)

Code. Every book is assigned an ISBN, and that ISBN is typically

displayed on the back cover of the book. For example, the ISBN for

The Theory of Error-Correcting Codes by MacWilliams and Sloane

1

http://dx.doi.org/10.1090/stml/007/01