Skip to content

Suggested Projects and Explorations

Study empirical properties of prime numbers through computation.

Project 1. Prime Number Experiments

Goals

Study empirical properties of prime numbers through computation.

Possible Tasks

  1. Implement the sieve of Eratosthenes.
  2. Plot the prime counting function
π(x). \pi(x).
  1. Compare
π(x) \pi(x)

with

xlogx. \frac{x}{\log x}.
  1. Investigate prime gaps.
  2. Search for twin primes.
  3. Compute distributions of primes modulo small integers.

Extensions

  • Study the Chebyshev functions.
  • Experiment with probabilistic prime models.
  • Compare actual prime counts with logarithmic integral approximations.

Project 2. Modular Arithmetic Toolkit

Goals

Build reusable computational tools for modular arithmetic.

Possible Tasks

  1. Implement modular addition and multiplication.
  2. Implement fast modular exponentiation.
  3. Compute modular inverses.
  4. Solve systems using the Chinese remainder theorem.
  5. Build a congruence equation solver.

Extensions

  • Implement finite field arithmetic.
  • Build RSA encryption routines.
  • Explore modular arithmetic in cryptography.

Project 3. Diophantine Equation Explorer

Goals

Investigate integer and rational solutions of equations.

Possible Tasks

  1. Generate primitive Pythagorean triples.
  2. Solve Pell equations computationally.
  3. Search for rational points on curves.
  4. Investigate sums of squares.
  5. Experiment with congruence obstructions.

Extensions

  • Implement continued fraction methods.
  • Study elliptic curve point searches.
  • Explore local-global principles numerically.

Project 4. Arithmetic Functions Laboratory

Goals

Study behavior of arithmetic functions experimentally.

Possible Tasks

  1. Compute:
φ(n),μ(n),τ(n),σ(n). \varphi(n),\quad \mu(n),\quad \tau(n),\quad \sigma(n).
  1. Plot average growth.
  2. Study multiplicativity.
  3. Test Möbius inversion numerically.
  4. Investigate divisor distributions.

Extensions

  • Compare asymptotic predictions with data.
  • Explore normal order phenomena.
  • Study random models of arithmetic functions.

Project 5. Continued Fractions and Approximation

Goals

Explore rational approximation and irrationality.

Possible Tasks

  1. Compute continued fraction expansions.
  2. Study convergents of irrational numbers.
  3. Approximate:
2,e,π. \sqrt{2},\quad e,\quad \pi.
  1. Investigate periodicity of quadratic irrationals.
  2. Use continued fractions to solve Pell equations.

Extensions

  • Study Diophantine approximation constants.
  • Explore irrationality measures.
  • Investigate badly approximable numbers.

Project 6. Quadratic Residue Experiments

Goals

Explore patterns in quadratic residues.

Possible Tasks

  1. Compute quadratic residues modulo primes.
  2. Test Euler’s criterion.
  3. Implement Legendre and Jacobi symbols.
  4. Verify quadratic reciprocity computationally.
  5. Study residue patterns visually.

Extensions

  • Explore higher reciprocity laws.
  • Investigate character sums.
  • Study pseudorandom behavior of residues.

Project 7. Zeta Function Visualization

Goals

Study analytic number theory numerically.

Possible Tasks

  1. Approximate the zeta function numerically.
  2. Plot values on the real axis.
  3. Visualize zeros on the critical strip.
  4. Explore Euler product convergence.
  5. Compare partial sums and products.

Extensions

  • Investigate the critical line.
  • Study explicit formulas numerically.
  • Compare zero statistics with random matrices.

Project 8. Elliptic Curve Arithmetic

Goals

Study arithmetic on elliptic curves.

Possible Tasks

  1. Implement point addition.
  2. Implement scalar multiplication.
  3. Count points over finite fields.
  4. Visualize real elliptic curves.
  5. Search for rational points.

Extensions

  • Implement elliptic curve cryptography.
  • Study torsion points.
  • Compute ranks experimentally.

Project 9. Lattice Geometry

Goals

Explore arithmetic lattices geometrically.

Possible Tasks

  1. Visualize integer lattices.
  2. Implement lattice basis reduction.
  3. Study shortest vector problems.
  4. Explore Minkowski geometry.
  5. Compute lattice determinants.

Extensions

  • Investigate cryptographic lattices.
  • Study sphere packings.
  • Explore connections with quadratic forms.

Project 10. Finite Fields and Coding

Goals

Study finite arithmetic systems computationally.

