Software development
- "la créativité naît des contraintes et meurt de liberté." L. de Vinci
- Since 2002, I coordinate the development of the Biochemical Abstract Machine, BIOCHAM for modeling, analyzing and synthesizing chemical reaction networks (see video).
Laurence Calzone, François Fages, Sylvain Soliman. BIOCHAM: An Environment for Modeling Biological Systems and Formalizing Experimental Knowledge. Bioinformatics, 22(14):1805–1807, 2006. [ preprint ]
- Since 2023, motivated by teaching purposes, I develop a SWI-Prolog pack modeling, for mathematical modelling with constraints on subscripted variables defined by set comprehension in Prolog:
François Fages. A Constraint-based Mathematical Modeling Library in Prolog with Answer Constraint Semantics. In 17th International Symposium on Functional and Logic Programming, FLOPS 2024, pages 135–150, volume 14659 of LNCS. Springer-Verlag, 2024. [ preprint ]
- In 2002, I developed a generic graphical user interface for constraint logic programming, CLPGUI, revised in 2006 and planned for upgrade in 2024 for teaching purposes.
François Fages, Sylvain Soliman, Rémi Coolen. CLPGUI: a Generic Graphical User Interface for Constraint Logic Programming. Journal of Constraints, Special Issue on User-Interaction in Constraint Satisfaction, 9(4):241–262, 2004. [ preprint ]
I also supervised the development of:
- ClpZinc a Horn clause front-end for the MiniZInc modelling language for expressing search strategies by constraints, developed by Thierry Martinez
- MiniZinc-CMAES a stochastic optimization backend for the MiniZinc modelling language, developed by Thierry Martinez
- FO-CTL(ℝlin), a constraint solver for full First-Order Computation Tree Logic with linear arithmetic over the reals, implemented by Thierry Martinez in 2012.
- Rules2CP, a rule-based modelling language for constraint programming, implemented by Julien Martin from 2007 to 2009.
- CHRat, a modular version of Constraint Handling Rules with ask and tell, implemented by Thierry Martinez in 2008.
- TCLP, a type checker for Constraint Logic Programming, implemented by Emmanuel Coquery, from 2001 to 2006.
and in a former life at Thomson-CSF (now Thales)
- I developed from 1986 to 1992 a rule-based reactive programming language, which became Ilog Rules (now IBM Ilog).
- and from 1989 to 1996 a Prolog library for solving constraints over finite domains Meta(F) used for several applications at Thales
Philippe Codognet, François Fages, Thierry Sola. A meta-level compiler for CLP(FD) and its combination with intelligent backtracking. In Constraint Logic Programming : Selected Research, pages 437–456. MIT Press, 1993. [ preprint ]
and for teaching at X and ENSFrançois Fages. Programmation Logique par Contraintes. In , Collection Cours de l'Ecole Polytechnique. Ed. Ellipses, Paris (192p), 1996. [ preprint ]