A CIMPA research school on
Arithmetic in action:
Number Theory and its Applications to
Cryptography and Coding Theory

Gadjah Mada University
Yogyakarta, Indonesia
July 14th-25th 2025















Courses


Algebraic Number Theory (Fabien Pazuki and Valerio Talamanca)

This course offers a concrete introduction to algebraic number theory, delving more specifically into the arithmetic of number fields. We wish the course to have a strong emphasis on practical, computational examples. By the end of this course, students will have gained a solid grasp of the basics of number theory, which should enable them to follow the more advanced courses.
Detailed contents:
Basic definitions: Number fields, algebraic integers, Dedekind domains, integral closure, ideals, invertibility for ideals. Some review of Galois theory; Prime ideal factorisation, Kummer-Dedekind theorem, ramification, inertia, residue fields.
Norm, trace, discriminant. Quadratic and cyclotomic fields. Prime ideal decomposition in Galois extensions; Class group and unit group of a number field. Minkowski and Dirichlet theorems; Quadratic and number field sieve for integer factorisation (if time permits).
References :
D.A. Marcus, Number Fields.
J. S. Milne, Algebraic number theory, available at: https://www.jmilne.org/math/CourseNotes
P. Stevenhagen, Number rings, available at: https://websites.math.leidenuniv.nl/algebra

Elliptic Curves (Francesco Campagna and Richard Griffon)

Elliptic curves are fundamental objects both in number theory and in modern cryptography. The goal of this course is to give an introduction to the theory of elliptic curves, focusing on those parts of the theory which are more relevant for their concrete applications. Particular attention will be given to effective results, and explicit and computational examples.
Detailed contents:
Elliptic curves as algebraic curves: Weierstrass equation, group law, isogenies, Weil pairing, endomorphism rings;
Elliptic curves over number fields: Mordell-Weil theorem, canonical height, torsion structure, Mazur's theorem, rank, regulator; Elliptic curves over finite fields: Frobenius endomorphism, group of points, Hasse-Weil bound, ordinary and supersingular elliptic curves; Schoof's algorithm for counting points and isogeny graphs.
References :
J. H. Silverman and J. T. Tate, Rational points on elliptic curves,
J. H. Silverman, The arithmetic of elliptic curves

Lattices (Michel Waldschmidt and Adeline Roux-Langlois)

The theory of lattices is deeply intertwined with all the courses present in this summer school: lattices naturally appear in algebraic number theory when studying the unit group of a number field, in the theory of elliptic curves when studying the Mordell-Weil group of an elliptic curve over a number field, in the theory of modular forms when studying theta functions, in cryptography when dealing with lattice-based cryptosystems, and in coding theory, in the theory of weight enumerators of codes. This course provides an introduction to lattices, including a generous sample of applications.
Detailed contents:
Lattices: quadratic forms, determinants, duality, sublattices, index module, Hadamard inequality. Even and unimodular lattices, famous examples. Geometry of numbers: Convex bodies, successive minima, Minkowski two theorems and applications; Shortest vector problem, the Hermite constant, lattice basis reduction algorithms, LLL algorithm; Theta function of a lattice, sphere packings, densities. Applications to coding theory and cryptography.
References :
H. W. Lenstra, Lattices, available at: https://www.math.leidenuniv.nl/~psh/ANTproc/filesheet.shtml
N. Elkies, lecture notes for the 2019 Harvard university course Rational Lattices and their Theta Functions . Available at: https://people.math.harvard.edu/~elkies/M272.19/index.html
J. H. Conway and N. J. A. Sloane, Sphere Packings, Lattices and Groups.

Modular Forms (Samuele Anni and Pee Chon Toh)

This course introduces the student to the basic theory of modular forms, which are one of the unifying themes in modern number theory. Modular forms are indeed used in studying various topics going from Diophantine equations to analytic number theory questions.
Detailed contents
Introduction to the course and motivation. The action of the modular group SL2(Z) on the upper half plane in C: its fundamental domain, cusps. Lattices, modular functions; Modular forms and cusp forms. The Eisenstein series as examples of modular forms: transformation law and convergence. The k/12 -formula for modular functions. The graded algebra of modular forms: dimension and generators of the spaces of forms of weight k. The Fourier expansion of the modular forms Ek, especially E4 and E6. Arithmetic identities derived from the Fourier coefficients. The discriminant function Δ and the Ramanujan τ function. Hecke operators, application to the Ramanujan conjecture. Congruences for Fourier coefficients and applications (if time permits).
References :
J.-P. Serre, A course in arithmetic
F. Diamond and J. Shurman, A first course in modular forms
J.H. Bruinier, G. van der Geer, G. Harder, D. Zagier, The 1-2-3 of Modular Forms, Lectures at a Summer School in Nordfjordeid, Norway.

Cryptography (Any Muanalifah and Indah Emilia Wijayanti)

In the first part of the course we will describe the basic protocols and algorithms used in modern cryptography, such as RSA and Diffie-Hellman key exchange protocol. Along the way we will also discuss the importance of primality testing and integer factorisation in cryptography, providing some examples of algorithms that perform these tasks. In the second part of the course we will discuss more specialised topics such as elliptic and lattice-based cryptography. The precise choice of the topics will also depend on the interest of the audience.
Detailed contents
Finite fields and primitive roots. Primality and pseudo primality tests. Agrawal-Kayal-Saxena's test. RSA method: first description, attacks. Rabin's method and its connection with integer factorization. Discrete logarithm methods. Symmetric methods (historical ones, DES, AES), asymmetric methods and attacks. Key exchange, Key exchange in three steps, secret splitting, secret sharing, secret broadcasting, timestamping. Signatures with RSA and discrete log; Lattice based and elliptic curve based cryptography: ideas and attacks.
References :
N. Koblitz A Course in Number Theory and Cryptography
J.H. Silverman , J. Pipher , J. Hoffstein An Introduction to Mathematical Cryptography

Coding Theory (Anna Maria Iezzi and Elisa Lorenzo Garcia)

The goal of coding theory is to develop systems and methods that allow to detect and correct errors that occur when a piece of information is transmitted through a noisy channel. This course will be an introduction to this theory.
Detailed contents
Error-correcting Codes: repetition code, parity check code, Hamming code. Hamming distance. Linear codes: generator matrix, parity check matrix, dual code; Decoding and error probability: Basic decoding, symmetric channel. Equivalent codes. Shannon Theorem. Weight enumerator; Codes constructions and bounds: Punturing, restriction, extension, short, augmentation, direct sum, juxtaposition, product and concatenation of codes. Singleton, Griesmer, Plotkin, Hamming, Gilbert Varshamov and asymptotic bounds; Cyclic codes: cyclic codes as ideals. Encoding cyclic codes. Parity check polynomial. BCH bound. Examples; Algebraic geometry codes and applications: Codes on curves, Goppa codes, Reid-Solomon codes. The McEliece cryptosystem; Codes on graphs: Some graph theory. Cycle code and graph code of a graph.
References :
R. Pellikaan, X.-W. Wu, S. Bulygin and R. Jurrius, Codes, Cryptology and Curves with Computer Algebra
W. Trappe and L. C. Washington, ntroduction to Cryptography with Coding Theory
W. Ebeling, Lattices and Codes



Programming Session


Introduction to Sage (Samuele Anni, Francesco Campagna, Elisa Lorenzo Garcia and Richard Griffon)