Le projet
La mécanisation du calcul permet, au cœur des sciences mathématiques, d’explorer et découvrir de nouvelles structures mathématiques ou même de démontrer des théorèmes. Depuis l’arrivée des premiers ordinateurs, l’informatique est devenue un outil important pour des mathématiciennes et des mathématiciens ; elle est devenue un microscope utilisables à toutes les étapes des recherches.
Ces dernières années, des communautés de mathématiciennes et mathématiciens ont développé un écosystème d’outils libres. Parallèlement, les premiers environnements de recherche virtuels ont démontré leur potentiel pour servir les besoins croissants de mathématiciennes et mathématiciens : réduire les entraves à l’accès, élargir l’audience, faciliter la collaboration et la science ouverte.
Aussi, lorsque le programme européen H2020 d’e-infrastructure lança en 2014 un appel à projets centré sur les environnements virtuels de recherche, un processus ouvert a été initié pour rapprocher les communautés scientifiques impliquées et élaborer collectivement un projet de recherche et de développement : « OpenDreamKit/ » (#676541).
Ce projet a impliqué une cinquantaine de participantes et participants, répartis dans sept pays européens (France, Belgique, Allemagne, Norvège, Pologne, Royaume-Uni et Suisse) ; de septembre 2015 à août 2019, il a employé en moyenne onze chercheurs et chercheuses et ingénieures et ingénieurs de recherche à temps plein.
L’écosystème existant offrait la possibilité de couvrir un large champ des mathématiques pures et un spectre d’applications allant d’un logiciel de calcul installé sur un ordinateur personnel, à un service multi-composants déployé sur le cloud pour toute une institution. Cependant un seul et unique environnement de recherche virtuel n’aurait pas pu en couvrir ce vaste ensemble. L’objectif fixé a donc été de développer une boîte à outils flexible permettant à des groupes de scientifiques de déployer des environnements de recherche virtuels personnalisés répondant aux besoins spécifiques de leur projets de recherche collaboratif en mathématiques pures et application, soutenant le cycle complet de la recherche : de l’exploration à la preuve, la publication, l’archivage et le partage de données et de code.
Pour atteindre cet objectif, OpenDreamKit s’est appuyé sur des outils populaires tels que LinBox, MPIR, SageMath, GAP, PARI/GP, LMFDB, Singular, et MathHub, en contribuant à en faciliter l’accès et l’utilisation, l’interopérabilité et la pérennité. Il s’est de plus associé à l’environnement généraliste de calcul interactif Jupyter ; cela pour mutualiser les aspects spécifiques à l’interface d’utilisation et aux environnements virtuels, et maximiser l’impact sur la communauté scientifique au sens large.
Une des clés du succès d’OpenDreamKit a été sa capacité à développer et soutenir un réseau actif d’utilisateurs et utilisatrices, de développeurs et développeuses. Au cours des quatre ans du projet, le groupe a développé une philosophie solide de renforcement de la communauté, particulièrement grâce à l’organisation de rencontres techniques et de formations dans le monde tout en promouvant activement la diversité. Près de 80 ateliers et conférences ont été organisés dans une vingtaine de pays, y compris dans des pays émergents (un premier atelier SageMath au Nigéria). Afin de réduire les disparités de genre existantes dans ce domaine scientifique des évènements spécialement destinés aux femmes, « Women In Sage » se sont tenus en 2017 et 2019.
Un exemple de soutien : les ateliers Pari/GP
Pari1 est créé de 1983 à 1985 par Henri Cohen et son équipe dans le laboratoire d’algorithmique arithmétique A2X de l’université de Bordeaux 1. Depuis 1995, le système PARI/GP est maintenu et développé par une équipe réunie autour de Karim Belabas, professeur de l’université de Bordeaux, et Bill Allombert, ingénieur d’étude CNRS, dans le cadre de l’équipe projet commune « Lithe and Fast Algorithmic Number Theory »2 .
PARI/GP est un système de calcul formel très répandu, conçu pour des calculs rapides en arithmétique (factorisations, théorie algébrique des nombres, courbes elliptiques, formes modulaires, fonctions L…). Il contient aussi un grand nombre de fonctions pour le calcul matriciel, l’intégration ou la sommation numérique, ainsi que de nombreuses fonctions transcendantes. Pour accélérer certains calculs, PARI est aussi disponible sous forme de bibliothèque C. PARI/GP est notamment utilisé par deux autres systèmes reconnus : WIMS et SageMath.
Lors d’un trimestre spécial Explicit methods in number theory organisé à l’IHP en 2004, s’est tenue une semaine d’atelier PARI/GP pour fédérer la communauté de développeurs et d’utilisateurs du système. Ces ateliers se sont tenus régulièrement depuis, notamment grâce à des financements d’OpenDreamKit. La liste des ateliers à venir est disponible sur la page dédiée du site de PARI/GP.