Mathematics and computer science master’s track 2021/22

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.

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 also possible to get both diplomas by registrating in each formation. 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) and Cyril Nicaud (LIGM).  This track is open to students, supported or not by the Bézout scholarship program.

The information below concerns the academic year 2021-2022.  The archives on previous years are available here: 2018-2019, 2019-2020, 2020-2021. Before 2018, the Bézout Labex supported individual courses at the interface of mathematics and computer science.

REGISTRATION 2021-2022: Registration are 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.

Schedule

(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 2021-2022: from September 13 to October 8.)
  • 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 2021-2022: from October 11 to December 17. Exams the week of January 10.)
  • 8 weeks for two UE of specialization chosen by students among four UE, having each 6 ECTS and 40 HETD. (In 2021-2022: from January 17 to March 18, with one week break. Exams the week of March 28.)
  • A research memoir/internship of 18 ECTS. (In 2021-2022: from April 4.)
  • English lessons have to be taken during the first 12 weeks and weight 4 ECTS.

Preliminary list of courses

Semester Name ECTS Hours
1 UE Basics Mathematics (analysis, algebra, probability, geometry)
4 40
1 UE Basics Computer Science (complexity, algorithms, programming, graphs)
4 40
1 UE English 4 40
1 UE Discrete and continuous optimisation 6 60
Discrete optimisation 3 30
Continuous optimisation 3 30
1 UE concentration phenomena and combinatorics
6 60
Concentration phenomena 3 30
Combinatorics 3 30
1 UE Discrete and computational aspects of geometry and topology
6 60
Discrete aspects of geometry and topology 3 30
Computational aspects of geometry and topology 3 30
2 UE Data Sciences 6 40
Statistical learning 3 20
Deep learning methods 3 20
2 UE Maths specialization: Mathematics and algorithms for biology
6 40
Advanced algorithms for bioinformatics 3 20
Mathematics for biology 3 20
2 UE CS specialization: Algebraic Combinatorics and formal calculus 6 40
Combinatorics Hopf algebra 3 20
Operads 3 20
2 UE Large random matrices and applications 6 40
3 20
3 20

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 (Sester): 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. Asymptotic analysis.
  • Probability (Martinez): 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 (Fanoni and Sabourau): Basics of point-set topology, surfaces and n-manifolds, simplicial complexes and simplicial maps, graphs.
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 (Thapper): 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.
Concentration phenomena and combinatorics.
  • Concentration phenomena (Fradelizi and Zvavitch): The lectures will present various subjects related to the phenomena of concentration of measure. We’ll present in parallel classical concentration inequalities for the sum of independent random variables, like Hoeffding, Bennett, and Bernstein inequalities with concentration inequalities resulting from convexity and Brunn-Minkowski inequality. Then we shall focus on the particular case of Gaussian or sub-Gaussian random variables and apply these concentration inequalities to the Johnson-Lindenstrauss flattening lemma. Then we shall present the relation between functional inequalities like Poincaré and Log-Sobolev with different types of concentration and the links with the study of convex bodies and their almost euclidean sections.
  • 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 and computational aspects of geometry and topology.
  • Discrete aspects of geometry and topology (Fanoni and Sabourau): This course will focus on systolic geometry and topology in low dimension in the context of graphs and simplicial complexes. The systole of a simplicial complex is defined as the length of the shortest noncontractible loop. We will present universal relationships between the systole and the volume of simplicial complexes involving their topology. Starting with the case of metric graphs, we will first establish basic relations between the systole, the diameter and the total length of the graph. Then we will extend these relations introducing the cyclotomic number of a graph and show that these relations are roughly optimal using different methods, namely a probabilistic method and an algebraic constructive method. We will also generalize these results first to the case of surfaces, then to the case of higher-dimensional simplicial complexes, introducing further topological invariants. We also plan to study extremal systolic inequalities. Related geometric notions, such as the notion of entropy, will be presented.
  • Computational aspects of geometry and topology (de Mesmay and Meunier): This course focuses on two different areas where geometry and topology interact with combinatorial and computational problems. The first part of the course is centered on topological combinatorics. It is taught by Frédéric Meunier, and the topic is to explain how topological theorems (for example Brouwer and Borsuk-Ulam) and/or their combinatorial counterparts (Sperner’s and Tucker’s lemma) can be applied to solve questions of a purely combinatorial appearance (e.g., necklace splitting, fair splitting, graph colorings). The computational complexity of finding the structures promised by these topological theorems will also investigated. The second part of the course, taught by Arnaud de Mesmay, deals with planar graphs and graphs embedded on surfaces, and aims to illustrate how the topology of the underlying space impacts the graphs, as well as to showcase specific algorithmic techniques for these graphs, for example in order to compute cycles with specific topological properties, or to get improved optimization algorithms (for example to compute minimum spanning trees and minimum cuts).

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

Mathematics and algorithms for biology (Kucherov and Tran)

Advanced algorithms for bioinformatics (Kucherov)

Mathematics for biology (Tran)

Data Sciences (Hachem and Hebiri)

OBJECTIVES:
– 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
PROGRAM:
– 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 (Loubaton, Najim and Guédon)

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.