Fredrik Johansson
Don't like the portrait? Refresh for another one.
Contact: fredrik.johansson@gmail.com
I'm a junior researcher (chargé de recherche) in the Canari team at Inria and Institut de Mathématiques de Bordeaux (my office). I work on computer algebra, mainly on efficient algorithms for arbitrary-precision arithmetic and rigorous computation with real and complex numbers.
News
My blog features semi-regular updates. For more frequent updates, follow me on Mastodon. Current events I'm attending:
- January 2025: FLINT development workshop, Palaiseau
Students
- Albin Ahlbäck (PhD, 2024-), co-supervised with Joris van der Hoeven
Software
- I'm the lead developer of FLINT, a high-performance C library for polynomial arithmetic, exact linear algebra, special functions, etc., used in SageMath and many other computer algebra systems. I've been one of FLINT's main contributors since 2010 and took over maintenance from the project's founding author Bill Hart in 2022.
- I created the Arb library for arbitrary-precision ball arithmetic in 2012 and later in 2020 the Calcium system for exact real arithmetic. Arb and Calcium were merged into FLINT in 2023 and will continue development as part of FLINT rather than as standalone projects.
- I created mpmath, a Python library for arbitrary-precision arithmetic, in 2007. I'm only passively involved in mpmath's development these days.
- I have contributed to several other projects, including SageMath, SymPy (I also designed the SymPy logo), Nemo.jl, AbstractAlgebra.jl, Python-FLINT, ore_algebra and FunGrim.
Check my GitHub profile for more projects.
Publications
This list is available (possibly out of date) in BibTeX format (txt file). I also have a Google Scholar profile.
-
Fast multiple precision exp(x) with precomputations
With Joris van der Hoeven. To appear, ARITH 2024. [HAL] -
Computing elementary functions using multi-prime argument reduction
Preprint, 2022. [arXiv] [HAL] -
Rapid computation of special values of Dirichlet L-functions
Preprint, 2021. [arXiv] [HAL] -
Arbitrary-precision computation of the gamma function
Maple Transactions, Vol 3 No 1, 2023. [arXiv] [HAL] [DOI] -
Computing isolated coefficients of the j-function
Preprint, 2020. [arXiv] [HAL] -
On a fast and nearly division-free algorithm for the characteristic polynomial
Technical report, 2020. [arXiv] [HAL] -
Calcium: computing in exact real and complex fields
ISSAC '21. [arXiv] [HAL] [DOI] -
The minimal Fried average entropy for higher-rank Cartan actions
With Eduardo Friedman and Gabriel Ramirez-Raposo. Mathematics of Computation, 90 (2021), 973-978. [HAL] [DOI] -
Calculer avec les nombres réels (published French translation by Xavier Caruso) /
Computing with real numbers (original English manuscript)
Informatique Mathématique - Une photographie en 2020 edited by Sébastien Labbé, Vincent Penelle. CNRS Éditions, 2020, pp. 115-147. -
FunGrim: a symbolic library for special functions
ICMS 2020: Mathematical Software, pp 315-323, Springer LNCS, 2020. [arXiv] [HAL] [DOI] -
Faster arbitrary-precision dot product and matrix multiplication
26th IEEE Symposium on Computer Arithmetic (ARITH26), 2019. [arXiv] [HAL] [DOI] -
Numerical evaluation of elliptic functions, elliptic integrals and modular forms
Elliptic Integrals, Elliptic Functions and Modular Forms in Quantum Field Theory, Springer, 2019, pp. 269-293. [arXiv] [HAL] [DOI] -
Computing Stieltjes constants using complex integration
With Iaroslav V. Blagouchine. Mathematics of Computation, vol 88, 2019, pp. 1829-1850. [arXiv] [HAL] [DOI] -
Numerical integration in arbitrary-precision ball arithmetic
Mathematical Software - ICMS 2018, Springer LNCS, 2018, pp. 255-263. [arXiv] [HAL] [DOI] -
Fast and rigorous arbitrary-precision computation of Gauss-Legendre quadrature nodes and weights
With Marc Mezzarobba. SIAM Journal on Scientific Computing 40(6), 2018, pp. C726-C747. [arXiv] [HAL] [DOI]
-
Computing the Lambert W function in arbitrary-precision complex interval arithmetic
Numerical Algorithms vol 83, pages 221-242 (2020). [arXiv] [HAL] [DOI] -
Nemo/Hecke: computer algebra and number theory packages for the Julia programming language
With Claus Fieker, William Hart and Tommy Hofmann. 42nd International Symposium on Symbolic and Algebraic Computation (ISSAC'17), 2017, pp. 157-164. [arXiv] [HAL]
-
Arb: efficient arbitrary-precision midpoint-radius interval arithmetic
IEEE Transactions on Computers, vol 66, issue 8, 2017, pp. 1281-1292. [DOI] [PDF] [arXiv] [HAL] -
Short addition sequences for theta functions
With Andreas Enge and William Hart. Journal of Integer Sequences, vol 21, 2018, article 18.2.4. [arXiv] [HAL]
-
Computing hypergeometric functions rigorously
ACM Transactions on Mathematical Software, vol 45, issue 3, 2019, pages 1–26. [PDF] [arXiv] [HAL] [DOI] -
SymPy: Symbolic computing in Python
With Aaron Meurer et al. PeerJ Computer Science 3:e103, 2017. [DOI] [HAL]
-
Efficient implementation of elementary functions in the medium-precision range
22nd IEEE Symposium on Computer Arithmetic (ARITH22), 2015, pp. 83-89. [PDF] [arXiv] [DOI] -
A bound for the error term in the Brent-McMillan algorithm
With Richard P. Brent. Mathematics of Computation, vol 84, 2015, pp. 2351-2359. [PDF] [arXiv] [DOI] - A fast algorithm for reversion of power series
Mathematics of Computation, vol 84, 2015, pp. 475-484. [PDF] [arXiv] [DOI] [info] -
Fast and rigorous computation of special functions to high precision
PhD thesis, RISC, Johannes Kepler University, Linz, 2014. [PDF] [info] -
Evaluating parametric holonomic sequences using rectangular splitting
39th International Symposium on Symbolic and Algebraic Computation (ISSAC'14), 2014, pp. 256-263. [PDF] [slides] [arXiv] [DOI] [info] -
Using functional equations to enumerate 1324-avoiding permutations
With Brian Nakamura. Advances in Applied Mathematics, vol 56, 2014, pp. 20-34. [PDF] [arXiv] [DOI] [info] -
Rigorous high-precision computation of the Hurwitz zeta function and its derivatives
Numerical Algorithms, vol 69, issue 2, 2015, pp. 253-270. [PDF] [arXiv] [DOI] [info] -
Ore polynomials in Sage
With Manuel Kauers and Maximilian Jaroschek. Computer Algebra and Polynomials, Springer LNCS, 2015, pp. 105-125. [PDF] [arXiv] [DOI] [info] -
Arb: a C library for ball arithmetic
ACM Communications in Computer Algebra, vol 47, issue 4, December 2013, pp. 166-169. [PDF] [slides] [DOI] [info]
Note: the 2017 IEEE TC paper largely supersedes this extended abstract. -
Finding hyperexponential solutions of linear ODEs by numerical evaluation
With Manuel Kauers and Marc Mezzarobba. 38th International Symposium on Symbolic and Algebraic Computation (ISSAC'13), 2013, pp. 211-218. [PDF] [arXiv] [DOI] [info] -
Efficient implementation of the Hardy-Ramanujan-Rademacher formula
LMS Journal of Computation and Mathematics, vol 15, 2012, pp. 341-359. [PDF] [arXiv] [DOI] [info] -
Simulation of the Maxwell-Dirac and Schrödinger-Poisson systems
Master's thesis, Chalmers University of Technology, Gothenburg, 2010. [PDF] [slides] [info]
Erdős number
My Erdős number is 3 (0-1, 1-2, 2-3).
Awards
- Best Paper Award, 26th IEEE Symposium on Computer Arithmetic (ARITH26), June 2019, Kyoto, Japan. (For Faster arbitrary-precision dot product and matrix multiplication.) Photos from the event: 1, 2, 3, 4, 5, 6, 7, 8
- Highlighted Paper, IEEE Transactions on Computers Special Section on Computer Arithmetic, 2017. (For Arb: efficient arbitrary-precision midpoint-radius interval arithmetic.)
- Distinguished Software Presentation Award, 38th International Symposium on Symbolic and Algebraic Computation (ISSAC'13), Boston, USA, 2013. (For Arb: a C library for ball arithmetic.)
Talks
- June 2024: News about FLINT, MPFR/MPC/MPFI/ARB Developers Meeting, Bordeaux
- May 2024: Generic rings and numerical computation in FLINT, Journées annuelles NuSCAP 2024, LIP6, Paris
- September 2023: The practical complexity of arbitrary-precision functions, Fundamental Algorithms and Algorithmic Complexity, RTCA 2023, Institut Henri Poincaré, Paris, France
- June 2023: FLINT: Fast Library for Number Theory, Mathematical Software and High Performance Algebraic Computing, ENS Lyon, France
- May 2023: Computing special functions using integral representations, Certified and Symbolic-Numeric Computation, ENS Lyon, France
- March 2023: Faster computation of elementary functions, AriC seminar, ENS Lyon, France, online
- January 2023: Faster computation of elementary functions, MATHEXP–Polsys seminar, Inria Saclay, France
- September 2022: Faster computation of elementary functions, LFANT seminar, IMB, Bordeaux, France
- August 2022: [Video] Real numbers: a computational perspective, ANTS XV, University of Bristol, UK
- June 2022: [Video] FLINT: Fast Library for Number Theory, Global Virtual Sage Days 112.358, online
- May 2022: Fungrim: a semantic library of mathematical functions, Big Data in Pure Mathematics 2022, online
- July 2021: Exact linear algebra over the complex numbers, Applications of Computer Algebra (ACA) 2021, online
- July 2021: Calcium: computing in exact real and complex fields, ISSAC 2021, online
- April 2021: Calcium: computing in exact real and complex fields, NuSCAP kick-off meeting, France, online
- November 2020: Calcium: computing in exact real and complex fields, LFANT seminar, Bordeaux, France, online
- July 2020: What's new in Flint (2.6), ICMS 2020, online
- July 2020: [Video] FunGrim: a symbolic library for special functions, ICMS 2020, online
- July 2020: [Video] Special functions in Fungrim, OPSFOTA virtual seminar series, online
- June 2020: Computing with real numbers / Calculer avec les nombres réels (Part 1 + 2), EJCIM 2020, online
- December 2019: Numerical and symbolic tools for reliable computing with real numbers, CAPA seminar, Uppsala University, Sweden
- October 2019: Reliable real computing, Computational Mathematics and Applications Seminar, University of Oxford, UK
- October 2019: Ball arithmetic as a tool in computer algebra, Maple Conference, Waterloo, ON, Canada
- September 2019: Fungrim: The Mathematical Functions Grimoire, LFANT seminar, IMB, Bordeaux, France
- July 2019: Fungrim: The Mathematical Functions Grimoire, OPSFA 2019, Hagenberg, Austria
- June 2019: Faster arbitrary-precision dot product and matrix multiplication, ARITH26, Kyoto Research Park, Kyoto, Japan
- May 2019: Fungrim: The Mathematical Functions Grimoire, FastRelax Workshop, ENS Lyon, France
- February 2019: Arb demonstration, Free Computational Mathematics, CIRM, Luminy, France
- January 2019: Computing with precision, Guilty Spark Tech Talk, X, Mountain View, CA, USA
- January 2019: Progress in arbitrary-precision ball arithmetic: numerical integration and faster arithmetic, Scientific Computing and Matrix Computations Seminar, UC Berkeley, CA, USA
- November 2018: Faster dot product and matrix multiplication in arbitrary-precision ball arithmetic, MPFR / MPC / iRRAM Workshop, University of Trier, Germany
- November 2018: Faster dot product and matrix multiplication in arbitrary-precision ball arithmetic, RAIM 2018, LRI, Gif-sur-Yvette, France
- September 2018: Complex integration in Arb, SCAN 2018, Waseda University, Tokyo, Japan
- July 2018: Numerical integration in arbitrary-precision ball arithmetic, ICMS 2018, University of Notre Dame, South Bend, IN, USA
- June 2018: Numerical integration in arbitrary-precision ball arithmetic, FastRelax meeting, Inria Sophia-Antipolis, France
- March 2018: Numerical integration in arbitrary-precision ball arithmetic, AriC seminar, LIP, ENS Lyon, France
- February 2018: Fast and rigorous numerical integration, Comite des projet, Inria Bordeaux Sud-Ouest, France
- January 2018: Fast and rigorous arbitrary-precision evaluation of Legendre polynomials and Gauss-Legendre quadrature nodes, JNCF 2018, CIRM, Luminy, France
- January 2018: Numerical integration in complex interval arithmetic, LFANT seminar, IMB, Bordeaux, France
- December 2017: Numerical integration in complex interval arithmetic, MAX seminar, LIX, Ecole Polytechnique, Paris, France
- October 2017: Numerics of classical elliptic functions, elliptic integrals and modular forms, Elliptic Integrals, Elliptic Functions and Modular Forms in Quantum Field Theory, DESY, Zeuthen, Germany
- October 2017: Numerics of classical elliptic functions, elliptic integrals and modular forms, LFANT seminar, IMB, Bordeaux, France
- August 2017: Fundamental algorithms in Arb, OSCAR : Antic workshop, TU Kaiserslautern, Germany
- July 2017: Arb: efficient arbitrary-precision midpoint-radius interval arithmetic, ARITH24, Imperial College London, UK
- June 2016: Fast reversion of formal power series, RAIM 2016, Banyuls-sur-mer, France
- May 2016: Hypergeometric functions in Arb, FastRelax meeting, LAAS-CNRS, Toulouse, France
- November 2015: Taking precision to the limit, Unithe ou cafe, INRIA, Bordeaux, France
- October 2015: Computing transcendental functions with error bounds, LFANT seminar, IMB, Bordeaux, France
- September 2015: Addition sequences and numerical evaluation of modular forms, DK Statusseminar, Strobl, Austria
- June 2015: Efficient implementation of elementary functions in the medium-precision range, ARITH22, ENS Lyon, France
- June 2015: Fast arbitrary-precision evaluation of special functions in the Arb library, OPSFA13, NIST, Gaithersburg, MD, USA
- May 2015: High-precision methods for zeta functions. Part 3: fast evaluation of sequences, UNCG Summer School in Computational Number Theory, Greensboro, NC, USA
- May 2015: High-precision methods for zeta functions. Part 2: derivatives, UNCG Summer School in Computational Number Theory, Greensboro, NC, USA
- May 2015: High-precision methods for zeta functions. Part 1: functions, formulas, UNCG Summer School in Computational Number Theory, Greensboro, NC, USA
- May 2015: Special functions in arbitrary-precision interval arithmetic, CAPA seminar, Uppsala University, Sweden
- March 2015: Special functions in the Arb library, AriC seminar, LIP, ENS Lyon, France
- March 2015: Special functions in the Arb library, Pequan seminar, LIP6, UPMC, Paris, France
- March 2015: Special functions in the Arb library, SpecFun seminar, INRIA Saclay Ile-de-France, Palaiseau, France
- September 2014: Reliable multiprecision arithmetic for number theory, LFANT seminar, IMB, Bordeaux, France
- July 2014: Evaluating parametric holonomic sequences using rectangular splitting, ISSAC 2014, Kobe University, Japan
- May 2014: Making change for 1020, computer algebra seminar, TU Kaiserslautern, Germany
- March 2014: Making change for 1020, Algorithmic Combinatorics Seminar, RISC, Hagenberg, Austria
- October 2013: Progress on algorithms for high-precision evaluation of special functions, Algorithmic Combinatorics Seminar, RISC, Hagenberg, Austria
- July 2013: Efficient implementation of the Hardy-Ramanujan-Rademacher formula, 2013 SIAM Annual Meeting, San Diego, CA, USA
- June 2013: Arb: a C library for ball arithmetic, ISSAC 2013, Boston, MA, USA
- June 2013: Finding Hyperexponential Solutions of Linear ODEs by Numerical Evaluation, ISSAC 2013, Boston, MA, USA
- March 2013: Fast, rigorous, arbitrary precision numerics with ball arithmetic, Algorithmic Combinatorics Seminar, RISC, Hagenberg, Austria
- November 2012: Algorithms for hyperexponential solutions of differential equations, Algorithmic Combinatorics Seminar, RISC, Hagenberg, Austria
- May 2012: Fast special function computations with FLINT, RISC-DESY Workshop, RISC, Hagenberg, Austria
- December 2011: Fast combinatorial special functions, Sage Days 35: Algorithms in Number Theory and FLINT, University of Warwick, UK
- November 2011: Partitions in the quintillions or Billions of congruences, Algorithmic Combinatorics Seminar, RISC, Hagenberg, Austria
- November 2011: Fast reversion of power series, Algorithmic Combinatorics Seminar, RISC, Hagenberg, Austria
- July 2010: Computation of special functions in mpmath, Sage Days 24: Symbolic Computation in Differential Algebra and Special Functions, RISC, Hagenberg, Austria
- July 2010: Computation of special functions in mpmath, Sage Days 23: Number Theory and Algebra, Lorentz Center, Leiden, Netherlands
- May 2009: mpmath: arbitrary-precision floating-point arithmetic and special functions, Sage Days 15, University of Washington, Seattle, WA, USA
Academic history
- Research scientist (chargé de recherche) at INRIA Bordeaux since October 2015.
- Postdoc at RISC (April 2014 - July 2014) and INRIA Bordeaux (September 2014 - September 2015).
- PhD in symbolic computation, RISC, Johannes Kepler University, Linz, Austria (October 2010 - March 2014, advisor: Manuel Kauers).
- MSc in engineering physics (2010), Chalmers University of Technology, Gothenburg, Sweden.
Other professional activity
Conference organization
- 2024 FLINT development workshop, Bordeaux, France. Organizer.
- ANTS XVI, 2024 - Sixteenth Algorithmic Number Theory Symposium at MIT, USA. Program committee.
- 2023 FLINT development workshop, Kaiserslautern, Germany. Organizer.
- ARITH 2022 - The 29th IEEE Symposium on Computer Arithmetic, virtual conference. Program committee.
- ISSAC 2018 - The 43rd International Symposium on Symbolic and Algebraic Computation, New York, USA. Program committee.
- ICMS 2016 - The 5th International Congress on Mathematical Software, Berlin, Germany. Program committee (session organizer: High-precision arithmetic, effective analysis and special functions).
- LHCPHENOnet School: Integration, Summation and Special Functions in Quantum Field Theory, RISC, Hagenberg, Austria, July 2012. Local co-organizer.
- Sage Days 35: Algorithms in Number Theory and FLINT, University of Warwick, UK, December 2011. Co-organizer.
Reviewing
I've reviewed papers for a number of journals and conferences, including Mathematics of Computation, Journal of Symbolic Computation, Numerical Algorithms, BIT Numerical Mathematics, Advances in Applied Mathematics, Mathematics, ACM Transactions on Mathematical Software, IEEE Transactions on Circuits and Systems, IEEE Transactions on Computers.
Summers of code
I've taken part in Google Summer of Code once as a student and three times as a mentor:
- 2015: mentored Anubhav Srivastava who implemented BLAS wrappers for linear algebra in FLINT
- 2014: mentored Alex Best who implemented Hermite and Smith normal form computation in FLINT
- 2012: mentored Lina Kulakova who implemented algorithms for polynomial factorization in FLINT
- 2008: implemented numerical evaluation in SymPy, mentored by Ondrej Certik
In summer 2009 and 2010, I worked on Sage and mpmath for William Stein, formally as a contractor for the American Institute of Mathematics.
Unprofessional activity
Sports
I have an account on Strava for tracking running, cycling, hiking activities.
Music
- I compose MIDI music.
- What I'm listening to (old): my last.fm account.
Doom levels
My old Doom maps and related info.