3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>Credits and Acknowledgements</title>
5 <link rel="stylesheet" href="../math.css" type="text/css">
6 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7 <link rel="home" href="../index.html" title="Math Toolkit 2.11.0">
8 <link rel="up" href="../status.html" title="Chapter 23. Library Status">
9 <link rel="prev" href="issues.html" title="Known Issues, and TODO List">
10 <link rel="next" href="../indexes.html" title="Chapter 24. Indexes">
12 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13 <table cellpadding="2" width="100%"><tr>
14 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
15 <td align="center"><a href="../../../../../index.html">Home</a></td>
16 <td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
17 <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18 <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19 <td align="center"><a href="../../../../../more/index.htm">More</a></td>
22 <div class="spirit-nav">
23 <a accesskey="p" href="issues.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../status.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../indexes.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
26 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
27 <a name="math_toolkit.credits"></a><a class="link" href="credits.html" title="Credits and Acknowledgements">Credits and Acknowledgements</a>
28 </h2></div></div></div>
29 <div class="note"><table border="0" summary="Note">
31 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../doc/src/images/note.png"></td>
32 <th align="left">Note</th>
34 <tr><td align="left" valign="top"><p>
35 This section should be read with the 'What's New' section that gives much
36 detail on changes for each release.
40 Hubert Holin started the Boost.Math library. The Quaternions, Octonions, inverse
41 hyperbolic functions, and the sinus cardinal functions are his.
44 Daryle Walker wrote the integer gcd and lcm functions.
47 John Maddock started the special functions, the beta, gamma, erf, polynomial,
48 and factorial functions are his, as is the "Toolkit" section, and
49 many of the statistical distributions.
52 Paul A. Bristow threw down the challenge in <a href="http://www2.open-std.org/JTC1/SC22/WG21/docs/papers/2004/n1668.pdf" target="_top">A
53 Proposal to add Mathematical Functions for Statistics to the C++ Standard Library</a>
54 to add the key math functions, especially those essential for statistics. After
55 JM accepted and solved the difficult problems, not only numerically, but in
56 full C++ template style, PAB implemented a few of the statistical distributions.
57 PAB also tirelessly proof-read everything that JM threw at him (so that all
58 remaining editorial mistakes are his fault).
61 Xiaogang Zhang worked on the Bessel functions and elliptic integrals for his
62 Google Summer of Code project 2006.
65 Bruno Lalande submitted the "compile time power of a runtime base"
69 Johan Råde wrote the optimised floating-point classification and manipulation
70 code, and nonfinite facets to permit C99 output of infinities and NaNs. (nonfinite
71 facets were not added until Boost 1.47 but had been in use with Boost.Spirit).
72 This library was based on a suggestion from Robert Ramey, author of Boost.Serialization.
73 Paul A. Bristow expressed the need for better handling of <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2022.pdf" target="_top">Input
74 & Output of NaN and infinity for the C++ Standard Library</a> and suggested
75 following the C99 format.
78 Antony Polukhin improved lexical cast avoiding stringstream so that it was
79 no longer necessary to use a globale C99 facet to handle nonfinites.
82 Håkan Ardö, Boris Gubenko, John Maddock, Markus Schöpflin and Olivier Verdier
83 tested the floating-point library and Martin Bonner, Peter Dimov and John Maddock
84 provided valuable advice.
87 Gautam Sewani coded the logistic distribution as part of a Google Summer of
91 M. A. (Thijs) van den Berg coded the Laplace distribution. (Thijs has also
92 threatened to implement some multivariate distributions).
95 Thomas Mang requested the inverse gamma in chi squared distributions for Bayesian
96 applications and helped in their implementation, and provided a nice example
100 Professor Nico Temme for advice on the inverse incomplete beta function.
103 <a href="http://www.shoup.net" target="_top">Victor Shoup for NTL</a>, without which
104 it would have much more difficult to produce high accuracy constants, and especially
105 the tables of accurate values for testing.
108 We are grateful to Joel Guzman for helping us stress-test his <a href="http://www.boost.org/tools/quickbook/index.htm" target="_top">Boost.Quickbook</a>
109 program used to generate the html and pdf versions of this document, adding
110 several new features en route.
113 Plots of the functions and distributions were prepared in <a href="http://www.w3.org/" target="_top">W3C</a>
114 standard <a href="http://www.svg.org/" target="_top">Scalable Vector Graphic (SVG)</a>
115 format using a program created by Jacob Voytko during a <a href="http://code.google.com/soc/2007/" target="_top">Google
116 Summer of Code (2007)</a>. From 2012, the latest versions of all Internet
117 Browsers have support for rendering SVG (with varying quality). Older versions,
118 especially (Microsoft Internet Explorer (before IE 9) lack native SVG support
119 but can be made to work with <a href="http://www.adobe.com/svg/viewer/install/" target="_top">Adobe's
120 free SVG viewer</a> plugin). The SVG files can be converted to JPEG or
121 PNG using <a href="http://www.inkscape.org/" target="_top">Inkscape</a>.
124 We are also indebted to Matthias Schabel for managing the formal Boost-review
125 of this library, and to all the reviewers - including Guillaume Melquiond,
126 Arnaldur Gylfason, John Phillips, Stephan Tolksdorf and Jeff Garland - for
127 their many helpful comments.
130 Thanks to Mark Coleman and Georgi Boshnakov for spot test values from <a href="http://www.wolfram.com/products/mathematica/index.html" target="_top">Wolfram Mathematica</a>,
131 and of course, to Eric Weisstein for nurturing <a href="http://mathworld.wolfram.com" target="_top">Wolfram
132 MathWorld</a>, an invaluable resource.
135 The Skew-normal distribution and Owen's t function were written by Benjamin
139 We thank Thomas Mang for persuading us to allow t distributions to have infinite
140 degrees of freedom and contributing to some long discussions about how to improve
141 accuracy for large non-centrality and/or large degrees of freedom.
144 Christopher Kormanyos wrote the e_float multiprecision library <a href="http://portal.acm.org/citation.cfm?id=1916469" target="_top">TOMS
145 Algorithm 910: A Portable C++ Multiple-Precision System for Special-Function
146 Calculations</a> which formed the basis for the Boost.Multiprecision library
147 which now can be used to allow most functions and distributions to be computed
148 up to a precision of the users' choice, no longer restricted to built-in floating-point
149 types like double. (And thanks to Topher Cooper for bring Christopher's e_float
153 Christopher Kormanyos wrote some examples for using <a href="../../../../../libs/multiprecision/doc/html/index.html" target="_top">Boost.Multiprecision</a>,
154 and added methods for finding zeros of Bessel Functions.
157 Marco Guazzone provided the hyper-geometric distribution.
160 Rocco Romeo has found numerous small bugs and generally stress tested the special
161 functions code to near destruction!
164 Jeremy William Murphy added polynomial arithmetic tools.
167 Thomas Luu provided improvements to the quantile of the non-central chi squared
168 distribution quantile. and his thesis * <a href="http://discovery.ucl.ac.uk/1482128/" target="_top">Fast
169 and accurate parallel computation of quantile functions for random number generation,
176 Luu, Thomas; (2015), Efficient and Accurate Parallel Inversion of the Gamma
177 Distribution, SIAM Journal on Scientific Computing , 37 (1) C122 - C141, <a href="https://doi.org/10.1137/14095875X" target="_top">https://doi.org/10.1137/14095875X</a>.
180 These also promise to help improve algorithms for computation of quantile of
181 several distributions, especially for parallel computation using GPUs.
184 Nicolas Thompson added much code to handle quadrature and interpolation and
185 more statistical tools.
188 Matthew Pulver provided the automatic differentiation section for inclusion
192 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
193 <td align="left"></td>
194 <td align="right"><div class="copyright-footer">Copyright © 2006-2019 Nikhar
195 Agrawal, Anton Bikineev, Paul A. Bristow, Marco Guazzone, Christopher Kormanyos,
196 Hubert Holin, Bruno Lalande, John Maddock, Jeremy Murphy, Matthew Pulver, Johan
197 Råde, Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg,
198 Daryle Walker and Xiaogang Zhang<p>
199 Distributed under the Boost Software License, Version 1.0. (See accompanying
200 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
205 <div class="spirit-nav">
206 <a accesskey="p" href="issues.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../status.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../indexes.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>