Mathematics and computer science master’s track 2019-2020

The “mathematics and computer science track” is a master’s (M2) track aiming for a dual formation in mathematics and computer science with courses at the border of the two disciplines (almost each course is taught jointly by at least a mathematician and a computer scientist).  A significant fraction of the attendees is non-French speaking, and the lectures are delivered in English.   (Before 2018, the Bézout Labex supported individual courses at the interface of mathematics and computer science.)

Starting 2019-20, this track is simultaneously a track of the M2 “Computer Science” master’s program, which leads to a diploma in Computer Science and of the M2 “Mathematics” master’s program, which leads to a diploma in Mathematics. It is jointly supported by the Bézout Labex, the UFR of Mathematics and the Institut Gaspard Monge. The persons in charge are Matthieu Fradelizi (LAMA), Cyril Nicaud (LIGM), and, until June 2019, Jean-Christophe Novelli (LIGM).  This track is open to students, supported or not by the Bézout scholarship program.

REGISTRATION 2019-2020: Registration will be possible on the following pages from the mathematics master’s program and the computer science master’s program (depending on the degree aimed for).  These pages are not completely up-to-date concerning the pedagogical aspects… see below for the newest information.


(Note: UE=”Unité d’enseignement”=indivisible piece of lectures; HETD=”Heure équivalent TD”: 1 HETD corresponds to 40 minutes of lecture.)

  • 4 weeks on basics: complements in mathematics and complements in computer science. Each UE has 4 ECTS and 40 HETD. (In 2019-2020: from September 16 to October 11.)
  • 10 weeks for a general large background: data sciences, probabilistic methods, discrete maths and geometric calculus. Each UE has 6 ECTS and 60 HETD, split into 2 courses of 3 ECTS and 30 HETD each. (In 2019-2020: from October 14 to December 20. Exams from the 13th to the 17th of January 2020.)
  • 8 weeks for two UE of specialization chosen by students among four UE, having each 6 ECTS and 40 HETD. (In 2019-2020: from January 20 to March 20, with one week break.)
  • A research memoir/internship of 18 ECTS. (In 2019-2020: from March 30.)
  • English lessons have to be taken during the first 12 weeks and weight 4 ECTS.

Preliminary list of courses

1UE Basics Mathematics (analysis, algebra, probability, geometry)440
1UE Basics Computer Science (complexity, algorithms, programming, graphs)440
1UE English440
1UE Discrete and continuous optimisation660
 Discrete optimisation330
 Continuous optimisation330
1UE Probabilistic algorithms and combinatorics
 Probabilistic algorithms330
1UE Discrete Geometry660
 Discrete differential geometry330
 Discrete isoperimetry330
2UE Data Sciences 640
 Statistical learning320
 Deep learning methods320
2UE Maths specialization: Random graphs and graphons640
 Introduction to graphons320
2UE CS specialization: Algebraic Combinatorics and formal calculus640
 Combinatorics Hopf algebra320
2UE Large random matrices and applications640

Detailed description of the courses of the first semester

Basics in Mathematics.
  • Algebra and linear algebra (Fradelizi): Groups: order, quotient group, cyclic groups, finite groups, finite abelian groups, group actions; Rings, polynomials and fields: ideals, principal ideal domains, finite fields; Linear algebra: endomorphisms, eigenvectors, spectral theorem.
  • Analysis (Beaulieu): Normed vector spaces : equivalent norms, topology, continuous functions, compactness, the finite dimensional case; Examples of metric spaces; Differential calculus. Extremum problems; Convex functions, convexity inequalities.
  • Probability (Samson): Random experiment and probability spaces. Law, mean value, moments,… of a random variable. Applications to combinatorics on graphs; Deviation’s inequality, concentration inequalities (Markov, Tchebychev, Hoeffding inequality…); Martingales, inequalities with Martingales; Markov chains. References : The Probabilistic Method (N. Alon, J. H. Spencer).
  • Geometry (Hauswirth and Romon): Geometry and topology of of curves. We shall study the discrete curves in the plane and their deformations, in particular the curvature flow, including the isometric flow. These are used in computer graphics for classification, reconstruction or smoothing. We will see the relevant concepts of lengths, areas, gradients and differential equations, and how to implement them on a computer. All the exercises will be made using the programming language Processing (based on Java and very simple to use).
