?

Average Accuracy: 96.7% → 99.9%
Time: 14.8s
Precision: binary64
Cost: 13700

?

\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k} \]
\[\begin{array}{l} \mathbf{if}\;k \leq 10^{+142}:\\ \;\;\;\;\frac{a}{\frac{1 + \left(k \cdot 10 + k \cdot k\right)}{{k}^{m}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k} \cdot \frac{{\left(-{\left(\frac{-1}{k}\right)}^{-1}\right)}^{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 1e+142)
   (/ a (/ (+ 1.0 (+ (* k 10.0) (* k k))) (pow k m)))
   (* (/ a k) (/ (pow (- (pow (/ -1.0 k) -1.0)) 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 <= 1e+142) {
		tmp = a / ((1.0 + ((k * 10.0) + (k * k))) / pow(k, m));
	} else {
		tmp = (a / k) * (pow(-pow((-1.0 / k), -1.0), m) / k);
	}
	return tmp;
}
real(8) function code(a, k, m)
    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
real(8) function code(a, k, m)
    real(8), intent (in) :: a
    real(8), intent (in) :: k
    real(8), intent (in) :: m
    real(8) :: tmp
    if (k <= 1d+142) then
        tmp = a / ((1.0d0 + ((k * 10.0d0) + (k * k))) / (k ** m))
    else
        tmp = (a / k) * ((-(((-1.0d0) / k) ** (-1.0d0)) ** m) / k)
    end if
    code = tmp
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));
}
public static double code(double a, double k, double m) {
	double tmp;
	if (k <= 1e+142) {
		tmp = a / ((1.0 + ((k * 10.0) + (k * k))) / Math.pow(k, m));
	} else {
		tmp = (a / k) * (Math.pow(-Math.pow((-1.0 / k), -1.0), m) / k);
	}
	return tmp;
}
def code(a, k, m):
	return (a * math.pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k))
