Former Researcher in Computer Science in the
Since January 2011, I am on leave from INRIA.
| Email :
I am interested in computer programming of geometric algorithms.
Mesh generation and the other algorithms developed by my co-workers from
Geometrica are of particular interest, as well
as any computational geometry algorithm you may find for example in
Programming issues of interest are: the efficiency of basic
numerical routines (the geometric predicates and
constructions which are so critical to the robustness of geometric
algorithms), formal proofs of algorithms, parallel
algorithms and compact memory representations of data
structures. I am also interested in compiler optimizations and
programming languages, especially C++. Another important
direction of programming is the maintainability of large code bases
like CGAL, which triggers research on finding
concepts with broad applicability to help code factorization and
understandability, within the generic programming paradigm.
Below are some of my recent publications, and here is
the complete list.
A Generic Lazy Evaluation Scheme for Exact Geometric Computations
S. Pion and A. Fabri. Science of Computer Programming, 2011.
Parallel Geometric Algorithms for Multi-Core Computers
V. H. F. Batista, D. L. Millman, S. Pion and J. Singler. CGTA, 2010.
Directed Rounding Arithmetic Operations in C++
G. Melquiond and S. Pion. ISO, WG21 document number
- Robust construction
of the three-dimensional flow complex
F. Cazals, A. Parameswaran and S. Pion. SoCG, 2008.
- FPG: A code
generator for fast and certified geometric predicates
A. Meyer and S. Pion. RNC, 2008.
- Classroom Examples of
Robustness Problems in Geometric Computations
L. Kettner, K. Mehlhorn, S. Pion, S. Schirra and C. Yap. CGTA, 2008.
In connection to my research, I participate to the work of the following standardization committees:
- WG21 : the ISO
working group for the standardization of the C++ programming language.
Here is a list of my C++ work.
- IEEE-1788 :
standardization of interval arithmetic.
Most of my developments are done around CGAL,
of which I am a member of the editorial
board (which I chaired from February 2006 to June 2010).
Watch the general presentation video !
- CGAL : I significantly contributed to:
- the 2D/3D triangulations,
- the geometric kernel,
- the arithmetic kernel (floating-point filters...),
- plenty of other stuff,
- the Python and
- the overall technical direction of the project through the CGAL editorial board,
- the maturation of key parts which allowed the creation of
2003, the company distributing CGAL, with which I am still
frequently in contact.
- Boost : I am a co-author of the
- CORE : I implemented
improvements to the root bound mechanism for floating-point input, and other optimizations.
- GCC : I implemented a few optimizations
helping interval arithmetic (some expression transformations).
- ♕ N-queens problem :
I used to hold the world record for N=21-23 using a distributed program.
- Miscellaneous: the Linux kernel, where I once added support for large swap
areas, and some other old programs.
Program committees and editorial responsibilities
- Some courses I gave.
- Jury : I was member of the jury at the entrance examination of the
ENS (algorithmic and programming oral
exam), from 2007 to 2009.
- I was a member of the
CDL, the local
committee dealing with software development from 2004 to 2007.
- Jean-Paul Rigault and I organized a
in Sophia Antipolis, in June 2008.
- What do I do in my free time ?
I like gardening, paragliding/flying, rock-climbing, biking...
See also some bike benchmarks.
- Some old archives of the mailing-list
now hosted here.
- Some old information about the
(French Federation of Mathematical and Logical games).