Falkner and Boettcher, Appendix A

Percentage Accurate: 90.4% → 99.9%
Time: 5.3s
Alternatives: 19
Speedup: 1.1×

Specification

?
\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
(FPCore (a k m)
 :precision binary64
 (/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))
double code(double a, double k, double m) {
	return (a * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(a, k, m)
use fmin_fmax_functions
    real(8), intent (in) :: a
    real(8), intent (in) :: k
    real(8), intent (in) :: m
    code = (a * (k ** m)) / ((1.0d0 + (10.0d0 * k)) + (k * k))
end function
public static double code(double a, double k, double m) {
	return (a * Math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
}
def code(a, k, m):
	return (a * math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))
function code(a, k, m)
	return Float64(Float64(a * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
end
function tmp = code(a, k, m)
	tmp = (a * (k ^ m)) / ((1.0 + (10.0 * k)) + (k * k));
end
code[a_, k_, m_] := N[(N[(a * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}

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 19 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: 90.4% accurate, 1.0× speedup?

\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
(FPCore (a k m)
 :precision binary64
 (/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))
double code(double a, double k, double m) {
	return (a * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(a, k, m)
use fmin_fmax_functions
    real(8), intent (in) :: a
    real(8), intent (in) :: k
    real(8), intent (in) :: m
    code = (a * (k ** m)) / ((1.0d0 + (10.0d0 * k)) + (k * k))
end function
public static double code(double a, double k, double m) {
	return (a * Math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
}
def code(a, k, m):
	return (a * math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))
function code(a, k, m)
	return Float64(Float64(a * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
end
function tmp = code(a, k, m)
	tmp = (a * (k ^ m)) / ((1.0 + (10.0 * k)) + (k * k));
end
code[a_, k_, m_] := N[(N[(a * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}

Alternative 1: 99.9% accurate, 0.2× speedup?

\[\begin{array}{l} t_0 := 1 + 10 \cdot k\\ t_1 := \left|a\right| \cdot {k}^{m}\\ t_2 := \frac{t\_1}{t\_0 + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_2 \leq 0:\\ \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\ \mathbf{elif}\;t\_2 \leq \infty:\\ \;\;\;\;\frac{t\_1}{t\_0 + \frac{{k}^{1}}{{k}^{-1}}}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
(FPCore (a k m)
 :precision binary64
 (let* ((t_0 (+ 1.0 (* 10.0 k)))
        (t_1 (* (fabs a) (pow k m)))
        (t_2 (/ t_1 (+ t_0 (* k k)))))
   (*
    (copysign 1.0 a)
    (if (<= t_2 0.0)
      (/ (* (pow k m) (/ (fabs a) (+ 10.0 k))) k)
      (if (<= t_2 INFINITY)
        (/ t_1 (+ t_0 (/ (pow k 1.0) (pow k -1.0))))
        (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
double code(double a, double k, double m) {
	double t_0 = 1.0 + (10.0 * k);
	double t_1 = fabs(a) * pow(k, m);
	double t_2 = t_1 / (t_0 + (k * k));
	double tmp;
	if (t_2 <= 0.0) {
		tmp = (pow(k, m) * (fabs(a) / (10.0 + k))) / k;
	} else if (t_2 <= ((double) INFINITY)) {
		tmp = t_1 / (t_0 + (pow(k, 1.0) / pow(k, -1.0)));
	} else {
		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
	}
	return copysign(1.0, a) * tmp;
}
public static double code(double a, double k, double m) {
	double t_0 = 1.0 + (10.0 * k);
	double t_1 = Math.abs(a) * Math.pow(k, m);
	double t_2 = t_1 / (t_0 + (k * k));
	double tmp;
	if (t_2 <= 0.0) {
		tmp = (Math.pow(k, m) * (Math.abs(a) / (10.0 + k))) / k;
	} else if (t_2 <= Double.POSITIVE_INFINITY) {
		tmp = t_1 / (t_0 + (Math.pow(k, 1.0) / Math.pow(k, -1.0)));
	} else {
		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * Math.abs(a);
	}
	return Math.copySign(1.0, a) * tmp;
}
def code(a, k, m):
	t_0 = 1.0 + (10.0 * k)
	t_1 = math.fabs(a) * math.pow(k, m)
	t_2 = t_1 / (t_0 + (k * k))
	tmp = 0
	if t_2 <= 0.0:
		tmp = (math.pow(k, m) * (math.fabs(a) / (10.0 + k))) / k
	elif t_2 <= math.inf:
		tmp = t_1 / (t_0 + (math.pow(k, 1.0) / math.pow(k, -1.0)))
	else:
		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * math.fabs(a)
	return math.copysign(1.0, a) * tmp
function code(a, k, m)
	t_0 = Float64(1.0 + Float64(10.0 * k))
	t_1 = Float64(abs(a) * (k ^ m))
	t_2 = Float64(t_1 / Float64(t_0 + Float64(k * k)))
	tmp = 0.0
	if (t_2 <= 0.0)
		tmp = Float64(Float64((k ^ m) * Float64(abs(a) / Float64(10.0 + k))) / k);
	elseif (t_2 <= Inf)
		tmp = Float64(t_1 / Float64(t_0 + Float64((k ^ 1.0) / (k ^ -1.0))));
	else
		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
	end
	return Float64(copysign(1.0, a) * tmp)
end
function tmp_2 = code(a, k, m)
	t_0 = 1.0 + (10.0 * k);
	t_1 = abs(a) * (k ^ m);
	t_2 = t_1 / (t_0 + (k * k));
	tmp = 0.0;
	if (t_2 <= 0.0)
		tmp = ((k ^ m) * (abs(a) / (10.0 + k))) / k;
	elseif (t_2 <= Inf)
		tmp = t_1 / (t_0 + ((k ^ 1.0) / (k ^ -1.0)));
	else
		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * abs(a);
	end
	tmp_2 = (sign(a) * abs(1.0)) * tmp;
end
code[a_, k_, m_] := Block[{t$95$0 = N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$1 / N[(t$95$0 + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$2, 0.0], N[(N[(N[Power[k, m], $MachinePrecision] * N[(N[Abs[a], $MachinePrecision] / N[(10.0 + k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / k), $MachinePrecision], If[LessEqual[t$95$2, Infinity], N[(t$95$1 / N[(t$95$0 + N[(N[Power[k, 1.0], $MachinePrecision] / N[Power[k, -1.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]]]
\begin{array}{l}
t_0 := 1 + 10 \cdot k\\
t_1 := \left|a\right| \cdot {k}^{m}\\
t_2 := \frac{t\_1}{t\_0 + k \cdot k}\\
\mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
\mathbf{if}\;t\_2 \leq 0:\\
\;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\

\mathbf{elif}\;t\_2 \leq \infty:\\
\;\;\;\;\frac{t\_1}{t\_0 + \frac{{k}^{1}}{{k}^{-1}}}\\

\mathbf{else}:\\
\;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\


\end{array}
\end{array}
Derivation
  1. Split input into 3 regimes
  2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

    1. Initial program 90.4%

      \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
    2. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
      2. sqr-neg-revN/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
      3. sqr-neg-revN/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
      4. pow2N/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
      5. remove-double-negN/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
      6. metadata-evalN/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
      7. pow-subN/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
      8. lower-unsound-/.f64N/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
      9. lower-unsound-pow.f64N/A

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
      10. lower-unsound-pow.f6490.3

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
    3. Applied rewrites90.3%

      \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
    4. Applied rewrites89.3%

      \[\leadsto \color{blue}{\frac{{k}^{m} \cdot \frac{a}{\left(\frac{1}{k} - -10\right) + k}}{k}} \]
    5. Taylor expanded in k around inf

      \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]
    6. Step-by-step derivation
      1. Applied rewrites73.3%

        \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]

      if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

      1. Initial program 90.4%

        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
      2. Step-by-step derivation
        1. lift-*.f64N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
        2. sqr-neg-revN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
        3. sqr-neg-revN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
        4. pow2N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
        5. remove-double-negN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
        6. metadata-evalN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
        7. pow-subN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
        8. lower-unsound-/.f64N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
        9. lower-unsound-pow.f64N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
        10. lower-unsound-pow.f6490.3

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
      3. Applied rewrites90.3%

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]

      if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

      1. Initial program 90.4%

        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
      2. Step-by-step derivation
        1. lift-/.f64N/A

          \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
        2. lift-*.f64N/A

          \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
        3. associate-/l*N/A

          \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
        4. *-commutativeN/A

          \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
        5. lower-*.f64N/A

          \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
      3. Applied rewrites90.4%

        \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
      4. Taylor expanded in m around 0

        \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
      5. Step-by-step derivation
        1. lower-/.f64N/A

          \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
        2. lower-+.f64N/A

          \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
        3. lower-*.f64N/A

          \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
        4. lower-+.f6445.3

          \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
      6. Applied rewrites45.3%

        \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
      7. Taylor expanded in k around 0

        \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
      8. Step-by-step derivation
        1. lower-+.f64N/A

          \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
        2. lower-*.f64N/A

          \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
        3. lower--.f64N/A

          \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
        4. lower-*.f6429.7

          \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
      9. Applied rewrites29.7%

        \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
    7. Recombined 3 regimes into one program.
    8. Add Preprocessing

    Alternative 2: 99.9% accurate, 0.3× speedup?

    \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 0:\\ \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;t\_0\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
    (FPCore (a k m)
     :precision binary64
     (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
       (*
        (copysign 1.0 a)
        (if (<= t_0 0.0)
          (/ (* (pow k m) (/ (fabs a) (+ 10.0 k))) k)
          (if (<= t_0 INFINITY)
            t_0
            (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
    double code(double a, double k, double m) {
    	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
    	double tmp;
    	if (t_0 <= 0.0) {
    		tmp = (pow(k, m) * (fabs(a) / (10.0 + k))) / k;
    	} else if (t_0 <= ((double) INFINITY)) {
    		tmp = t_0;
    	} else {
    		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
    	}
    	return copysign(1.0, a) * tmp;
    }
    
    public static double code(double a, double k, double m) {
    	double t_0 = (Math.abs(a) * Math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
    	double tmp;
    	if (t_0 <= 0.0) {
    		tmp = (Math.pow(k, m) * (Math.abs(a) / (10.0 + k))) / k;
    	} else if (t_0 <= Double.POSITIVE_INFINITY) {
    		tmp = t_0;
    	} else {
    		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * Math.abs(a);
    	}
    	return Math.copySign(1.0, a) * tmp;
    }
    
    def code(a, k, m):
    	t_0 = (math.fabs(a) * math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))
    	tmp = 0
    	if t_0 <= 0.0:
    		tmp = (math.pow(k, m) * (math.fabs(a) / (10.0 + k))) / k
    	elif t_0 <= math.inf:
    		tmp = t_0
    	else:
    		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * math.fabs(a)
    	return math.copysign(1.0, a) * tmp
    
    function code(a, k, m)
    	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
    	tmp = 0.0
    	if (t_0 <= 0.0)
    		tmp = Float64(Float64((k ^ m) * Float64(abs(a) / Float64(10.0 + k))) / k);
    	elseif (t_0 <= Inf)
    		tmp = t_0;
    	else
    		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
    	end
    	return Float64(copysign(1.0, a) * tmp)
    end
    
    function tmp_2 = code(a, k, m)
    	t_0 = (abs(a) * (k ^ m)) / ((1.0 + (10.0 * k)) + (k * k));
    	tmp = 0.0;
    	if (t_0 <= 0.0)
    		tmp = ((k ^ m) * (abs(a) / (10.0 + k))) / k;
    	elseif (t_0 <= Inf)
    		tmp = t_0;
    	else
    		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * abs(a);
    	end
    	tmp_2 = (sign(a) * abs(1.0)) * tmp;
    end
    
    code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 0.0], N[(N[(N[Power[k, m], $MachinePrecision] * N[(N[Abs[a], $MachinePrecision] / N[(10.0 + k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / k), $MachinePrecision], If[LessEqual[t$95$0, Infinity], t$95$0, N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]
    
    \begin{array}{l}
    t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
    \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
    \mathbf{if}\;t\_0 \leq 0:\\
    \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\
    
    \mathbf{elif}\;t\_0 \leq \infty:\\
    \;\;\;\;t\_0\\
    
    \mathbf{else}:\\
    \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
    
    
    \end{array}
    \end{array}
    
    Derivation
    1. Split input into 3 regimes
    2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

      1. Initial program 90.4%

        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
      2. Step-by-step derivation
        1. lift-*.f64N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
        2. sqr-neg-revN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
        3. sqr-neg-revN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
        4. pow2N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
        5. remove-double-negN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
        6. metadata-evalN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
        7. pow-subN/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
        8. lower-unsound-/.f64N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
        9. lower-unsound-pow.f64N/A

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
        10. lower-unsound-pow.f6490.3

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
      3. Applied rewrites90.3%

        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
      4. Applied rewrites89.3%

        \[\leadsto \color{blue}{\frac{{k}^{m} \cdot \frac{a}{\left(\frac{1}{k} - -10\right) + k}}{k}} \]
      5. Taylor expanded in k around inf

        \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]
      6. Step-by-step derivation
        1. Applied rewrites73.3%

          \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]

        if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

        1. Initial program 90.4%

          \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]

        if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

        1. Initial program 90.4%

          \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
        2. Step-by-step derivation
          1. lift-/.f64N/A

            \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
          2. lift-*.f64N/A

            \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
          3. associate-/l*N/A

            \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
          4. *-commutativeN/A

            \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
          5. lower-*.f64N/A

            \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
        3. Applied rewrites90.4%

          \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
        4. Taylor expanded in m around 0

          \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
        5. Step-by-step derivation
          1. lower-/.f64N/A

            \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
          2. lower-+.f64N/A

            \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
          3. lower-*.f64N/A

            \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
          4. lower-+.f6445.3

            \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
        6. Applied rewrites45.3%

          \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
        7. Taylor expanded in k around 0

          \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
        8. Step-by-step derivation
          1. lower-+.f64N/A

            \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
          2. lower-*.f64N/A

            \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
          3. lower--.f64N/A

            \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
          4. lower-*.f6429.7

            \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
        9. Applied rewrites29.7%

          \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
      7. Recombined 3 regimes into one program.
      8. Add Preprocessing

      Alternative 3: 99.9% accurate, 0.3× speedup?

      \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 0:\\ \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot \left|a\right|\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
      (FPCore (a k m)
       :precision binary64
       (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
         (*
          (copysign 1.0 a)
          (if (<= t_0 0.0)
            (/ (* (pow k m) (/ (fabs a) (+ 10.0 k))) k)
            (if (<= t_0 INFINITY)
              (* (/ (pow k m) (fma (- k -10.0) k 1.0)) (fabs a))
              (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
      double code(double a, double k, double m) {
      	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
      	double tmp;
      	if (t_0 <= 0.0) {
      		tmp = (pow(k, m) * (fabs(a) / (10.0 + k))) / k;
      	} else if (t_0 <= ((double) INFINITY)) {
      		tmp = (pow(k, m) / fma((k - -10.0), k, 1.0)) * fabs(a);
      	} else {
      		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
      	}
      	return copysign(1.0, a) * tmp;
      }
      
      function code(a, k, m)
      	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
      	tmp = 0.0
      	if (t_0 <= 0.0)
      		tmp = Float64(Float64((k ^ m) * Float64(abs(a) / Float64(10.0 + k))) / k);
      	elseif (t_0 <= Inf)
      		tmp = Float64(Float64((k ^ m) / fma(Float64(k - -10.0), k, 1.0)) * abs(a));
      	else
      		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
      	end
      	return Float64(copysign(1.0, a) * tmp)
      end
      
      code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 0.0], N[(N[(N[Power[k, m], $MachinePrecision] * N[(N[Abs[a], $MachinePrecision] / N[(10.0 + k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / k), $MachinePrecision], If[LessEqual[t$95$0, Infinity], N[(N[(N[Power[k, m], $MachinePrecision] / N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]
      
      \begin{array}{l}
      t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
      \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
      \mathbf{if}\;t\_0 \leq 0:\\
      \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\
      
      \mathbf{elif}\;t\_0 \leq \infty:\\
      \;\;\;\;\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot \left|a\right|\\
      
      \mathbf{else}:\\
      \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
      
      
      \end{array}
      \end{array}
      
      Derivation
      1. Split input into 3 regimes
      2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

        1. Initial program 90.4%

          \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
        2. Step-by-step derivation
          1. lift-*.f64N/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
          2. sqr-neg-revN/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
          3. sqr-neg-revN/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
          4. pow2N/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
          5. remove-double-negN/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
          6. metadata-evalN/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
          7. pow-subN/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
          8. lower-unsound-/.f64N/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
          9. lower-unsound-pow.f64N/A

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
          10. lower-unsound-pow.f6490.3

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
        3. Applied rewrites90.3%

          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
        4. Applied rewrites89.3%

          \[\leadsto \color{blue}{\frac{{k}^{m} \cdot \frac{a}{\left(\frac{1}{k} - -10\right) + k}}{k}} \]
        5. Taylor expanded in k around inf

          \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]
        6. Step-by-step derivation
          1. Applied rewrites73.3%

            \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]

          if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

          1. Initial program 90.4%

            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
          2. Step-by-step derivation
            1. lift-/.f64N/A

              \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
            2. lift-*.f64N/A

              \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
            3. associate-/l*N/A

              \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
            4. *-commutativeN/A

              \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
            5. lower-*.f64N/A

              \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
          3. Applied rewrites90.4%

            \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]

          if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

          1. Initial program 90.4%

            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
          2. Step-by-step derivation
            1. lift-/.f64N/A

              \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
            2. lift-*.f64N/A

              \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
            3. associate-/l*N/A

              \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
            4. *-commutativeN/A

              \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
            5. lower-*.f64N/A

              \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
          3. Applied rewrites90.4%

            \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
          4. Taylor expanded in m around 0

            \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
          5. Step-by-step derivation
            1. lower-/.f64N/A

              \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
            2. lower-+.f64N/A

              \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
            3. lower-*.f64N/A

              \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
            4. lower-+.f6445.3

              \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
          6. Applied rewrites45.3%

            \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
          7. Taylor expanded in k around 0

            \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
          8. Step-by-step derivation
            1. lower-+.f64N/A

              \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
            2. lower-*.f64N/A

              \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
            3. lower--.f64N/A

              \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
            4. lower-*.f6429.7

              \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
          9. Applied rewrites29.7%

            \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
        7. Recombined 3 regimes into one program.
        8. Add Preprocessing

        Alternative 4: 99.4% accurate, 0.3× speedup?

        \[\begin{array}{l} t_0 := \left|a\right| \cdot {k}^{m}\\ t_1 := \left(1 + 10 \cdot k\right) + k \cdot k\\ t_2 := \frac{t\_0}{t\_1}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_2 \leq 0:\\ \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\ \mathbf{elif}\;t\_2 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{\left|a\right| + \left|a\right| \cdot \left(m \cdot \log k\right)}{t\_1}\\ \mathbf{else}:\\ \;\;\;\;\frac{t\_0}{1}\\ \end{array} \end{array} \]
        (FPCore (a k m)
         :precision binary64
         (let* ((t_0 (* (fabs a) (pow k m)))
                (t_1 (+ (+ 1.0 (* 10.0 k)) (* k k)))
                (t_2 (/ t_0 t_1)))
           (*
            (copysign 1.0 a)
            (if (<= t_2 0.0)
              (/ (* (pow k m) (/ (fabs a) (+ 10.0 k))) k)
              (if (<= t_2 2e+301)
                (/ (+ (fabs a) (* (fabs a) (* m (log k)))) t_1)
                (/ t_0 1.0))))))
        double code(double a, double k, double m) {
        	double t_0 = fabs(a) * pow(k, m);
        	double t_1 = (1.0 + (10.0 * k)) + (k * k);
        	double t_2 = t_0 / t_1;
        	double tmp;
        	if (t_2 <= 0.0) {
        		tmp = (pow(k, m) * (fabs(a) / (10.0 + k))) / k;
        	} else if (t_2 <= 2e+301) {
        		tmp = (fabs(a) + (fabs(a) * (m * log(k)))) / t_1;
        	} else {
        		tmp = t_0 / 1.0;
        	}
        	return copysign(1.0, a) * tmp;
        }
        
        public static double code(double a, double k, double m) {
        	double t_0 = Math.abs(a) * Math.pow(k, m);
        	double t_1 = (1.0 + (10.0 * k)) + (k * k);
        	double t_2 = t_0 / t_1;
        	double tmp;
        	if (t_2 <= 0.0) {
        		tmp = (Math.pow(k, m) * (Math.abs(a) / (10.0 + k))) / k;
        	} else if (t_2 <= 2e+301) {
        		tmp = (Math.abs(a) + (Math.abs(a) * (m * Math.log(k)))) / t_1;
        	} else {
        		tmp = t_0 / 1.0;
        	}
        	return Math.copySign(1.0, a) * tmp;
        }
        
        def code(a, k, m):
        	t_0 = math.fabs(a) * math.pow(k, m)
        	t_1 = (1.0 + (10.0 * k)) + (k * k)
        	t_2 = t_0 / t_1
        	tmp = 0
        	if t_2 <= 0.0:
        		tmp = (math.pow(k, m) * (math.fabs(a) / (10.0 + k))) / k
        	elif t_2 <= 2e+301:
        		tmp = (math.fabs(a) + (math.fabs(a) * (m * math.log(k)))) / t_1
        	else:
        		tmp = t_0 / 1.0
        	return math.copysign(1.0, a) * tmp
        
        function code(a, k, m)
        	t_0 = Float64(abs(a) * (k ^ m))
        	t_1 = Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k))
        	t_2 = Float64(t_0 / t_1)
        	tmp = 0.0
        	if (t_2 <= 0.0)
        		tmp = Float64(Float64((k ^ m) * Float64(abs(a) / Float64(10.0 + k))) / k);
        	elseif (t_2 <= 2e+301)
        		tmp = Float64(Float64(abs(a) + Float64(abs(a) * Float64(m * log(k)))) / t_1);
        	else
        		tmp = Float64(t_0 / 1.0);
        	end
        	return Float64(copysign(1.0, a) * tmp)
        end
        
        function tmp_2 = code(a, k, m)
        	t_0 = abs(a) * (k ^ m);
        	t_1 = (1.0 + (10.0 * k)) + (k * k);
        	t_2 = t_0 / t_1;
        	tmp = 0.0;
        	if (t_2 <= 0.0)
        		tmp = ((k ^ m) * (abs(a) / (10.0 + k))) / k;
        	elseif (t_2 <= 2e+301)
        		tmp = (abs(a) + (abs(a) * (m * log(k)))) / t_1;
        	else
        		tmp = t_0 / 1.0;
        	end
        	tmp_2 = (sign(a) * abs(1.0)) * tmp;
        end
        
        code[a_, k_, m_] := Block[{t$95$0 = N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(t$95$0 / t$95$1), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$2, 0.0], N[(N[(N[Power[k, m], $MachinePrecision] * N[(N[Abs[a], $MachinePrecision] / N[(10.0 + k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / k), $MachinePrecision], If[LessEqual[t$95$2, 2e+301], N[(N[(N[Abs[a], $MachinePrecision] + N[(N[Abs[a], $MachinePrecision] * N[(m * N[Log[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / t$95$1), $MachinePrecision], N[(t$95$0 / 1.0), $MachinePrecision]]]), $MachinePrecision]]]]
        
        \begin{array}{l}
        t_0 := \left|a\right| \cdot {k}^{m}\\
        t_1 := \left(1 + 10 \cdot k\right) + k \cdot k\\
        t_2 := \frac{t\_0}{t\_1}\\
        \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
        \mathbf{if}\;t\_2 \leq 0:\\
        \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\
        
        \mathbf{elif}\;t\_2 \leq 2 \cdot 10^{+301}:\\
        \;\;\;\;\frac{\left|a\right| + \left|a\right| \cdot \left(m \cdot \log k\right)}{t\_1}\\
        
        \mathbf{else}:\\
        \;\;\;\;\frac{t\_0}{1}\\
        
        
        \end{array}
        \end{array}
        
        Derivation
        1. Split input into 3 regimes
        2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

          1. Initial program 90.4%

            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
          2. Step-by-step derivation
            1. lift-*.f64N/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
            2. sqr-neg-revN/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
            3. sqr-neg-revN/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
            4. pow2N/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
            5. remove-double-negN/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
            6. metadata-evalN/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
            7. pow-subN/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
            8. lower-unsound-/.f64N/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
            9. lower-unsound-pow.f64N/A

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
            10. lower-unsound-pow.f6490.3

              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
          3. Applied rewrites90.3%

            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
          4. Applied rewrites89.3%

            \[\leadsto \color{blue}{\frac{{k}^{m} \cdot \frac{a}{\left(\frac{1}{k} - -10\right) + k}}{k}} \]
          5. Taylor expanded in k around inf

            \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]
          6. Step-by-step derivation
            1. Applied rewrites73.3%

              \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]

            if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

            1. Initial program 90.4%

              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
            2. Taylor expanded in m around 0

              \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
            3. Step-by-step derivation
              1. lower-+.f64N/A

                \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
              2. lower-*.f64N/A

                \[\leadsto \frac{a + a \cdot \color{blue}{\left(m \cdot \log k\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
              3. lower-*.f64N/A

                \[\leadsto \frac{a + a \cdot \left(m \cdot \color{blue}{\log k}\right)}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
              4. lower-log.f6441.1

                \[\leadsto \frac{a + a \cdot \left(m \cdot \log k\right)}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
            4. Applied rewrites41.1%

              \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]

            if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

            1. Initial program 90.4%

              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
            2. Taylor expanded in k around 0

              \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
            3. Step-by-step derivation
              1. Applied rewrites82.8%

                \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
            4. Recombined 3 regimes into one program.
            5. Add Preprocessing

            Alternative 5: 99.4% accurate, 0.3× speedup?

            \[\begin{array}{l} t_0 := \left|a\right| \cdot {k}^{m}\\ t_1 := \frac{t\_0}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_1 \leq 0:\\ \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\ \mathbf{elif}\;t\_1 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{1 + m \cdot \log k}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot \left|a\right|\\ \mathbf{else}:\\ \;\;\;\;\frac{t\_0}{1}\\ \end{array} \end{array} \]
            (FPCore (a k m)
             :precision binary64
             (let* ((t_0 (* (fabs a) (pow k m)))
                    (t_1 (/ t_0 (+ (+ 1.0 (* 10.0 k)) (* k k)))))
               (*
                (copysign 1.0 a)
                (if (<= t_1 0.0)
                  (/ (* (pow k m) (/ (fabs a) (+ 10.0 k))) k)
                  (if (<= t_1 2e+301)
                    (* (/ (+ 1.0 (* m (log k))) (fma (- k -10.0) k 1.0)) (fabs a))
                    (/ t_0 1.0))))))
            double code(double a, double k, double m) {
            	double t_0 = fabs(a) * pow(k, m);
            	double t_1 = t_0 / ((1.0 + (10.0 * k)) + (k * k));
            	double tmp;
            	if (t_1 <= 0.0) {
            		tmp = (pow(k, m) * (fabs(a) / (10.0 + k))) / k;
            	} else if (t_1 <= 2e+301) {
            		tmp = ((1.0 + (m * log(k))) / fma((k - -10.0), k, 1.0)) * fabs(a);
            	} else {
            		tmp = t_0 / 1.0;
            	}
            	return copysign(1.0, a) * tmp;
            }
            
            function code(a, k, m)
            	t_0 = Float64(abs(a) * (k ^ m))
            	t_1 = Float64(t_0 / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
            	tmp = 0.0
            	if (t_1 <= 0.0)
            		tmp = Float64(Float64((k ^ m) * Float64(abs(a) / Float64(10.0 + k))) / k);
            	elseif (t_1 <= 2e+301)
            		tmp = Float64(Float64(Float64(1.0 + Float64(m * log(k))) / fma(Float64(k - -10.0), k, 1.0)) * abs(a));
            	else
            		tmp = Float64(t_0 / 1.0);
            	end
            	return Float64(copysign(1.0, a) * tmp)
            end
            
            code[a_, k_, m_] := Block[{t$95$0 = N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(t$95$0 / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$1, 0.0], N[(N[(N[Power[k, m], $MachinePrecision] * N[(N[Abs[a], $MachinePrecision] / N[(10.0 + k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / k), $MachinePrecision], If[LessEqual[t$95$1, 2e+301], N[(N[(N[(1.0 + N[(m * N[Log[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision], N[(t$95$0 / 1.0), $MachinePrecision]]]), $MachinePrecision]]]
            
            \begin{array}{l}
            t_0 := \left|a\right| \cdot {k}^{m}\\
            t_1 := \frac{t\_0}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
            \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
            \mathbf{if}\;t\_1 \leq 0:\\
            \;\;\;\;\frac{{k}^{m} \cdot \frac{\left|a\right|}{10 + k}}{k}\\
            
            \mathbf{elif}\;t\_1 \leq 2 \cdot 10^{+301}:\\
            \;\;\;\;\frac{1 + m \cdot \log k}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot \left|a\right|\\
            
            \mathbf{else}:\\
            \;\;\;\;\frac{t\_0}{1}\\
            
            
            \end{array}
            \end{array}
            
            Derivation
            1. Split input into 3 regimes
            2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

              1. Initial program 90.4%

                \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
              2. Step-by-step derivation
                1. lift-*.f64N/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                2. sqr-neg-revN/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                3. sqr-neg-revN/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                4. pow2N/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                5. remove-double-negN/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                6. metadata-evalN/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                7. pow-subN/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                8. lower-unsound-/.f64N/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                9. lower-unsound-pow.f64N/A

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                10. lower-unsound-pow.f6490.3

                  \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
              3. Applied rewrites90.3%

                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
              4. Applied rewrites89.3%

                \[\leadsto \color{blue}{\frac{{k}^{m} \cdot \frac{a}{\left(\frac{1}{k} - -10\right) + k}}{k}} \]
              5. Taylor expanded in k around inf

                \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]
              6. Step-by-step derivation
                1. Applied rewrites73.3%

                  \[\leadsto \frac{{k}^{m} \cdot \frac{a}{\color{blue}{10} + k}}{k} \]

                if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                1. Initial program 90.4%

                  \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                2. Step-by-step derivation
                  1. lift-/.f64N/A

                    \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                  2. lift-*.f64N/A

                    \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                  3. associate-/l*N/A

                    \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                  4. *-commutativeN/A

                    \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                  5. lower-*.f64N/A

                    \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                3. Applied rewrites90.4%

                  \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                4. Taylor expanded in m around 0

                  \[\leadsto \frac{\color{blue}{1 + m \cdot \log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                5. Step-by-step derivation
                  1. lower-+.f64N/A

                    \[\leadsto \frac{1 + \color{blue}{m \cdot \log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                  2. lower-*.f64N/A

                    \[\leadsto \frac{1 + m \cdot \color{blue}{\log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                  3. lower-log.f6441.6

                    \[\leadsto \frac{1 + m \cdot \log k}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                6. Applied rewrites41.6%

                  \[\leadsto \frac{\color{blue}{1 + m \cdot \log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]

                if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                1. Initial program 90.4%

                  \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                2. Taylor expanded in k around 0

                  \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                3. Step-by-step derivation
                  1. Applied rewrites82.8%

                    \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                4. Recombined 3 regimes into one program.
                5. Add Preprocessing

                Alternative 6: 96.9% accurate, 1.0× speedup?

                \[\begin{array}{l} t_0 := \frac{a \cdot {k}^{m}}{1}\\ \mathbf{if}\;m \leq -1.5:\\ \;\;\;\;t\_0\\ \mathbf{elif}\;m \leq 3.4 \cdot 10^{-17}:\\ \;\;\;\;\frac{1 + m \cdot \log k}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a\\ \mathbf{else}:\\ \;\;\;\;t\_0\\ \end{array} \]
                (FPCore (a k m)
                 :precision binary64
                 (let* ((t_0 (/ (* a (pow k m)) 1.0)))
                   (if (<= m -1.5)
                     t_0
                     (if (<= m 3.4e-17)
                       (* (/ (+ 1.0 (* m (log k))) (fma (- k -10.0) k 1.0)) a)
                       t_0))))
                double code(double a, double k, double m) {
                	double t_0 = (a * pow(k, m)) / 1.0;
                	double tmp;
                	if (m <= -1.5) {
                		tmp = t_0;
                	} else if (m <= 3.4e-17) {
                		tmp = ((1.0 + (m * log(k))) / fma((k - -10.0), k, 1.0)) * a;
                	} else {
                		tmp = t_0;
                	}
                	return tmp;
                }
                
                function code(a, k, m)
                	t_0 = Float64(Float64(a * (k ^ m)) / 1.0)
                	tmp = 0.0
                	if (m <= -1.5)
                		tmp = t_0;
                	elseif (m <= 3.4e-17)
                		tmp = Float64(Float64(Float64(1.0 + Float64(m * log(k))) / fma(Float64(k - -10.0), k, 1.0)) * a);
                	else
                		tmp = t_0;
                	end
                	return tmp
                end
                
                code[a_, k_, m_] := Block[{t$95$0 = N[(N[(a * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / 1.0), $MachinePrecision]}, If[LessEqual[m, -1.5], t$95$0, If[LessEqual[m, 3.4e-17], N[(N[(N[(1.0 + N[(m * N[Log[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision]), $MachinePrecision] * a), $MachinePrecision], t$95$0]]]
                
                \begin{array}{l}
                t_0 := \frac{a \cdot {k}^{m}}{1}\\
                \mathbf{if}\;m \leq -1.5:\\
                \;\;\;\;t\_0\\
                
                \mathbf{elif}\;m \leq 3.4 \cdot 10^{-17}:\\
                \;\;\;\;\frac{1 + m \cdot \log k}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a\\
                
                \mathbf{else}:\\
                \;\;\;\;t\_0\\
                
                
                \end{array}
                
                Derivation
                1. Split input into 2 regimes
                2. if m < -1.5 or 3.3999999999999998e-17 < m

                  1. Initial program 90.4%

                    \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                  2. Taylor expanded in k around 0

                    \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                  3. Step-by-step derivation
                    1. Applied rewrites82.8%

                      \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]

                    if -1.5 < m < 3.3999999999999998e-17

                    1. Initial program 90.4%

                      \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                    2. Step-by-step derivation
                      1. lift-/.f64N/A

                        \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                      2. lift-*.f64N/A

                        \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      3. associate-/l*N/A

                        \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                      4. *-commutativeN/A

                        \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                      5. lower-*.f64N/A

                        \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                    3. Applied rewrites90.4%

                      \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                    4. Taylor expanded in m around 0

                      \[\leadsto \frac{\color{blue}{1 + m \cdot \log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                    5. Step-by-step derivation
                      1. lower-+.f64N/A

                        \[\leadsto \frac{1 + \color{blue}{m \cdot \log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                      2. lower-*.f64N/A

                        \[\leadsto \frac{1 + m \cdot \color{blue}{\log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                      3. lower-log.f6441.6

                        \[\leadsto \frac{1 + m \cdot \log k}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                    6. Applied rewrites41.6%

                      \[\leadsto \frac{\color{blue}{1 + m \cdot \log k}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a \]
                  4. Recombined 2 regimes into one program.
                  5. Add Preprocessing

                  Alternative 7: 96.7% accurate, 1.1× speedup?

                  \[\begin{array}{l} t_0 := \frac{a \cdot {k}^{m}}{1}\\ \mathbf{if}\;m \leq -6.4:\\ \;\;\;\;t\_0\\ \mathbf{elif}\;m \leq 3.4 \cdot 10^{-17}:\\ \;\;\;\;\frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)}\\ \mathbf{else}:\\ \;\;\;\;t\_0\\ \end{array} \]
                  (FPCore (a k m)
                   :precision binary64
                   (let* ((t_0 (/ (* a (pow k m)) 1.0)))
                     (if (<= m -6.4)
                       t_0
                       (if (<= m 3.4e-17) (/ a (+ 1.0 (fma 10.0 k (/ k (/ 1.0 k))))) t_0))))
                  double code(double a, double k, double m) {
                  	double t_0 = (a * pow(k, m)) / 1.0;
                  	double tmp;
                  	if (m <= -6.4) {
                  		tmp = t_0;
                  	} else if (m <= 3.4e-17) {
                  		tmp = a / (1.0 + fma(10.0, k, (k / (1.0 / k))));
                  	} else {
                  		tmp = t_0;
                  	}
                  	return tmp;
                  }
                  
                  function code(a, k, m)
                  	t_0 = Float64(Float64(a * (k ^ m)) / 1.0)
                  	tmp = 0.0
                  	if (m <= -6.4)
                  		tmp = t_0;
                  	elseif (m <= 3.4e-17)
                  		tmp = Float64(a / Float64(1.0 + fma(10.0, k, Float64(k / Float64(1.0 / k)))));
                  	else
                  		tmp = t_0;
                  	end
                  	return tmp
                  end
                  
                  code[a_, k_, m_] := Block[{t$95$0 = N[(N[(a * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / 1.0), $MachinePrecision]}, If[LessEqual[m, -6.4], t$95$0, If[LessEqual[m, 3.4e-17], N[(a / N[(1.0 + N[(10.0 * k + N[(k / N[(1.0 / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$0]]]
                  
                  \begin{array}{l}
                  t_0 := \frac{a \cdot {k}^{m}}{1}\\
                  \mathbf{if}\;m \leq -6.4:\\
                  \;\;\;\;t\_0\\
                  
                  \mathbf{elif}\;m \leq 3.4 \cdot 10^{-17}:\\
                  \;\;\;\;\frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)}\\
                  
                  \mathbf{else}:\\
                  \;\;\;\;t\_0\\
                  
                  
                  \end{array}
                  
                  Derivation
                  1. Split input into 2 regimes
                  2. if m < -6.4000000000000004 or 3.3999999999999998e-17 < m

                    1. Initial program 90.4%

                      \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                    2. Taylor expanded in k around 0

                      \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                    3. Step-by-step derivation
                      1. Applied rewrites82.8%

                        \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]

                      if -6.4000000000000004 < m < 3.3999999999999998e-17

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                        2. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                        3. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                        4. pow2N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                        5. remove-double-negN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                        6. metadata-evalN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                        7. pow-subN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        8. lower-unsound-/.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        9. lower-unsound-pow.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                        10. lower-unsound-pow.f6490.3

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                      3. Applied rewrites90.3%

                        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                      4. Taylor expanded in m around 0

                        \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                      5. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                        2. lower-+.f64N/A

                          \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                        3. lower-fma.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                        4. lower-pow.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                      6. Applied rewrites45.3%

                        \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                      7. Step-by-step derivation
                        1. lift-pow.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                        2. metadata-evalN/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{\left(1 - -1\right)}\right)} \]
                        3. pow-divN/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{{k}^{1}}{{k}^{-1}}\right)} \]
                        4. unpow1N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{{k}^{-1}}\right)} \]
                        5. lower-/.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{{k}^{-1}}\right)} \]
                        6. unpow-1N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)} \]
                        7. lower-/.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)} \]
                      8. Applied rewrites45.3%

                        \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)} \]
                    4. Recombined 2 regimes into one program.
                    5. Add Preprocessing

                    Alternative 8: 62.4% accurate, 1.3× speedup?

                    \[\begin{array}{l} \mathbf{if}\;m \leq -4.1:\\ \;\;\;\;\frac{a}{{k}^{2}}\\ \mathbf{elif}\;m \leq 1.4 \cdot 10^{-23}:\\ \;\;\;\;\frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a\\ \end{array} \]
                    (FPCore (a k m)
                     :precision binary64
                     (if (<= m -4.1)
                       (/ a (pow k 2.0))
                       (if (<= m 1.4e-23)
                         (/ a (+ 1.0 (fma 10.0 k (/ k (/ 1.0 k)))))
                         (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) a))))
                    double code(double a, double k, double m) {
                    	double tmp;
                    	if (m <= -4.1) {
                    		tmp = a / pow(k, 2.0);
                    	} else if (m <= 1.4e-23) {
                    		tmp = a / (1.0 + fma(10.0, k, (k / (1.0 / k))));
                    	} else {
                    		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * a;
                    	}
                    	return tmp;
                    }
                    
                    function code(a, k, m)
                    	tmp = 0.0
                    	if (m <= -4.1)
                    		tmp = Float64(a / (k ^ 2.0));
                    	elseif (m <= 1.4e-23)
                    		tmp = Float64(a / Float64(1.0 + fma(10.0, k, Float64(k / Float64(1.0 / k)))));
                    	else
                    		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * a);
                    	end
                    	return tmp
                    end
                    
                    code[a_, k_, m_] := If[LessEqual[m, -4.1], N[(a / N[Power[k, 2.0], $MachinePrecision]), $MachinePrecision], If[LessEqual[m, 1.4e-23], N[(a / N[(1.0 + N[(10.0 * k + N[(k / N[(1.0 / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * a), $MachinePrecision]]]
                    
                    \begin{array}{l}
                    \mathbf{if}\;m \leq -4.1:\\
                    \;\;\;\;\frac{a}{{k}^{2}}\\
                    
                    \mathbf{elif}\;m \leq 1.4 \cdot 10^{-23}:\\
                    \;\;\;\;\frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)}\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a\\
                    
                    
                    \end{array}
                    
                    Derivation
                    1. Split input into 3 regimes
                    2. if m < -4.0999999999999996

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                        2. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                        3. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                        4. pow2N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                        5. remove-double-negN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                        6. metadata-evalN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                        7. pow-subN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        8. lower-unsound-/.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        9. lower-unsound-pow.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                        10. lower-unsound-pow.f6490.3

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                      3. Applied rewrites90.3%

                        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                      4. Taylor expanded in m around 0

                        \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                      5. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                        2. lower-+.f64N/A

                          \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                        3. lower-fma.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                        4. lower-pow.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                      6. Applied rewrites45.3%

                        \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                      7. Taylor expanded in k around inf

                        \[\leadsto \frac{a}{\color{blue}{{k}^{2}}} \]
                      8. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{a}{{k}^{\color{blue}{2}}} \]
                        2. lower-pow.f6435.6

                          \[\leadsto \frac{a}{{k}^{2}} \]
                      9. Applied rewrites35.6%

                        \[\leadsto \frac{a}{\color{blue}{{k}^{2}}} \]

                      if -4.0999999999999996 < m < 1.3999999999999999e-23

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                        2. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                        3. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                        4. pow2N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                        5. remove-double-negN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                        6. metadata-evalN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                        7. pow-subN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        8. lower-unsound-/.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        9. lower-unsound-pow.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                        10. lower-unsound-pow.f6490.3

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                      3. Applied rewrites90.3%

                        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                      4. Taylor expanded in m around 0

                        \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                      5. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                        2. lower-+.f64N/A

                          \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                        3. lower-fma.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                        4. lower-pow.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                      6. Applied rewrites45.3%

                        \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                      7. Step-by-step derivation
                        1. lift-pow.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                        2. metadata-evalN/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{\left(1 - -1\right)}\right)} \]
                        3. pow-divN/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{{k}^{1}}{{k}^{-1}}\right)} \]
                        4. unpow1N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{{k}^{-1}}\right)} \]
                        5. lower-/.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{{k}^{-1}}\right)} \]
                        6. unpow-1N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)} \]
                        7. lower-/.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)} \]
                      8. Applied rewrites45.3%

                        \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, \frac{k}{\frac{1}{k}}\right)} \]

                      if 1.3999999999999999e-23 < m

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Step-by-step derivation
                        1. lift-/.f64N/A

                          \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                        2. lift-*.f64N/A

                          \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                        3. associate-/l*N/A

                          \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                        4. *-commutativeN/A

                          \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                        5. lower-*.f64N/A

                          \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                      3. Applied rewrites90.4%

                        \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                      4. Taylor expanded in m around 0

                        \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                      5. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                        2. lower-+.f64N/A

                          \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
                        3. lower-*.f64N/A

                          \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
                        4. lower-+.f6445.3

                          \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
                      6. Applied rewrites45.3%

                        \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                      7. Taylor expanded in k around 0

                        \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                      8. Step-by-step derivation
                        1. lower-+.f64N/A

                          \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
                        2. lower-*.f64N/A

                          \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
                        3. lower--.f64N/A

                          \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                        4. lower-*.f6429.7

                          \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                      9. Applied rewrites29.7%

                        \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                    3. Recombined 3 regimes into one program.
                    4. Add Preprocessing

                    Alternative 9: 58.5% accurate, 0.2× speedup?

                    \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 2 \cdot 10^{-279}:\\ \;\;\;\;\frac{\left|a\right|}{\left(10 - \frac{-1}{k}\right) + k} \cdot \frac{1}{k}\\ \mathbf{elif}\;t\_0 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{\left|a\right|}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;\frac{\mathsf{fma}\left(\log k \cdot m, \left|a\right|, \left|a\right|\right)}{1}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
                    (FPCore (a k m)
                     :precision binary64
                     (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
                       (*
                        (copysign 1.0 a)
                        (if (<= t_0 2e-279)
                          (* (/ (fabs a) (+ (- 10.0 (/ -1.0 k)) k)) (/ 1.0 k))
                          (if (<= t_0 2e+301)
                            (/ (fabs a) (+ 1.0 (fma 10.0 k (* k k))))
                            (if (<= t_0 INFINITY)
                              (/ (fma (* (log k) m) (fabs a) (fabs a)) 1.0)
                              (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a))))))))
                    double code(double a, double k, double m) {
                    	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
                    	double tmp;
                    	if (t_0 <= 2e-279) {
                    		tmp = (fabs(a) / ((10.0 - (-1.0 / k)) + k)) * (1.0 / k);
                    	} else if (t_0 <= 2e+301) {
                    		tmp = fabs(a) / (1.0 + fma(10.0, k, (k * k)));
                    	} else if (t_0 <= ((double) INFINITY)) {
                    		tmp = fma((log(k) * m), fabs(a), fabs(a)) / 1.0;
                    	} else {
                    		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
                    	}
                    	return copysign(1.0, a) * tmp;
                    }
                    
                    function code(a, k, m)
                    	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
                    	tmp = 0.0
                    	if (t_0 <= 2e-279)
                    		tmp = Float64(Float64(abs(a) / Float64(Float64(10.0 - Float64(-1.0 / k)) + k)) * Float64(1.0 / k));
                    	elseif (t_0 <= 2e+301)
                    		tmp = Float64(abs(a) / Float64(1.0 + fma(10.0, k, Float64(k * k))));
                    	elseif (t_0 <= Inf)
                    		tmp = Float64(fma(Float64(log(k) * m), abs(a), abs(a)) / 1.0);
                    	else
                    		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
                    	end
                    	return Float64(copysign(1.0, a) * tmp)
                    end
                    
                    code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 2e-279], N[(N[(N[Abs[a], $MachinePrecision] / N[(N[(10.0 - N[(-1.0 / k), $MachinePrecision]), $MachinePrecision] + k), $MachinePrecision]), $MachinePrecision] * N[(1.0 / k), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$0, 2e+301], N[(N[Abs[a], $MachinePrecision] / N[(1.0 + N[(10.0 * k + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$0, Infinity], N[(N[(N[(N[Log[k], $MachinePrecision] * m), $MachinePrecision] * N[Abs[a], $MachinePrecision] + N[Abs[a], $MachinePrecision]), $MachinePrecision] / 1.0), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]]), $MachinePrecision]]
                    
                    \begin{array}{l}
                    t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
                    \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                    \mathbf{if}\;t\_0 \leq 2 \cdot 10^{-279}:\\
                    \;\;\;\;\frac{\left|a\right|}{\left(10 - \frac{-1}{k}\right) + k} \cdot \frac{1}{k}\\
                    
                    \mathbf{elif}\;t\_0 \leq 2 \cdot 10^{+301}:\\
                    \;\;\;\;\frac{\left|a\right|}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)}\\
                    
                    \mathbf{elif}\;t\_0 \leq \infty:\\
                    \;\;\;\;\frac{\mathsf{fma}\left(\log k \cdot m, \left|a\right|, \left|a\right|\right)}{1}\\
                    
                    \mathbf{else}:\\
                    \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
                    
                    
                    \end{array}
                    \end{array}
                    
                    Derivation
                    1. Split input into 4 regimes
                    2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e-279

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                        2. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                        3. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                        4. pow2N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                        5. remove-double-negN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                        6. metadata-evalN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                        7. pow-subN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        8. lower-unsound-/.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        9. lower-unsound-pow.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                        10. lower-unsound-pow.f6490.3

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                      3. Applied rewrites90.3%

                        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                      4. Taylor expanded in m around 0

                        \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                      5. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                        2. lower-+.f64N/A

                          \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                        3. lower-fma.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                        4. lower-pow.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                      6. Applied rewrites45.3%

                        \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                      7. Step-by-step derivation
                        1. lift-/.f64N/A

                          \[\leadsto \frac{a}{\color{blue}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                        2. lift-+.f64N/A

                          \[\leadsto \frac{a}{1 + \color{blue}{\mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                        3. lift-fma.f64N/A

                          \[\leadsto \frac{a}{1 + \left(10 \cdot k + \color{blue}{{k}^{2}}\right)} \]
                        4. lift-*.f64N/A

                          \[\leadsto \frac{a}{1 + \left(10 \cdot k + {\color{blue}{k}}^{2}\right)} \]
                        5. associate-+l+N/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) + \color{blue}{{k}^{2}}} \]
                        6. lift-*.f64N/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) + {k}^{2}} \]
                        7. lift-pow.f64N/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{2}}} \]
                        8. metadata-evalN/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) + {k}^{\left(1 - \color{blue}{-1}\right)}} \]
                        9. pow-divN/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                        10. unpow1N/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) + \frac{k}{{\color{blue}{k}}^{-1}}} \]
                        11. add-to-fractionN/A

                          \[\leadsto \frac{a}{\frac{\left(1 + 10 \cdot k\right) \cdot {k}^{-1} + k}{\color{blue}{{k}^{-1}}}} \]
                        12. associate-/r/N/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) \cdot {k}^{-1} + k} \cdot \color{blue}{{k}^{-1}} \]
                        13. lower-*.f64N/A

                          \[\leadsto \frac{a}{\left(1 + 10 \cdot k\right) \cdot {k}^{-1} + k} \cdot \color{blue}{{k}^{-1}} \]
                      8. Applied rewrites44.7%

                        \[\leadsto \frac{a}{\left(10 - \frac{-1}{k}\right) + k} \cdot \color{blue}{\frac{1}{k}} \]

                      if 2.00000000000000011e-279 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Step-by-step derivation
                        1. lift-*.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                        2. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                        3. sqr-neg-revN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                        4. pow2N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                        5. remove-double-negN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                        6. metadata-evalN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                        7. pow-subN/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        8. lower-unsound-/.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        9. lower-unsound-pow.f64N/A

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                        10. lower-unsound-pow.f6490.3

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                      3. Applied rewrites90.3%

                        \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                      4. Taylor expanded in m around 0

                        \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                      5. Step-by-step derivation
                        1. lower-/.f64N/A

                          \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                        2. lower-+.f64N/A

                          \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                        3. lower-fma.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                        4. lower-pow.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                      6. Applied rewrites45.3%

                        \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                      7. Step-by-step derivation
                        1. lift-pow.f64N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                        2. pow2N/A

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]
                        3. lower-*.f6445.3

                          \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]
                      8. Applied rewrites45.3%

                        \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]

                      if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

                      1. Initial program 90.4%

                        \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                      2. Taylor expanded in k around 0

                        \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                      3. Step-by-step derivation
                        1. Applied rewrites82.8%

                          \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                        2. Taylor expanded in m around 0

                          \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{1} \]
                        3. Step-by-step derivation
                          1. lower-+.f64N/A

                            \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{1} \]
                          2. lower-*.f64N/A

                            \[\leadsto \frac{a + a \cdot \color{blue}{\left(m \cdot \log k\right)}}{1} \]
                          3. lower-*.f64N/A

                            \[\leadsto \frac{a + a \cdot \left(m \cdot \color{blue}{\log k}\right)}{1} \]
                          4. lower-log.f6424.2

                            \[\leadsto \frac{a + a \cdot \left(m \cdot \log k\right)}{1} \]
                        4. Applied rewrites24.2%

                          \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{1} \]
                        5. Step-by-step derivation
                          1. lift-+.f64N/A

                            \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{1} \]
                          2. +-commutativeN/A

                            \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + \color{blue}{a}}{1} \]
                          3. lift-*.f64N/A

                            \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + a}{1} \]
                          4. *-commutativeN/A

                            \[\leadsto \frac{\left(m \cdot \log k\right) \cdot a + a}{1} \]
                          5. lower-fma.f6424.2

                            \[\leadsto \frac{\mathsf{fma}\left(m \cdot \log k, \color{blue}{a}, a\right)}{1} \]
                          6. lift-*.f64N/A

                            \[\leadsto \frac{\mathsf{fma}\left(m \cdot \log k, a, a\right)}{1} \]
                          7. *-commutativeN/A

                            \[\leadsto \frac{\mathsf{fma}\left(\log k \cdot m, a, a\right)}{1} \]
                          8. lower-*.f6424.2

                            \[\leadsto \frac{\mathsf{fma}\left(\log k \cdot m, a, a\right)}{1} \]
                        6. Applied rewrites24.2%

                          \[\leadsto \frac{\mathsf{fma}\left(\log k \cdot m, \color{blue}{a}, a\right)}{1} \]

                        if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                        1. Initial program 90.4%

                          \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                        2. Step-by-step derivation
                          1. lift-/.f64N/A

                            \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                          2. lift-*.f64N/A

                            \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                          3. associate-/l*N/A

                            \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                          4. *-commutativeN/A

                            \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                          5. lower-*.f64N/A

                            \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                        3. Applied rewrites90.4%

                          \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                        4. Taylor expanded in m around 0

                          \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                        5. Step-by-step derivation
                          1. lower-/.f64N/A

                            \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                          2. lower-+.f64N/A

                            \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
                          3. lower-*.f64N/A

                            \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
                          4. lower-+.f6445.3

                            \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
                        6. Applied rewrites45.3%

                          \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                        7. Taylor expanded in k around 0

                          \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                        8. Step-by-step derivation
                          1. lower-+.f64N/A

                            \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
                          2. lower-*.f64N/A

                            \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
                          3. lower--.f64N/A

                            \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                          4. lower-*.f6429.7

                            \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                        9. Applied rewrites29.7%

                          \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                      4. Recombined 4 regimes into one program.
                      5. Add Preprocessing

                      Alternative 10: 56.1% accurate, 0.3× speedup?

                      \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\left|a\right|}}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;\frac{\mathsf{fma}\left(\log k \cdot m, \left|a\right|, \left|a\right|\right)}{1}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
                      (FPCore (a k m)
                       :precision binary64
                       (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
                         (*
                          (copysign 1.0 a)
                          (if (<= t_0 2e+301)
                            (/ 1.0 (/ (fma (- k -10.0) k 1.0) (fabs a)))
                            (if (<= t_0 INFINITY)
                              (/ (fma (* (log k) m) (fabs a) (fabs a)) 1.0)
                              (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
                      double code(double a, double k, double m) {
                      	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
                      	double tmp;
                      	if (t_0 <= 2e+301) {
                      		tmp = 1.0 / (fma((k - -10.0), k, 1.0) / fabs(a));
                      	} else if (t_0 <= ((double) INFINITY)) {
                      		tmp = fma((log(k) * m), fabs(a), fabs(a)) / 1.0;
                      	} else {
                      		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
                      	}
                      	return copysign(1.0, a) * tmp;
                      }
                      
                      function code(a, k, m)
                      	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
                      	tmp = 0.0
                      	if (t_0 <= 2e+301)
                      		tmp = Float64(1.0 / Float64(fma(Float64(k - -10.0), k, 1.0) / abs(a)));
                      	elseif (t_0 <= Inf)
                      		tmp = Float64(fma(Float64(log(k) * m), abs(a), abs(a)) / 1.0);
                      	else
                      		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
                      	end
                      	return Float64(copysign(1.0, a) * tmp)
                      end
                      
                      code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 2e+301], N[(1.0 / N[(N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision] / N[Abs[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$0, Infinity], N[(N[(N[(N[Log[k], $MachinePrecision] * m), $MachinePrecision] * N[Abs[a], $MachinePrecision] + N[Abs[a], $MachinePrecision]), $MachinePrecision] / 1.0), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]
                      
                      \begin{array}{l}
                      t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
                      \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                      \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\
                      \;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\left|a\right|}}\\
                      
                      \mathbf{elif}\;t\_0 \leq \infty:\\
                      \;\;\;\;\frac{\mathsf{fma}\left(\log k \cdot m, \left|a\right|, \left|a\right|\right)}{1}\\
                      
                      \mathbf{else}:\\
                      \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
                      
                      
                      \end{array}
                      \end{array}
                      
                      Derivation
                      1. Split input into 3 regimes
                      2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                        1. Initial program 90.4%

                          \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                        2. Step-by-step derivation
                          1. lift-*.f64N/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                          2. sqr-neg-revN/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                          3. sqr-neg-revN/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                          4. pow2N/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                          5. remove-double-negN/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                          6. metadata-evalN/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                          7. pow-subN/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                          8. lower-unsound-/.f64N/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                          9. lower-unsound-pow.f64N/A

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                          10. lower-unsound-pow.f6490.3

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                        3. Applied rewrites90.3%

                          \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                        4. Taylor expanded in m around 0

                          \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                        5. Step-by-step derivation
                          1. lower-/.f64N/A

                            \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                          2. lower-+.f64N/A

                            \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                          3. lower-fma.f64N/A

                            \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                          4. lower-pow.f6445.3

                            \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                        6. Applied rewrites45.3%

                          \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                        7. Step-by-step derivation
                          1. lift-/.f64N/A

                            \[\leadsto \frac{a}{\color{blue}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                          2. div-flipN/A

                            \[\leadsto \frac{1}{\color{blue}{\frac{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}{a}}} \]
                          3. lift-+.f64N/A

                            \[\leadsto \frac{1}{\frac{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}{a}} \]
                          4. lift-fma.f64N/A

                            \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + {k}^{2}\right)}{a}} \]
                          5. lift-pow.f64N/A

                            \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + {k}^{2}\right)}{a}} \]
                          6. pow2N/A

                            \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + k \cdot k\right)}{a}} \]
                          7. distribute-rgt-inN/A

                            \[\leadsto \frac{1}{\frac{1 + k \cdot \left(10 + k\right)}{a}} \]
                          8. +-commutativeN/A

                            \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k + 10\right)}{a}} \]
                          9. metadata-evalN/A

                            \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k + \left(\mathsf{neg}\left(-10\right)\right)\right)}{a}} \]
                          10. sub-flipN/A

                            \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k - -10\right)}{a}} \]
                          11. lift--.f64N/A

                            \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k - -10\right)}{a}} \]
                          12. *-commutativeN/A

                            \[\leadsto \frac{1}{\frac{1 + \left(k - -10\right) \cdot k}{a}} \]
                          13. +-commutativeN/A

                            \[\leadsto \frac{1}{\frac{\left(k - -10\right) \cdot k + 1}{a}} \]
                          14. lift-fma.f64N/A

                            \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}} \]
                          15. lower-unsound-/.f32N/A

                            \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                          16. lower-/.f32N/A

                            \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                          17. lower-unsound-/.f64N/A

                            \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}}} \]
                          18. lower-/.f6445.3

                            \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                        8. Applied rewrites45.3%

                          \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}}} \]

                        if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

                        1. Initial program 90.4%

                          \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                        2. Taylor expanded in k around 0

                          \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                        3. Step-by-step derivation
                          1. Applied rewrites82.8%

                            \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                          2. Taylor expanded in m around 0

                            \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{1} \]
                          3. Step-by-step derivation
                            1. lower-+.f64N/A

                              \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{1} \]
                            2. lower-*.f64N/A

                              \[\leadsto \frac{a + a \cdot \color{blue}{\left(m \cdot \log k\right)}}{1} \]
                            3. lower-*.f64N/A

                              \[\leadsto \frac{a + a \cdot \left(m \cdot \color{blue}{\log k}\right)}{1} \]
                            4. lower-log.f6424.2

                              \[\leadsto \frac{a + a \cdot \left(m \cdot \log k\right)}{1} \]
                          4. Applied rewrites24.2%

                            \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{1} \]
                          5. Step-by-step derivation
                            1. lift-+.f64N/A

                              \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{1} \]
                            2. +-commutativeN/A

                              \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + \color{blue}{a}}{1} \]
                            3. lift-*.f64N/A

                              \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + a}{1} \]
                            4. *-commutativeN/A

                              \[\leadsto \frac{\left(m \cdot \log k\right) \cdot a + a}{1} \]
                            5. lower-fma.f6424.2

                              \[\leadsto \frac{\mathsf{fma}\left(m \cdot \log k, \color{blue}{a}, a\right)}{1} \]
                            6. lift-*.f64N/A

                              \[\leadsto \frac{\mathsf{fma}\left(m \cdot \log k, a, a\right)}{1} \]
                            7. *-commutativeN/A

                              \[\leadsto \frac{\mathsf{fma}\left(\log k \cdot m, a, a\right)}{1} \]
                            8. lower-*.f6424.2

                              \[\leadsto \frac{\mathsf{fma}\left(\log k \cdot m, a, a\right)}{1} \]
                          6. Applied rewrites24.2%

                            \[\leadsto \frac{\mathsf{fma}\left(\log k \cdot m, \color{blue}{a}, a\right)}{1} \]

                          if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                          1. Initial program 90.4%

                            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                          2. Step-by-step derivation
                            1. lift-/.f64N/A

                              \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                            2. lift-*.f64N/A

                              \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            3. associate-/l*N/A

                              \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                            4. *-commutativeN/A

                              \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                            5. lower-*.f64N/A

                              \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                          3. Applied rewrites90.4%

                            \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                          4. Taylor expanded in m around 0

                            \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                          5. Step-by-step derivation
                            1. lower-/.f64N/A

                              \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            2. lower-+.f64N/A

                              \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
                            3. lower-*.f64N/A

                              \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
                            4. lower-+.f6445.3

                              \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
                          6. Applied rewrites45.3%

                            \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                          7. Taylor expanded in k around 0

                            \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                          8. Step-by-step derivation
                            1. lower-+.f64N/A

                              \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
                            2. lower-*.f64N/A

                              \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
                            3. lower--.f64N/A

                              \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                            4. lower-*.f6429.7

                              \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                          9. Applied rewrites29.7%

                            \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                        4. Recombined 3 regimes into one program.
                        5. Add Preprocessing

                        Alternative 11: 56.1% accurate, 0.3× speedup?

                        \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\left|a\right|}}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;\frac{\mathsf{fma}\left(\left|a\right| \cdot m, \log k, \left|a\right|\right)}{1}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
                        (FPCore (a k m)
                         :precision binary64
                         (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
                           (*
                            (copysign 1.0 a)
                            (if (<= t_0 2e+301)
                              (/ 1.0 (/ (fma (- k -10.0) k 1.0) (fabs a)))
                              (if (<= t_0 INFINITY)
                                (/ (fma (* (fabs a) m) (log k) (fabs a)) 1.0)
                                (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
                        double code(double a, double k, double m) {
                        	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
                        	double tmp;
                        	if (t_0 <= 2e+301) {
                        		tmp = 1.0 / (fma((k - -10.0), k, 1.0) / fabs(a));
                        	} else if (t_0 <= ((double) INFINITY)) {
                        		tmp = fma((fabs(a) * m), log(k), fabs(a)) / 1.0;
                        	} else {
                        		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
                        	}
                        	return copysign(1.0, a) * tmp;
                        }
                        
                        function code(a, k, m)
                        	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
                        	tmp = 0.0
                        	if (t_0 <= 2e+301)
                        		tmp = Float64(1.0 / Float64(fma(Float64(k - -10.0), k, 1.0) / abs(a)));
                        	elseif (t_0 <= Inf)
                        		tmp = Float64(fma(Float64(abs(a) * m), log(k), abs(a)) / 1.0);
                        	else
                        		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
                        	end
                        	return Float64(copysign(1.0, a) * tmp)
                        end
                        
                        code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 2e+301], N[(1.0 / N[(N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision] / N[Abs[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$0, Infinity], N[(N[(N[(N[Abs[a], $MachinePrecision] * m), $MachinePrecision] * N[Log[k], $MachinePrecision] + N[Abs[a], $MachinePrecision]), $MachinePrecision] / 1.0), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]
                        
                        \begin{array}{l}
                        t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
                        \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                        \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\
                        \;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\left|a\right|}}\\
                        
                        \mathbf{elif}\;t\_0 \leq \infty:\\
                        \;\;\;\;\frac{\mathsf{fma}\left(\left|a\right| \cdot m, \log k, \left|a\right|\right)}{1}\\
                        
                        \mathbf{else}:\\
                        \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
                        
                        
                        \end{array}
                        \end{array}
                        
                        Derivation
                        1. Split input into 3 regimes
                        2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                          1. Initial program 90.4%

                            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                          2. Step-by-step derivation
                            1. lift-*.f64N/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                            2. sqr-neg-revN/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                            3. sqr-neg-revN/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                            4. pow2N/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                            5. remove-double-negN/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                            6. metadata-evalN/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                            7. pow-subN/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            8. lower-unsound-/.f64N/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            9. lower-unsound-pow.f64N/A

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                            10. lower-unsound-pow.f6490.3

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                          3. Applied rewrites90.3%

                            \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                          4. Taylor expanded in m around 0

                            \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                          5. Step-by-step derivation
                            1. lower-/.f64N/A

                              \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                            2. lower-+.f64N/A

                              \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                            3. lower-fma.f64N/A

                              \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                            4. lower-pow.f6445.3

                              \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                          6. Applied rewrites45.3%

                            \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                          7. Step-by-step derivation
                            1. lift-/.f64N/A

                              \[\leadsto \frac{a}{\color{blue}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                            2. div-flipN/A

                              \[\leadsto \frac{1}{\color{blue}{\frac{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}{a}}} \]
                            3. lift-+.f64N/A

                              \[\leadsto \frac{1}{\frac{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}{a}} \]
                            4. lift-fma.f64N/A

                              \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + {k}^{2}\right)}{a}} \]
                            5. lift-pow.f64N/A

                              \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + {k}^{2}\right)}{a}} \]
                            6. pow2N/A

                              \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + k \cdot k\right)}{a}} \]
                            7. distribute-rgt-inN/A

                              \[\leadsto \frac{1}{\frac{1 + k \cdot \left(10 + k\right)}{a}} \]
                            8. +-commutativeN/A

                              \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k + 10\right)}{a}} \]
                            9. metadata-evalN/A

                              \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k + \left(\mathsf{neg}\left(-10\right)\right)\right)}{a}} \]
                            10. sub-flipN/A

                              \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k - -10\right)}{a}} \]
                            11. lift--.f64N/A

                              \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k - -10\right)}{a}} \]
                            12. *-commutativeN/A

                              \[\leadsto \frac{1}{\frac{1 + \left(k - -10\right) \cdot k}{a}} \]
                            13. +-commutativeN/A

                              \[\leadsto \frac{1}{\frac{\left(k - -10\right) \cdot k + 1}{a}} \]
                            14. lift-fma.f64N/A

                              \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}} \]
                            15. lower-unsound-/.f32N/A

                              \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                            16. lower-/.f32N/A

                              \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                            17. lower-unsound-/.f64N/A

                              \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}}} \]
                            18. lower-/.f6445.3

                              \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                          8. Applied rewrites45.3%

                            \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}}} \]

                          if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

                          1. Initial program 90.4%

                            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                          2. Taylor expanded in k around 0

                            \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                          3. Step-by-step derivation
                            1. Applied rewrites82.8%

                              \[\leadsto \frac{a \cdot {k}^{m}}{\color{blue}{1}} \]
                            2. Taylor expanded in m around 0

                              \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{1} \]
                            3. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{1} \]
                              2. lower-*.f64N/A

                                \[\leadsto \frac{a + a \cdot \color{blue}{\left(m \cdot \log k\right)}}{1} \]
                              3. lower-*.f64N/A

                                \[\leadsto \frac{a + a \cdot \left(m \cdot \color{blue}{\log k}\right)}{1} \]
                              4. lower-log.f6424.2

                                \[\leadsto \frac{a + a \cdot \left(m \cdot \log k\right)}{1} \]
                            4. Applied rewrites24.2%

                              \[\leadsto \frac{\color{blue}{a + a \cdot \left(m \cdot \log k\right)}}{1} \]
                            5. Step-by-step derivation
                              1. lift-+.f64N/A

                                \[\leadsto \frac{a + \color{blue}{a \cdot \left(m \cdot \log k\right)}}{1} \]
                              2. +-commutativeN/A

                                \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + \color{blue}{a}}{1} \]
                              3. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + a}{1} \]
                              4. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot \left(m \cdot \log k\right) + a}{1} \]
                              5. associate-*r*N/A

                                \[\leadsto \frac{\left(a \cdot m\right) \cdot \log k + a}{1} \]
                              6. lower-fma.f64N/A

                                \[\leadsto \frac{\mathsf{fma}\left(a \cdot m, \color{blue}{\log k}, a\right)}{1} \]
                              7. lower-*.f6424.1

                                \[\leadsto \frac{\mathsf{fma}\left(a \cdot m, \log \color{blue}{k}, a\right)}{1} \]
                            6. Applied rewrites24.1%

                              \[\leadsto \frac{\mathsf{fma}\left(a \cdot m, \color{blue}{\log k}, a\right)}{1} \]

                            if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-/.f64N/A

                                \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                              2. lift-*.f64N/A

                                \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                              3. associate-/l*N/A

                                \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                              4. *-commutativeN/A

                                \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                              5. lower-*.f64N/A

                                \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                            3. Applied rewrites90.4%

                              \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
                              3. lower-*.f64N/A

                                \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
                              4. lower-+.f6445.3

                                \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            7. Taylor expanded in k around 0

                              \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                            8. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
                              2. lower-*.f64N/A

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
                              3. lower--.f64N/A

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                              4. lower-*.f6429.7

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                            9. Applied rewrites29.7%

                              \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                          4. Recombined 3 regimes into one program.
                          5. Add Preprocessing

                          Alternative 12: 55.7% accurate, 0.3× speedup?

                          \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\left|a\right|}}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
                             (*
                              (copysign 1.0 a)
                              (if (<= t_0 2e+301)
                                (/ 1.0 (/ (fma (- k -10.0) k 1.0) (fabs a)))
                                (if (<= t_0 INFINITY)
                                  (* k (fma -10.0 (fabs a) (/ (fabs a) k)))
                                  (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
                          double code(double a, double k, double m) {
                          	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
                          	double tmp;
                          	if (t_0 <= 2e+301) {
                          		tmp = 1.0 / (fma((k - -10.0), k, 1.0) / fabs(a));
                          	} else if (t_0 <= ((double) INFINITY)) {
                          		tmp = k * fma(-10.0, fabs(a), (fabs(a) / k));
                          	} else {
                          		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
                          	}
                          	return copysign(1.0, a) * tmp;
                          }
                          
                          function code(a, k, m)
                          	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
                          	tmp = 0.0
                          	if (t_0 <= 2e+301)
                          		tmp = Float64(1.0 / Float64(fma(Float64(k - -10.0), k, 1.0) / abs(a)));
                          	elseif (t_0 <= Inf)
                          		tmp = Float64(k * fma(-10.0, abs(a), Float64(abs(a) / k)));
                          	else
                          		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
                          	end
                          	return Float64(copysign(1.0, a) * tmp)
                          end
                          
                          code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 2e+301], N[(1.0 / N[(N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision] / N[Abs[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$0, Infinity], N[(k * N[(-10.0 * N[Abs[a], $MachinePrecision] + N[(N[Abs[a], $MachinePrecision] / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]
                          
                          \begin{array}{l}
                          t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
                          \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                          \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\
                          \;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\left|a\right|}}\\
                          
                          \mathbf{elif}\;t\_0 \leq \infty:\\
                          \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
                          
                          
                          \end{array}
                          \end{array}
                          
                          Derivation
                          1. Split input into 3 regimes
                          2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                              2. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                              3. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                              4. pow2N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                              5. remove-double-negN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                              6. metadata-evalN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                              7. pow-subN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              8. lower-unsound-/.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              9. lower-unsound-pow.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                              10. lower-unsound-pow.f6490.3

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                            3. Applied rewrites90.3%

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                              3. lower-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                              4. lower-pow.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                            7. Step-by-step derivation
                              1. lift-/.f64N/A

                                \[\leadsto \frac{a}{\color{blue}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                              2. div-flipN/A

                                \[\leadsto \frac{1}{\color{blue}{\frac{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}{a}}} \]
                              3. lift-+.f64N/A

                                \[\leadsto \frac{1}{\frac{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}{a}} \]
                              4. lift-fma.f64N/A

                                \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + {k}^{2}\right)}{a}} \]
                              5. lift-pow.f64N/A

                                \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + {k}^{2}\right)}{a}} \]
                              6. pow2N/A

                                \[\leadsto \frac{1}{\frac{1 + \left(10 \cdot k + k \cdot k\right)}{a}} \]
                              7. distribute-rgt-inN/A

                                \[\leadsto \frac{1}{\frac{1 + k \cdot \left(10 + k\right)}{a}} \]
                              8. +-commutativeN/A

                                \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k + 10\right)}{a}} \]
                              9. metadata-evalN/A

                                \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k + \left(\mathsf{neg}\left(-10\right)\right)\right)}{a}} \]
                              10. sub-flipN/A

                                \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k - -10\right)}{a}} \]
                              11. lift--.f64N/A

                                \[\leadsto \frac{1}{\frac{1 + k \cdot \left(k - -10\right)}{a}} \]
                              12. *-commutativeN/A

                                \[\leadsto \frac{1}{\frac{1 + \left(k - -10\right) \cdot k}{a}} \]
                              13. +-commutativeN/A

                                \[\leadsto \frac{1}{\frac{\left(k - -10\right) \cdot k + 1}{a}} \]
                              14. lift-fma.f64N/A

                                \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}} \]
                              15. lower-unsound-/.f32N/A

                                \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                              16. lower-/.f32N/A

                                \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                              17. lower-unsound-/.f64N/A

                                \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}}} \]
                              18. lower-/.f6445.3

                                \[\leadsto \frac{1}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{\color{blue}{a}}} \]
                            8. Applied rewrites45.3%

                              \[\leadsto \frac{1}{\color{blue}{\frac{\mathsf{fma}\left(k - -10, k, 1\right)}{a}}} \]

                            if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]

                            if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-/.f64N/A

                                \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                              2. lift-*.f64N/A

                                \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                              3. associate-/l*N/A

                                \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                              4. *-commutativeN/A

                                \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                              5. lower-*.f64N/A

                                \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                            3. Applied rewrites90.4%

                              \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
                              3. lower-*.f64N/A

                                \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
                              4. lower-+.f6445.3

                                \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            7. Taylor expanded in k around 0

                              \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                            8. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
                              2. lower-*.f64N/A

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
                              3. lower--.f64N/A

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                              4. lower-*.f6429.7

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                            9. Applied rewrites29.7%

                              \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                          3. Recombined 3 regimes into one program.
                          4. Add Preprocessing

                          Alternative 13: 55.7% accurate, 0.3× speedup?

                          \[\begin{array}{l} t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\ \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{\left|a\right|}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)}\\ \mathbf{elif}\;t\_0 \leq \infty:\\ \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\ \end{array} \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (let* ((t_0 (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k)))))
                             (*
                              (copysign 1.0 a)
                              (if (<= t_0 2e+301)
                                (/ (fabs a) (+ 1.0 (fma 10.0 k (* k k))))
                                (if (<= t_0 INFINITY)
                                  (* k (fma -10.0 (fabs a) (/ (fabs a) k)))
                                  (* (+ 1.0 (* k (- (* 99.0 k) 10.0))) (fabs a)))))))
                          double code(double a, double k, double m) {
                          	double t_0 = (fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
                          	double tmp;
                          	if (t_0 <= 2e+301) {
                          		tmp = fabs(a) / (1.0 + fma(10.0, k, (k * k)));
                          	} else if (t_0 <= ((double) INFINITY)) {
                          		tmp = k * fma(-10.0, fabs(a), (fabs(a) / k));
                          	} else {
                          		tmp = (1.0 + (k * ((99.0 * k) - 10.0))) * fabs(a);
                          	}
                          	return copysign(1.0, a) * tmp;
                          }
                          
                          function code(a, k, m)
                          	t_0 = Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
                          	tmp = 0.0
                          	if (t_0 <= 2e+301)
                          		tmp = Float64(abs(a) / Float64(1.0 + fma(10.0, k, Float64(k * k))));
                          	elseif (t_0 <= Inf)
                          		tmp = Float64(k * fma(-10.0, abs(a), Float64(abs(a) / k)));
                          	else
                          		tmp = Float64(Float64(1.0 + Float64(k * Float64(Float64(99.0 * k) - 10.0))) * abs(a));
                          	end
                          	return Float64(copysign(1.0, a) * tmp)
                          end
                          
                          code[a_, k_, m_] := Block[{t$95$0 = N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[t$95$0, 2e+301], N[(N[Abs[a], $MachinePrecision] / N[(1.0 + N[(10.0 * k + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t$95$0, Infinity], N[(k * N[(-10.0 * N[Abs[a], $MachinePrecision] + N[(N[Abs[a], $MachinePrecision] / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(1.0 + N[(k * N[(N[(99.0 * k), $MachinePrecision] - 10.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]]), $MachinePrecision]]
                          
                          \begin{array}{l}
                          t_0 := \frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
                          \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                          \mathbf{if}\;t\_0 \leq 2 \cdot 10^{+301}:\\
                          \;\;\;\;\frac{\left|a\right|}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)}\\
                          
                          \mathbf{elif}\;t\_0 \leq \infty:\\
                          \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot \left|a\right|\\
                          
                          
                          \end{array}
                          \end{array}
                          
                          Derivation
                          1. Split input into 3 regimes
                          2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                              2. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                              3. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                              4. pow2N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                              5. remove-double-negN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                              6. metadata-evalN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                              7. pow-subN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              8. lower-unsound-/.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              9. lower-unsound-pow.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                              10. lower-unsound-pow.f6490.3

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                            3. Applied rewrites90.3%

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                              3. lower-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                              4. lower-pow.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                            7. Step-by-step derivation
                              1. lift-pow.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                              2. pow2N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]
                              3. lower-*.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]
                            8. Applied rewrites45.3%

                              \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]

                            if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < +inf.0

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]

                            if +inf.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-/.f64N/A

                                \[\leadsto \color{blue}{\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                              2. lift-*.f64N/A

                                \[\leadsto \frac{\color{blue}{a \cdot {k}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                              3. associate-/l*N/A

                                \[\leadsto \color{blue}{a \cdot \frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}} \]
                              4. *-commutativeN/A

                                \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                              5. lower-*.f64N/A

                                \[\leadsto \color{blue}{\frac{{k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \cdot a} \]
                            3. Applied rewrites90.4%

                              \[\leadsto \color{blue}{\frac{{k}^{m}}{\mathsf{fma}\left(k - -10, k, 1\right)} \cdot a} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{1}{\color{blue}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{1}{1 + \color{blue}{k \cdot \left(10 + k\right)}} \cdot a \]
                              3. lower-*.f64N/A

                                \[\leadsto \frac{1}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \cdot a \]
                              4. lower-+.f6445.3

                                \[\leadsto \frac{1}{1 + k \cdot \left(10 + \color{blue}{k}\right)} \cdot a \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{1}{1 + k \cdot \left(10 + k\right)}} \cdot a \]
                            7. Taylor expanded in k around 0

                              \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                            8. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto \left(1 + k \cdot \color{blue}{\left(99 \cdot k - 10\right)}\right) \cdot a \]
                              2. lower-*.f64N/A

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - \color{blue}{10}\right)\right) \cdot a \]
                              3. lower--.f64N/A

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                              4. lower-*.f6429.7

                                \[\leadsto \left(1 + k \cdot \left(99 \cdot k - 10\right)\right) \cdot a \]
                            9. Applied rewrites29.7%

                              \[\leadsto \left(1 + \color{blue}{k \cdot \left(99 \cdot k - 10\right)}\right) \cdot a \]
                          3. Recombined 3 regimes into one program.
                          4. Add Preprocessing

                          Alternative 14: 50.4% accurate, 0.6× speedup?

                          \[\mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{\left|a\right|}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)}\\ \mathbf{else}:\\ \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\ \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (*
                            (copysign 1.0 a)
                            (if (<= (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))) 2e+301)
                              (/ (fabs a) (+ 1.0 (fma 10.0 k (* k k))))
                              (* k (fma -10.0 (fabs a) (/ (fabs a) k))))))
                          double code(double a, double k, double m) {
                          	double tmp;
                          	if (((fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))) <= 2e+301) {
                          		tmp = fabs(a) / (1.0 + fma(10.0, k, (k * k)));
                          	} else {
                          		tmp = k * fma(-10.0, fabs(a), (fabs(a) / k));
                          	}
                          	return copysign(1.0, a) * tmp;
                          }
                          
                          function code(a, k, m)
                          	tmp = 0.0
                          	if (Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k))) <= 2e+301)
                          		tmp = Float64(abs(a) / Float64(1.0 + fma(10.0, k, Float64(k * k))));
                          	else
                          		tmp = Float64(k * fma(-10.0, abs(a), Float64(abs(a) / k)));
                          	end
                          	return Float64(copysign(1.0, a) * tmp)
                          end
                          
                          code[a_, k_, m_] := N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 2e+301], N[(N[Abs[a], $MachinePrecision] / N[(1.0 + N[(10.0 * k + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(k * N[(-10.0 * N[Abs[a], $MachinePrecision] + N[(N[Abs[a], $MachinePrecision] / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]), $MachinePrecision]
                          
                          \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                          \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 2 \cdot 10^{+301}:\\
                          \;\;\;\;\frac{\left|a\right|}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)}\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\
                          
                          
                          \end{array}
                          
                          Derivation
                          1. Split input into 2 regimes
                          2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                              2. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                              3. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                              4. pow2N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                              5. remove-double-negN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                              6. metadata-evalN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                              7. pow-subN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              8. lower-unsound-/.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              9. lower-unsound-pow.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                              10. lower-unsound-pow.f6490.3

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                            3. Applied rewrites90.3%

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                              3. lower-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                              4. lower-pow.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                            7. Step-by-step derivation
                              1. lift-pow.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                              2. pow2N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]
                              3. lower-*.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]
                            8. Applied rewrites45.3%

                              \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, k \cdot k\right)} \]

                            if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]
                          3. Recombined 2 regimes into one program.
                          4. Add Preprocessing

                          Alternative 15: 50.0% accurate, 0.6× speedup?

                          \[\mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 2 \cdot 10^{+301}:\\ \;\;\;\;\frac{\left|a\right|}{\mathsf{fma}\left(k - -10, k, 1\right)}\\ \mathbf{else}:\\ \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\ \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (*
                            (copysign 1.0 a)
                            (if (<= (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))) 2e+301)
                              (/ (fabs a) (fma (- k -10.0) k 1.0))
                              (* k (fma -10.0 (fabs a) (/ (fabs a) k))))))
                          double code(double a, double k, double m) {
                          	double tmp;
                          	if (((fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))) <= 2e+301) {
                          		tmp = fabs(a) / fma((k - -10.0), k, 1.0);
                          	} else {
                          		tmp = k * fma(-10.0, fabs(a), (fabs(a) / k));
                          	}
                          	return copysign(1.0, a) * tmp;
                          }
                          
                          function code(a, k, m)
                          	tmp = 0.0
                          	if (Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k))) <= 2e+301)
                          		tmp = Float64(abs(a) / fma(Float64(k - -10.0), k, 1.0));
                          	else
                          		tmp = Float64(k * fma(-10.0, abs(a), Float64(abs(a) / k)));
                          	end
                          	return Float64(copysign(1.0, a) * tmp)
                          end
                          
                          code[a_, k_, m_] := N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 2e+301], N[(N[Abs[a], $MachinePrecision] / N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision]), $MachinePrecision], N[(k * N[(-10.0 * N[Abs[a], $MachinePrecision] + N[(N[Abs[a], $MachinePrecision] / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]), $MachinePrecision]
                          
                          \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                          \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 2 \cdot 10^{+301}:\\
                          \;\;\;\;\frac{\left|a\right|}{\mathsf{fma}\left(k - -10, k, 1\right)}\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;k \cdot \mathsf{fma}\left(-10, \left|a\right|, \frac{\left|a\right|}{k}\right)\\
                          
                          
                          \end{array}
                          
                          Derivation
                          1. Split input into 2 regimes
                          2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 2.00000000000000011e301

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                              2. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                              3. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                              4. pow2N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                              5. remove-double-negN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                              6. metadata-evalN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                              7. pow-subN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              8. lower-unsound-/.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              9. lower-unsound-pow.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                              10. lower-unsound-pow.f6490.3

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                            3. Applied rewrites90.3%

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                              3. lower-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                              4. lower-pow.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                            7. Step-by-step derivation
                              1. lift-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                              2. lift-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \left(10 \cdot k + \color{blue}{{k}^{2}}\right)} \]
                              3. lift-pow.f64N/A

                                \[\leadsto \frac{a}{1 + \left(10 \cdot k + {k}^{\color{blue}{2}}\right)} \]
                              4. pow2N/A

                                \[\leadsto \frac{a}{1 + \left(10 \cdot k + k \cdot \color{blue}{k}\right)} \]
                              5. distribute-rgt-inN/A

                                \[\leadsto \frac{a}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \]
                              6. +-commutativeN/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k + \color{blue}{10}\right)} \]
                              7. metadata-evalN/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k + \left(\mathsf{neg}\left(-10\right)\right)\right)} \]
                              8. sub-flipN/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k - \color{blue}{-10}\right)} \]
                              9. lift--.f64N/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k - \color{blue}{-10}\right)} \]
                              10. *-commutativeN/A

                                \[\leadsto \frac{a}{1 + \left(k - -10\right) \cdot \color{blue}{k}} \]
                              11. +-commutativeN/A

                                \[\leadsto \frac{a}{\left(k - -10\right) \cdot k + \color{blue}{1}} \]
                              12. lift-fma.f6445.3

                                \[\leadsto \frac{a}{\mathsf{fma}\left(k - -10, \color{blue}{k}, 1\right)} \]
                            8. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{\mathsf{fma}\left(k - -10, k, 1\right)}} \]

                            if 2.00000000000000011e301 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]
                          3. Recombined 2 regimes into one program.
                          4. Add Preprocessing

                          Alternative 16: 50.0% accurate, 2.2× speedup?

                          \[\begin{array}{l} \mathbf{if}\;m \leq 4 \cdot 10^{+17}:\\ \;\;\;\;\frac{a}{\mathsf{fma}\left(k - -10, k, 1\right)}\\ \mathbf{else}:\\ \;\;\;\;k \cdot \left(-10 \cdot a\right)\\ \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (if (<= m 4e+17) (/ a (fma (- k -10.0) k 1.0)) (* k (* -10.0 a))))
                          double code(double a, double k, double m) {
                          	double tmp;
                          	if (m <= 4e+17) {
                          		tmp = a / fma((k - -10.0), k, 1.0);
                          	} else {
                          		tmp = k * (-10.0 * a);
                          	}
                          	return tmp;
                          }
                          
                          function code(a, k, m)
                          	tmp = 0.0
                          	if (m <= 4e+17)
                          		tmp = Float64(a / fma(Float64(k - -10.0), k, 1.0));
                          	else
                          		tmp = Float64(k * Float64(-10.0 * a));
                          	end
                          	return tmp
                          end
                          
                          code[a_, k_, m_] := If[LessEqual[m, 4e+17], N[(a / N[(N[(k - -10.0), $MachinePrecision] * k + 1.0), $MachinePrecision]), $MachinePrecision], N[(k * N[(-10.0 * a), $MachinePrecision]), $MachinePrecision]]
                          
                          \begin{array}{l}
                          \mathbf{if}\;m \leq 4 \cdot 10^{+17}:\\
                          \;\;\;\;\frac{a}{\mathsf{fma}\left(k - -10, k, 1\right)}\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;k \cdot \left(-10 \cdot a\right)\\
                          
                          
                          \end{array}
                          
                          Derivation
                          1. Split input into 2 regimes
                          2. if m < 4e17

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Step-by-step derivation
                              1. lift-*.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{k \cdot k}} \]
                              2. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(k\right)\right) \cdot \left(\mathsf{neg}\left(k\right)\right)}} \]
                              3. sqr-neg-revN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right) \cdot \left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}} \]
                              4. pow2N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{{\left(\mathsf{neg}\left(\left(\mathsf{neg}\left(k\right)\right)\right)\right)}^{2}}} \]
                              5. remove-double-negN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {\color{blue}{k}}^{2}} \]
                              6. metadata-evalN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + {k}^{\color{blue}{\left(1 - -1\right)}}} \]
                              7. pow-subN/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              8. lower-unsound-/.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                              9. lower-unsound-pow.f64N/A

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{\color{blue}{{k}^{1}}}{{k}^{-1}}} \]
                              10. lower-unsound-pow.f6490.3

                                \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \frac{{k}^{1}}{\color{blue}{{k}^{-1}}}} \]
                            3. Applied rewrites90.3%

                              \[\leadsto \frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + \color{blue}{\frac{{k}^{1}}{{k}^{-1}}}} \]
                            4. Taylor expanded in m around 0

                              \[\leadsto \color{blue}{\frac{a}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                            5. Step-by-step derivation
                              1. lower-/.f64N/A

                                \[\leadsto \frac{a}{\color{blue}{1 + \left(10 \cdot k + {k}^{2}\right)}} \]
                              2. lower-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\left(10 \cdot k + {k}^{2}\right)}} \]
                              3. lower-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, \color{blue}{k}, {k}^{2}\right)} \]
                              4. lower-pow.f6445.3

                                \[\leadsto \frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)} \]
                            6. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{1 + \mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                            7. Step-by-step derivation
                              1. lift-+.f64N/A

                                \[\leadsto \frac{a}{1 + \color{blue}{\mathsf{fma}\left(10, k, {k}^{2}\right)}} \]
                              2. lift-fma.f64N/A

                                \[\leadsto \frac{a}{1 + \left(10 \cdot k + \color{blue}{{k}^{2}}\right)} \]
                              3. lift-pow.f64N/A

                                \[\leadsto \frac{a}{1 + \left(10 \cdot k + {k}^{\color{blue}{2}}\right)} \]
                              4. pow2N/A

                                \[\leadsto \frac{a}{1 + \left(10 \cdot k + k \cdot \color{blue}{k}\right)} \]
                              5. distribute-rgt-inN/A

                                \[\leadsto \frac{a}{1 + k \cdot \color{blue}{\left(10 + k\right)}} \]
                              6. +-commutativeN/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k + \color{blue}{10}\right)} \]
                              7. metadata-evalN/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k + \left(\mathsf{neg}\left(-10\right)\right)\right)} \]
                              8. sub-flipN/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k - \color{blue}{-10}\right)} \]
                              9. lift--.f64N/A

                                \[\leadsto \frac{a}{1 + k \cdot \left(k - \color{blue}{-10}\right)} \]
                              10. *-commutativeN/A

                                \[\leadsto \frac{a}{1 + \left(k - -10\right) \cdot \color{blue}{k}} \]
                              11. +-commutativeN/A

                                \[\leadsto \frac{a}{\left(k - -10\right) \cdot k + \color{blue}{1}} \]
                              12. lift-fma.f6445.3

                                \[\leadsto \frac{a}{\mathsf{fma}\left(k - -10, \color{blue}{k}, 1\right)} \]
                            8. Applied rewrites45.3%

                              \[\leadsto \color{blue}{\frac{a}{\mathsf{fma}\left(k - -10, k, 1\right)}} \]

                            if 4e17 < m

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]
                            11. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                            12. Step-by-step derivation
                              1. lower-*.f647.9

                                \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                            13. Applied rewrites7.9%

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                          3. Recombined 2 regimes into one program.
                          4. Add Preprocessing

                          Alternative 17: 25.3% accurate, 0.6× speedup?

                          \[\mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 0:\\ \;\;\;\;k \cdot \left(-10 \cdot \left|a\right|\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\left|a\right| \cdot -10, k, \left|a\right|\right)\\ \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (*
                            (copysign 1.0 a)
                            (if (<= (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))) 0.0)
                              (* k (* -10.0 (fabs a)))
                              (fma (* (fabs a) -10.0) k (fabs a)))))
                          double code(double a, double k, double m) {
                          	double tmp;
                          	if (((fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))) <= 0.0) {
                          		tmp = k * (-10.0 * fabs(a));
                          	} else {
                          		tmp = fma((fabs(a) * -10.0), k, fabs(a));
                          	}
                          	return copysign(1.0, a) * tmp;
                          }
                          
                          function code(a, k, m)
                          	tmp = 0.0
                          	if (Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k))) <= 0.0)
                          		tmp = Float64(k * Float64(-10.0 * abs(a)));
                          	else
                          		tmp = fma(Float64(abs(a) * -10.0), k, abs(a));
                          	end
                          	return Float64(copysign(1.0, a) * tmp)
                          end
                          
                          code[a_, k_, m_] := N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 0.0], N[(k * N[(-10.0 * N[Abs[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(N[Abs[a], $MachinePrecision] * -10.0), $MachinePrecision] * k + N[Abs[a], $MachinePrecision]), $MachinePrecision]]), $MachinePrecision]
                          
                          \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                          \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 0:\\
                          \;\;\;\;k \cdot \left(-10 \cdot \left|a\right|\right)\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\mathsf{fma}\left(\left|a\right| \cdot -10, k, \left|a\right|\right)\\
                          
                          
                          \end{array}
                          
                          Derivation
                          1. Split input into 2 regimes
                          2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]
                            11. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                            12. Step-by-step derivation
                              1. lower-*.f647.9

                                \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                            13. Applied rewrites7.9%

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]

                            if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Step-by-step derivation
                              1. lift-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. +-commutativeN/A

                                \[\leadsto -10 \cdot \left(a \cdot k\right) + a \]
                              3. lift-*.f64N/A

                                \[\leadsto -10 \cdot \left(a \cdot k\right) + a \]
                              4. lift-*.f64N/A

                                \[\leadsto -10 \cdot \left(a \cdot k\right) + a \]
                              5. associate-*r*N/A

                                \[\leadsto \left(-10 \cdot a\right) \cdot k + a \]
                              6. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10 \cdot a, k, a\right) \]
                              7. *-commutativeN/A

                                \[\leadsto \mathsf{fma}\left(a \cdot -10, k, a\right) \]
                              8. lower-*.f6421.5

                                \[\leadsto \mathsf{fma}\left(a \cdot -10, k, a\right) \]
                            9. Applied rewrites21.5%

                              \[\leadsto \mathsf{fma}\left(a \cdot -10, k, a\right) \]
                          3. Recombined 2 regimes into one program.
                          4. Add Preprocessing

                          Alternative 18: 25.3% accurate, 0.6× speedup?

                          \[\mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l} \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 0:\\ \;\;\;\;k \cdot \left(-10 \cdot \left|a\right|\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(-10, k, 1\right) \cdot \left|a\right|\\ \end{array} \]
                          (FPCore (a k m)
                           :precision binary64
                           (*
                            (copysign 1.0 a)
                            (if (<= (/ (* (fabs a) (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))) 0.0)
                              (* k (* -10.0 (fabs a)))
                              (* (fma -10.0 k 1.0) (fabs a)))))
                          double code(double a, double k, double m) {
                          	double tmp;
                          	if (((fabs(a) * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))) <= 0.0) {
                          		tmp = k * (-10.0 * fabs(a));
                          	} else {
                          		tmp = fma(-10.0, k, 1.0) * fabs(a);
                          	}
                          	return copysign(1.0, a) * tmp;
                          }
                          
                          function code(a, k, m)
                          	tmp = 0.0
                          	if (Float64(Float64(abs(a) * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k))) <= 0.0)
                          		tmp = Float64(k * Float64(-10.0 * abs(a)));
                          	else
                          		tmp = Float64(fma(-10.0, k, 1.0) * abs(a));
                          	end
                          	return Float64(copysign(1.0, a) * tmp)
                          end
                          
                          code[a_, k_, m_] := N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[a]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[N[(N[(N[Abs[a], $MachinePrecision] * N[Power[k, m], $MachinePrecision]), $MachinePrecision] / N[(N[(1.0 + N[(10.0 * k), $MachinePrecision]), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 0.0], N[(k * N[(-10.0 * N[Abs[a], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(-10.0 * k + 1.0), $MachinePrecision] * N[Abs[a], $MachinePrecision]), $MachinePrecision]]), $MachinePrecision]
                          
                          \mathsf{copysign}\left(1, a\right) \cdot \begin{array}{l}
                          \mathbf{if}\;\frac{\left|a\right| \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \leq 0:\\
                          \;\;\;\;k \cdot \left(-10 \cdot \left|a\right|\right)\\
                          
                          \mathbf{else}:\\
                          \;\;\;\;\mathsf{fma}\left(-10, k, 1\right) \cdot \left|a\right|\\
                          
                          
                          \end{array}
                          
                          Derivation
                          1. Split input into 2 regimes
                          2. if (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k))) < 0.0

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                            9. Step-by-step derivation
                              1. lower-*.f64N/A

                                \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                              2. lower-fma.f64N/A

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                              3. lower-/.f6420.3

                                \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            10. Applied rewrites20.3%

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]
                            11. Taylor expanded in k around inf

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                            12. Step-by-step derivation
                              1. lower-*.f647.9

                                \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                            13. Applied rewrites7.9%

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]

                            if 0.0 < (/.f64 (*.f64 a (pow.f64 k m)) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 10 binary64) k)) (*.f64 k k)))

                            1. Initial program 90.4%

                              \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                            2. Taylor expanded in k around 0

                              \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                            3. Step-by-step derivation
                              1. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              2. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                              3. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                              4. lower-pow.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                              5. lower-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                              6. lower-pow.f6464.7

                                \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            4. Applied rewrites64.7%

                              \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                            5. Taylor expanded in m around 0

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            6. Step-by-step derivation
                              1. lower-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. lower-*.f64N/A

                                \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                              3. lower-*.f6421.5

                                \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                            7. Applied rewrites21.5%

                              \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                            8. Step-by-step derivation
                              1. lift-+.f64N/A

                                \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                              2. +-commutativeN/A

                                \[\leadsto -10 \cdot \left(a \cdot k\right) + a \]
                              3. lift-*.f64N/A

                                \[\leadsto -10 \cdot \left(a \cdot k\right) + a \]
                              4. lift-*.f64N/A

                                \[\leadsto -10 \cdot \left(a \cdot k\right) + a \]
                              5. *-commutativeN/A

                                \[\leadsto -10 \cdot \left(k \cdot a\right) + a \]
                              6. associate-*r*N/A

                                \[\leadsto \left(-10 \cdot k\right) \cdot a + a \]
                              7. metadata-evalN/A

                                \[\leadsto \left(\left(\mathsf{neg}\left(10\right)\right) \cdot k\right) \cdot a + a \]
                              8. distribute-lft-neg-outN/A

                                \[\leadsto \left(\mathsf{neg}\left(10 \cdot k\right)\right) \cdot a + a \]
                              9. lift-*.f64N/A

                                \[\leadsto \left(\mathsf{neg}\left(10 \cdot k\right)\right) \cdot a + a \]
                              10. lower-fma.f64N/A

                                \[\leadsto \mathsf{fma}\left(\mathsf{neg}\left(10 \cdot k\right), a, a\right) \]
                              11. lift-*.f64N/A

                                \[\leadsto \mathsf{fma}\left(\mathsf{neg}\left(10 \cdot k\right), a, a\right) \]
                              12. distribute-lft-neg-outN/A

                                \[\leadsto \mathsf{fma}\left(\left(\mathsf{neg}\left(10\right)\right) \cdot k, a, a\right) \]
                              13. metadata-evalN/A

                                \[\leadsto \mathsf{fma}\left(-10 \cdot k, a, a\right) \]
                              14. lower-*.f6421.5

                                \[\leadsto \mathsf{fma}\left(-10 \cdot k, a, a\right) \]
                            9. Applied rewrites21.5%

                              \[\leadsto \mathsf{fma}\left(-10 \cdot k, a, a\right) \]
                            10. Step-by-step derivation
                              1. lift-fma.f64N/A

                                \[\leadsto \left(-10 \cdot k\right) \cdot a + a \]
                              2. distribute-lft1-inN/A

                                \[\leadsto \left(-10 \cdot k + 1\right) \cdot a \]
                              3. lower-*.f64N/A

                                \[\leadsto \left(-10 \cdot k + 1\right) \cdot a \]
                              4. lift-*.f64N/A

                                \[\leadsto \left(-10 \cdot k + 1\right) \cdot a \]
                              5. lower-fma.f6421.5

                                \[\leadsto \mathsf{fma}\left(-10, k, 1\right) \cdot a \]
                            11. Applied rewrites21.5%

                              \[\leadsto \mathsf{fma}\left(-10, k, 1\right) \cdot a \]
                          3. Recombined 2 regimes into one program.
                          4. Add Preprocessing

                          Alternative 19: 7.9% accurate, 5.0× speedup?

                          \[k \cdot \left(-10 \cdot a\right) \]
                          (FPCore (a k m) :precision binary64 (* k (* -10.0 a)))
                          double code(double a, double k, double m) {
                          	return k * (-10.0 * a);
                          }
                          
                          module fmin_fmax_functions
                              implicit none
                              private
                              public fmax
                              public fmin
                          
                              interface fmax
                                  module procedure fmax88
                                  module procedure fmax44
                                  module procedure fmax84
                                  module procedure fmax48
                              end interface
                              interface fmin
                                  module procedure fmin88
                                  module procedure fmin44
                                  module procedure fmin84
                                  module procedure fmin48
                              end interface
                          contains
                              real(8) function fmax88(x, y) result (res)
                                  real(8), intent (in) :: x
                                  real(8), intent (in) :: y
                                  res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                              end function
                              real(4) function fmax44(x, y) result (res)
                                  real(4), intent (in) :: x
                                  real(4), intent (in) :: y
                                  res = merge(y, merge(x, max(x, y), y /= y), x /= x)
                              end function
                              real(8) function fmax84(x, y) result(res)
                                  real(8), intent (in) :: x
                                  real(4), intent (in) :: y
                                  res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
                              end function
                              real(8) function fmax48(x, y) result(res)
                                  real(4), intent (in) :: x
                                  real(8), intent (in) :: y
                                  res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
                              end function
                              real(8) function fmin88(x, y) result (res)
                                  real(8), intent (in) :: x
                                  real(8), intent (in) :: y
                                  res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                              end function
                              real(4) function fmin44(x, y) result (res)
                                  real(4), intent (in) :: x
                                  real(4), intent (in) :: y
                                  res = merge(y, merge(x, min(x, y), y /= y), x /= x)
                              end function
                              real(8) function fmin84(x, y) result(res)
                                  real(8), intent (in) :: x
                                  real(4), intent (in) :: y
                                  res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
                              end function
                              real(8) function fmin48(x, y) result(res)
                                  real(4), intent (in) :: x
                                  real(8), intent (in) :: y
                                  res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
                              end function
                          end module
                          
                          real(8) function code(a, k, m)
                          use fmin_fmax_functions
                              real(8), intent (in) :: a
                              real(8), intent (in) :: k
                              real(8), intent (in) :: m
                              code = k * ((-10.0d0) * a)
                          end function
                          
                          public static double code(double a, double k, double m) {
                          	return k * (-10.0 * a);
                          }
                          
                          def code(a, k, m):
                          	return k * (-10.0 * a)
                          
                          function code(a, k, m)
                          	return Float64(k * Float64(-10.0 * a))
                          end
                          
                          function tmp = code(a, k, m)
                          	tmp = k * (-10.0 * a);
                          end
                          
                          code[a_, k_, m_] := N[(k * N[(-10.0 * a), $MachinePrecision]), $MachinePrecision]
                          
                          k \cdot \left(-10 \cdot a\right)
                          
                          Derivation
                          1. Initial program 90.4%

                            \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
                          2. Taylor expanded in k around 0

                            \[\leadsto \color{blue}{-10 \cdot \left(a \cdot \left(k \cdot {k}^{m}\right)\right) + a \cdot {k}^{m}} \]
                          3. Step-by-step derivation
                            1. lower-fma.f64N/A

                              \[\leadsto \mathsf{fma}\left(-10, \color{blue}{a \cdot \left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                            2. lower-*.f64N/A

                              \[\leadsto \mathsf{fma}\left(-10, a \cdot \color{blue}{\left(k \cdot {k}^{m}\right)}, a \cdot {k}^{m}\right) \]
                            3. lower-*.f64N/A

                              \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot \color{blue}{{k}^{m}}\right), a \cdot {k}^{m}\right) \]
                            4. lower-pow.f64N/A

                              \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{\color{blue}{m}}\right), a \cdot {k}^{m}\right) \]
                            5. lower-*.f64N/A

                              \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                            6. lower-pow.f6464.7

                              \[\leadsto \mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right) \]
                          4. Applied rewrites64.7%

                            \[\leadsto \color{blue}{\mathsf{fma}\left(-10, a \cdot \left(k \cdot {k}^{m}\right), a \cdot {k}^{m}\right)} \]
                          5. Taylor expanded in m around 0

                            \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                          6. Step-by-step derivation
                            1. lower-+.f64N/A

                              \[\leadsto a + -10 \cdot \color{blue}{\left(a \cdot k\right)} \]
                            2. lower-*.f64N/A

                              \[\leadsto a + -10 \cdot \left(a \cdot \color{blue}{k}\right) \]
                            3. lower-*.f6421.5

                              \[\leadsto a + -10 \cdot \left(a \cdot k\right) \]
                          7. Applied rewrites21.5%

                            \[\leadsto a + \color{blue}{-10 \cdot \left(a \cdot k\right)} \]
                          8. Taylor expanded in k around inf

                            \[\leadsto k \cdot \left(-10 \cdot a + \color{blue}{\frac{a}{k}}\right) \]
                          9. Step-by-step derivation
                            1. lower-*.f64N/A

                              \[\leadsto k \cdot \left(-10 \cdot a + \frac{a}{\color{blue}{k}}\right) \]
                            2. lower-fma.f64N/A

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                            3. lower-/.f6420.3

                              \[\leadsto k \cdot \mathsf{fma}\left(-10, a, \frac{a}{k}\right) \]
                          10. Applied rewrites20.3%

                            \[\leadsto k \cdot \mathsf{fma}\left(-10, \color{blue}{a}, \frac{a}{k}\right) \]
                          11. Taylor expanded in k around inf

                            \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                          12. Step-by-step derivation
                            1. lower-*.f647.9

                              \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                          13. Applied rewrites7.9%

                            \[\leadsto k \cdot \left(-10 \cdot a\right) \]
                          14. Add Preprocessing

                          Reproduce

                          ?
                          herbie shell --seed 2025175 
                          (FPCore (a k m)
                            :name "Falkner and Boettcher, Appendix A"
                            :precision binary64
                            (/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))