From 228b90ccfbe2299b54da4426cbdbf27d49051338 Mon Sep 17 00:00:00 2001
From: Bas Nijholt <basnijholt@gmail.com>
Date: Tue, 10 Sep 2019 14:56:05 +0200
Subject: [PATCH] cite Mathematica

---
 paper.bib | 6 ++++++
 paper.md  | 5 ++---
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/paper.bib b/paper.bib
index 8527749..80617ce 100755
--- a/paper.bib
+++ b/paper.bib
@@ -140,3 +140,9 @@
   volume={2},
   year={1996}
 }
+
+@misc{Mathematica,
+  author = {Wolfram Research{,} Inc.},
+  title = {Mathematica, {V}ersion 12.0},
+  note = {Champaign, IL, 2019}
+}
diff --git a/paper.md b/paper.md
index 36e016a..2462d54 100755
--- a/paper.md
+++ b/paper.md
@@ -59,13 +59,12 @@ In a typical non-adaptive experiment, decisions on how to sample are made and fi
 #### Plotting and low dimensional integration uses local sampling.
 Plotting a function in between bounds requires one to evaluate the function on sufficiently many points such that when neighboring points are connected, we get an accurate description of the function values that were not explicitly calculated.
 In order to minimize the number of points, one can use adaptive sampling routines.
-For example, for one-dimensional functions, Mathematica implements a `FunctionInterpolation` class that takes the function, $x_\textrm{min}$, and $x_\textrm{max}$, and returns an object which sampled the function in regions with high curvature more densily.
+For example, for one-dimensional functions, Mathematica[@Mathematica] implements a `FunctionInterpolation` class that takes the function, $x_\textrm{min}$, and $x_\textrm{max}$, and returns an object which sampled the function in regions with high curvature more densily.
 Subsequently, we can query this object for points in between $x_\textrm{min}$ and $x_\textrm{max}$, and get the interpolated value or we can use it to plot the function without specifying a grid.
 Another application for adaptive sampling is integration.
 The `CQUAD` doubly-adaptive integration algorithm[@gonnet2010increasing] in the GNU Scientific Library[@galassi1996gnu] is a general-purpose integration routine which can handle most types of singularities.
 In general, it requires more function evaluations than the integration routines in `QUADPACK`[@galassi1996gnu]; however, it works more often for difficult integrands.
-It is doubly-adaptive because it calculates errors for each interval and can either split up intervals into more intervals or add more points to each interval.
-<!-- can refer to Mathematica's implementation -->
+It is doubly-adaptive because it calculates errors for each interval and can then decide to either split up intervals into more intervals or add more points to each interval.
 
 #### PDE solvers and computer graphics use adaptive meshing.
 <!-- hydrodynamics anisotropic meshing paper ref -->
-- 
GitLab