Jmat.Real.erfi, branch x less than or equal to 0.5

Percentage Accurate: 99.8% → 99.9%
Time: 12.4s
Alternatives: 17
Speedup: 2.3×

Specification

?
\[x \leq 0.5\]
\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\ t_1 := \left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\\ \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot t\_0\right) + \frac{1}{5} \cdot t\_1\right) + \frac{1}{21} \cdot \left(\left(t\_1 \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \end{array} \end{array} \]
(FPCore (x)
 :precision binary64
 (let* ((t_0 (* (* (fabs x) (fabs x)) (fabs x)))
        (t_1 (* (* t_0 (fabs x)) (fabs x))))
   (fabs
    (*
     (/ 1.0 (sqrt PI))
     (+
      (+ (+ (* 2.0 (fabs x)) (* (/ 2.0 3.0) t_0)) (* (/ 1.0 5.0) t_1))
      (* (/ 1.0 21.0) (* (* t_1 (fabs x)) (fabs x))))))))
double code(double x) {
	double t_0 = (fabs(x) * fabs(x)) * fabs(x);
	double t_1 = (t_0 * fabs(x)) * fabs(x);
	return fabs(((1.0 / sqrt(((double) M_PI))) * ((((2.0 * fabs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * fabs(x)) * fabs(x))))));
}
public static double code(double x) {
	double t_0 = (Math.abs(x) * Math.abs(x)) * Math.abs(x);
	double t_1 = (t_0 * Math.abs(x)) * Math.abs(x);
	return Math.abs(((1.0 / Math.sqrt(Math.PI)) * ((((2.0 * Math.abs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * Math.abs(x)) * Math.abs(x))))));
}
def code(x):
	t_0 = (math.fabs(x) * math.fabs(x)) * math.fabs(x)
	t_1 = (t_0 * math.fabs(x)) * math.fabs(x)
	return math.fabs(((1.0 / math.sqrt(math.pi)) * ((((2.0 * math.fabs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * math.fabs(x)) * math.fabs(x))))))
function code(x)
	t_0 = Float64(Float64(abs(x) * abs(x)) * abs(x))
	t_1 = Float64(Float64(t_0 * abs(x)) * abs(x))
	return abs(Float64(Float64(1.0 / sqrt(pi)) * Float64(Float64(Float64(Float64(2.0 * abs(x)) + Float64(Float64(2.0 / 3.0) * t_0)) + Float64(Float64(1.0 / 5.0) * t_1)) + Float64(Float64(1.0 / 21.0) * Float64(Float64(t_1 * abs(x)) * abs(x))))))
end
function tmp = code(x)
	t_0 = (abs(x) * abs(x)) * abs(x);
	t_1 = (t_0 * abs(x)) * abs(x);
	tmp = abs(((1.0 / sqrt(pi)) * ((((2.0 * abs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * abs(x)) * abs(x))))));
end
code[x_] := Block[{t$95$0 = N[(N[(N[Abs[x], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(t$95$0 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, N[Abs[N[(N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(2.0 * N[Abs[x], $MachinePrecision]), $MachinePrecision] + N[(N[(2.0 / 3.0), $MachinePrecision] * t$95$0), $MachinePrecision]), $MachinePrecision] + N[(N[(1.0 / 5.0), $MachinePrecision] * t$95$1), $MachinePrecision]), $MachinePrecision] + N[(N[(1.0 / 21.0), $MachinePrecision] * N[(N[(t$95$1 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\
t_1 := \left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\\
\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot t\_0\right) + \frac{1}{5} \cdot t\_1\right) + \frac{1}{21} \cdot \left(\left(t\_1 \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|
\end{array}
\end{array}

Sampling outcomes in binary64 precision:

Local Percentage Accuracy vs ?

The average percentage accuracy by input value. Horizontal axis shows value of an input variable; the variable is choosen in the title. Vertical axis is accuracy; higher is better. Red represent the original program, while blue represents Herbie's suggestion. These can be toggled with buttons below the plot. The line is an average while dots represent individual samples.

Accuracy vs Speed?

Herbie found 17 alternatives:

AlternativeAccuracySpeedup
The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs.

Initial Program: 99.8% accurate, 1.0× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\ t_1 := \left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\\ \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot t\_0\right) + \frac{1}{5} \cdot t\_1\right) + \frac{1}{21} \cdot \left(\left(t\_1 \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \end{array} \end{array} \]
(FPCore (x)
 :precision binary64
 (let* ((t_0 (* (* (fabs x) (fabs x)) (fabs x)))
        (t_1 (* (* t_0 (fabs x)) (fabs x))))
   (fabs
    (*
     (/ 1.0 (sqrt PI))
     (+
      (+ (+ (* 2.0 (fabs x)) (* (/ 2.0 3.0) t_0)) (* (/ 1.0 5.0) t_1))
      (* (/ 1.0 21.0) (* (* t_1 (fabs x)) (fabs x))))))))
double code(double x) {
	double t_0 = (fabs(x) * fabs(x)) * fabs(x);
	double t_1 = (t_0 * fabs(x)) * fabs(x);
	return fabs(((1.0 / sqrt(((double) M_PI))) * ((((2.0 * fabs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * fabs(x)) * fabs(x))))));
}
public static double code(double x) {
	double t_0 = (Math.abs(x) * Math.abs(x)) * Math.abs(x);
	double t_1 = (t_0 * Math.abs(x)) * Math.abs(x);
	return Math.abs(((1.0 / Math.sqrt(Math.PI)) * ((((2.0 * Math.abs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * Math.abs(x)) * Math.abs(x))))));
}
def code(x):
	t_0 = (math.fabs(x) * math.fabs(x)) * math.fabs(x)
	t_1 = (t_0 * math.fabs(x)) * math.fabs(x)
	return math.fabs(((1.0 / math.sqrt(math.pi)) * ((((2.0 * math.fabs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * math.fabs(x)) * math.fabs(x))))))
function code(x)
	t_0 = Float64(Float64(abs(x) * abs(x)) * abs(x))
	t_1 = Float64(Float64(t_0 * abs(x)) * abs(x))
	return abs(Float64(Float64(1.0 / sqrt(pi)) * Float64(Float64(Float64(Float64(2.0 * abs(x)) + Float64(Float64(2.0 / 3.0) * t_0)) + Float64(Float64(1.0 / 5.0) * t_1)) + Float64(Float64(1.0 / 21.0) * Float64(Float64(t_1 * abs(x)) * abs(x))))))
end
function tmp = code(x)
	t_0 = (abs(x) * abs(x)) * abs(x);
	t_1 = (t_0 * abs(x)) * abs(x);
	tmp = abs(((1.0 / sqrt(pi)) * ((((2.0 * abs(x)) + ((2.0 / 3.0) * t_0)) + ((1.0 / 5.0) * t_1)) + ((1.0 / 21.0) * ((t_1 * abs(x)) * abs(x))))));
end
code[x_] := Block[{t$95$0 = N[(N[(N[Abs[x], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(t$95$0 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, N[Abs[N[(N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(2.0 * N[Abs[x], $MachinePrecision]), $MachinePrecision] + N[(N[(2.0 / 3.0), $MachinePrecision] * t$95$0), $MachinePrecision]), $MachinePrecision] + N[(N[(1.0 / 5.0), $MachinePrecision] * t$95$1), $MachinePrecision]), $MachinePrecision] + N[(N[(1.0 / 21.0), $MachinePrecision] * N[(N[(t$95$1 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\
t_1 := \left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\\
\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot t\_0\right) + \frac{1}{5} \cdot t\_1\right) + \frac{1}{21} \cdot \left(\left(t\_1 \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|
\end{array}
\end{array}

Alternative 1: 99.9% accurate, 0.7× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\ \left|\left(\left(\left({\left(\left|x\right|\right)}^{5} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(\left(\left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{5} + \left(t\_0 \cdot \frac{2}{3} + \left|x\right| \cdot 2\right)\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right| \end{array} \end{array} \]
(FPCore (x)
 :precision binary64
 (let* ((t_0 (* (* (fabs x) (fabs x)) (fabs x))))
   (fabs
    (*
     (+
      (* (* (* (pow (fabs x) 5.0) (fabs x)) (fabs x)) (/ 1.0 21.0))
      (+
       (* (* (* t_0 (fabs x)) (fabs x)) (/ 1.0 5.0))
       (+ (* t_0 (/ 2.0 3.0)) (* (fabs x) 2.0))))
     (/ 1.0 (sqrt PI))))))
double code(double x) {
	double t_0 = (fabs(x) * fabs(x)) * fabs(x);
	return fabs((((((pow(fabs(x), 5.0) * fabs(x)) * fabs(x)) * (1.0 / 21.0)) + ((((t_0 * fabs(x)) * fabs(x)) * (1.0 / 5.0)) + ((t_0 * (2.0 / 3.0)) + (fabs(x) * 2.0)))) * (1.0 / sqrt(((double) M_PI)))));
}
public static double code(double x) {
	double t_0 = (Math.abs(x) * Math.abs(x)) * Math.abs(x);
	return Math.abs((((((Math.pow(Math.abs(x), 5.0) * Math.abs(x)) * Math.abs(x)) * (1.0 / 21.0)) + ((((t_0 * Math.abs(x)) * Math.abs(x)) * (1.0 / 5.0)) + ((t_0 * (2.0 / 3.0)) + (Math.abs(x) * 2.0)))) * (1.0 / Math.sqrt(Math.PI))));
}
def code(x):
	t_0 = (math.fabs(x) * math.fabs(x)) * math.fabs(x)
	return math.fabs((((((math.pow(math.fabs(x), 5.0) * math.fabs(x)) * math.fabs(x)) * (1.0 / 21.0)) + ((((t_0 * math.fabs(x)) * math.fabs(x)) * (1.0 / 5.0)) + ((t_0 * (2.0 / 3.0)) + (math.fabs(x) * 2.0)))) * (1.0 / math.sqrt(math.pi))))
function code(x)
	t_0 = Float64(Float64(abs(x) * abs(x)) * abs(x))
	return abs(Float64(Float64(Float64(Float64(Float64((abs(x) ^ 5.0) * abs(x)) * abs(x)) * Float64(1.0 / 21.0)) + Float64(Float64(Float64(Float64(t_0 * abs(x)) * abs(x)) * Float64(1.0 / 5.0)) + Float64(Float64(t_0 * Float64(2.0 / 3.0)) + Float64(abs(x) * 2.0)))) * Float64(1.0 / sqrt(pi))))
end
function tmp = code(x)
	t_0 = (abs(x) * abs(x)) * abs(x);
	tmp = abs(((((((abs(x) ^ 5.0) * abs(x)) * abs(x)) * (1.0 / 21.0)) + ((((t_0 * abs(x)) * abs(x)) * (1.0 / 5.0)) + ((t_0 * (2.0 / 3.0)) + (abs(x) * 2.0)))) * (1.0 / sqrt(pi))));
end
code[x_] := Block[{t$95$0 = N[(N[(N[Abs[x], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, N[Abs[N[(N[(N[(N[(N[(N[Power[N[Abs[x], $MachinePrecision], 5.0], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(1.0 / 21.0), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(N[(t$95$0 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(1.0 / 5.0), $MachinePrecision]), $MachinePrecision] + N[(N[(t$95$0 * N[(2.0 / 3.0), $MachinePrecision]), $MachinePrecision] + N[(N[Abs[x], $MachinePrecision] * 2.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\
\left|\left(\left(\left({\left(\left|x\right|\right)}^{5} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(\left(\left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{5} + \left(t\_0 \cdot \frac{2}{3} + \left|x\right| \cdot 2\right)\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|
\end{array}
\end{array}
Derivation
  1. Initial program 99.8%

    \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
  2. Add Preprocessing
  3. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\color{blue}{\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    2. lift-*.f64N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\color{blue}{\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    3. associate-*l*N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\color{blue}{\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right)} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    4. lift-*.f64N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\color{blue}{\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    5. lift-*.f64N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\color{blue}{\left(\left|x\right| \cdot \left|x\right|\right)} \cdot \left|x\right|\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    6. pow3N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\color{blue}{{\left(\left|x\right|\right)}^{3}} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    7. pow2N/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left({\left(\left|x\right|\right)}^{3} \cdot \color{blue}{{\left(\left|x\right|\right)}^{2}}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    8. pow-prod-upN/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\color{blue}{{\left(\left|x\right|\right)}^{\left(3 + 2\right)}} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    9. metadata-evalN/A

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left({\left(\left|x\right|\right)}^{\color{blue}{5}} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    10. lower-pow.f6499.8

      \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\color{blue}{{\left(\left|x\right|\right)}^{5}} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
  4. Applied rewrites99.8%

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\color{blue}{{\left(\left|x\right|\right)}^{5}} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
  5. Final simplification99.8%

    \[\leadsto \left|\left(\left(\left({\left(\left|x\right|\right)}^{5} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{5} + \left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{2}{3} + \left|x\right| \cdot 2\right)\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right| \]
  6. Add Preprocessing

Alternative 2: 93.9% accurate, 0.9× speedup?

\[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\ t_1 := \left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\\ \mathbf{if}\;\left(\left(t\_1 \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(t\_1 \cdot \frac{1}{5} + \left(t\_0 \cdot \frac{2}{3} + \left|x\right| \cdot 2\right)\right) \leq 40:\\ \;\;\;\;\left|\left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left|x\right| \cdot x\right) \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \end{array} \]
(FPCore (x)
 :precision binary64
 (let* ((t_0 (* (* (fabs x) (fabs x)) (fabs x)))
        (t_1 (* (* t_0 (fabs x)) (fabs x))))
   (if (<=
        (+
         (* (* (* t_1 (fabs x)) (fabs x)) (/ 1.0 21.0))
         (+ (* t_1 (/ 1.0 5.0)) (+ (* t_0 (/ 2.0 3.0)) (* (fabs x) 2.0))))
        40.0)
     (fabs
      (* (* (fma (* 0.6666666666666666 x) x 2.0) (fabs x)) (/ 1.0 (sqrt PI))))
     (fabs (/ (* (* 0.2 (* x x)) (* (* (fabs x) x) x)) (sqrt PI))))))
double code(double x) {
	double t_0 = (fabs(x) * fabs(x)) * fabs(x);
	double t_1 = (t_0 * fabs(x)) * fabs(x);
	double tmp;
	if (((((t_1 * fabs(x)) * fabs(x)) * (1.0 / 21.0)) + ((t_1 * (1.0 / 5.0)) + ((t_0 * (2.0 / 3.0)) + (fabs(x) * 2.0)))) <= 40.0) {
		tmp = fabs(((fma((0.6666666666666666 * x), x, 2.0) * fabs(x)) * (1.0 / sqrt(((double) M_PI)))));
	} else {
		tmp = fabs((((0.2 * (x * x)) * ((fabs(x) * x) * x)) / sqrt(((double) M_PI))));
	}
	return tmp;
}
function code(x)
	t_0 = Float64(Float64(abs(x) * abs(x)) * abs(x))
	t_1 = Float64(Float64(t_0 * abs(x)) * abs(x))
	tmp = 0.0
	if (Float64(Float64(Float64(Float64(t_1 * abs(x)) * abs(x)) * Float64(1.0 / 21.0)) + Float64(Float64(t_1 * Float64(1.0 / 5.0)) + Float64(Float64(t_0 * Float64(2.0 / 3.0)) + Float64(abs(x) * 2.0)))) <= 40.0)
		tmp = abs(Float64(Float64(fma(Float64(0.6666666666666666 * x), x, 2.0) * abs(x)) * Float64(1.0 / sqrt(pi))));
	else
		tmp = abs(Float64(Float64(Float64(0.2 * Float64(x * x)) * Float64(Float64(abs(x) * x) * x)) / sqrt(pi)));
	end
	return tmp
end
code[x_] := Block[{t$95$0 = N[(N[(N[Abs[x], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(t$95$0 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[(N[(N[(N[(t$95$1 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(1.0 / 21.0), $MachinePrecision]), $MachinePrecision] + N[(N[(t$95$1 * N[(1.0 / 5.0), $MachinePrecision]), $MachinePrecision] + N[(N[(t$95$0 * N[(2.0 / 3.0), $MachinePrecision]), $MachinePrecision] + N[(N[Abs[x], $MachinePrecision] * 2.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 40.0], N[Abs[N[(N[(N[(N[(0.6666666666666666 * x), $MachinePrecision] * x + 2.0), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[Abs[N[(N[(N[(0.2 * N[(x * x), $MachinePrecision]), $MachinePrecision] * N[(N[(N[Abs[x], $MachinePrecision] * x), $MachinePrecision] * x), $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]]]
\begin{array}{l}

\\
\begin{array}{l}
t_0 := \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\\
t_1 := \left(t\_0 \cdot \left|x\right|\right) \cdot \left|x\right|\\
\mathbf{if}\;\left(\left(t\_1 \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(t\_1 \cdot \frac{1}{5} + \left(t\_0 \cdot \frac{2}{3} + \left|x\right| \cdot 2\right)\right) \leq 40:\\
\;\;\;\;\left|\left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\

\mathbf{else}:\\
\;\;\;\;\left|\frac{\left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left|x\right| \cdot x\right) \cdot x\right)}{\sqrt{\pi}}\right|\\


\end{array}
\end{array}
Derivation
  1. Split input into 2 regimes
  2. if (+.f64 (+.f64 (+.f64 (*.f64 #s(literal 2 binary64) (fabs.f64 x)) (*.f64 (/.f64 #s(literal 2 binary64) #s(literal 3 binary64)) (*.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)) (fabs.f64 x)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 5 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 21 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)))) < 40

    1. Initial program 99.8%

      \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
    2. Add Preprocessing
    3. Applied rewrites99.8%

      \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(0.047619047619047616 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot x\right) \cdot x\right) \cdot \left|x\right|\right), x \cdot x, \mathsf{fma}\left(0.2 \cdot \left|x\right|, \left(\left(x \cdot x\right) \cdot x\right) \cdot x, \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)\right)}\right| \]
    4. Taylor expanded in x around 0

      \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right) + 2 \cdot \left|x\right|\right)}\right| \]
    5. Step-by-step derivation
      1. +-commutativeN/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right)\right)}\right| \]
      2. associate-*r*N/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(2 \cdot \left|x\right| + \color{blue}{\left(\frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|}\right)\right| \]
      3. distribute-rgt-inN/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left|x\right| \cdot \left(2 + \frac{2}{3} \cdot {x}^{2}\right)\right)}\right| \]
      4. *-commutativeN/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|\right)}\right| \]
      5. lower-*.f64N/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|\right)}\right| \]
      6. +-commutativeN/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\color{blue}{\left(\frac{2}{3} \cdot {x}^{2} + 2\right)} \cdot \left|x\right|\right)\right| \]
      7. *-commutativeN/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\color{blue}{{x}^{2} \cdot \frac{2}{3}} + 2\right) \cdot \left|x\right|\right)\right| \]
      8. lower-fma.f64N/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\color{blue}{\mathsf{fma}\left({x}^{2}, \frac{2}{3}, 2\right)} \cdot \left|x\right|\right)\right| \]
      9. unpow2N/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|\right)\right| \]
      10. lower-*.f64N/A

        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|\right)\right| \]
      11. lower-fabs.f6499.1

        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \color{blue}{\left|x\right|}\right)\right| \]
    6. Applied rewrites99.1%

      \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\left(\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \left|x\right|\right)}\right| \]
    7. Step-by-step derivation
      1. Applied rewrites99.1%

        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|\color{blue}{x}\right|\right)\right| \]

      if 40 < (+.f64 (+.f64 (+.f64 (*.f64 #s(literal 2 binary64) (fabs.f64 x)) (*.f64 (/.f64 #s(literal 2 binary64) #s(literal 3 binary64)) (*.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)) (fabs.f64 x)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 5 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)))) (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 21 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x)) (fabs.f64 x))))

      1. Initial program 99.9%

        \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
      2. Add Preprocessing
      3. Applied rewrites99.8%

        \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
      4. Taylor expanded in x around 0

        \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
      5. Step-by-step derivation
        1. lower-*.f64N/A

          \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
        2. lower-fabs.f646.1

          \[\leadsto \left|\frac{2 \cdot \color{blue}{\left|x\right|}}{\sqrt{\pi}}\right| \]
      6. Applied rewrites6.1%

        \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\pi}}\right| \]
      7. Taylor expanded in x around inf

        \[\leadsto \left|\frac{\color{blue}{{x}^{6} \cdot \left(\frac{1}{21} \cdot \left|x\right| + \frac{1}{5} \cdot \frac{\left|x\right|}{{x}^{2}}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
      8. Applied rewrites99.1%

        \[\leadsto \left|\frac{\color{blue}{\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right) \cdot \left(x \cdot x\right)\right)}}{\sqrt{\pi}}\right| \]
      9. Taylor expanded in x around 0

        \[\leadsto \left|\frac{\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \left(\frac{1}{5} \cdot \left(\color{blue}{x} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
      10. Step-by-step derivation
        1. Applied rewrites83.9%

          \[\leadsto \left|\frac{\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \left(0.2 \cdot \left(\color{blue}{x} \cdot x\right)\right)}{\sqrt{\pi}}\right| \]
      11. Recombined 2 regimes into one program.
      12. Final simplification94.0%

        \[\leadsto \begin{array}{l} \mathbf{if}\;\left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{1}{5} + \left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \frac{2}{3} + \left|x\right| \cdot 2\right)\right) \leq 40:\\ \;\;\;\;\left|\left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left|x\right| \cdot x\right) \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \]
      13. Add Preprocessing

      Alternative 3: 99.9% accurate, 2.3× speedup?

      \[\begin{array}{l} \\ \left|\left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right) \cdot \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), \left(x \cdot x\right) \cdot \left|x\right|, 0.6666666666666666 \cdot \left|x\right|\right), 2\right)\right| \end{array} \]
      (FPCore (x)
       :precision binary64
       (fabs
        (*
         (* (sqrt (/ 1.0 PI)) (fabs x))
         (fma
          (fabs x)
          (fma
           (fma (* x x) 0.047619047619047616 0.2)
           (* (* x x) (fabs x))
           (* 0.6666666666666666 (fabs x)))
          2.0))))
      double code(double x) {
      	return fabs(((sqrt((1.0 / ((double) M_PI))) * fabs(x)) * fma(fabs(x), fma(fma((x * x), 0.047619047619047616, 0.2), ((x * x) * fabs(x)), (0.6666666666666666 * fabs(x))), 2.0)));
      }
      
      function code(x)
      	return abs(Float64(Float64(sqrt(Float64(1.0 / pi)) * abs(x)) * fma(abs(x), fma(fma(Float64(x * x), 0.047619047619047616, 0.2), Float64(Float64(x * x) * abs(x)), Float64(0.6666666666666666 * abs(x))), 2.0)))
      end
      
      code[x_] := N[Abs[N[(N[(N[Sqrt[N[(1.0 / Pi), $MachinePrecision]], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(N[Abs[x], $MachinePrecision] * N[(N[(N[(x * x), $MachinePrecision] * 0.047619047619047616 + 0.2), $MachinePrecision] * N[(N[(x * x), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] + N[(0.6666666666666666 * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + 2.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
      
      \begin{array}{l}
      
      \\
      \left|\left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right) \cdot \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), \left(x \cdot x\right) \cdot \left|x\right|, 0.6666666666666666 \cdot \left|x\right|\right), 2\right)\right|
      \end{array}
      
      Derivation
      1. Initial program 99.8%

        \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
      2. Add Preprocessing
      3. Applied rewrites99.4%

        \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
      4. Taylor expanded in x around 0

        \[\leadsto \left|\color{blue}{2 \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left(\left({x}^{2} \cdot \left|x\right|\right) \cdot \sqrt{\frac{1}{\mathsf{PI}\left(\right)}}\right) + \frac{1}{5} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right)\right)}\right| \]
      5. Applied rewrites99.8%

        \[\leadsto \left|\color{blue}{\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)}\right| \]
      6. Step-by-step derivation
        1. Applied rewrites99.8%

          \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), \left(x \cdot x\right) \cdot \left|x\right|, 0.6666666666666666 \cdot \left|x\right|\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right| \]
        2. Final simplification99.8%

          \[\leadsto \left|\left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right) \cdot \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), \left(x \cdot x\right) \cdot \left|x\right|, 0.6666666666666666 \cdot \left|x\right|\right), 2\right)\right| \]
        3. Add Preprocessing

        Alternative 4: 99.5% accurate, 2.6× speedup?

        \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 0.05:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\frac{\left|\left(\mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|\right) \cdot \left(x \cdot x\right)\right|}{\sqrt{\pi}}\\ \end{array} \end{array} \]
        (FPCore (x)
         :precision binary64
         (if (<= (fabs x) 0.05)
           (fabs
            (*
             (fma (fabs x) (* (fma 0.2 (* x x) 0.6666666666666666) (fabs x)) 2.0)
             (* (sqrt (/ 1.0 PI)) (fabs x))))
           (/
            (fabs
             (*
              (*
               (fma (fma 0.047619047619047616 (* x x) 0.2) (* x x) 0.6666666666666666)
               (fabs x))
              (* x x)))
            (sqrt PI))))
        double code(double x) {
        	double tmp;
        	if (fabs(x) <= 0.05) {
        		tmp = fabs((fma(fabs(x), (fma(0.2, (x * x), 0.6666666666666666) * fabs(x)), 2.0) * (sqrt((1.0 / ((double) M_PI))) * fabs(x))));
        	} else {
        		tmp = fabs(((fma(fma(0.047619047619047616, (x * x), 0.2), (x * x), 0.6666666666666666) * fabs(x)) * (x * x))) / sqrt(((double) M_PI));
        	}
        	return tmp;
        }
        
        function code(x)
        	tmp = 0.0
        	if (abs(x) <= 0.05)
        		tmp = abs(Float64(fma(abs(x), Float64(fma(0.2, Float64(x * x), 0.6666666666666666) * abs(x)), 2.0) * Float64(sqrt(Float64(1.0 / pi)) * abs(x))));
        	else
        		tmp = Float64(abs(Float64(Float64(fma(fma(0.047619047619047616, Float64(x * x), 0.2), Float64(x * x), 0.6666666666666666) * abs(x)) * Float64(x * x))) / sqrt(pi));
        	end
        	return tmp
        end
        
        code[x_] := If[LessEqual[N[Abs[x], $MachinePrecision], 0.05], N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * N[(N[(0.2 * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] + 2.0), $MachinePrecision] * N[(N[Sqrt[N[(1.0 / Pi), $MachinePrecision]], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[(N[Abs[N[(N[(N[(N[(0.047619047619047616 * N[(x * x), $MachinePrecision] + 0.2), $MachinePrecision] * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(x * x), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]]
        
        \begin{array}{l}
        
        \\
        \begin{array}{l}
        \mathbf{if}\;\left|x\right| \leq 0.05:\\
        \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\
        
        \mathbf{else}:\\
        \;\;\;\;\frac{\left|\left(\mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|\right) \cdot \left(x \cdot x\right)\right|}{\sqrt{\pi}}\\
        
        
        \end{array}
        \end{array}
        
        Derivation
        1. Split input into 2 regimes
        2. if (fabs.f64 x) < 0.050000000000000003

          1. Initial program 99.8%

            \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
          2. Add Preprocessing
          3. Applied rewrites99.2%

            \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
          4. Taylor expanded in x around 0

            \[\leadsto \left|\color{blue}{2 \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left(\left({x}^{2} \cdot \left|x\right|\right) \cdot \sqrt{\frac{1}{\mathsf{PI}\left(\right)}}\right) + \frac{1}{5} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right)\right)}\right| \]
          5. Applied rewrites99.8%

            \[\leadsto \left|\color{blue}{\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)}\right| \]
          6. Taylor expanded in x around 0

            \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\frac{1}{5}, x \cdot x, \frac{2}{3}\right), 2\right) \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right| \]
          7. Step-by-step derivation
            1. Applied rewrites99.6%

              \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right| \]

            if 0.050000000000000003 < (fabs.f64 x)

            1. Initial program 99.9%

              \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
            2. Add Preprocessing
            3. Applied rewrites99.9%

              \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(\left|x\right|, 2, \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.6666666666666666 \cdot x, x, \left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right), \left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)\right)\right)}\right| \]
            4. Taylor expanded in x around 0

              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{{x}^{2} \cdot \left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right)}\right)\right| \]
            5. Step-by-step derivation
              1. *-commutativeN/A

                \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right) \cdot {x}^{2}}\right)\right| \]
              2. lower-*.f64N/A

                \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right) \cdot {x}^{2}}\right)\right| \]
            6. Applied rewrites99.8%

              \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right)\right) \cdot \left(x \cdot x\right)}\right)\right| \]
            7. Step-by-step derivation
              1. lift-fabs.f64N/A

                \[\leadsto \color{blue}{\left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, \frac{1}{21}, \frac{1}{5}\right), x \cdot x, \frac{2}{3}\right)\right) \cdot \left(x \cdot x\right)\right)\right|} \]
              2. lift-*.f64N/A

                \[\leadsto \left|\color{blue}{\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, \frac{1}{21}, \frac{1}{5}\right), x \cdot x, \frac{2}{3}\right)\right) \cdot \left(x \cdot x\right)\right)}\right| \]
              3. lift-/.f64N/A

                \[\leadsto \left|\color{blue}{\frac{1}{\sqrt{\mathsf{PI}\left(\right)}}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, \frac{1}{21}, \frac{1}{5}\right), x \cdot x, \frac{2}{3}\right)\right) \cdot \left(x \cdot x\right)\right)\right| \]
            8. Applied rewrites99.8%

              \[\leadsto \color{blue}{\frac{\left|\mathsf{fma}\left(2, \left|x\right|, \left(\left(x \cdot x\right) \cdot \left|x\right|\right) \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right)\right)\right|}{\sqrt{\pi}}} \]
            9. Taylor expanded in x around inf

              \[\leadsto \frac{\left|\color{blue}{{x}^{6} \cdot \left(\frac{1}{21} \cdot \left|x\right| + \left(\frac{1}{5} \cdot \frac{\left|x\right|}{{x}^{2}} + \frac{2}{3} \cdot \frac{\left|x\right|}{{x}^{4}}\right)\right)}\right|}{\sqrt{\mathsf{PI}\left(\right)}} \]
            10. Applied rewrites98.4%

              \[\leadsto \frac{\left|\color{blue}{\left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right)\right) \cdot \left(x \cdot x\right)}\right|}{\sqrt{\pi}} \]
          8. Recombined 2 regimes into one program.
          9. Final simplification99.2%

            \[\leadsto \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 0.05:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\frac{\left|\left(\mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|\right) \cdot \left(x \cdot x\right)\right|}{\sqrt{\pi}}\\ \end{array} \]
          10. Add Preprocessing

          Alternative 5: 99.5% accurate, 2.6× speedup?

          \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right)\right) \cdot x\right) \cdot x}{\sqrt{\pi}}\right|\\ \end{array} \end{array} \]
          (FPCore (x)
           :precision binary64
           (if (<= (fabs x) 4.0)
             (fabs
              (*
               (fma (fabs x) (* (fma 0.2 (* x x) 0.6666666666666666) (fabs x)) 2.0)
               (* (sqrt (/ 1.0 PI)) (fabs x))))
             (fabs
              (/
               (*
                (* (* (* (* (fabs x) x) x) (fma 0.047619047619047616 (* x x) 0.2)) x)
                x)
               (sqrt PI)))))
          double code(double x) {
          	double tmp;
          	if (fabs(x) <= 4.0) {
          		tmp = fabs((fma(fabs(x), (fma(0.2, (x * x), 0.6666666666666666) * fabs(x)), 2.0) * (sqrt((1.0 / ((double) M_PI))) * fabs(x))));
          	} else {
          		tmp = fabs(((((((fabs(x) * x) * x) * fma(0.047619047619047616, (x * x), 0.2)) * x) * x) / sqrt(((double) M_PI))));
          	}
          	return tmp;
          }
          
          function code(x)
          	tmp = 0.0
          	if (abs(x) <= 4.0)
          		tmp = abs(Float64(fma(abs(x), Float64(fma(0.2, Float64(x * x), 0.6666666666666666) * abs(x)), 2.0) * Float64(sqrt(Float64(1.0 / pi)) * abs(x))));
          	else
          		tmp = abs(Float64(Float64(Float64(Float64(Float64(Float64(abs(x) * x) * x) * fma(0.047619047619047616, Float64(x * x), 0.2)) * x) * x) / sqrt(pi)));
          	end
          	return tmp
          end
          
          code[x_] := If[LessEqual[N[Abs[x], $MachinePrecision], 4.0], N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * N[(N[(0.2 * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] + 2.0), $MachinePrecision] * N[(N[Sqrt[N[(1.0 / Pi), $MachinePrecision]], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[Abs[N[(N[(N[(N[(N[(N[(N[Abs[x], $MachinePrecision] * x), $MachinePrecision] * x), $MachinePrecision] * N[(0.047619047619047616 * N[(x * x), $MachinePrecision] + 0.2), $MachinePrecision]), $MachinePrecision] * x), $MachinePrecision] * x), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]
          
          \begin{array}{l}
          
          \\
          \begin{array}{l}
          \mathbf{if}\;\left|x\right| \leq 4:\\
          \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\
          
          \mathbf{else}:\\
          \;\;\;\;\left|\frac{\left(\left(\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right)\right) \cdot x\right) \cdot x}{\sqrt{\pi}}\right|\\
          
          
          \end{array}
          \end{array}
          
          Derivation
          1. Split input into 2 regimes
          2. if (fabs.f64 x) < 4

            1. Initial program 99.8%

              \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
            2. Add Preprocessing
            3. Applied rewrites99.2%

              \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
            4. Taylor expanded in x around 0

              \[\leadsto \left|\color{blue}{2 \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left(\left({x}^{2} \cdot \left|x\right|\right) \cdot \sqrt{\frac{1}{\mathsf{PI}\left(\right)}}\right) + \frac{1}{5} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right)\right)}\right| \]
            5. Applied rewrites99.8%

              \[\leadsto \left|\color{blue}{\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)}\right| \]
            6. Taylor expanded in x around 0

              \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\frac{1}{5}, x \cdot x, \frac{2}{3}\right), 2\right) \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right| \]
            7. Step-by-step derivation
              1. Applied rewrites99.2%

                \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right| \]

              if 4 < (fabs.f64 x)

              1. Initial program 99.9%

                \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
              2. Add Preprocessing
              3. Applied rewrites99.8%

                \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
              4. Taylor expanded in x around 0

                \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
              5. Step-by-step derivation
                1. lower-*.f64N/A

                  \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                2. lower-fabs.f646.1

                  \[\leadsto \left|\frac{2 \cdot \color{blue}{\left|x\right|}}{\sqrt{\pi}}\right| \]
              6. Applied rewrites6.1%

                \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\pi}}\right| \]
              7. Taylor expanded in x around inf

                \[\leadsto \left|\frac{\color{blue}{{x}^{6} \cdot \left(\frac{1}{21} \cdot \left|x\right| + \frac{1}{5} \cdot \frac{\left|x\right|}{{x}^{2}}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
              8. Applied rewrites99.1%

                \[\leadsto \left|\frac{\color{blue}{\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right) \cdot \left(x \cdot x\right)\right)}}{\sqrt{\pi}}\right| \]
              9. Step-by-step derivation
                1. Applied rewrites99.1%

                  \[\leadsto \left|\frac{\left(\left(\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right)\right) \cdot x\right) \cdot \color{blue}{x}}{\sqrt{\pi}}\right| \]
              10. Recombined 2 regimes into one program.
              11. Final simplification99.2%

                \[\leadsto \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right)\right) \cdot x\right) \cdot x}{\sqrt{\pi}}\right|\\ \end{array} \]
              12. Add Preprocessing

              Alternative 6: 99.5% accurate, 2.6× speedup?

              \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left|x\right| \cdot x\right) \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \end{array} \]
              (FPCore (x)
               :precision binary64
               (if (<= (fabs x) 4.0)
                 (fabs
                  (*
                   (fma (fabs x) (* (fma 0.2 (* x x) 0.6666666666666666) (fabs x)) 2.0)
                   (* (sqrt (/ 1.0 PI)) (fabs x))))
                 (fabs
                  (/
                   (*
                    (* (fma 0.047619047619047616 (* x x) 0.2) (* x x))
                    (* (* (fabs x) x) x))
                   (sqrt PI)))))
              double code(double x) {
              	double tmp;
              	if (fabs(x) <= 4.0) {
              		tmp = fabs((fma(fabs(x), (fma(0.2, (x * x), 0.6666666666666666) * fabs(x)), 2.0) * (sqrt((1.0 / ((double) M_PI))) * fabs(x))));
              	} else {
              		tmp = fabs((((fma(0.047619047619047616, (x * x), 0.2) * (x * x)) * ((fabs(x) * x) * x)) / sqrt(((double) M_PI))));
              	}
              	return tmp;
              }
              
              function code(x)
              	tmp = 0.0
              	if (abs(x) <= 4.0)
              		tmp = abs(Float64(fma(abs(x), Float64(fma(0.2, Float64(x * x), 0.6666666666666666) * abs(x)), 2.0) * Float64(sqrt(Float64(1.0 / pi)) * abs(x))));
              	else
              		tmp = abs(Float64(Float64(Float64(fma(0.047619047619047616, Float64(x * x), 0.2) * Float64(x * x)) * Float64(Float64(abs(x) * x) * x)) / sqrt(pi)));
              	end
              	return tmp
              end
              
              code[x_] := If[LessEqual[N[Abs[x], $MachinePrecision], 4.0], N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * N[(N[(0.2 * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] + 2.0), $MachinePrecision] * N[(N[Sqrt[N[(1.0 / Pi), $MachinePrecision]], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[Abs[N[(N[(N[(N[(0.047619047619047616 * N[(x * x), $MachinePrecision] + 0.2), $MachinePrecision] * N[(x * x), $MachinePrecision]), $MachinePrecision] * N[(N[(N[Abs[x], $MachinePrecision] * x), $MachinePrecision] * x), $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]
              
              \begin{array}{l}
              
              \\
              \begin{array}{l}
              \mathbf{if}\;\left|x\right| \leq 4:\\
              \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\
              
              \mathbf{else}:\\
              \;\;\;\;\left|\frac{\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left|x\right| \cdot x\right) \cdot x\right)}{\sqrt{\pi}}\right|\\
              
              
              \end{array}
              \end{array}
              
              Derivation
              1. Split input into 2 regimes
              2. if (fabs.f64 x) < 4

                1. Initial program 99.8%

                  \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                2. Add Preprocessing
                3. Applied rewrites99.2%

                  \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                4. Taylor expanded in x around 0

                  \[\leadsto \left|\color{blue}{2 \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left(\left({x}^{2} \cdot \left|x\right|\right) \cdot \sqrt{\frac{1}{\mathsf{PI}\left(\right)}}\right) + \frac{1}{5} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right)\right)}\right| \]
                5. Applied rewrites99.8%

                  \[\leadsto \left|\color{blue}{\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)}\right| \]
                6. Taylor expanded in x around 0

                  \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\frac{1}{5}, x \cdot x, \frac{2}{3}\right), 2\right) \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right| \]
                7. Step-by-step derivation
                  1. Applied rewrites99.2%

                    \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right| \]

                  if 4 < (fabs.f64 x)

                  1. Initial program 99.9%

                    \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                  2. Add Preprocessing
                  3. Applied rewrites99.8%

                    \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                  4. Taylor expanded in x around 0

                    \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                  5. Step-by-step derivation
                    1. lower-*.f64N/A

                      \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                    2. lower-fabs.f646.1

                      \[\leadsto \left|\frac{2 \cdot \color{blue}{\left|x\right|}}{\sqrt{\pi}}\right| \]
                  6. Applied rewrites6.1%

                    \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\pi}}\right| \]
                  7. Taylor expanded in x around inf

                    \[\leadsto \left|\frac{\color{blue}{{x}^{6} \cdot \left(\frac{1}{21} \cdot \left|x\right| + \frac{1}{5} \cdot \frac{\left|x\right|}{{x}^{2}}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                  8. Applied rewrites99.1%

                    \[\leadsto \left|\frac{\color{blue}{\left(\left(\left|x\right| \cdot x\right) \cdot x\right) \cdot \left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right) \cdot \left(x \cdot x\right)\right)}}{\sqrt{\pi}}\right| \]
                8. Recombined 2 regimes into one program.
                9. Final simplification99.1%

                  \[\leadsto \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left|x\right| \cdot x\right) \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \]
                10. Add Preprocessing

                Alternative 7: 99.4% accurate, 2.6× speedup?

                \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \left(x \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \end{array} \]
                (FPCore (x)
                 :precision binary64
                 (if (<= (fabs x) 4.0)
                   (fabs
                    (*
                     (fma (fabs x) (* (fma 0.2 (* x x) 0.6666666666666666) (fabs x)) 2.0)
                     (* (sqrt (/ 1.0 PI)) (fabs x))))
                   (fabs
                    (/
                     (* (* (* (* (* 0.047619047619047616 (fabs x)) x) (* x x)) x) (* x x))
                     (sqrt PI)))))
                double code(double x) {
                	double tmp;
                	if (fabs(x) <= 4.0) {
                		tmp = fabs((fma(fabs(x), (fma(0.2, (x * x), 0.6666666666666666) * fabs(x)), 2.0) * (sqrt((1.0 / ((double) M_PI))) * fabs(x))));
                	} else {
                		tmp = fabs(((((((0.047619047619047616 * fabs(x)) * x) * (x * x)) * x) * (x * x)) / sqrt(((double) M_PI))));
                	}
                	return tmp;
                }
                
                function code(x)
                	tmp = 0.0
                	if (abs(x) <= 4.0)
                		tmp = abs(Float64(fma(abs(x), Float64(fma(0.2, Float64(x * x), 0.6666666666666666) * abs(x)), 2.0) * Float64(sqrt(Float64(1.0 / pi)) * abs(x))));
                	else
                		tmp = abs(Float64(Float64(Float64(Float64(Float64(Float64(0.047619047619047616 * abs(x)) * x) * Float64(x * x)) * x) * Float64(x * x)) / sqrt(pi)));
                	end
                	return tmp
                end
                
                code[x_] := If[LessEqual[N[Abs[x], $MachinePrecision], 4.0], N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * N[(N[(0.2 * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] + 2.0), $MachinePrecision] * N[(N[Sqrt[N[(1.0 / Pi), $MachinePrecision]], $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[Abs[N[(N[(N[(N[(N[(N[(0.047619047619047616 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * x), $MachinePrecision] * N[(x * x), $MachinePrecision]), $MachinePrecision] * x), $MachinePrecision] * N[(x * x), $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]
                
                \begin{array}{l}
                
                \\
                \begin{array}{l}
                \mathbf{if}\;\left|x\right| \leq 4:\\
                \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\
                
                \mathbf{else}:\\
                \;\;\;\;\left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \left(x \cdot x\right)}{\sqrt{\pi}}\right|\\
                
                
                \end{array}
                \end{array}
                
                Derivation
                1. Split input into 2 regimes
                2. if (fabs.f64 x) < 4

                  1. Initial program 99.8%

                    \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                  2. Add Preprocessing
                  3. Applied rewrites99.2%

                    \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                  4. Taylor expanded in x around 0

                    \[\leadsto \left|\color{blue}{2 \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left(\left({x}^{2} \cdot \left|x\right|\right) \cdot \sqrt{\frac{1}{\mathsf{PI}\left(\right)}}\right) + \frac{1}{5} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right)\right)}\right| \]
                  5. Applied rewrites99.8%

                    \[\leadsto \left|\color{blue}{\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)}\right| \]
                  6. Taylor expanded in x around 0

                    \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\frac{1}{5}, x \cdot x, \frac{2}{3}\right), 2\right) \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right| \]
                  7. Step-by-step derivation
                    1. Applied rewrites99.2%

                      \[\leadsto \left|\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right| \]

                    if 4 < (fabs.f64 x)

                    1. Initial program 99.9%

                      \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                    2. Add Preprocessing
                    3. Applied rewrites99.8%

                      \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                    4. Taylor expanded in x around inf

                      \[\leadsto \left|\frac{\color{blue}{\frac{1}{21} \cdot \left({x}^{6} \cdot \left|x\right|\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                    5. Step-by-step derivation
                      1. *-commutativeN/A

                        \[\leadsto \left|\frac{\frac{1}{21} \cdot \color{blue}{\left(\left|x\right| \cdot {x}^{6}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      2. associate-*r*N/A

                        \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{6}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      3. lower-*.f64N/A

                        \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{6}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      4. lower-*.f64N/A

                        \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right)} \cdot {x}^{6}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      5. lower-fabs.f64N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \color{blue}{\left|x\right|}\right) \cdot {x}^{6}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      6. metadata-evalN/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{\color{blue}{\left(2 \cdot 3\right)}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      7. pow-sqrN/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \color{blue}{\left({x}^{3} \cdot {x}^{3}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      8. metadata-evalN/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left({x}^{\color{blue}{\left(2 + 1\right)}} \cdot {x}^{3}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      9. pow-plusN/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\color{blue}{\left({x}^{2} \cdot x\right)} \cdot {x}^{3}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      10. metadata-evalN/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left({x}^{2} \cdot x\right) \cdot {x}^{\color{blue}{\left(2 + 1\right)}}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      11. pow-plusN/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left({x}^{2} \cdot x\right) \cdot \color{blue}{\left({x}^{2} \cdot x\right)}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      12. lower-*.f64N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \color{blue}{\left(\left({x}^{2} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      13. lower-*.f64N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\color{blue}{\left({x}^{2} \cdot x\right)} \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      14. unpow2N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\color{blue}{\left(x \cdot x\right)} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      15. lower-*.f64N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\color{blue}{\left(x \cdot x\right)} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      16. lower-*.f64N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \color{blue}{\left({x}^{2} \cdot x\right)}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      17. unpow2N/A

                        \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\color{blue}{\left(x \cdot x\right)} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      18. lower-*.f6498.2

                        \[\leadsto \left|\frac{\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\color{blue}{\left(x \cdot x\right)} \cdot x\right)\right)}{\sqrt{\pi}}\right| \]
                    6. Applied rewrites98.2%

                      \[\leadsto \left|\frac{\color{blue}{\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)}}{\sqrt{\pi}}\right| \]
                    7. Step-by-step derivation
                      1. Applied rewrites98.3%

                        \[\leadsto \left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \color{blue}{\left(x \cdot x\right)}}{\sqrt{\pi}}\right| \]
                    8. Recombined 2 regimes into one program.
                    9. Final simplification98.9%

                      \[\leadsto \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2, x \cdot x, 0.6666666666666666\right) \cdot \left|x\right|, 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \left(x \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \]
                    10. Add Preprocessing

                    Alternative 8: 99.3% accurate, 2.7× speedup?

                    \[\begin{array}{l} \\ \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, 2, \left(0.6666666666666666 \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \left(x \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \end{array} \]
                    (FPCore (x)
                     :precision binary64
                     (if (<= (fabs x) 4.0)
                       (fabs
                        (*
                         (fma (fabs x) 2.0 (* (* 0.6666666666666666 x) (* (fabs x) x)))
                         (/ 1.0 (sqrt PI))))
                       (fabs
                        (/
                         (* (* (* (* (* 0.047619047619047616 (fabs x)) x) (* x x)) x) (* x x))
                         (sqrt PI)))))
                    double code(double x) {
                    	double tmp;
                    	if (fabs(x) <= 4.0) {
                    		tmp = fabs((fma(fabs(x), 2.0, ((0.6666666666666666 * x) * (fabs(x) * x))) * (1.0 / sqrt(((double) M_PI)))));
                    	} else {
                    		tmp = fabs(((((((0.047619047619047616 * fabs(x)) * x) * (x * x)) * x) * (x * x)) / sqrt(((double) M_PI))));
                    	}
                    	return tmp;
                    }
                    
                    function code(x)
                    	tmp = 0.0
                    	if (abs(x) <= 4.0)
                    		tmp = abs(Float64(fma(abs(x), 2.0, Float64(Float64(0.6666666666666666 * x) * Float64(abs(x) * x))) * Float64(1.0 / sqrt(pi))));
                    	else
                    		tmp = abs(Float64(Float64(Float64(Float64(Float64(Float64(0.047619047619047616 * abs(x)) * x) * Float64(x * x)) * x) * Float64(x * x)) / sqrt(pi)));
                    	end
                    	return tmp
                    end
                    
                    code[x_] := If[LessEqual[N[Abs[x], $MachinePrecision], 4.0], N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * 2.0 + N[(N[(0.6666666666666666 * x), $MachinePrecision] * N[(N[Abs[x], $MachinePrecision] * x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[Abs[N[(N[(N[(N[(N[(N[(0.047619047619047616 * N[Abs[x], $MachinePrecision]), $MachinePrecision] * x), $MachinePrecision] * N[(x * x), $MachinePrecision]), $MachinePrecision] * x), $MachinePrecision] * N[(x * x), $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]
                    
                    \begin{array}{l}
                    
                    \\
                    \begin{array}{l}
                    \mathbf{if}\;\left|x\right| \leq 4:\\
                    \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, 2, \left(0.6666666666666666 \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;\left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \left(x \cdot x\right)}{\sqrt{\pi}}\right|\\
                    
                    
                    \end{array}
                    \end{array}
                    
                    Derivation
                    1. Split input into 2 regimes
                    2. if (fabs.f64 x) < 4

                      1. Initial program 99.8%

                        \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                      2. Add Preprocessing
                      3. Applied rewrites99.8%

                        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(\left|x\right|, 2, \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.6666666666666666 \cdot x, x, \left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right), \left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)\right)\right)}\right| \]
                      4. Taylor expanded in x around 0

                        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right)}\right)\right| \]
                      5. Step-by-step derivation
                        1. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left({x}^{2} \cdot \left|x\right|\right) \cdot \frac{2}{3}}\right)\right| \]
                        2. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot {x}^{2}\right)} \cdot \frac{2}{3}\right)\right| \]
                        3. unpow2N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \color{blue}{\left(x \cdot x\right)}\right) \cdot \frac{2}{3}\right)\right| \]
                        4. associate-*r*N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left(\left|x\right| \cdot x\right) \cdot x\right)} \cdot \frac{2}{3}\right)\right| \]
                        5. associate-*l*N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right) \cdot \left(x \cdot \frac{2}{3}\right)}\right)\right| \]
                        6. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(x \cdot \left|x\right|\right)} \cdot \left(x \cdot \frac{2}{3}\right)\right)\right| \]
                        7. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(x \cdot \left|x\right|\right) \cdot \color{blue}{\left(\frac{2}{3} \cdot x\right)}\right)\right| \]
                        8. lower-*.f64N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(x \cdot \left|x\right|\right) \cdot \left(\frac{2}{3} \cdot x\right)}\right)\right| \]
                        9. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right)} \cdot \left(\frac{2}{3} \cdot x\right)\right)\right| \]
                        10. lower-*.f64N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right)} \cdot \left(\frac{2}{3} \cdot x\right)\right)\right| \]
                        11. lower-fabs.f64N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\color{blue}{\left|x\right|} \cdot x\right) \cdot \left(\frac{2}{3} \cdot x\right)\right)\right| \]
                        12. lower-*.f6499.1

                          \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot x\right) \cdot \color{blue}{\left(0.6666666666666666 \cdot x\right)}\right)\right| \]
                      6. Applied rewrites99.1%

                        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right) \cdot \left(0.6666666666666666 \cdot x\right)}\right)\right| \]

                      if 4 < (fabs.f64 x)

                      1. Initial program 99.9%

                        \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                      2. Add Preprocessing
                      3. Applied rewrites99.8%

                        \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                      4. Taylor expanded in x around inf

                        \[\leadsto \left|\frac{\color{blue}{\frac{1}{21} \cdot \left({x}^{6} \cdot \left|x\right|\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                      5. Step-by-step derivation
                        1. *-commutativeN/A

                          \[\leadsto \left|\frac{\frac{1}{21} \cdot \color{blue}{\left(\left|x\right| \cdot {x}^{6}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        2. associate-*r*N/A

                          \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{6}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        3. lower-*.f64N/A

                          \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{6}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        4. lower-*.f64N/A

                          \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right)} \cdot {x}^{6}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        5. lower-fabs.f64N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \color{blue}{\left|x\right|}\right) \cdot {x}^{6}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        6. metadata-evalN/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{\color{blue}{\left(2 \cdot 3\right)}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        7. pow-sqrN/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \color{blue}{\left({x}^{3} \cdot {x}^{3}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        8. metadata-evalN/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left({x}^{\color{blue}{\left(2 + 1\right)}} \cdot {x}^{3}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        9. pow-plusN/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\color{blue}{\left({x}^{2} \cdot x\right)} \cdot {x}^{3}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        10. metadata-evalN/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left({x}^{2} \cdot x\right) \cdot {x}^{\color{blue}{\left(2 + 1\right)}}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        11. pow-plusN/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left({x}^{2} \cdot x\right) \cdot \color{blue}{\left({x}^{2} \cdot x\right)}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        12. lower-*.f64N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \color{blue}{\left(\left({x}^{2} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        13. lower-*.f64N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\color{blue}{\left({x}^{2} \cdot x\right)} \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        14. unpow2N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\color{blue}{\left(x \cdot x\right)} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        15. lower-*.f64N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\color{blue}{\left(x \cdot x\right)} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        16. lower-*.f64N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \color{blue}{\left({x}^{2} \cdot x\right)}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        17. unpow2N/A

                          \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\color{blue}{\left(x \cdot x\right)} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        18. lower-*.f6498.2

                          \[\leadsto \left|\frac{\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\color{blue}{\left(x \cdot x\right)} \cdot x\right)\right)}{\sqrt{\pi}}\right| \]
                      6. Applied rewrites98.2%

                        \[\leadsto \left|\frac{\color{blue}{\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)}}{\sqrt{\pi}}\right| \]
                      7. Step-by-step derivation
                        1. Applied rewrites98.3%

                          \[\leadsto \left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \color{blue}{\left(x \cdot x\right)}}{\sqrt{\pi}}\right| \]
                      8. Recombined 2 regimes into one program.
                      9. Final simplification98.8%

                        \[\leadsto \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, 2, \left(0.6666666666666666 \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot x\right) \cdot \left(x \cdot x\right)}{\sqrt{\pi}}\right|\\ \end{array} \]
                      10. Add Preprocessing

                      Alternative 9: 99.3% accurate, 2.7× speedup?

                      \[\begin{array}{l} \\ \begin{array}{l} t_0 := \left(x \cdot x\right) \cdot x\\ \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, 2, \left(0.6666666666666666 \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(t\_0 \cdot t\_0\right) \cdot \left(0.047619047619047616 \cdot \left|x\right|\right)}{\sqrt{\pi}}\right|\\ \end{array} \end{array} \]
                      (FPCore (x)
                       :precision binary64
                       (let* ((t_0 (* (* x x) x)))
                         (if (<= (fabs x) 4.0)
                           (fabs
                            (*
                             (fma (fabs x) 2.0 (* (* 0.6666666666666666 x) (* (fabs x) x)))
                             (/ 1.0 (sqrt PI))))
                           (fabs (/ (* (* t_0 t_0) (* 0.047619047619047616 (fabs x))) (sqrt PI))))))
                      double code(double x) {
                      	double t_0 = (x * x) * x;
                      	double tmp;
                      	if (fabs(x) <= 4.0) {
                      		tmp = fabs((fma(fabs(x), 2.0, ((0.6666666666666666 * x) * (fabs(x) * x))) * (1.0 / sqrt(((double) M_PI)))));
                      	} else {
                      		tmp = fabs((((t_0 * t_0) * (0.047619047619047616 * fabs(x))) / sqrt(((double) M_PI))));
                      	}
                      	return tmp;
                      }
                      
                      function code(x)
                      	t_0 = Float64(Float64(x * x) * x)
                      	tmp = 0.0
                      	if (abs(x) <= 4.0)
                      		tmp = abs(Float64(fma(abs(x), 2.0, Float64(Float64(0.6666666666666666 * x) * Float64(abs(x) * x))) * Float64(1.0 / sqrt(pi))));
                      	else
                      		tmp = abs(Float64(Float64(Float64(t_0 * t_0) * Float64(0.047619047619047616 * abs(x))) / sqrt(pi)));
                      	end
                      	return tmp
                      end
                      
                      code[x_] := Block[{t$95$0 = N[(N[(x * x), $MachinePrecision] * x), $MachinePrecision]}, If[LessEqual[N[Abs[x], $MachinePrecision], 4.0], N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * 2.0 + N[(N[(0.6666666666666666 * x), $MachinePrecision] * N[(N[Abs[x], $MachinePrecision] * x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[Abs[N[(N[(N[(t$95$0 * t$95$0), $MachinePrecision] * N[(0.047619047619047616 * N[Abs[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]]
                      
                      \begin{array}{l}
                      
                      \\
                      \begin{array}{l}
                      t_0 := \left(x \cdot x\right) \cdot x\\
                      \mathbf{if}\;\left|x\right| \leq 4:\\
                      \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, 2, \left(0.6666666666666666 \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\
                      
                      \mathbf{else}:\\
                      \;\;\;\;\left|\frac{\left(t\_0 \cdot t\_0\right) \cdot \left(0.047619047619047616 \cdot \left|x\right|\right)}{\sqrt{\pi}}\right|\\
                      
                      
                      \end{array}
                      \end{array}
                      
                      Derivation
                      1. Split input into 2 regimes
                      2. if (fabs.f64 x) < 4

                        1. Initial program 99.8%

                          \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                        2. Add Preprocessing
                        3. Applied rewrites99.8%

                          \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(\left|x\right|, 2, \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.6666666666666666 \cdot x, x, \left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right), \left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)\right)\right)}\right| \]
                        4. Taylor expanded in x around 0

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right)}\right)\right| \]
                        5. Step-by-step derivation
                          1. *-commutativeN/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left({x}^{2} \cdot \left|x\right|\right) \cdot \frac{2}{3}}\right)\right| \]
                          2. *-commutativeN/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot {x}^{2}\right)} \cdot \frac{2}{3}\right)\right| \]
                          3. unpow2N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \color{blue}{\left(x \cdot x\right)}\right) \cdot \frac{2}{3}\right)\right| \]
                          4. associate-*r*N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left(\left|x\right| \cdot x\right) \cdot x\right)} \cdot \frac{2}{3}\right)\right| \]
                          5. associate-*l*N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right) \cdot \left(x \cdot \frac{2}{3}\right)}\right)\right| \]
                          6. *-commutativeN/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(x \cdot \left|x\right|\right)} \cdot \left(x \cdot \frac{2}{3}\right)\right)\right| \]
                          7. *-commutativeN/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(x \cdot \left|x\right|\right) \cdot \color{blue}{\left(\frac{2}{3} \cdot x\right)}\right)\right| \]
                          8. lower-*.f64N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(x \cdot \left|x\right|\right) \cdot \left(\frac{2}{3} \cdot x\right)}\right)\right| \]
                          9. *-commutativeN/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right)} \cdot \left(\frac{2}{3} \cdot x\right)\right)\right| \]
                          10. lower-*.f64N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right)} \cdot \left(\frac{2}{3} \cdot x\right)\right)\right| \]
                          11. lower-fabs.f64N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\color{blue}{\left|x\right|} \cdot x\right) \cdot \left(\frac{2}{3} \cdot x\right)\right)\right| \]
                          12. lower-*.f6499.1

                            \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot x\right) \cdot \color{blue}{\left(0.6666666666666666 \cdot x\right)}\right)\right| \]
                        6. Applied rewrites99.1%

                          \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot x\right) \cdot \left(0.6666666666666666 \cdot x\right)}\right)\right| \]

                        if 4 < (fabs.f64 x)

                        1. Initial program 99.9%

                          \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                        2. Add Preprocessing
                        3. Applied rewrites99.8%

                          \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                        4. Taylor expanded in x around inf

                          \[\leadsto \left|\frac{\color{blue}{\frac{1}{21} \cdot \left({x}^{6} \cdot \left|x\right|\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                        5. Step-by-step derivation
                          1. *-commutativeN/A

                            \[\leadsto \left|\frac{\frac{1}{21} \cdot \color{blue}{\left(\left|x\right| \cdot {x}^{6}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          2. associate-*r*N/A

                            \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{6}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          3. lower-*.f64N/A

                            \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{6}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          4. lower-*.f64N/A

                            \[\leadsto \left|\frac{\color{blue}{\left(\frac{1}{21} \cdot \left|x\right|\right)} \cdot {x}^{6}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          5. lower-fabs.f64N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \color{blue}{\left|x\right|}\right) \cdot {x}^{6}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          6. metadata-evalN/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot {x}^{\color{blue}{\left(2 \cdot 3\right)}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          7. pow-sqrN/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \color{blue}{\left({x}^{3} \cdot {x}^{3}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          8. metadata-evalN/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left({x}^{\color{blue}{\left(2 + 1\right)}} \cdot {x}^{3}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          9. pow-plusN/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\color{blue}{\left({x}^{2} \cdot x\right)} \cdot {x}^{3}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          10. metadata-evalN/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left({x}^{2} \cdot x\right) \cdot {x}^{\color{blue}{\left(2 + 1\right)}}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          11. pow-plusN/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left({x}^{2} \cdot x\right) \cdot \color{blue}{\left({x}^{2} \cdot x\right)}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          12. lower-*.f64N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \color{blue}{\left(\left({x}^{2} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          13. lower-*.f64N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\color{blue}{\left({x}^{2} \cdot x\right)} \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          14. unpow2N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\color{blue}{\left(x \cdot x\right)} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          15. lower-*.f64N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\color{blue}{\left(x \cdot x\right)} \cdot x\right) \cdot \left({x}^{2} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          16. lower-*.f64N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \color{blue}{\left({x}^{2} \cdot x\right)}\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          17. unpow2N/A

                            \[\leadsto \left|\frac{\left(\frac{1}{21} \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\color{blue}{\left(x \cdot x\right)} \cdot x\right)\right)}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          18. lower-*.f6498.2

                            \[\leadsto \left|\frac{\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\color{blue}{\left(x \cdot x\right)} \cdot x\right)\right)}{\sqrt{\pi}}\right| \]
                        6. Applied rewrites98.2%

                          \[\leadsto \left|\frac{\color{blue}{\left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)}}{\sqrt{\pi}}\right| \]
                      3. Recombined 2 regimes into one program.
                      4. Final simplification98.8%

                        \[\leadsto \begin{array}{l} \mathbf{if}\;\left|x\right| \leq 4:\\ \;\;\;\;\left|\mathsf{fma}\left(\left|x\right|, 2, \left(0.6666666666666666 \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|\\ \mathbf{else}:\\ \;\;\;\;\left|\frac{\left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot \left(0.047619047619047616 \cdot \left|x\right|\right)}{\sqrt{\pi}}\right|\\ \end{array} \]
                      5. Add Preprocessing

                      Alternative 10: 99.8% accurate, 2.7× speedup?

                      \[\begin{array}{l} \\ \left|\left(\mathsf{fma}\left(x \cdot x, \mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right| \end{array} \]
                      (FPCore (x)
                       :precision binary64
                       (fabs
                        (*
                         (*
                          (fma
                           (* x x)
                           (fma (fma 0.047619047619047616 (* x x) 0.2) (* x x) 0.6666666666666666)
                           2.0)
                          (fabs x))
                         (/ 1.0 (sqrt PI)))))
                      double code(double x) {
                      	return fabs(((fma((x * x), fma(fma(0.047619047619047616, (x * x), 0.2), (x * x), 0.6666666666666666), 2.0) * fabs(x)) * (1.0 / sqrt(((double) M_PI)))));
                      }
                      
                      function code(x)
                      	return abs(Float64(Float64(fma(Float64(x * x), fma(fma(0.047619047619047616, Float64(x * x), 0.2), Float64(x * x), 0.6666666666666666), 2.0) * abs(x)) * Float64(1.0 / sqrt(pi))))
                      end
                      
                      code[x_] := N[Abs[N[(N[(N[(N[(x * x), $MachinePrecision] * N[(N[(0.047619047619047616 * N[(x * x), $MachinePrecision] + 0.2), $MachinePrecision] * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] + 2.0), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                      
                      \begin{array}{l}
                      
                      \\
                      \left|\left(\mathsf{fma}\left(x \cdot x, \mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right|
                      \end{array}
                      
                      Derivation
                      1. Initial program 99.8%

                        \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                      2. Add Preprocessing
                      3. Applied rewrites99.8%

                        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(0.047619047619047616 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot x\right) \cdot x\right) \cdot \left|x\right|\right), x \cdot x, \mathsf{fma}\left(0.2 \cdot \left|x\right|, \left(\left(x \cdot x\right) \cdot x\right) \cdot x, \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)\right)}\right| \]
                      4. Taylor expanded in x around 0

                        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right) + 2 \cdot \left|x\right|\right)}\right| \]
                      5. Step-by-step derivation
                        1. +-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right)\right)}\right| \]
                        2. associate-*r*N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(2 \cdot \left|x\right| + \color{blue}{\left(\frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|}\right)\right| \]
                        3. distribute-rgt-inN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left|x\right| \cdot \left(2 + \frac{2}{3} \cdot {x}^{2}\right)\right)}\right| \]
                        4. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|\right)}\right| \]
                        5. lower-*.f64N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|\right)}\right| \]
                        6. +-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\color{blue}{\left(\frac{2}{3} \cdot {x}^{2} + 2\right)} \cdot \left|x\right|\right)\right| \]
                        7. *-commutativeN/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\color{blue}{{x}^{2} \cdot \frac{2}{3}} + 2\right) \cdot \left|x\right|\right)\right| \]
                        8. lower-fma.f64N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\color{blue}{\mathsf{fma}\left({x}^{2}, \frac{2}{3}, 2\right)} \cdot \left|x\right|\right)\right| \]
                        9. unpow2N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|\right)\right| \]
                        10. lower-*.f64N/A

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|\right)\right| \]
                        11. lower-fabs.f6491.0

                          \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \color{blue}{\left|x\right|}\right)\right| \]
                      6. Applied rewrites91.0%

                        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\left(\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \left|x\right|\right)}\right| \]
                      7. Taylor expanded in x around 0

                        \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(2 \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right)\right)}\right| \]
                      8. Applied rewrites99.8%

                        \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\left(\mathsf{fma}\left(x \cdot x, \mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left|x\right|\right)}\right| \]
                      9. Final simplification99.8%

                        \[\leadsto \left|\left(\mathsf{fma}\left(x \cdot x, \mathsf{fma}\left(\mathsf{fma}\left(0.047619047619047616, x \cdot x, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right| \]
                      10. Add Preprocessing

                      Alternative 11: 99.4% accurate, 2.9× speedup?

                      \[\begin{array}{l} \\ \left|\frac{\left|x\right|}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), x \cdot x, 2\right)\right| \end{array} \]
                      (FPCore (x)
                       :precision binary64
                       (fabs
                        (*
                         (/ (fabs x) (sqrt PI))
                         (fma
                          (fma (fma (* x x) 0.047619047619047616 0.2) (* x x) 0.6666666666666666)
                          (* x x)
                          2.0))))
                      double code(double x) {
                      	return fabs(((fabs(x) / sqrt(((double) M_PI))) * fma(fma(fma((x * x), 0.047619047619047616, 0.2), (x * x), 0.6666666666666666), (x * x), 2.0)));
                      }
                      
                      function code(x)
                      	return abs(Float64(Float64(abs(x) / sqrt(pi)) * fma(fma(fma(Float64(x * x), 0.047619047619047616, 0.2), Float64(x * x), 0.6666666666666666), Float64(x * x), 2.0)))
                      end
                      
                      code[x_] := N[Abs[N[(N[(N[Abs[x], $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(x * x), $MachinePrecision] * 0.047619047619047616 + 0.2), $MachinePrecision] * N[(x * x), $MachinePrecision] + 0.6666666666666666), $MachinePrecision] * N[(x * x), $MachinePrecision] + 2.0), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                      
                      \begin{array}{l}
                      
                      \\
                      \left|\frac{\left|x\right|}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), x \cdot x, 2\right)\right|
                      \end{array}
                      
                      Derivation
                      1. Initial program 99.8%

                        \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                      2. Add Preprocessing
                      3. Applied rewrites99.4%

                        \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                      4. Taylor expanded in x around 0

                        \[\leadsto \left|\color{blue}{2 \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{2}{3} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right) + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left(\left({x}^{2} \cdot \left|x\right|\right) \cdot \sqrt{\frac{1}{\mathsf{PI}\left(\right)}}\right) + \frac{1}{5} \cdot \left(\sqrt{\frac{1}{\mathsf{PI}\left(\right)}} \cdot \left|x\right|\right)\right)\right)}\right| \]
                      5. Applied rewrites99.8%

                        \[\leadsto \left|\color{blue}{\mathsf{fma}\left(\left|x\right|, \left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), 2\right) \cdot \left(\sqrt{\frac{1}{\pi}} \cdot \left|x\right|\right)}\right| \]
                      6. Step-by-step derivation
                        1. Applied rewrites99.4%

                          \[\leadsto \left|\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), x \cdot x, 2\right) \cdot \color{blue}{\frac{\left|x\right|}{\sqrt{\pi}}}\right| \]
                        2. Final simplification99.4%

                          \[\leadsto \left|\frac{\left|x\right|}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right), x \cdot x, 2\right)\right| \]
                        3. Add Preprocessing

                        Alternative 12: 93.6% accurate, 3.1× speedup?

                        \[\begin{array}{l} \\ \frac{\left|\mathsf{fma}\left(2, \left|x\right|, \left(\mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right) \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right)\right|}{\sqrt{\pi}} \end{array} \]
                        (FPCore (x)
                         :precision binary64
                         (/
                          (fabs
                           (fma
                            2.0
                            (fabs x)
                            (* (* (fma (* x x) 0.2 0.6666666666666666) x) (* (fabs x) x))))
                          (sqrt PI)))
                        double code(double x) {
                        	return fabs(fma(2.0, fabs(x), ((fma((x * x), 0.2, 0.6666666666666666) * x) * (fabs(x) * x)))) / sqrt(((double) M_PI));
                        }
                        
                        function code(x)
                        	return Float64(abs(fma(2.0, abs(x), Float64(Float64(fma(Float64(x * x), 0.2, 0.6666666666666666) * x) * Float64(abs(x) * x)))) / sqrt(pi))
                        end
                        
                        code[x_] := N[(N[Abs[N[(2.0 * N[Abs[x], $MachinePrecision] + N[(N[(N[(N[(x * x), $MachinePrecision] * 0.2 + 0.6666666666666666), $MachinePrecision] * x), $MachinePrecision] * N[(N[Abs[x], $MachinePrecision] * x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]
                        
                        \begin{array}{l}
                        
                        \\
                        \frac{\left|\mathsf{fma}\left(2, \left|x\right|, \left(\mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right) \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right)\right|}{\sqrt{\pi}}
                        \end{array}
                        
                        Derivation
                        1. Initial program 99.8%

                          \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                        2. Add Preprocessing
                        3. Applied rewrites99.8%

                          \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(\left|x\right|, 2, \mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.6666666666666666 \cdot x, x, \left(0.2 \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right), \left(0.047619047619047616 \cdot \left|x\right|\right) \cdot \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)\right)\right)}\right| \]
                        4. Taylor expanded in x around 0

                          \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{{x}^{2} \cdot \left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right)}\right)\right| \]
                        5. Step-by-step derivation
                          1. *-commutativeN/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right) \cdot {x}^{2}}\right)\right| \]
                          2. lower-*.f64N/A

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\frac{2}{3} \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{21} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{1}{5} \cdot \left|x\right|\right)\right) \cdot {x}^{2}}\right)\right| \]
                        6. Applied rewrites99.8%

                          \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \color{blue}{\left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right)\right) \cdot \left(x \cdot x\right)}\right)\right| \]
                        7. Step-by-step derivation
                          1. lift-fabs.f64N/A

                            \[\leadsto \color{blue}{\left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, \frac{1}{21}, \frac{1}{5}\right), x \cdot x, \frac{2}{3}\right)\right) \cdot \left(x \cdot x\right)\right)\right|} \]
                          2. lift-*.f64N/A

                            \[\leadsto \left|\color{blue}{\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, \frac{1}{21}, \frac{1}{5}\right), x \cdot x, \frac{2}{3}\right)\right) \cdot \left(x \cdot x\right)\right)}\right| \]
                          3. lift-/.f64N/A

                            \[\leadsto \left|\color{blue}{\frac{1}{\sqrt{\mathsf{PI}\left(\right)}}} \cdot \mathsf{fma}\left(\left|x\right|, 2, \left(\left|x\right| \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, \frac{1}{21}, \frac{1}{5}\right), x \cdot x, \frac{2}{3}\right)\right) \cdot \left(x \cdot x\right)\right)\right| \]
                        8. Applied rewrites99.4%

                          \[\leadsto \color{blue}{\frac{\left|\mathsf{fma}\left(2, \left|x\right|, \left(\left(x \cdot x\right) \cdot \left|x\right|\right) \cdot \mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.047619047619047616, 0.2\right), x \cdot x, 0.6666666666666666\right)\right)\right|}{\sqrt{\pi}}} \]
                        9. Taylor expanded in x around 0

                          \[\leadsto \frac{\left|\mathsf{fma}\left(2, \left|x\right|, {x}^{2} \cdot \color{blue}{\left(\frac{1}{5} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{2}{3} \cdot \left|x\right|\right)}\right)\right|}{\sqrt{\mathsf{PI}\left(\right)}} \]
                        10. Step-by-step derivation
                          1. Applied rewrites93.7%

                            \[\leadsto \frac{\left|\mathsf{fma}\left(2, \left|x\right|, \left(\left|x\right| \cdot x\right) \cdot \color{blue}{\left(x \cdot \mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right)\right)}\right)\right|}{\sqrt{\pi}} \]
                          2. Final simplification93.7%

                            \[\leadsto \frac{\left|\mathsf{fma}\left(2, \left|x\right|, \left(\mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right) \cdot x\right) \cdot \left(\left|x\right| \cdot x\right)\right)\right|}{\sqrt{\pi}} \]
                          3. Add Preprocessing

                          Alternative 13: 93.6% accurate, 3.5× speedup?

                          \[\begin{array}{l} \\ \left|\frac{\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right), x \cdot x, 2\right) \cdot \left|x\right|}{\sqrt{\pi}}\right| \end{array} \]
                          (FPCore (x)
                           :precision binary64
                           (fabs
                            (/
                             (* (fma (fma (* x x) 0.2 0.6666666666666666) (* x x) 2.0) (fabs x))
                             (sqrt PI))))
                          double code(double x) {
                          	return fabs(((fma(fma((x * x), 0.2, 0.6666666666666666), (x * x), 2.0) * fabs(x)) / sqrt(((double) M_PI))));
                          }
                          
                          function code(x)
                          	return abs(Float64(Float64(fma(fma(Float64(x * x), 0.2, 0.6666666666666666), Float64(x * x), 2.0) * abs(x)) / sqrt(pi)))
                          end
                          
                          code[x_] := N[Abs[N[(N[(N[(N[(N[(x * x), $MachinePrecision] * 0.2 + 0.6666666666666666), $MachinePrecision] * N[(x * x), $MachinePrecision] + 2.0), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                          
                          \begin{array}{l}
                          
                          \\
                          \left|\frac{\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right), x \cdot x, 2\right) \cdot \left|x\right|}{\sqrt{\pi}}\right|
                          \end{array}
                          
                          Derivation
                          1. Initial program 99.8%

                            \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                          2. Add Preprocessing
                          3. Applied rewrites99.4%

                            \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                          4. Taylor expanded in x around 0

                            \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right| + {x}^{2} \cdot \left(\frac{1}{5} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{2}{3} \cdot \left|x\right|\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          5. Step-by-step derivation
                            1. *-commutativeN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \color{blue}{\left(\frac{1}{5} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{2}{3} \cdot \left|x\right|\right) \cdot {x}^{2}}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            2. unpow2N/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\frac{1}{5} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{2}{3} \cdot \left|x\right|\right) \cdot \color{blue}{\left(x \cdot x\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            3. sqr-absN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\frac{1}{5} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{2}{3} \cdot \left|x\right|\right) \cdot \color{blue}{\left(\left|x\right| \cdot \left|x\right|\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            4. associate-*r*N/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \color{blue}{\left(\left(\frac{1}{5} \cdot \left({x}^{2} \cdot \left|x\right|\right) + \frac{2}{3} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            5. associate-*r*N/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\left(\color{blue}{\left(\frac{1}{5} \cdot {x}^{2}\right) \cdot \left|x\right|} + \frac{2}{3} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            6. distribute-rgt-outN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\color{blue}{\left(\left|x\right| \cdot \left(\frac{1}{5} \cdot {x}^{2} + \frac{2}{3}\right)\right)} \cdot \left|x\right|\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            7. +-commutativeN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\left(\left|x\right| \cdot \color{blue}{\left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right)}\right) \cdot \left|x\right|\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            8. *-commutativeN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\color{blue}{\left(\left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right) \cdot \left|x\right|\right)} \cdot \left|x\right|\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            9. associate-*r*N/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \color{blue}{\left(\left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right)} \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            10. sqr-absN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right) \cdot \color{blue}{\left(x \cdot x\right)}\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            11. unpow2N/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \left(\left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right) \cdot \color{blue}{{x}^{2}}\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            12. *-commutativeN/A

                              \[\leadsto \left|\frac{2 \cdot \left|x\right| + \color{blue}{\left({x}^{2} \cdot \left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right)\right)} \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            13. distribute-rgt-inN/A

                              \[\leadsto \left|\frac{\color{blue}{\left|x\right| \cdot \left(2 + {x}^{2} \cdot \left(\frac{2}{3} + \frac{1}{5} \cdot {x}^{2}\right)\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                          6. Applied rewrites93.7%

                            \[\leadsto \left|\frac{\color{blue}{\mathsf{fma}\left(\mathsf{fma}\left(x \cdot x, 0.2, 0.6666666666666666\right), x \cdot x, 2\right) \cdot \left|x\right|}}{\sqrt{\pi}}\right| \]
                          7. Add Preprocessing

                          Alternative 14: 89.5% accurate, 3.9× speedup?

                          \[\begin{array}{l} \\ \left|\left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right| \end{array} \]
                          (FPCore (x)
                           :precision binary64
                           (fabs
                            (* (* (fma (* 0.6666666666666666 x) x 2.0) (fabs x)) (/ 1.0 (sqrt PI)))))
                          double code(double x) {
                          	return fabs(((fma((0.6666666666666666 * x), x, 2.0) * fabs(x)) * (1.0 / sqrt(((double) M_PI)))));
                          }
                          
                          function code(x)
                          	return abs(Float64(Float64(fma(Float64(0.6666666666666666 * x), x, 2.0) * abs(x)) * Float64(1.0 / sqrt(pi))))
                          end
                          
                          code[x_] := N[Abs[N[(N[(N[(N[(0.6666666666666666 * x), $MachinePrecision] * x + 2.0), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                          
                          \begin{array}{l}
                          
                          \\
                          \left|\left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right|
                          \end{array}
                          
                          Derivation
                          1. Initial program 99.8%

                            \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                          2. Add Preprocessing
                          3. Applied rewrites99.8%

                            \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(0.047619047619047616 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot x\right) \cdot x\right) \cdot \left|x\right|\right), x \cdot x, \mathsf{fma}\left(0.2 \cdot \left|x\right|, \left(\left(x \cdot x\right) \cdot x\right) \cdot x, \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)\right)}\right| \]
                          4. Taylor expanded in x around 0

                            \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right) + 2 \cdot \left|x\right|\right)}\right| \]
                          5. Step-by-step derivation
                            1. +-commutativeN/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right)\right)}\right| \]
                            2. associate-*r*N/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(2 \cdot \left|x\right| + \color{blue}{\left(\frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|}\right)\right| \]
                            3. distribute-rgt-inN/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left|x\right| \cdot \left(2 + \frac{2}{3} \cdot {x}^{2}\right)\right)}\right| \]
                            4. *-commutativeN/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|\right)}\right| \]
                            5. lower-*.f64N/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|\right)}\right| \]
                            6. +-commutativeN/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\color{blue}{\left(\frac{2}{3} \cdot {x}^{2} + 2\right)} \cdot \left|x\right|\right)\right| \]
                            7. *-commutativeN/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\left(\color{blue}{{x}^{2} \cdot \frac{2}{3}} + 2\right) \cdot \left|x\right|\right)\right| \]
                            8. lower-fma.f64N/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\color{blue}{\mathsf{fma}\left({x}^{2}, \frac{2}{3}, 2\right)} \cdot \left|x\right|\right)\right| \]
                            9. unpow2N/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|\right)\right| \]
                            10. lower-*.f64N/A

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \left(\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|\right)\right| \]
                            11. lower-fabs.f6491.0

                              \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \color{blue}{\left|x\right|}\right)\right| \]
                          6. Applied rewrites91.0%

                            \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\left(\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \left|x\right|\right)}\right| \]
                          7. Step-by-step derivation
                            1. Applied rewrites91.0%

                              \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|\color{blue}{x}\right|\right)\right| \]
                            2. Final simplification91.0%

                              \[\leadsto \left|\left(\mathsf{fma}\left(0.6666666666666666 \cdot x, x, 2\right) \cdot \left|x\right|\right) \cdot \frac{1}{\sqrt{\pi}}\right| \]
                            3. Add Preprocessing

                            Alternative 15: 89.1% accurate, 4.4× speedup?

                            \[\begin{array}{l} \\ \left|\frac{\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \left|x\right|}{\sqrt{\pi}}\right| \end{array} \]
                            (FPCore (x)
                             :precision binary64
                             (fabs (/ (* (fma (* x x) 0.6666666666666666 2.0) (fabs x)) (sqrt PI))))
                            double code(double x) {
                            	return fabs(((fma((x * x), 0.6666666666666666, 2.0) * fabs(x)) / sqrt(((double) M_PI))));
                            }
                            
                            function code(x)
                            	return abs(Float64(Float64(fma(Float64(x * x), 0.6666666666666666, 2.0) * abs(x)) / sqrt(pi)))
                            end
                            
                            code[x_] := N[Abs[N[(N[(N[(N[(x * x), $MachinePrecision] * 0.6666666666666666 + 2.0), $MachinePrecision] * N[Abs[x], $MachinePrecision]), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                            
                            \begin{array}{l}
                            
                            \\
                            \left|\frac{\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \left|x\right|}{\sqrt{\pi}}\right|
                            \end{array}
                            
                            Derivation
                            1. Initial program 99.8%

                              \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                            2. Add Preprocessing
                            3. Applied rewrites99.4%

                              \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                            4. Taylor expanded in x around 0

                              \[\leadsto \left|\frac{\color{blue}{\frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right) + 2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            5. Step-by-step derivation
                              1. +-commutativeN/A

                                \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right| + \frac{2}{3} \cdot \left({x}^{2} \cdot \left|x\right|\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              2. associate-*r*N/A

                                \[\leadsto \left|\frac{2 \cdot \left|x\right| + \color{blue}{\left(\frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              3. distribute-rgt-inN/A

                                \[\leadsto \left|\frac{\color{blue}{\left|x\right| \cdot \left(2 + \frac{2}{3} \cdot {x}^{2}\right)}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              4. *-commutativeN/A

                                \[\leadsto \left|\frac{\color{blue}{\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              5. lower-*.f64N/A

                                \[\leadsto \left|\frac{\color{blue}{\left(2 + \frac{2}{3} \cdot {x}^{2}\right) \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              6. +-commutativeN/A

                                \[\leadsto \left|\frac{\color{blue}{\left(\frac{2}{3} \cdot {x}^{2} + 2\right)} \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              7. *-commutativeN/A

                                \[\leadsto \left|\frac{\left(\color{blue}{{x}^{2} \cdot \frac{2}{3}} + 2\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              8. lower-fma.f64N/A

                                \[\leadsto \left|\frac{\color{blue}{\mathsf{fma}\left({x}^{2}, \frac{2}{3}, 2\right)} \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              9. unpow2N/A

                                \[\leadsto \left|\frac{\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              10. lower-*.f64N/A

                                \[\leadsto \left|\frac{\mathsf{fma}\left(\color{blue}{x \cdot x}, \frac{2}{3}, 2\right) \cdot \left|x\right|}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              11. lower-fabs.f6490.6

                                \[\leadsto \left|\frac{\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \color{blue}{\left|x\right|}}{\sqrt{\pi}}\right| \]
                            6. Applied rewrites90.6%

                              \[\leadsto \left|\frac{\color{blue}{\mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right) \cdot \left|x\right|}}{\sqrt{\pi}}\right| \]
                            7. Add Preprocessing

                            Alternative 16: 68.3% accurate, 5.1× speedup?

                            \[\begin{array}{l} \\ \left|\left(\left|x\right| \cdot 2\right) \cdot \frac{1}{\sqrt{\pi}}\right| \end{array} \]
                            (FPCore (x) :precision binary64 (fabs (* (* (fabs x) 2.0) (/ 1.0 (sqrt PI)))))
                            double code(double x) {
                            	return fabs(((fabs(x) * 2.0) * (1.0 / sqrt(((double) M_PI)))));
                            }
                            
                            public static double code(double x) {
                            	return Math.abs(((Math.abs(x) * 2.0) * (1.0 / Math.sqrt(Math.PI))));
                            }
                            
                            def code(x):
                            	return math.fabs(((math.fabs(x) * 2.0) * (1.0 / math.sqrt(math.pi))))
                            
                            function code(x)
                            	return abs(Float64(Float64(abs(x) * 2.0) * Float64(1.0 / sqrt(pi))))
                            end
                            
                            function tmp = code(x)
                            	tmp = abs(((abs(x) * 2.0) * (1.0 / sqrt(pi))));
                            end
                            
                            code[x_] := N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * 2.0), $MachinePrecision] * N[(1.0 / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                            
                            \begin{array}{l}
                            
                            \\
                            \left|\left(\left|x\right| \cdot 2\right) \cdot \frac{1}{\sqrt{\pi}}\right|
                            \end{array}
                            
                            Derivation
                            1. Initial program 99.8%

                              \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                            2. Add Preprocessing
                            3. Applied rewrites99.8%

                              \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\mathsf{fma}\left(0.047619047619047616 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot x\right) \cdot x\right) \cdot \left|x\right|\right), x \cdot x, \mathsf{fma}\left(0.2 \cdot \left|x\right|, \left(\left(x \cdot x\right) \cdot x\right) \cdot x, \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)\right)}\right| \]
                            4. Taylor expanded in x around 0

                              \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(2 \cdot \left|x\right|\right)}\right| \]
                            5. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto \left|\frac{1}{\sqrt{\mathsf{PI}\left(\right)}} \cdot \color{blue}{\left(2 \cdot \left|x\right|\right)}\right| \]
                              2. lower-fabs.f6467.9

                                \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(2 \cdot \color{blue}{\left|x\right|}\right)\right| \]
                            6. Applied rewrites67.9%

                              \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\left(2 \cdot \left|x\right|\right)}\right| \]
                            7. Final simplification67.9%

                              \[\leadsto \left|\left(\left|x\right| \cdot 2\right) \cdot \frac{1}{\sqrt{\pi}}\right| \]
                            8. Add Preprocessing

                            Alternative 17: 67.8% accurate, 5.9× speedup?

                            \[\begin{array}{l} \\ \left|\frac{\left|x\right| \cdot 2}{\sqrt{\pi}}\right| \end{array} \]
                            (FPCore (x) :precision binary64 (fabs (/ (* (fabs x) 2.0) (sqrt PI))))
                            double code(double x) {
                            	return fabs(((fabs(x) * 2.0) / sqrt(((double) M_PI))));
                            }
                            
                            public static double code(double x) {
                            	return Math.abs(((Math.abs(x) * 2.0) / Math.sqrt(Math.PI)));
                            }
                            
                            def code(x):
                            	return math.fabs(((math.fabs(x) * 2.0) / math.sqrt(math.pi)))
                            
                            function code(x)
                            	return abs(Float64(Float64(abs(x) * 2.0) / sqrt(pi)))
                            end
                            
                            function tmp = code(x)
                            	tmp = abs(((abs(x) * 2.0) / sqrt(pi)));
                            end
                            
                            code[x_] := N[Abs[N[(N[(N[Abs[x], $MachinePrecision] * 2.0), $MachinePrecision] / N[Sqrt[Pi], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
                            
                            \begin{array}{l}
                            
                            \\
                            \left|\frac{\left|x\right| \cdot 2}{\sqrt{\pi}}\right|
                            \end{array}
                            
                            Derivation
                            1. Initial program 99.8%

                              \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right| \]
                            2. Add Preprocessing
                            3. Applied rewrites99.4%

                              \[\leadsto \left|\color{blue}{\frac{\mathsf{fma}\left(\left|x\right|, \mathsf{fma}\left(0.2 \cdot \left(x \cdot x\right), x \cdot x, \left(\left(\left(x \cdot x\right) \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)\right) \cdot 0.047619047619047616\right), \left|x\right| \cdot \mathsf{fma}\left(x \cdot x, 0.6666666666666666, 2\right)\right)}{\sqrt{\pi}}}\right| \]
                            4. Taylor expanded in x around 0

                              \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                            5. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\mathsf{PI}\left(\right)}}\right| \]
                              2. lower-fabs.f6467.5

                                \[\leadsto \left|\frac{2 \cdot \color{blue}{\left|x\right|}}{\sqrt{\pi}}\right| \]
                            6. Applied rewrites67.5%

                              \[\leadsto \left|\frac{\color{blue}{2 \cdot \left|x\right|}}{\sqrt{\pi}}\right| \]
                            7. Final simplification67.5%

                              \[\leadsto \left|\frac{\left|x\right| \cdot 2}{\sqrt{\pi}}\right| \]
                            8. Add Preprocessing

                            Reproduce

                            ?
                            herbie shell --seed 2024235 
                            (FPCore (x)
                              :name "Jmat.Real.erfi, branch x less than or equal to 0.5"
                              :precision binary64
                              :pre (<= x 0.5)
                              (fabs (* (/ 1.0 (sqrt PI)) (+ (+ (+ (* 2.0 (fabs x)) (* (/ 2.0 3.0) (* (* (fabs x) (fabs x)) (fabs x)))) (* (/ 1.0 5.0) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1.0 21.0) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)))))))