Parisian Master of Research in Computer Science
Master Parisien de Recherche en Informatique (MPRI)

Algorithmics and bioinformatics (56h, 8 ECTS)

Coordination: Thomas Nowak (LMF, ENS Paris-Saclay).


Practical information

Lectures will be given in English. The lectures will take place at ENS Paris-Saclay, room 1E14, on Tuesday morning from 9:30 AM to 1:30 PM, following the schedule.

Motivations and main objectives

The objective of this course is to study the algorithmic foundations of biological systems. The organization in 2023-2024 includes two parts, each of seven weeks. Each part is independent and gives 4 ECTS.

The first part presents discrete models for biological networks. We will study some aspects of the formal analyis of models for the dynamics of cell processes, with a focus on cell regulation and the search for attractors, aka phenotypes. After a general overview of formal modeling in biological dynamics, we will focus on boolean networks and their analysis, including the analysis via interaction graphs and temporal logics. We will then look beyond the boolean function model to include Petri nets and their unfoldings, and question the boundary between discrete and continuous models.

The second part studies biological circuit design. Using kinetic models from biochemistry as a foundation, we first show how to build circuit components like logical gates and oscillators out of biological parts. We then investigate design strategies to build biological systems with more complex behavior out of these basic building blocks. A guiding principle will be to use tested biochemical models as a foundation and to mathematically prove the desired behavior of the system in these models.

Lecture notes

Lecture notes for the second part can be found here:


The second part will be graded based on theoretical and practical lab work only. There will be no written exam.


No previous knowledge of biology or chemistry is required. The following will be helpful, however:

  • basic algorithmics and programming (we'll program in Python)
  • basic graph theory definitions
  • basic circuit theory (notions like NAND, NOR shouldn't scare you)
  • basic probability theory
  • vocabulary of ordinary differential equations

Related courses


Universités partenaires Université Paris-Diderot
Université Paris-Saclay
ENS Cachan École polytechnique Télécom ParisTech
Établissements associés Université Pierre-et-Marie-Curie CNRS INRIA CEA