SAFE : Stochastic Arithmetic with Flexible Exponent
SAFE permet d'estimer les erreurs d'arrondi et de dĂ©tecter les instabilitĂ©s numĂ©riques dans les programmes oĂč les nombres flottants ont une mantisse et un exposant de taille arbitraire.
Project Leader : Fabienne JEZEQUEL
09/2024
QOSST : Quantum Open Software for Secure Transmissions
An open source suite to perform Continuous Variable Quantum Key Distribution.
Project Leader : Eleni Diamanti
04/2024
OMicroB : OCaml on Microcontroller Boards
OMicroB est une implĂ©mentation spĂ©cialisĂ©e de la machine virtuelle OCaml conçue pour fonctionner sur des microcontrĂŽleurs aux ressources limitĂ©es. Cette implĂ©mentation peut en effet exĂ©cuter des programmes OCaml non triviaux sur de petits microcontrĂŽleurs, et fournit au dĂ©veloppeur de logiciels embarquĂ©s tous les paradigmes de programmation de haut niveau du langage OCaml (fonctionnel, impĂ©ratif, modulaire, orientĂ© objet) ainsi qu'une sĂ©curitĂ© accrue grĂące au typage statique et Ă la gestion automatique de la mĂ©moire. La chaĂźne de compilation dâOMicroB prend un exĂ©cutable en byte-code directement produit par le compilateur OCaml et aprĂšs plusieurs passes dâanalyse (dĂ©tection de code mort, Ă©valuation partielle, âŠ) produit un code C standard embarquant la VM, sa bibliothĂšque dâexĂ©cution et le byte-code transformĂ©. Ce code C produit, hautement portable, cible diffĂ©rentes architectures de microcontrĂŽleurs et peut ĂȘtre compilĂ© et exĂ©cutĂ© sur un PC standard Ă des fins de simulation et de dĂ©bogage.
Project Leader : Emmanuel CHAILLOUX
04/2023
MQ Soft : A fast multivariate cryptography library
MQsoft is an efficient library in C for post-quantum multivariate-based cryptography. It includes HFE-based schemes such GeMSS, Gui and DualModeMS. Our library is modular and permits to perform fundamental arithmetic operations over finite fields: efficient constant-time arithmetic in GF(2^n), finding the roots of a univariate polynomial in GF(2^n)[X], evaluate efficiently multivariate quadratic systems in GF(2) (in constant-time and in variable-time), etc ...
Project Leader : Ludovic Perret
01/2023
PML : Polynomial Matrix Library
This library provides additions to NTL: efficient implementations for operations on univariate polynomial matrices and structured scalar matrices, and some uses of these for related algebraic computations. Work in progress includes adding functionalities (algebraic relations, normal form computation) and providing similar additions based on Flint.
Project Leader : Vincent Neiger
01/2023
FuzzIC : Fuzzy Interpretability Checker
FuzzIC est une bibliothÚque Python pour évaluer l'interprétabilité d'une base de rÚgles floues. Il s'agit d'un outil en ligne de commande qui analyse automatiquement une base et qui génÚre un tableau de bord HTML interactif.
Dans FuzzIC, 20 critÚres d'interprétabilité différents sont implémentés et leur agrégation permet d'obtenir un score global d'interprétabilité d'une base de rÚgles floues. Dans cette librairie, plusieurs outils d'évaluation configurables, flexibles et personnalisables sont aussi fournis.
Ce travail a été réalisé dans le cadre du projet ANR-22-ASTR-0032 IFP-in-RL, financé par l'ANR, dans un partenariat entre Sorbonne Université/LIP6 et Thales.
Project Leader : Christophe MARSALA
01/2023
HPDDM : high-performance unified framework for domain decomposition methods
HPDDM est une collection de prĂ©conditionneurs basĂ©s sur le paradigme de la dĂ©composition de domaine, avec ou sans recouvrement. Ils peuvent ĂȘtre utilisĂ©s pour rĂ©soudre de grands systĂšmes linĂ©aires, comme on en rencontre gĂ©nĂ©ralement lors de la discrĂ©tisation d'Ă©quations aux dĂ©rivĂ©es partielles. Ces prĂ©conditionneurs peuvent ĂȘtre utilisĂ©s avec diverses mĂ©thodes Krylov. La bibliothĂšque est utilisable dans les codes C, C++, Python ou Fortran.
Project Leader : Pierre JOLIVET
12/2022
msolve : Multivariate polynomial systems solving
msolve est une bibliothÚque écrite en C pour la résolution de systÚmes polynomiaux multivariés. Elle s'appuie sur des méthodes algébriques, notamment le calcul de bases de Gröbner, et permet de résoudre de maniÚre exacte des systÚmes polynomiaux à coefficients à coefficients rationnels (isolation des racines réelles) ou dans un corps premier (de cardinalité inférieure à 2^31).
msolve inclut des implantations haute-performances des algorithmes rĂ©putĂ©s les plus efficaces. La librairie peut ĂȘtre utilisĂ©e depuis de nombreux systĂšmes calcul formel et est intĂ©grĂ©e dans les systĂšmes OSCAR et SageMath.
msolve est développée en collaboration avec Christian Eder (TU Kaiserslautern, Allemagne).
Project Leader : Mohab Safey El Din
10/2022
IOHprofiler : Iterative Optimization Heuristics Profiler
IOHprofiler, a benchmarking platform for evaluating the performance of iterative optimization heuristics (IOHs), e.g., Evolutionary Algorithms and Swarm-based Algorithms. See https://iohprofiler.github.io/ Licence:BSD-3
Project Leader : Carola Doerr
06/2021
SPY : SPY
SPY est un jeu sĂ©rieux pour initier les joueurs aux bases de la programmation informatique. Nous travaillons Ă travers ce projet diffĂ©rentes problĂ©matiques : comprendre les phĂ©nomĂšnes dâapprentissage de lâinformatique ; aider les enseignants Ă s'approprier, concevoir et scĂ©nariser un jeu sĂ©rieux pour l'apprentissage de la programmation informatique ; travailler l'accessibilitĂ© de l'apprentissage de la programmation pour des Ă©lĂšves Ă besoin particuliers.
Project Leader : Mathieu Muratet
01/2021
ScenoClasse : ScenoClasse
ScenoClasse est un outil de scĂ©narisation issu de la recherche et destinĂ© aux enseignants. Il leur permet de prĂ©parer leurs sĂ©ances autour de lâinformatique/ la pensĂ©e informatique. ScenoClasse permet aux enseignants de crĂ©er, Ă©diter, documenter et agencer des activitĂ©s dâenseignement de la pensĂ©e informatique en scĂ©narios puis de publier et dâexporter ces scĂ©narios sous diffĂ©rents formats de sortie (fiche de prĂ©paration papier ou sur tablette/tĂ©lĂ©phone, diaporama, etc.). Ils peuvent Ă©galement copier et adapter des scĂ©narios créés par dâautres. Chaque scĂ©nario rendu public sur la plateforme ScenoClasse peut ĂȘtre enrichi collectivement par des commentaires et des retours dâexpĂ©riences. Ces fonctionnalitĂ©s ont Ă©tĂ© pensĂ©es pour permettre Ă un scĂ©nario dâavoir un cycle de vie au-delĂ du contexte prĂ©vu par son auteur.
Project Leader : Amel Yessad
01/2021
MUMPS : MUltifrontal Massively Parallel Sparse direct Solver
Logiciel de résolution de systÚmes linéaires creux. La collaboration du LIP6 avec Mumps Tech SAS porte sur l'utilisation de représentations de rang faible en précision mixte, dans le contexte de la thÚse CIFRE de M. Gerest financée par EDF.
Project Leader : Théo MARY
11/2020
AffApy : python library for multiprecision Affine Arithmetic
AffApy est une bibliothÚque Python pour du calcul en arithmétique affine multiprécision
Project Leader : Thibault HILAIRE
01/2020
CosyVerif : Software Environment for the Formal Specification and Verification of Dynamic Systems
CosyVerif est un environnement logiciel permettant la spécification formelle et la vérification de systÚmes dynamiques.
Project Leader : Fabrice KORDON
06/2019
PaInLeSS : PArallel INstantiabLE Sat Solver
Cet outil Ă©crit en C++ simplifie l'implĂ©mentation et l'Ă©valuation de nouveaux solveurs pour des environnements multi-coeurs. Les composants peuvent ĂȘtre instanciĂ©s indĂ©pendamment pour produire un nouveau solveur SAT .
Project Leader : Souheib Baarir
06/2019
BCMCyPhy : Component model for cyber-physical control systems
Ce projet de recherche et le logiciel associé visent à concevoir et implanter un modÚle de programmation par composants pour les systÚmes de contrÎle cyber-physique. Il se greffe sur le projet BCM4Java dont il utilise les concepts de base et l'implantation des composants répartis en Java (10.000 lignes de code et de documentation à ce jour). Outre le fait d'intégrer des composants temps réel, ce projet étudie les architectures de contrÎle (automatique) à base de composants, leur spécification utilisant les systÚmes hybrides stochastiques et leur simulation utilisation des modÚles de simulation suivant la norme DEVS. Une attention particuliÚre est portée sur la composabilité parallÚle entre les composants, leurs spécifications et leurs modÚles de simulation individuels. Un sous-projet logiciel de BCMCyPhy propose une nouvelle implantation en Java de la norme DEVS pour la simulation modulaire des composants et de leurs assemblages (20.000 lignes de code et de documentation à ce jour)). Les simulateurs obtenus par composition entre simulateurs de chaque composant permettent ensuite de mettre au point, tester, vérifier et valider les applications. Ce logiciel a été utilisé par quelques dizaines d'étudiants et l'est toujours dans le cadre du cours de master 2 ALASCA depuis 2018.
Project Leader : Jacques MALENFANT
06/2019
Cosy : Symmetry controller
Cosy est une bibliothĂšque C++ efficace conçue pour casser dynamiquement les symĂ©tries dans la rĂ©solution de problĂšmes SAT. Elle s'appuie sur des solveurs SAT de l'Ă©tat de l'art en intĂ©grant un contrĂŽleur de symĂ©trie qui fonctionne de maniĂšre complĂ©mentaire avec l'algorithme CDCL (Conflict-Driven Clause Learning). Cosy peut ĂȘtre intĂ©grĂ© Ă la plupart des solveurs CDCL, offrant flexibilitĂ© et performance amĂ©liorĂ©e, notamment dans les instances SAT hautement symĂ©triques. Elle est disponible sous licence open-source GPL v3.
Project Leader : Souheib Baarir
04/2018
Dedale est le premier simulateur dĂ©diĂ© Ă lâĂ©tude des problĂšmes de coordination, dâapprentissage et de prise de dĂ©cision multi-agents sous hypothĂšses rĂ©alistes. Dedale offre des environnements discrets et continus, ouverts, dynamiques et partiellement observables dans un contexte totalement asynchrone. Il permet lâĂ©tude et lâĂ©valuation de solutions multi-agents pour le problĂšme de lâexploration, le problĂšme de la patrouille, les problĂšmes des tournĂ©es de vĂ©hicules et de la collecte de ressources par des Ă©quipes de plusieurs dizaines dâagents hĂ©tĂ©rogĂšnes. La variĂ©tĂ© des problĂšmes multi-agents modĂ©lisables associĂ©e Ă la possibilitĂ© de crĂ©er un rĂ©seau pair-a-pair dâinstances Dedale permettent dâenvisager que celui-ci devienne un environnement de rĂ©fĂ©rence, tant pour lâenseignement que la recherche.
Project Leader : Cédric Herpson
03/2018
MOPSA analyzer : MOPSA Static Analyzer
MOPSA est un logiciel de vĂ©rification de programmes multi-languages par analyse statique sĂ»re basĂ©e sur la thĂ©orie de l'interprĂ©tation abstraite. Il infĂšre automatiquement des invariants et dĂ©tecte, Ă la compilation, les erreurs possibles Ă l'exĂ©cution. L'analyse calcule une interprĂ©tation des programmes dans une collection d'abstractions rĂ©utilisables et programmĂ©es en OCaml. Sa conception modulaire permet Ă MOPSA d'ĂȘtre extensible vis Ă vis des propriĂ©tĂ©s et des langages considĂ©rĂ©s. MOPSA supporte actuellement des sous-ensembles significatifs des langages C et Python 3. En C, MOPSA dĂ©tecte les comportements indĂ©finis ainsi que l'utilisation invalide de la bibliothĂšque standard C (spĂ©cifiĂ©e dans un langage de modĂ©lisation dĂ©diĂ©). En Python, MOPSA effectue une analyse de type, de valeur et des exceptions.
Project Leader : Antoine Miné
03/2018
TSAR : TSAR (Tera-Scale ARchitecture)
Project Leader : Alain Greiner
09/2017
FiXiF : Reliable fixed-point implementation of linear signal processing (and control) algorithms
FiXiF est une suite dâoutils utilisĂ©s pour implĂ©menter des filters sur des systĂšmes embarquĂ©s (tels que DSP, micro-controlleurs, FPGA ou ASIC) avec lâimpact de la prĂ©cision finie (virgule fixe et flottante).
Project Leader : Thibault HILAIRE
08/2017
Wi-Fi Direct, also called Wi-Fi P2P, is a new communication mode in Wi-Fi networks, which allows nearby users to communicate directly without an infrastructure composing of access points. This project implements a simulation model for Wi-Fi Direct in the INET Framework of the OMNeT++ simulator. A new module, DuoHost, has been defined for the formation of a new Wi-Fi direct group or joining an existing one.
Project Leader : Thi Mai Trang NGUYEN
06/2017
TTK : Topology ToolKit
Le Topology ToolKit (TTK) est une bibliothÚque open source et une collection de logiciels pour l'analyse et la visualisation de données topologiques. TTK peut gérer des données scalaires définies soit sur des grilles réguliÚres, soit sur des triangulations, en 2D, 3D ou plus. Il fournit une collection substantielle d'implémentations génériques, efficaces et robustes d'algorithmes clés dans l'analyse de données topologiques.
Project Leader : Julien Tierny
04/2017
E-LearningScape : E-LearningScape
E-LearningScape est un Serious Escape Game sur le thĂšme de la pĂ©dagogie. Ce jeu, soutenu par Sorbonne UniversitĂ©, est une adaptation du jeu LearningScape conçu par SAPIENS et le CRI. Nous travaillons sur la conception d'un module de suivi des actions du joueur, afin de gĂ©nĂ©rer en temps rĂ©el des aides contextualisĂ©es selon les difficultĂ©s rencontrĂ©es par les joueurs Les algorithmes que nous avons dĂ©veloppĂ©s s'appuient sur une modĂ©lisation des Ă©nigmes du jeu Ă l'aide de rĂ©seaux de Petri, ce qui nous a amenĂ©s Ă concevoir un outil gĂ©nĂ©rique d'aide Ă la construction de ceux-ci. La dĂ©marche consiste Ă exprimer des liens entre des comportements gĂ©nĂ©riques Ă lâaide dâun langage spĂ©cifique et de relations logiques. Ces expressions sont ensuite analysĂ©es pour gĂ©nĂ©rer automatiquement un rĂ©seau de Petri qui modĂ©lise tous les parcours possibles. Ce rĂ©seau est utilisĂ© pour analyser le parcours du joueur et pour proposer des aides adaptĂ©es.
Project Leader : Mathieu Muratet
03/2017
HA-NFV : High Availability Virtual Network Function placement
A Decision Support System (DSS) with graphical interface for Virtual Network Function placement in multi-layer networks under availability objectives.
Project Leader : Stefano SECCI
01/2017
ULOOF : User-Level Online Offloading Framework
Android application framework allowing any mobile application to be decompiled and recompiled with mobile application method computation offloading features to a remote virtual machine cloning the device. Adaptive decision making allows to offload a method to the VM when computation-energy consumption trade-off is profitable.
Project Leader : Stefano SECCI et Rami LANGAR
01/2017
BUT4Reuse : Bottom-Up Technologies for Reuse
BUT4Reuse provides a unified framework for mining software artefact variants: Commonality and variability analysis, Feature identification, Feature location, Feature constraints discovery, Feature model synthesis, Reusable assets construction. It is easily extensible and currently supports several artefact types: Java, C, EMF Models, Textual files, File structures, JSON and CSV files, and much more.
Project Leader : Tewfik ZIADI
01/2017
Puck : Puck
Puck est un outil de refactoring de logiciels en Java qui détecte et casse les dépendances nuisibles. Les développeurs peuvent planifier leur refactoring sur un graphe de dépendances et l'appliquer à leur code automatiquement. Puck est encore un prototype de recherche.
Project Leader : Mikal ZIANE
10/2016
FYFY : FamilY For unitY
FYFY (FamilY For unitY) est une bibliothÚque permettant d'intégrer à la plateforme de développement de jeu vidéo Unity le formalisme Entity-Component-System. Ce projet est le prolongement du travail de thÚse de Bruno Capdevilla qui avait développé le framework Genome en As3.
Project Leader : Mathieu MURATET
06/2016
SPRED : SPRing EDitor
SPRED est un éditeur de niveau pour le moteur de jeu Spring Engine utilisé par Prog&Play
Project Leader : Mathieu MURATET
06/2016
MAGAM : Multi-Aspect Generic Adaptation Model
MAGAM est un modÚle générique basé sur un calcul matriciel permettant d'adapter des activités d'apprentissage selon plusieurs aspects (pédagogique, didactique, ludique, motivationnel, etc.).
Project Leader : Vanda LUENGO et Baptiste MONTERRAT
03/2016
tryalgo : Basic and advanced algorithms and datastructures
Cette bibliothÚque comporte des implémentations de plusieurs algorithmes et structures de données pour de nombreux problÚmes de graphes, de séquences et de géométrie.
Ces algorithmes sont expliquĂ©s dans le livre : Programmation efficace - les 128 algorithmes quâil faut avoir compris et codĂ©s en Python au cours de sa vie.
Project Leader : Christoph DĂRR
03/2016
VBPMN : Framework for the Verification of BPMN processes
VBPMN supports formal modelling and automated analysis of business processes using formal verification tools. It features a web interface for comparing BPMN 2.0 models.
Project Leader : Pascal POIZAT
01/2016
LEA4PA : LEarning Analytics for Adaptation and Personnalisation
Le projetLEarning Analytics for Personalization and Adaptation a pour objectif de proposer, Ă destination des dĂ©cideurs (ensei-gnants, apprenants, ..), des algorithmes et des visualisations permettant des analyses du com-portement de lâĂ©tudiant pour lâadaptation et la remĂ©diation. Il sâapplique Ă plusieurs niveaux dâenseignement. Pour le niveau collĂšge, la recherche est menĂ©e dans le cadre dâune collaboration soutenue par la direction du numĂ©rique pour lâĂ©ducation (MEN). Dans ce contexte, nous proposons des analyses (descriptives et diagnostiques) des compĂ©tences des apprenants en algĂšbre, ainsi que des visualisations, lâobjectif Ă©tant dâassister lâenseignant dans lâadaptation des activitĂ©s[4].Pour lâenseignement supĂ©rieur, la recherche est menĂ©e en sâappuyant sur la plateforme LA-PAD dĂ©veloppĂ©e par CAPSULE (centre dâinnovation pĂ©dagogique de Sorbonne UniversitĂ©).Dans ce contexte, nous nous intĂ©ressons Ă comprendre les parcours des apprenants Ă partir de techniques dâanalyse sĂ©quentielle et de rĂšgles dâassociation.
Project Leader : Vanda LUENGO et Amel YESSAD
01/2016
MySlice v2 : Web portal to reserve and manage heterogeneous ICT resources from federated platforms
Portail web pour la réservation et la gestion de resources informatique hétérogÚnes hébergées par une fédération de plateformes
Project Leader : Serge FDIDA
01/2016
F-Interop : Remote interoperability testing services for IoT devices
Services de tests d'interopérabilité à distance pour les objets connectés (IoT)
Project Leader : Serge FDIDA
01/2016
Marmote : A Markov Modeling Platform
Marmote est une plate-forme de programmation pour la construction et la résolution de modÚles de Markov avec des espaces d'état discrets. Elle se compose d'une API C++ et d'une bibliothÚque de modÚles prédéfinis.
Il est accompagné d'une API d'application pour les processus de décision de Markov : MarmoteMDP.
Il est accompagné également d'une API sous Python qui encapsule le code C++.
Project Leader : Emmanuel Hyon
01/2016
PROMISE : PRecision OptiMISE
PROMISE est un logiciel permettant de déterminer automatiquement la précision adéquate des variables dans un code numérique.
Project Leader : Fabienne JEZEQUEL
01/2016
piexplorer : an explicit state-space generation tool and a model-checker for the Pi-calculus
La génération d'espace d'états pour le pi-calcul est un problÚme complexe. Il n'existe à ce jour que deux outils offrant cette fonctionalité : le laboratoire HAL et pi-explorer. Ce dernier repose sur une sémantique symbolique beaucoup plus économe que la sémantique précoce exploitée par HAL. Un vérificateur de modÚle est associé à l'outil, mais il est possible d'utiliser d'autres outils à partir du graphe d'état généré en sortie de pi-explorer. Ces outils sont basés sur des travaux récents de l'équipe APR (les pi-graphes) en collaboration avec l'université d'Evry et l'université libre de Bruxelles.
Project Leader : Frédéric PESCHANSKI
09/2015
LaTTe : a laboratory of type theory experiments
LaTTe est un assistant de preuve basĂ© sur la thĂ©orie des types. La caractĂ©ristiques principale de LaTTe est d'ĂȘtre conçu comme une bibliothĂšque (contrairement Ă la plupart des assistants conçus comme des outils indĂ©pendants) complĂštement intĂ©grĂ©e dans le langage et l'Ă©cosystĂšme Clojure. Cela permet la diffusion et l'Ă©change de contenus mathĂ©matiques Ă©laborĂ©s de façon collaborative sur Internet. L'assistant fournit Ă©galement un langage Ă domaine spĂ©cifique pour les preuves dĂ©claratives, basĂ© sur le style "fitch" de preuves pour la dĂ©duction naturelle. L'outil est dĂ©veloppĂ© au sein de l'Ă©quipe APR en collaboration avec l'Ă©quipe Whisper (Pierre-Evariste Dagand).
Project Leader : Frédéric PESCHANSKI
03/2015
SPARQL on Spark : SPARQL query processing with Apache Spark
A common way to achieve scalability for processing SPARQL queries over large RDF data sets is to choose map-reduce frameworks like Hadoop or Spark. Processing complex SPARQL queries generating large join plans over distributed data partitions is a major challenge in these shared nothing architectures. In this article we are particularly interested in two representative distributed join algorithms, partitioned join and broadcast join, which are deployed in map-reduce frameworks for the evaluation of complex distributed graph pattern join plans. We compare five SPARQL graph pattern evaluation implementations on top of Apache Spark to illustrate the importance of cautiously choosing the physical data storage layer and of the possibility to use both join algorithms to take account of the existing predefined data partitionings. Our experimentations with different SPARQL benchmarks over real-world and synthetic workloads emphasize that hybrid join plans introduce more flexibility and often can achieve better performance than join plans using a single kind of join implementation.
Project Leader : Hubert NAACKE
01/2015
http://www-bd.lip6.fr/wiki/en/site/recherche/logiciels/sparqlwithspark
MOOC backend : Backend server handling network measurement requests coming from a MOOC
Serveur permettant de gĂ©rer les requĂȘtes de mesures rĂ©seau provenant d'un MOOC
Project Leader : Timur FRIEDMAN
01/2015
ITS-Tools : Instantiable Transition System Tools
ITS Tools est un model-checker symbolique acceptant en entrée un large éventail de formalismes et vérifiant des propriétés de sûreté, mais aussi des formules LTL et CTL.
Project Leader : Yann THIERRY-MIEG
01/2015
PENDULUM : OCaml syntax extension dedicated to the programming of reactive systems on the Web
Pendulum is a language dedicated to the programming of reactive systems on the Web. It has a powerful expressivity to describe synchronous concurrent systems communicating with broadcast signals. Its constructions and implementation are mostly based on Esterel. The language is embedded in OCaml as a syntax extension. It allows the programmer to describe reactive machines as OCaml values, and run them on signal arguments. The execution of concurrency in pendulum is completely sequential and the scheduling is static. (similar work and inspiration)
Project Leader : Rémy EL SIBAE
11/2014
Laalys : Laalys
Laalys (Learner Activity AnaLYser) est un logiciel qui combine une approche basée sur l'expertise humaine et une approche basée sur l'analyse de données pour annoter et décrire le comportement d'un joueur dans le cadre d'un jeu sérieux. DEs descripteurs pédagogique et sémantique sont générées pour caractériser les actions d'un joueur. La premiÚre version de Laalys a été réalisée dans le cadre de la thÚse de P. Thomas et adaptée aux jeux sérieux de type "étude de cas". La derniÚre version de Laalys est adaptée à des jeux sérieux hautement intéractifs et possédant de grands espaces d'états. .
Project Leader : Amel YESSAD et Mathieu MURATET
02/2014
ExBLAS : Exact Basic Linear Algebra Subprograms
ExBLAS fournit une version performante des algorithmes fondamentaux d'algÚbre linéaire dont les résultats sont précis et reproductibles.
Project Leader : Stef GRAILLAT
01/2014
NFD : Named data network forwarder
NFD is a network forwarder that implements and evolves together with the Named Data Networking (NDN) protocol. The main design goal of NFD is to support diverse experimentation of NDN technology. The design emphasizes modularity and extensibility to allow easy experiments with new protocol features, algorithms, and applications. NFD is an open and free software package licensed under GPL 3.0 license and is the centerpiece of our committement to making NDNâs core technology open and free to all Internet users and developers.
Project Leader : Giovanni PAU
12/2013
VerChor : Framework for the Verification of Choreographies
VerChor enables you to design correct distributed systems following the choreography-based developement approach. Just model the system interaction protocol in your favorite language and let VerChor check for its realizability and retrieve peer interaction skeletons, or let it generate peer controllers to ensure the conformance to the system specification of a set of peers you want to reuse !
Project Leader : Pascal POIZAT
01/2013
CarFi : Enabling V2X with Wifi
CarFi enables a moving car to connect and communicate with existing WiFi infrastructures. CarFi has been designed to facilitate connected car services at a fraction of the cost. The software is PRIVATE and the ideas are protected by a patent application.
Project Leader : Giovanni PAU
01/2013
BCM4Java : Basic Component Model for Java
Ce projet est une implantation d'un modĂšle de programmation par composants rĂ©partis en Java (20.000 lignes de code et de documentation environ Ă ce jour, sous GitHub). Il propose les principaux concepts de l'approche Ă base de composants : composants logiciels, interfaces de composants, ports exposant les interfaces requises et offertes par les composants, et connecteurs explicites. Utilisant la technologie Java RMI, il permet une programmation rĂ©partie grĂące au dĂ©ploiement de composants sur diffĂ©rentes machines virtuelles Java (s'exĂ©cutant sur diffĂ©rents ordinateurs) et aux appels inter-composants via RMI. DĂ©butĂ© dans le cadre du projet de recherche ANR SALTY oĂč il a permis de dĂ©velopper une application dĂ©ployant 10.000 composants rĂ©partis, ce logiciel a Ă©tĂ© utilisĂ© par quelques centaines d'Ă©tudiants et il l'est toujours d'abord dans le cadre du cours de master 2 ALASCA depuis 2014, puis dans le cadre du cours de master 1 Composants depuis 2019.
Project Leader : Jacques MALENFANT
11/2012
SFA : API to federate platforms
API pour la fédération de plateformes
Project Leader : Serge FDIDA
01/2012
BOM : Block-o-Matic!
Block-o-Matic est un algorithme de segmentation de pages Web basĂ© sur une approche hybride pour la segmentation de documents numĂ©risĂ©s et la segmentation de contenu Ă base visuelle. Une page Web est associĂ©e Ă trois structures: l'arborescence DOM, la structure de contenu et la structure logique. L'arborescence DOM reprĂ©sente les Ă©lĂ©ments HTML d'une page, la structure gĂ©omĂ©trique organise le contenu en fonction d'une catĂ©gorie et de sa gĂ©omĂ©trie et enfin la structure logique est le rĂ©sultat de la cartographie de la structure du contenu sur la base du sens humain. Le processus de segmentation est divisĂ© en trois phases: l'analyse, la comprĂ©hension et la reconstruction d'une page Web. Une mĂ©thode d'Ă©valuation est proposĂ©e afin d'effectuer l'Ă©valuation des segmentations de pages Web sur la base d'une vĂ©ritĂ© de terrain de 400 pages classĂ©es en 16 catĂ©gories. Un ensemble de mesures est prĂ©sentĂ© en fonction des propriĂ©tĂ©s gĂ©omĂ©triques des blocs. Des rĂ©sultats satisfaisants sont obtenus en comparaison avec d'autres algorithmes suivant la mĂȘme approche.
Project Leader : AndrĂšs SANOJA
01/2012
AbSolute : AbSolute
AbSolute est un solveur de contraintes basé sur les domaines abstraits.
Il implĂ©mente la mĂ©thode de rĂ©solution prĂ©sentĂ© dans l'article : Marie Pelleau, Antoine MineÌ, Charlotte Truchet, FreÌdeÌric Benhamou, Constraint Solver based on Abstract Domains, 14th International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI), Rome, Italie, 2013 [Article]
Ce solveur peut résoudre des problÚmes continus, discrets et mixtes (contenant des variables entiÚres et réelles) et propose des techniques permettant de traiter aussi bien les contraintes linéaires que non-linéaires. La méthode de résolution prend en compte les erreurs d'arrondi et calcule des approximations flottantes sures des solutions réelles d'un problÚme. AbSolute utilise Apron, une librairie Ocaml de domaines abstraits, qui permet de résoudre des problÚmes à l'aide d'autre domaines abstraits que les intervalles.
Project Leader : Marie PELLEAU
11/2011
Arbogen : a fast uniform random tree generator
Arbogen est un générateur aléatoire uniforme de structures arborescentes. L'outil accepte en entrée un fichier de grammaire décrivant un structure arborescente (ex.: arbres binaires, abres 2-3-3, graphes séries-parallÚles, etc.) ainsi qu'un intervalle de taille (ex.: arbres de taille 1000+-100). Depuis la grammaire un ou plusieurs arbres acceptés par la grammaire et dans l'intervalle considéré sont générés. Cette génération se fait avec une garantie d'uniformité, ce sont donc des arbres "moyens" dans la taille obtenue. L'outil utilise des algorithmes avancés de génération de Boltzmann, faisant suite à des travaux reconnus de l'équipe APR (in the realm of ANR Magnum 2010-2014).
Project Leader : Frédéric PESCHANSKI
10/2011
SPOC : Strem Processing with OCaml
SPOC is a set of tools for GPGPU programming with OCaml.
The SPOC library enables the detection and use of GPGPU devices with OCaml using Cuda and OpenCL. There is also a camlp4 syntax extension to handle external Cuda or OpenCL kernels, as well as a DSL (called Sarek) to express GPGPU kernels from the OCaml code.
Project Leader : Mathias BOURGOIN
09/2010
SAM : Stochastic Arithmetic in Multiprecision
SAM est une bibliothÚque qui permet d'estimer et de contrÎler la propagation des erreurs d'arrondi dans les programmes en précision arbitraire.
Project Leader : Fabienne JEZEQUEL
01/2010
WiPal : IEEE 802.11 traces manipulation software
WiPal is a piece of software dedicated to IEEE 802.11 traces manipulation. It comes as a set of programs and a C++ library. A distinctive feature of WiPal is its merging tool, which enables merging multiple wireless traces into a unique global trace. This tool works offline on PCAP traces that do not need to be synchronized. WiPal also provides statistics extraction and anonymization tools, and its authors plan to extend it. WiPalâs key features are flexibility, ease of use, and efficiency.
Project Leader : Marcelo DIAS DE AMORIM
04/2009
Prog&Play : Prog&Play
Prog&Play est une bibliothÚque de fonctions pour les jeux de Stratégie Temps Réel (STR). Elle permet au joueur de programmer de maniÚre simple et intéractive les entités virtuelles d'un STR. Actuellement, le systÚme Prog&Play est intégré au STR multijoueur Kernel Panic. Le systÚme Prog&Play, combiné au jeu de STR Kernel Panic, permet la mise en oeuvre de jeux sérieux centrés sur la pratique de la programmation informatique.
Project Leader : Mathieu MURATET
01/2008
WScout : Lightweight PCAP file visualizer.
WScout provides a PCAP traces visualizer that is able to work with huge traces (>10 GiB). Its goals are speed and low memory requirements. Despite its design being protocol-agnostic, it currently handles only Prism and IEEE 802.11 headers, hence its name.
Project Leader : Marcelo DIAS DE AMORIM
09/2007
Paris Traceroute : Paris Traceroute
Version améliorée de l'outil classique pour tracer des routes dans internet
Project Leader : Timur FRIEDMAN
01/2006
PNML Framework est l'implémentation prototype du standard ISO/IEC-15909 (partie 2), le format d'échange normalisé pour les réseaux de Petri. L'objectif principal de PNML est d'aboutir à l'interopérabilité des outils basés sur les réseaux de Petri. PNML Framework est conçue pour implémenter le standard au fur et à mesure de son élaboration, afin d'en mesurer la faisabilité et de servir de référecne pour es outils de la communauté. Il propose une API de manipulation permettant de créer, sauver, charger et parcourir des réseaux de Petri au format PNML.
Project Leader : Fabrice KORDON
04/2005
CORIOLIS : Platform for physical synthesis of integrated circuits
Coriolis est une plate-forme logicielle pour la recherche d'algorithmes, le développement d'outils et l'évaluation de nouveaux flots de conception physique VLSI. Les procédés technologiques actuels, nanométriques, posent de nouveaux défis aux flots de CAO. Les recherches académiques concernent souvent la résolution de problÚmes trop spécifiques, indépendemment d'autres algorithmes, faute de pouvoir inter-opérer avec eux. Or il est capital de pouvoir évaluer les interactions entre les différents outils au sein d'un flot complet de conception. La plate-frome CORIOLIS, conçue en C++, est faite pour permettre l'inter-opérabilité des différents briques logicielles qui l'utilisent. Elle propose actuellement dessolutions aux problÚmes de partitionnement, de placement et routage de circuits numériques, en technologie nanométrique.
Project Leader : Jean-Paul CHAPUT
01/2004
CAIRO : Analog IP Design
L'objectif du projet CAIRO est de dĂ©velopper des mĂ©thodes et des outils autorisant une rĂ©utilisation des cellules analogiques et une capitalisation de connaissances du concepteur sous forme des cellules IP (Intellectual Property) portables dâune technologie Ă l'autre et dâun jeu de spĂ©cifications Ă l'autre. Le langage CAIRO+, ensemble de fonctions C++, est un langage de crĂ©ation dâIP analogiques permettant de structurer, de formaliser et dâautomatiser en grande partie le flot de conception analogique. Il est utilisĂ© pour crĂ©er une procĂ©dure appelĂ©e «gĂ©nĂ©rateur» pour une cellule analogique. A l'Ă©tape actuelle d'avancement du projet, la structure Ă©lectrique de la cellule (i.e. le schĂ©ma Ă©lectrique non dimensionnĂ©) est figĂ©e par le concepteur. Le gĂ©nĂ©rateur doit permettre un dimensionnement des composants de la cellule (dĂ©finition de la taille des transistors, des capacitĂ©s etc.) et de synthĂ©tiser le layout â le tout en fonction des spĂ©cifications de la cellule et des paramĂštres technologiques. L'Ă©criture du gĂ©nĂ©rateur de la cellule est Ă la charge du concepteur, notamment, la partie qui concerne le dimensionnement Ă©lectrique du circuit. Un des points forts du langage CAIRO+ est, sans doute, la possibilitĂ© de synthĂ©tiser le layout d'une maniĂšre quasi-automatique, Ă partir du schĂ©ma Ă©lectrique dimensionnĂ© â la fonction de gĂ©nĂ©ration du layout fait partie des modules «natifs» du langage. De plus, le dimensionnement Ă©lectrique peut prendre en compte les Ă©lĂ©ments parasites du layout (nous disons «peut», car tout dĂ©pend de la volontĂ© du concepteur qui dĂ©finit la procĂ©dure de dimensionnement). Dans ce cas, plusieurs cycles «dimensionnement de la cellule â synthĂšse du layout» peuvent ĂȘtre nĂ©cessaires. Un des pĂŽles d'intĂ©rĂȘt de ce groupe est la conception de modulateurs sigma-delta temps continu. Dans cette activitĂ© nous nous attachons Ă capitaliser lâeffort de conception en dĂ©veloppant des mĂ©thodes et des outils permettant une rĂ©utilisation des rĂ©sultats. La structure complexe des modulateurs, incluant un grand nombre de cellules de fonctionnalitĂ© identique mais de spĂ©cifications diffĂ©rentes (telles que GmC, amplificateurs), offre un contexte appropriĂ© pour lâapplication de la mĂ©thodologie implĂ©mentĂ©e dans CAIRO+.
Project Leader : Marie-Minerve LOUĂRAT
01/2004
DDD : Library for manipulation of Data Decision Diagrams
La libDDD est une bibliothÚque de manipulation des Data Decision Diagrams et des Hierarchical Set Decision Diagrams. Elle supporte flexiblement des types de données complexes et las algorithmes de "saturation", offrant à ses utilisateurs des performances au sommet de l'état de l'art. Cette bibliothÚque C++ est distribué sous les termes de la LGPL de Gnu.
Project Leader : Yann THIERRY-MIEG
01/2001
Salammbo : Construction and Use of Fuzzy Decision Trees
SalammbĂŽ est un logiciel d'apprentissage automatique permettant de construire des arbres de dĂ©cision flous Ă partir d'un ensemble d'exemples (ensemble d'apprentissage). Il permet de tester diffĂ©rents types de paramĂštres : mesures de discrimination (entropie floue, mesure d'ambiguĂŻtĂ©, etc.), t-normes/t-conormes, critĂšres d'arrĂȘt, etc. De plus, il met en Ćuvre une mĂ©thode automatique pour construire des ensembles flous pour des variables numĂ©riques Ă partir d'un ensemble de valeurs numĂ©riques (prĂ©cises).
Project Leader : Christophe MARSALA
05/2000
JADE : The Java Agent DEvelopment framework
JADE (Java Agent DEvelopment Framework) is an open source platform for peer-to-peer agent based applications.
JADE simplifies the implementation of multi-agent systems through a middleware that complies with the FIPA specifications for interoperable intelligent multi-agent systems.
JADE provides a simple yet powerful task execution and composition model, peer-to-peer agent communication based on asynchronous message passing, a yellow pages service supporting publish subscribe discovery mechanism and many other advanced features that facilitates the development of distributed systems.
A JADE-based system can be distributed across the internet and can tranparently deploy agents on Android and J2ME-CLDC MIDP 1.0 devices. The platform configuration as well as the agent number and locations can be changed at run-time, as and when required.
Project Leader : Cédric Herpson
01/2000
CPN-AMI est un environnement conçu sur FrameKit: une plate-forme logicielle d'intégration permettant un couplage rapide d'outils de provenance diverses. CPN-AMi est ainsi l'assemblage le plus complet d'outils de vérifications à partir de réseaux de Petri. Ces outils ont été développés dans le cadre des travaux de SRC ou par des partenaires universitaires (Université de Turin, Université d'Helsinki, Bell-Labs, Université de Munich, Université Humbolt à Berlin). CPN-AMI est composé d'un serveur d'outils et d'une interface utilisateur déporté à laquelle on se connecte.
Project Leader : Fabrice KORDON
12/1994
SystĂšme d'objets Ă la CLOS pour Scheme
Project Leader : Christian QUEINNEC
01/1993
CADNA : Control of Accuracy and Debugging for Numerical Application
CADNA est une bibliothĂšque qui permet de faire du calcul scientifique sur ordinateur en estimant et contrĂŽlant la propagation des erreurs d'arrondi
Project Leader : Fabienne JEZEQUEL
01/1992
Macao : Modélisation Analyse et Conception Assistées par Ordinateur
Macao est un logiciel générique de dessin de graphes. Avec une interface utilisateur intuitive, il permet de dessiner trÚs facilement des graphes. Macao est aussi l'interface une interface utilisateur de FrameKit, une plate-forme dédiée au prototypage et à la validation de systÚmes complexes.
Project Leader : Jean-Luc MOUNIER
09/1987
aGrUM : a Graphical Unified Model
aGrUM est une librairie en C++ de manipulation de modÚles graphiques. Son spectre est assez large puisqu'elle est conçue pour faire de l'apprentissage (de réseaux bayésiens par exemple), de la planification (FMPDs) ou bien encore de l'inférence (réseaux bayésiens, GAI, diagrammes d'influence).
Project Leader : Christophe GONZALES & Pierre-Henri WUILLEMIN
FoCaLize : FoCaLize
Atelier de développement intégré pour les logiciels critiques
Project Leader : ThérÚse HARDIN
WEB-R : Web-R, the complete memory of my Web
Web-R, un outil non-intrusif et rapide dâenregistrement qui rĂ©alise un stockage complet et systĂ©matique des pages web de lâutilisateur et de sa navigation.
Project Leader : Alain LIFCHITZ

RAGLib : A Library for Real Algebraic Geometry
Cette bibliothÚque, implantée en Maple, contient quelques fonctionnalités pour l'étude des solutions réelles des systÚmes polynomiaux de dimension positive.
Project Leader : Mohab SAFET EL DIN
VideoScm2003 : VideoScm2003
Logiciel d'accompagnement pour l'apprentissage et la programmation récursive en scheme et la notion de processus d'évaluation.
Project Leader : Maryse PELLETIER et Michele SORIA
http://www-ari.ufr-info-p6.jussieu.fr/RESSOURCES/cederoms.htm
Epsilon : Epsilon
Epsilon est une bibliothÚque de fonctions implentée en Maple et Java dédiée a l'élimination polynomiale et aux applications géométriques. Elle est composée de 8 modules et contient plus de 70 fonctions.
Project Leader : Dongming WANG
DARX est une plate-forme d'exécution générique pour systÚmes multi-agents développée conjointement entre l'équipe OASIS du LIP6 et SRC. DARX permet de fiabiliser par réplication les agents. Outre sa généricité, sa principale originalité est (1) la capacité à pouvoir changer dynamiquement de stratégies de réplication en fonction des contraintes applicatives et (2) son adaptation à la grande échelle en adoptant une architecture hiérarchique. DarX est implanté au-dessus de Java-RMI.
Project Leader : Pierre SENS
VVM : Virtual Virtual Machine
Le nombre toujours croissant de domaine d'application émergent entraßne un nombre croissant de solutions ad-hoc, rigides et faiblement interopérables. Nous proposons une plateforme pour la construction d'applications et d'environnement d'exécution flexibles et interopérables appellée la Machine Virtuelle Virtuelle. Plusieurs logiciels sont disponibles en libre sur Internet autour de la MVV: la RVM (Recursive Virtual Machine) le CCG (Compiler Compiler Generator) CCG a été notamment utilisé par le SUN Research Lab dans le cadre de la KVM.
Project Leader : Bertil FOLLIOT
SPOT : Spot Produces Our Traces
SPOT (Spot Produces Our Traces) est une bibliothÚque de model-checking facilement extensible. à la différence des model-checkers existants, dont le mode opératoire est immuable, SPOT fournit des briques que l'utilisateur peut combiner entre elles pour réaliser un model-checker répondant à ses propres besoins. Une telle modularité permet d'expérimenter facilement différentes combinaisons, et facilite le développement de nouveaux algorithmes. D'autre part, cette bibliothÚque est centrée autour d'un type d'automates particulier permettant d'exprimer les propriétés à vérifier de façon plus compacte, qui n'a jamais été utilisé dans un outil jusqu'à présent.
Project Leader : Denis POITRENAUD
LfP : Language for Prototyping
Il s'agit d'un langage de spécification de systÚmes répartis à partir duquel nous travaillons pour générer automatiquement des spécifications formelles et des programmes. Le compilateur de ce langage a été écrit et intégré dans la plate-forme FrameKit (à coté de l'environnement CPN-AMI pour permettre un couplage et exploiter les outils de vérification). Ce langage et son compilateur sont à l'origine de notre participation dans le projet RNTL MORSE
Project Leader : Fabrice KORDON
Outil de programmation littéraire
Project Leader : Christian QUEINNEC
https://www-ftp.lip6.fr contact ftpmaint (at) nulllip6.fr