def code(a, k, m):
	tmp = 0
	if k <= 1e+142:
		tmp = a / ((1.0 + ((k * 10.0) + (k * k))) / math.pow(k, m))
	else:
		tmp = (a / k) * (math.pow(-math.pow((-1.0 / k), -1.0), 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 <= 1e+142)
		tmp = Float64(a / Float64(Float64(1.0 + Float64(Float64(k * 10.0) + Float64(k * k))) / (k ^ m)));
	else
		tmp = Float64(Float64(a / k) * Float64((Float64(-(Float64(-1.0 / k) ^ -1.0)) ^ m) / k));
	end
	return tmp
end
function tmp = code(a, k, m)
	tmp = (a * (k ^ m)) / ((1.0 + (10.0 * k)) + (k * k));
end
function tmp_2 = code(a, k, m)
	tmp = 0.0;
	if (k <= 1e+142)
		tmp = a / ((1.0 + ((k * 10.0) + (k * k))) / (k ^ m));
	else
		tmp = (a / k) * ((-((-1.0 / k) ^ -1.0) ^ m) / k);
	end
	tmp_2 = 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, 1e+142], N[(a / N[(N[(1.0 + N[(N[(k * 10.0), $MachinePrecision] + N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Power[k, m], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(a / k), $MachinePrecision] * N[(N[Power[(-N[Power[N[(-1.0 / k), $MachinePrecision], -1.0], $MachinePrecision]), 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 10^{+142}:\\
\;\;\;\;\frac{a}{\frac{1 + \left(k \cdot 10 + k \cdot k\right)}{{k}^{m}}}\\

\mathbf{else}:\\
\;\;\;\;\frac{a}{k} \cdot \frac{{\left(-{\left(\frac{-1}{k}\right)}^{-1}\right)}^{m}}{k}\\


\end{array}

Error?

Try it out?

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation?

  1. Split input into 2 regimes
  2. if k < 1.00000000000000005e142

    1. Initial program 99.9%

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

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

      [Start]99.9

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

      associate-/l* [=>]99.9

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

      associate-+l+ [=>]99.9

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

      *-commutative [=>]99.9

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

    if 1.00000000000000005e142 < k

    1. Initial program 84.1%

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

      \[\leadsto \color{blue}{\frac{a \cdot e^{\left(\log -1 + -1 \cdot \log \left(\frac{-1}{k}\right)\right) \cdot m}}{{k}^{2}}} \]
    3. Simplified99.7%

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

      [Start]0.0

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

      unpow2 [=>]0.0

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

      times-frac [=>]0.0

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

      exp-prod [=>]0.0

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

      exp-sum [=>]0.0

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

      rem-exp-log [=>]0.0

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

      *-commutative [=>]0.0

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

      exp-to-pow [=>]99.7

      \[ \frac{a}{k} \cdot \frac{{\left(-1 \cdot \color{blue}{{\left(\frac{-1}{k}\right)}^{-1}}\right)}^{m}}{k} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification99.9%

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

Alternatives

Alternative 1
Accuracy96.6%
Cost7296
\[\frac{a}{\frac{1 + \left(k \cdot 10 + k \cdot k\right)}{{k}^{m}}} \]
Alternative 2
Accuracy95.7%
Cost7240
\[\begin{array}{l} \mathbf{if}\;m \leq -9.6 \cdot 10^{-7}:\\ \;\;\;\;a \cdot \frac{{k}^{m}}{k \cdot k}\\ \mathbf{elif}\;m \leq 0.031:\\ \;\;\;\;\frac{a}{1 + \mathsf{fma}\left(k, k, k \cdot 10\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{{k}^{\left(-m\right)}}\\ \end{array} \]
Alternative 3
Accuracy95.7%
Cost7044
\[\begin{array}{l} \mathbf{if}\;m \leq -1.5 \cdot 10^{-6}:\\ \;\;\;\;a \cdot \frac{{k}^{m}}{k \cdot k}\\ \mathbf{elif}\;m \leq 0.031:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{{k}^{\left(-m\right)}}\\ \end{array} \]
Alternative 4
Accuracy95.3%
Cost6984
\[\begin{array}{l} \mathbf{if}\;m \leq -1.2 \cdot 10^{+23}:\\ \;\;\;\;a \cdot {k}^{m}\\ \mathbf{elif}\;m \leq 0.031:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{{k}^{\left(-m\right)}}\\ \end{array} \]
Alternative 5
Accuracy95.3%
Cost6921
\[\begin{array}{l} \mathbf{if}\;m \leq -1.2 \cdot 10^{+23} \lor \neg \left(m \leq 0.031\right):\\ \;\;\;\;a \cdot {k}^{m}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \end{array} \]
Alternative 6
Accuracy68.2%
Cost841
\[\begin{array}{l} \mathbf{if}\;m \leq -1.2 \cdot 10^{+23} \lor \neg \left(m \leq 2.2 \cdot 10^{+46}\right):\\ \;\;\;\;-1 + \left(1 + \frac{a}{k \cdot k}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{1 + k \cdot k}\\ \end{array} \]
Alternative 7
Accuracy69.2%
Cost841
\[\begin{array}{l} \mathbf{if}\;m \leq -1.2 \cdot 10^{+23} \lor \neg \left(m \leq 2.05 \cdot 10^{+46}\right):\\ \;\;\;\;-1 + \left(1 + \frac{a}{k \cdot k}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{1 + k \cdot \left(k + 10\right)}\\ \end{array} \]
Alternative 8
Accuracy61.6%
Cost713
\[\begin{array}{l} \mathbf{if}\;k \leq -0.435 \lor \neg \left(k \leq 0.1\right):\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{else}:\\ \;\;\;\;a + -10 \cdot \left(k \cdot a\right)\\ \end{array} \]
Alternative 9
Accuracy61.9%
Cost712
\[\begin{array}{l} \mathbf{if}\;k \leq -0.435:\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{elif}\;k \leq 0.075:\\ \;\;\;\;a + -10 \cdot \left(k \cdot a\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k \cdot \left(k + 10\right)}\\ \end{array} \]
Alternative 10
Accuracy62.0%
Cost712
\[\begin{array}{l} \mathbf{if}\;k \leq -10:\\ \;\;\;\;\frac{a}{k \cdot k}\\ \mathbf{elif}\;k \leq 1:\\ \;\;\;\;\frac{a}{1 + k \cdot 10}\\ \mathbf{else}:\\ \;\;\;\;\frac{a}{k \cdot \left(k + 10\right)}\\ \end{array} \]
Alternative 11
Accuracy61.4%
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 12
Accuracy61.4%
Cost448
\[\frac{a}{1 + k \cdot k} \]
Alternative 13
Accuracy27.0%
Cost64
\[a \]

Error

Reproduce?

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