Basics in Computer sciences.
  • Algorithmic: data structures (Nicaud): The data structures studied include: array, lists, stack, …; dynamical arrays; trees, well-balanced trees- heap, priority queues; hashtables; minimal range query; suffix array; suffix trees.
  • Complexity (Thapper): The course is an introduction to computational complexity theory. We will cover the following notions: Turing machines, the Church-Turing thesis, (un)decidability, the halting problem; P, NP, polynomial-time reductions, NP-completeness, the Cook-Levin theorem, co-NP; PSPACE; the time and space hierarchy theorems, Ladner’s theorem; the polynomial hierarchy and collapses; approximation of NP-hard problems. References: Introduction to the Theory of Computation (Michael Sipser).
  • Programmation (Borie): Programmation : Python and Sage.
    Quick review of the basics of programming. Solve simple mathematical-algorithmic problems with Python (gcd, f(x) = 0, numerical integration algorithm, knapsack, backtracking, …). Getting started with Sage, a computer algebra system. Programming project at the interface mathematics and computer science.
  • Graph theory (Bulteau and Weller). Fundamentals; Connectivity- Planar graphs- Flow/Cut- Examples of graph classes- Examples of problems- Matchings; P/NP, Reductions; parameterized algorithms; examples of parameters; kernels; minors
Discrete and continuous optimization.
  • Discrete optimization (Meunier): Min-max results in combinatorial optimization provide elegant mathematical statements, are often related to the existence of efficient algorithms, and illustrate well the power of duality in optimization. The course aims at being a gentle introduction to the richness of this type of results, and especially those that belong to the theory of perfect graphs. It will make connections with the course of continuous optimization, in particular in what concerns linear programming and polyhedra, and will rely on concrete examples taken from industry that illustrate the relevance of tools from combinatorial optimization for real-world applications.
    The preliminary plan of the course is as follows:- Discrete optimization in bipartite graphs: Hall’s marriage theorem, König’s theorems, algorithms; chains and antichains in posets: theorems of Dilworth and Mirsky; chordal graphs: interval graphs, coloring, duality, decomposition; perfect graphs: definition, weak and strong theorems; perfect graphs: polyhedra, algorithms; Lovász’ theta function: definition, computation, sandwich theorem, Shannon capacity.
  • Continuous optimization (Sandier): The course will cover over theoretic and algorithmic aspects of convex optimization in a finite-dimensional setting. Important applications will be discussed.
    The tentative list of topics covered is as follows: Linear programming, the simplex algorithm, totally unimodular matrices. Applications to network flow, optimal strategies, allocation…; convex fuctions, convexity preserving transformations. Beyond linear programming: semi-definite programming, convex programming. Applications in statistics and interpolation; necessary conditions for optimality, Karush-Kuhn-Tucker conditions; weak and strong duality, Farkas Lemma and its various formulations. Duality examples, shadow prices, max flow-min cut.; algorithms for non constrained optimization. Line search, descent methods (gradient, steepest descent, Newton); sparse solutions via L1 penalization. LASSO method; interior point algorithms for constrained optimization. The cases of linear and semi-definite programming.
Probabilistic algorithms and combinatorics.
  • Probabilistic algorithms (Nicaud): This course is about probabilistic algorithms, which relies on randomness to speed up their running time. It is based on the classical textbook “Randomized Algorithms” by Motwani and Raghavan.The methods: Las Vegas and Monte Carlo algorithmes; complexity classes for randomized algorithms; lower bounds: Yao’s Minimax principle; some probabilistic settings useful in algorithms: coupon collector, birthday problem. Applications: analysis of Quicksort and Quickselect algorithms- stable marriage problem; probabilistic data structures (hash tables, skip lists, treaps, …); probabilistic counting- graph algorithms.
  • Combinatorics (Novelli): The lectures on enumerative combinatorics will consist in the study of classical objects: permutations, trees, partitions, parking functions; classical sequences: factorial, Catalan, Schroder; classical methods: bijections, group actions, induction, generating series.The lectures will be heavily based on the study of various examples, some very easy and others trickier.
Discrete geometry.
  • Discrete differential geometry (Hauswirth and Romon): Discrete differential geometry describe how to extend curvature to discrete objects such that polyedra or graphs. Geometric flows along curvature is useful to segment or denoise image. Geometric flow under constraint can be used to preserve a texture mapping along deformation. Extension on graphs pretends to isolate sub graph relevant for topological data analysis. Program: discrete surface theory, topology and Gaussian curvature, Gauss Bonnet theorem; discrete differential calculus: Laplacian, divergence operator, differential forms, Poincaré’s Lemma; discrete mean curvature on triangulated surfaces; parametrization by line of curvature, Quad surfaces and application to architecture; intrinsic curvature and application to graph theory.
  • Discrete isoperimetric inequalities (Fradelizi and Hubard): The classical isoperimetric inequality asserts that among all the sets of a certain surface area the Euclidean ball maximizes the volume. During the last decades inequalities relating the size of the boundary with the size of a set have emerged in diverse fields of mathematics and computer science. Particularly, isoperimetric inequalities bridge geometric invariants with probabilistic and algebraic ones. In the first part of this course we focus on exact isoperimetric inequalities on the sphere, the Euclidean space and the discrete hypercube. Specifically we will present the inequalities of Brunn-Minkowski, Loomis-Whitney, Sauer-Shelah, Harper and Kruskal-Katona, together with their applications, the flattening lemma, the epsilon net theorem. We then develop basics of Boolean analysis on the hypercube and give an application to random graphs.
    The second part of the course concentrates on isoperimetric inequalities on families of graphs. Here we relate geometric invariants of graphs to algebraic properties of their Laplacians and to the behavior of random walks on them. After introducing the basics of spectral graph theory we will prove Cheeger inequality and concentrate on two families of graphs that behave very differently with respect to isoperimetric inequalities. We will see that on one hand planar graphs have small separators via the circle packing theorem, on the other hand, we will construct expander graphs which have rapid mixing time. Each of these behaviors turns out to have applications in computer science and scientific computing.

