Projects

Project Description

Understanding the solutions to equations like (1) x^2-3x+1 = 0 or (2) x^3-2 = 0 is an at the same time an old and important problem, and it is related to very current research in Number Theory. This project is meant to (a) introduce the student to this field, (b) provide the tools to solve some of these problems, and (c) to write (simple) code to computationally investigate solutions to these kinds of problems. The number-theoretic approach to equations like (1) and (2) is to consider a prime number p (which can be 2, 3, 5, 7, 11, 13, 17, etc.) and to ask whether (1) or (2) have solutions "modulo p", which means that we want to find out if there is a whole number a such that a^2-3a+1 (or a^3-2 in case of equation (2)) is divisible by the prime number p. Then one wants to find a "law" that describes all prime numbers p for which this is the case. More generally, given any polynomial f(x) with integral coefficients one can ask that same question and one obtains a set of prime numbers, denoted Spl(f(x)), and called the splitting set of the polynomial f(x). For example, in case of equation (1) the polynomial is f(x) = x^2-3x+1, and the splitting set consists of all prime numbers of the form 5k+1 or 5k-1. In case of equation (2) the polynomial is f(x) = x^3-2, and the splitting set consists of all prime numbers p which can be written as s^2+27*t^3 (where s and t are themselves whole numbers). For example, p=31 is of this form: 31 = 2^2+27, and f(4)=62 is divisible by 31. The project will start by learning about "modular arithmetic", and then proceed towards the "Quadratic Reciprocity Law" which is a gem of Number Theory and is used to completely solve the case of polynomials f(x) of degree 2. Then we will investigate polynomials of degree 3 and beyond, by theoretic methods and computer experiments.

Technology or Computational Component

The computational component consists firstly in writing small programs which determine whether a polynomial f(x) has a root modulo a prime p (and how many roots there are). Then we will use theoretic information to check computationally that the sets of splitting primes Spl(f(x)) we have found are indeed the right sets. This, however, can only be done for those polynomials f(x) where a characterization of the splitting set Spl(f(x)) is known. Here we will also touch upon the topic "modular forms". Finally, we will consider polynomials where no such characterization is known, and we will try to find patterns that govern those sets of splitting primes.