Iam an Associate Professor in Computing Science (maître de conférences en informatique) in the OGRE (Optimisation Globale et Résolution Ensembliste) team at LS2N, UMR CNRS 6004, France.

My main areas of expertise include the design of constraint solvers for continuous problems, floating-point arithmetic, and interval arithmetic.

Since 2001, I have been the main developer behind GAOL, a C++ interval arithmetic library that offers the multivalued inverse functions required by interval constraint solvers. Since 2019, I have been the main developer for FPNGlib, a C library to draw floating-point numbers at random geared towards numerical software testing. Since 2021, I have been the main developer for MicroFloatingPoints.jl, a Julia package to manipulate IEEE 754-compliant very small floating-point numbers (from 5 bits to 32 bits).

From 2008 to 2015, I was a member of the Interval Standard Working Group responsible for the development of the IEEE Std 1788™-2015 Standard for Interval Arithmetic.

I have been a First-Aider at Work (Sauveteur-Secouriste du Travail) since 2006.

Research

My ORCID iD is ORCID iD iconhttps://orcid.org/0000-0002-1798-1568.
«If there is one ``scientific''
discovery I am proud of,
it is the discovery of the habit of
writing without publication in mind. I experience it as a liberating
habit: without it, doing the work becomes one thing and writing it
down becomes another one, which is often viewed as an unpleasant burden.
When working and writing have merged, that burden has been taken away. »
E. W. Dijkstra. EWD1000-6.

Working Papers

Selected Publications

Here is a selection of my most recent and/or significant publications. Other publications available upon request. [Obfuscation note: replace all occurrences of '3' by 'e' in the email address]

Software

GAOL (Not Just Another Interval Library)

GAOL is a C++ Interval Arithmetic library I have been developing since 2001. Contrary to most of its concurrents, it offers all the reverse operators needed when implementing interval constraint solvers. GAOL has been tested on the following platforms:

  • Linux, 32 bits with GCC 6.1.0
  • Linux, 64 bits, with GCC 6.1.0
  • Mac OS X 64 bits (compiler unknown)
  • ARMv8 64 bits (AARCH64, starting from v. 4.2.2 for GAOL and v. 2.1.1 for mathlib)

I am interested in hearing from you [Obfuscation note: replace all occurrences of '3' by 'e' in the email address] if you were able to compile and test GAOL on other platforms, or if you observe a problem on a platform that is reported as supported in the above list.

For what it is worth, you may be interested in knowing that GAOL is not IEEE 1788 Standard compliant, and that I have no plan in the near future to make it so.

The latest version of GAOL used to be available from SourceForge. It is no longer the case, as of October 2016. You may now download the latest version of GAOL from GitHub.

You will also need a mathematical library, either the IBM Accurate Portable Mathematical Library or CRLibm. Install one of these two before configuring gaol.

FPNGlib: a Floating Point Number Generators Library

FPNGlib is a C library available from GitHub offering many Random Number Generators to draw integers and floating-point numbers. Its main feature is that it allows the user to draw floating-point numbers with various properties so as to permit testing different aspects of numerical software.

MicroFloatingPoints: computing with very small IEEE 754-compliant floats

MicroFloatingPoints is a Julia package available from GitHub allowing to compute with very small floating-point numbers (from 5 bits to 32 bits) that follow the IEEE 754 standard. See the documentation for more.

Teaching

«For the correct analogy for the mind
is not a vessel that needs filling,
but wood that needs igniting. »
Plutarch. On Listening.

I teach a course on Computer Architecture at the Bachelor level (3rd year, in French) , a course at the introductory level on Scripting languages (BASH, AWK, and Python) and a course on Advanced Algorithms and Programming to 1st year Master students in Bioinformatics (in French). I have written (in French) several fascicles on various parts of my courses. They are all available under the Creative Commons CC BY-NC-ND:

With Christophe Jermann, we have written the fascicle (in French) « Le calcul sur ordinateur » for high school teachers in Mathematics and Computer Science about the pitfalls of numerical computation on electronic devices. It serves as follow-up material to the talk by Christophe at Journée académique de l'IREM des Pays de la Loire held in Nantes on 13th April, 2023.

Miscellaneous

LaTeX Stuff

Since 1996, I have developed many LaTeX packages, mostly used only locally at the labs I was employed at the time. For my PhD defense in 2000, I developed Prosper, a package to write more beautiful LaTeX slides in a simpler way than what was available at the time. Somehow, it filled a need and caught on. However, Prosper heavily relies on Adobe Postscript, and cannot be used when producing Adobe PDF files directly from the LaTeX source, as would be done by a tool such as pdflatex. With more modern contenders around, I decided in 2009 to stop supporting it. If you are now making the move to LaTeX slide design, please consider packages like Powerdot (self-advertised as ``based on Prosper'') or Beamer (my favorite, and the one I myself use now) instead.

To fill a narrower need, I have written sujet, a LaTeX class to write subjects for exams, tutorials, … It is possible to edit both the subject and its correction in the same document.

The XeLaTeX class unantes can be used to write a letter according to the graphic charter of the University of Nantes. It is an unofficial class, which is not endorsed in any way by the University of Nantes. You will most likely need to install the Alte Din 1451 Mittelschrift font on your system to use the class.

The Beamer style ls2n can be used for LaTeX presentations sponsored by the Laboratoire des Sciences du Numérique de Nantes (LS2N). This is an unofficial style that is not endorsed by LS2N.

Contact

Email address

Fr3d3ric.Goualard+HOMEPAGE@univ-nant3s.fr
[Obfuscation note: replace all occurrences of '3' by 'e' in the email address]

Surface mail

Frédéric Goualard
LS2N UMR CNRS 6004
Pôle Sciences et technologie
2, rue de la Houssinière
BP 92208
F-44322 NANTES

PGP Public Key

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.14 (GNU/Linux)

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
=2eEH
-----END PGP PUBLIC KEY BLOCK-----

DISCLAIMER: Though related to my research at LS2N and Nantes Université, France, this web site is neither hosted by that laboratory nor by Nantes Université. All opinions expressed on this web site are my own and are not endorsed in any way by LS2N or Nantes Université.