Possible Tasks

  1. Implement arithmetic in finite fields.
  2. Construct irreducible polynomials.
  3. Explore vector spaces over finite fields.
  4. Build simple error-correcting codes.
  5. Study cyclic codes.

Extensions

  • Implement Reed-Solomon codes.
  • Explore BCH codes.
  • Study finite geometry.

Project 11. Computational Algebraic Number Theory

Goals

Investigate arithmetic in number fields.

Possible Tasks

  1. Compute algebraic integers.
  2. Compute norms and traces.
  3. Factor ideals.
  4. Explore class numbers numerically.
  5. Study unit groups.

Extensions

  • Use computational algebra systems.
  • Investigate unique factorization failure.
  • Explore explicit class field computations.

Project 12. Modular Forms and qq-Expansions

Goals

Study modular forms computationally.

Possible Tasks

  1. Compute Fourier coefficients.
  2. Explore Eisenstein series.
  3. Study cusp forms numerically.
  4. Investigate congruences among coefficients.
  5. Compute Hecke eigenvalues.

Extensions

  • Compare modular forms with elliptic curves.
  • Study modularity experimentally.
  • Explore computational automorphic forms.

Project 13. Randomness and Arithmetic

Goals

Study statistical behavior in number theory.

Possible Tasks

  1. Examine distributions of primes.
  2. Study randomness of Möbius values.
  3. Investigate digit frequencies.
  4. Explore pseudorandom arithmetic sequences.
  5. Compare data with probabilistic heuristics.

Extensions

  • Study random multiplicative functions.
  • Explore arithmetic chaos.
  • Compare with random matrix statistics.

Project 14. Cryptography Systems

Goals

Build practical arithmetic cryptosystems.

Possible Tasks

  1. Implement RSA.
  2. Implement Diffie-Hellman.
  3. Implement elliptic curve cryptography.
  4. Explore digital signatures.
  5. Study cryptographic attacks.

Extensions

  • Implement lattice cryptography.
  • Explore post-quantum methods.
  • Benchmark algorithmic performance.

Project 15. Historical Reconstruction

Goals

Recreate classical arguments and methods.

Possible Tasks

  1. Rework proofs from Euclid.
  2. Reconstruct Euler’s zeta arguments.
  3. Study Gauss’s quadratic reciprocity proofs.
  4. Compare historical notation with modern notation.
  5. Translate historical methods into computational form.

Extensions

  • Read original historical sources.
  • Compare classical and modern proofs.
  • Write annotated reconstructions.

Project 16. Formalization and Proof Verification

Goals

Study computer-verified mathematics.

Possible Tasks

  1. Formalize Euclidean algorithm proofs.
  2. Verify modular arithmetic theorems.
  3. Implement proof assistants.
  4. Explore automated theorem proving.
  5. Study formal verification of algebraic structures.

Extensions

  • Formalize elementary number theory.
  • Explore certified cryptography.
  • Compare human and machine proof styles.

Project 17. Building a Number Theory Library

Goals

Create a reusable arithmetic software framework.

Possible Tasks

  1. Design arithmetic data structures.
  2. Implement prime testing.
  3. Implement factorization algorithms.
  4. Add modular arithmetic modules.
  5. Add finite field support.

Extensions

  • Add elliptic curves.
  • Add symbolic algebra.
  • Build visualization tools.
  • Create benchmarking infrastructure.

Project 18. Open Research Exploration

Goals

Connect computation with modern research questions.

Possible Tasks

  1. Investigate bounded prime gaps experimentally.
  2. Study random matrix statistics for zeta zeros.
  3. Explore arithmetic geometry datasets.
  4. Analyze modular form databases.
  5. Search for new arithmetic patterns.

Extensions

  • Use large public datasets.
  • Compare conjectures with computation.
  • Build visual exploration tools.

General Advice for Projects

Start Small

Many important ideas appear clearly in small examples. Begin with low-dimensional or low-parameter cases before scaling up.

Combine Theory and Computation

Computation without theory becomes blind experimentation. Theory without examples can become abstract and disconnected. Strong understanding comes from combining both.

Record Observations Carefully

Unexpected patterns often lead to deeper questions. Maintain detailed notes, examples, and counterexamples.

Visualize Whenever Possible

Plots, diagrams, tables, and graphs frequently reveal hidden arithmetic structure.

Study Existing Literature

Before extending a project, compare observations with known results and databases.

Build Reusable Tools

Well-designed arithmetic code becomes useful across many projects. Modular software design mirrors mathematical abstraction.