Detailed description of the courses of the second semester (choose two courses)

Random graphs and graphons (Delmas and Zitt)

1) Introduction and reminders on finished graphs
2) Definition of a graphon, graphon as a generator of dense random graphs graphs
3) Properties of the space of graphons, cut-distance
4) Convergence of large graphs to a graphon
5) Sampled graphs; Inequalities of concentration and convergence
6) Application: classical combinatorial inequalities
7) Application: epidemic on a graphon, graphs biased by size
8) Application: degree function, exponential model
Référence : “Large networks and graph limits” László Lovász

Data Sciences (Elie and Hachem)

– Understanding of the principal Artificial Intelligence algorithms: machine deep learning
– Introduction to the optimization and the stochastic approximation algorithms for learning
– Building predictive methods on unstructured datasets such as text data
– Introduction to statistical learning: theoretical and empirical risk, Bias-Variance equilibrium, overfitting;
– Aggregating methods: random forests; bagging and boosting methods;
– Kernels methods and Support Vector machine algorithms;
– Convexification, regularization and penalization technics: Lasso, Ridge, elastic net…
– Deep learning algorithms: feedforward, convolutional and recurrent networks, dropout regularization;
– Prediction with unstructured text data: bagofwords, word2vec;
– Introduction to reinforcement learning;

Algebraic combinatorics and formal calculus (Giraudo and Novelli)

Operads in combinatorics (Giraudo): Informally, an operad is a space of operations having one output and several inputs that can be composed. Each operad leads to the definition of category of algebras. This theory offers a tool to study situations wherein several operations interact with each others. This lecture begins by presenting some elementary objects of algebraic combinatorics: combinatorial classes and combinatorial algebras. We introduce then (non-symmetric) operads and study some tools allowing to establish presentations by generators and relations of operads. Koszul duality in non-symmetric operads is an important part of this theory which shall be presented. We end this lecture by reviewing some generalizations: colored operads, symmetric operads, and pros. We shall also explain how the theory of operads offers a tool to obtain enumerative results.

Algebraic combinatorics (Novelli): The lectures on algebraic combinatorics will consist in the study of: classical symmetric functions and a short discussion about representation theory; noncommutative symmetric functions (NCSF); the definition of Hopf algebras; the dual algebra of NCSF, quasi-symmetric functions; the modern generalizations of those algebras; and the use of all these algebraic properties (transition matrices, expressions in various bases, morphisms of Hopf algebras) to solve (classical) combinatorial questions. As in the lectures in combinatorics of the first semester, the lectures will be heavily based on the study of examples.

Large random matrices and applications (Najim and Loubaton)

The purpose of large Random Matrix Theory (RMT) is to describe the eigenstructure (eigenvectors and eigenvalues) of matrices whose entries are random variables and whose dimensions go to infinity. The first results go back to Wigner (1948) for random symmetric matrices and Marchenko and Pastur (1967) for large covariance matrices. Both results have been motivated by questions in theoretical physics which still provides open problems. In the eighties, Voiculescu used RMT as a tool to address open problems in operator theory. This point of view turned to be extremely successful as many such open problems received a solution with the help of RMT. A whole theory known as free probability has been developed which tightly relies on RMT. In the nineties, RMT turned to be very successful to address problems in wireless communications, to analyze the performances of multi-antenna telecommunication networks, and to provide usefull results in statistical signal processing. For 20 years, the theory of large random matrices is very active as can be seen by the publication of five major monographs on the subject. The goal of the course is to present the most classical and prominent results in the field together with some statistical applications: Basic techniques in RMT and Stieltjes transform; Marchenko-Pastur’s theorem which describes the limiting spectral measure of large covariance matrices; other models of interest: large covariance matrices with general population matrix, signal + noise matrices, etc.; Small perturbations and spiked models. In terms of applications, we will describe the problem of statistical test in large dimension and other statistical problems.