?

Average Error: 3.18% → 0.13%
Time: 15.1s
Precision: binary64
Cost: 13572

?

\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
\[\begin{array}{l} \mathbf{if}\;k \leq 1.1 \cdot 10^{+123}:\\ \;\;\;\;a \cdot \frac{{k}^{m}}{\mathsf{fma}\left(k, k + 10, 1\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k} \cdot \frac{{k}^{m}}{k}\\ \end{array} \]
(FPCore (a k m)
 :precision binary64
 (/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))
(FPCore (a k m)
 :precision binary64
 (if (<= k 1.1e+123)
   (* a (/ (pow k m) (fma k (+ k 10.0) 1.0)))
   (* (/ a k) (/ (pow k m) k))))
double code(double a, double k, double m) {
	return (a * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k));
}
double code(double a, double k, double m) {
	double tmp;
	if (k <= 1.1e+123) {
		tmp = a * (pow(k, m) / fma(k, (k + 10.0), 1.0));
	} else {
		tmp = (a / k) * (pow(k, m) / k);
	}
	return tmp;
}
function code(a, k, m)
	return Float64(Float64(a * (k ^ m)) / Float64(Float64(1.0 + Float64(10.0 * k)) + Float64(k * k)))
end
function code(a, k, m)
	tmp = 0.0
	if (k <= 1.1e+123)
		tmp = Float64(a * Float64((k ^ m) / fma(k, Float64(k + 10.0), 1.0)));
	else
		tmp = Float64(Float64(a / k) * Float64((k ^ m) / k));
	end
	return tmp
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]
code[a_, k_, m_] := If[LessEqual[k, 1.1e+123], N[(a * N[(N[Power[k, m], $MachinePrecision] / N[(k * N[(k + 10.0), $MachinePrecision] + 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(a / k), $MachinePrecision] * N[(N[Power[k, m], $MachinePrecision] / k), $MachinePrecision]), $MachinePrecision]]
\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}
\begin{array}{l}
\mathbf{if}\;k \leq 1.1 \cdot 10^{+123}:\\
\;\;\;\;a \cdot \frac{{k}^{m}}{\mathsf{fma}\left(k, k + 10, 1\right)}\\

\mathbf{else}:\\
\;\;\;\;\frac{a}{k} \cdot \frac{{k}^{m}}{k}\\


\end{array}

Error?

Derivation?

  1. Split input into 2 regimes
  2. if k < 1.09999999999999996e123

    1. Initial program 0.08

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

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

      [Start]0.08

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

      associate-*r/ [<=]0.12

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

      associate-+l+ [=>]0.11

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

      +-commutative [=>]0.11

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

      distribute-rgt-out [=>]0.1

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

      fma-def [=>]0.1

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

      +-commutative [=>]0.1

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

    if 1.09999999999999996e123 < k

    1. Initial program 14.05

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

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

      [Start]14.05

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

      *-commutative [=>]14.05

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

      associate-*r/ [<=]14.13

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

      associate-+l+ [=>]14.13

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

      +-commutative [=>]14.13

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

      distribute-rgt-out [=>]14.13

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

      fma-def [=>]14.13

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

      +-commutative [=>]14.13

      \[ {k}^{m} \cdot \frac{a}{\mathsf{fma}\left(k, \color{blue}{k + 10}, 1\right)} \]
    3. Taylor expanded in k around inf 14.06

      \[\leadsto \color{blue}{\frac{a \cdot e^{-1 \cdot \left(\log \left(\frac{1}{k}\right) \cdot m\right)}}{{k}^{2}}} \]
    4. Simplified0.23

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

      [Start]14.06

      \[ \frac{a \cdot e^{-1 \cdot \left(\log \left(\frac{1}{k}\right) \cdot m\right)}}{{k}^{2}} \]

      unpow2 [=>]14.06

      \[ \frac{a \cdot e^{-1 \cdot \left(\log \left(\frac{1}{k}\right) \cdot m\right)}}{\color{blue}{k \cdot k}} \]

      times-frac [=>]0.25

      \[ \color{blue}{\frac{a}{k} \cdot \frac{e^{-1 \cdot \left(\log \left(\frac{1}{k}\right) \cdot m\right)}}{k}} \]

      mul-1-neg [=>]0.25

      \[ \frac{a}{k} \cdot \frac{e^{\color{blue}{-\log \left(\frac{1}{k}\right) \cdot m}}}{k} \]

      exp-neg [=>]0.25

      \[ \frac{a}{k} \cdot \frac{\color{blue}{\frac{1}{e^{\log \left(\frac{1}{k}\right) \cdot m}}}}{k} \]

      log-rec [=>]0.25

      \[ \frac{a}{k} \cdot \frac{\frac{1}{e^{\color{blue}{\left(-\log k\right)} \cdot m}}}{k} \]

      distribute-lft-neg-out [=>]0.25

      \[ \frac{a}{k} \cdot \frac{\frac{1}{e^{\color{blue}{-\log k \cdot m}}}}{k} \]

      rec-exp [<=]0.25

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

      exp-to-pow [=>]0.23

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

      associate-/l* [<=]0.23

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

      associate-*r/ [<=]0.23

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

      /-rgt-identity [=>]0.23

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

      *-lft-identity [=>]0.23

      \[ \frac{a}{k} \cdot \frac{\color{blue}{{k}^{m}}}{k} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.13

    \[\leadsto \begin{array}{l} \mathbf{if}\;k \leq 1.1 \cdot 10^{+123}:\\ \;\;\;\;a \cdot \frac{{k}^{m}}{\mathsf{fma}\left(k, k + 10, 1\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k} \cdot \frac{{k}^{m}}{k}\\ \end{array} \]

Alternatives

Alternative 1
Error0.13%
Cost7428
\[\begin{array}{l} \mathbf{if}\;k \leq 10^{+122}:\\ \;\;\;\;\frac{a}{\frac{1 + \left(k \cdot 10 + k \cdot k\right)}{{k}^{m}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k} \cdot \frac{{k}^{m}}{k}\\ \end{array} \]
Alternative 2
Error0.23%
Cost7300
\[\begin{array}{l} \mathbf{if}\;k \leq 10^{+30}:\\ \;\;\;\;\frac{{k}^{m}}{\frac{1 + k \cdot \left(k + 10\right)}{a}}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k} \cdot \frac{{k}^{m}}{k}\\ \end{array} \]
Alternative 3
Error1.35%
Cost7172
\[\begin{array}{l} \mathbf{if}\;k \leq 0.098:\\ \;\;\;\;a \cdot {k}^{m}\\ \mathbf{else}:\\ \;\;\;\;\frac{{k}^{m}}{\frac{k}{\frac{a}{k + 10}}}\\ \end{array} \]
Alternative 4
Error1.4%
Cost7044
\[\begin{array}{l} \mathbf{if}\;k \leq 1:\\ \;\;\;\;a \cdot {k}^{m}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k} \cdot \frac{{k}^{m}}{k}\\ \end{array} \]
Alternative 5
Error4.04%
Cost6921
\[\begin{array}{l} \mathbf{if}\;m \leq -3 \cdot 10^{-10} \lor \neg \left(m \leq 5.2 \cdot 10^{-5}\right):\\ \;\;\;\;a \cdot {k}^{m}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \end{array} \]
Alternative 6
Error27.1%
Cost964
\[\begin{array}{l} \mathbf{if}\;m \leq -1.2:\\ \;\;\;\;\frac{-10}{k} \cdot \left(\left(1 + \frac{a}{k \cdot k}\right) + -1\right)\\ \mathbf{elif}\;m \leq 10^{+27}:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + a \cdot \frac{0.1}{k}\right) + -1\\ \end{array} \]
Alternative 7
Error31.46%
Cost841
\[\begin{array}{l} \mathbf{if}\;m \leq -0.76 \lor \neg \left(m \leq 9.5 \cdot 10^{+26}\right):\\ \;\;\;\;\left(1 + a \cdot \frac{0.1}{k}\right) + -1\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{1 + k \cdot k}\\ \end{array} \]
Alternative 8
Error28.3%
Cost840
\[\begin{array}{l} \mathbf{if}\;m \leq -0.75:\\ \;\;\;\;\left(1 + \frac{a}{k \cdot k}\right) + -1\\ \mathbf{elif}\;m \leq 9.5 \cdot 10^{+26}:\\ \;\;\;\;\frac{a}{1 + k \cdot k}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + a \cdot \frac{0.1}{k}\right) + -1\\ \end{array} \]
Alternative 9
Error27.12%
Cost840
\[\begin{array}{l} \mathbf{if}\;m \leq -0.65:\\ \;\;\;\;\left(1 + \frac{a}{k \cdot k}\right) + -1\\ \mathbf{elif}\;m \leq 9.8 \cdot 10^{+26}:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \mathbf{else}:\\ \;\;\;\;\left(1 + a \cdot \frac{0.1}{k}\right) + -1\\ \end{array} \]
Alternative 10
Error37.15%
Cost712
\[\begin{array}{l} \mathbf{if}\;k \leq -0.43:\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{elif}\;k \leq 0.098:\\ \;\;\;\;a + -10 \cdot \left(k \cdot a\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{a}{k}}{k}\\ \end{array} \]
Alternative 11
Error37.21%
Cost712
\[\begin{array}{l} \mathbf{if}\;k \leq -2.7 \cdot 10^{+52}:\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{elif}\;k \leq 10:\\ \;\;\;\;\frac{a}{1 + k \cdot 10}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{a}{k}}{k}\\ \end{array} \]
Alternative 12
Error37.06%
Cost644
\[\begin{array}{l} \mathbf{if}\;k \leq 0.1:\\ \;\;\;\;\frac{a}{1 + k \cdot k}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{-a}{-10 - k}}{k}\\ \end{array} \]
Alternative 13
Error61.76%
Cost585
\[\begin{array}{l} \mathbf{if}\;k \leq -0.1 \lor \neg \left(k \leq 0.1\right):\\ \;\;\;\;\frac{a}{k \cdot 10}\\ \mathbf{else}:\\ \;\;\;\;a\\ \end{array} \]
Alternative 14
Error38.88%
Cost585
\[\begin{array}{l} \mathbf{if}\;k \leq -1 \lor \neg \left(k \leq 1\right):\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{else}:\\ \;\;\;\;a\\ \end{array} \]
Alternative 15
Error37.37%
Cost584
\[\begin{array}{l} \mathbf{if}\;k \leq -1:\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{elif}\;k \leq 1:\\ \;\;\;\;a\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{a}{k}}{k}\\ \end{array} \]
Alternative 16
Error37.38%
Cost580
\[\begin{array}{l} \mathbf{if}\;k \leq 7.2 \cdot 10^{+121}:\\ \;\;\;\;\frac{a}{1 + k \cdot k}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{a}{k}}{k}\\ \end{array} \]
Alternative 17
Error73.41%
Cost64
\[a \]

Error

Reproduce?

herbie shell --seed 2023102 
(FPCore (a k m)
  :name "Falkner and Boettcher, Appendix A"
  :precision binary64
  (/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))