Average Error: 59.6 → 59.8
Time: 12.4s
Precision: binary64
Cost: 45504
\[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x} \]
\[{\log \left(e^{\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(1 + -0.25 \cdot \left(x \cdot x\right)\right)\right)}{e^{x}}}}\right)}^{3} \]
(FPCore (x) :precision binary64 (* (fmod (exp x) (sqrt (cos x))) (exp (- x))))
(FPCore (x)
 :precision binary64
 (pow
  (log (exp (cbrt (/ (fmod (exp x) (+ 1.0 (* -0.25 (* x x)))) (exp x)))))
  3.0))
double code(double x) {
	return fmod(exp(x), sqrt(cos(x))) * exp(-x);
}
double code(double x) {
	return pow(log(exp(cbrt((fmod(exp(x), (1.0 + (-0.25 * (x * x)))) / exp(x))))), 3.0);
}
function code(x)
	return Float64(rem(exp(x), sqrt(cos(x))) * exp(Float64(-x)))
end
function code(x)
	return log(exp(cbrt(Float64(rem(exp(x), Float64(1.0 + Float64(-0.25 * Float64(x * x)))) / exp(x))))) ^ 3.0
end
code[x_] := N[(N[With[{TMP1 = N[Exp[x], $MachinePrecision], TMP2 = N[Sqrt[N[Cos[x], $MachinePrecision]], $MachinePrecision]}, Mod[Abs[TMP1], Abs[TMP2]] * Sign[TMP1]], $MachinePrecision] * N[Exp[(-x)], $MachinePrecision]), $MachinePrecision]
code[x_] := N[Power[N[Log[N[Exp[N[Power[N[(N[With[{TMP1 = N[Exp[x], $MachinePrecision], TMP2 = N[(1.0 + N[(-0.25 * N[(x * x), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Mod[Abs[TMP1], Abs[TMP2]] * Sign[TMP1]], $MachinePrecision] / N[Exp[x], $MachinePrecision]), $MachinePrecision], 1/3], $MachinePrecision]], $MachinePrecision]], $MachinePrecision], 3.0], $MachinePrecision]
\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x}
{\log \left(e^{\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(1 + -0.25 \cdot \left(x \cdot x\right)\right)\right)}{e^{x}}}}\right)}^{3}

Error

Derivation

  1. Initial program 59.6

    \[\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right) \cdot e^{-x} \]
  2. Simplified59.6

    \[\leadsto \color{blue}{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}} \]
    Proof
    (/.f64 (fmod.f64 (exp.f64 x) (sqrt.f64 (cos.f64 x))) (exp.f64 x)): 0 points increase in error, 0 points decrease in error
    (/.f64 (Rewrite<= *-rgt-identity_binary64 (*.f64 (fmod.f64 (exp.f64 x) (sqrt.f64 (cos.f64 x))) 1)) (exp.f64 x)): 0 points increase in error, 0 points decrease in error
    (Rewrite<= associate-*r/_binary64 (*.f64 (fmod.f64 (exp.f64 x) (sqrt.f64 (cos.f64 x))) (/.f64 1 (exp.f64 x)))): 0 points increase in error, 0 points decrease in error
    (*.f64 (fmod.f64 (exp.f64 x) (sqrt.f64 (cos.f64 x))) (Rewrite<= exp-neg_binary64 (exp.f64 (neg.f64 x)))): 2 points increase in error, 0 points decrease in error
  3. Applied egg-rr59.6

    \[\leadsto \color{blue}{{\left(\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}\right)}^{3}} \]
  4. Applied egg-rr59.6

    \[\leadsto {\color{blue}{\log \left(e^{\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(\sqrt{\cos x}\right)\right)}{e^{x}}}}\right)}}^{3} \]
  5. Taylor expanded in x around 0 59.8

    \[\leadsto {\log \left(e^{\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \color{blue}{\left(1 + -0.25 \cdot {x}^{2}\right)}\right)}{e^{x}}}}\right)}^{3} \]
  6. Simplified59.8

    \[\leadsto {\log \left(e^{\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \color{blue}{\left(1 + -0.25 \cdot \left(x \cdot x\right)\right)}\right)}{e^{x}}}}\right)}^{3} \]
    Proof
    (+.f64 1 (*.f64 -1/4 (*.f64 x x))): 0 points increase in error, 0 points decrease in error
    (+.f64 1 (*.f64 -1/4 (Rewrite<= unpow2_binary64 (pow.f64 x 2)))): 0 points increase in error, 0 points decrease in error
  7. Final simplification59.8

    \[\leadsto {\log \left(e^{\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(1 + -0.25 \cdot \left(x \cdot x\right)\right)\right)}{e^{x}}}}\right)}^{3} \]

Alternatives

Alternative 1
Error59.8
Cost32704
\[{\left(\sqrt[3]{\frac{\left(\left(e^{x}\right) \bmod \left(1 + -0.25 \cdot \left(x \cdot x\right)\right)\right)}{e^{x}}}\right)}^{3} \]
Alternative 2
Error59.8
Cost19840
\[\frac{\left(\left(e^{x}\right) \bmod \left(1 + -0.25 \cdot \left(x \cdot x\right)\right)\right)}{e^{x}} \]
Alternative 3
Error60.3
Cost13440
\[\left(1 + \left(\left(e^{x}\right) \bmod 1\right) \cdot \left(1 - x\right)\right) + -1 \]
Alternative 4
Error60.3
Cost13184
\[\left(\left(e^{x}\right) \bmod 1\right) \cdot \left(1 - x\right) \]
Alternative 5
Error60.6
Cost12928
\[\left(\left(e^{x}\right) \bmod 1\right) \]

Error

Reproduce

herbie shell --seed 2022325 
(FPCore (x)
  :name "expfmod"
  :precision binary64
  (* (fmod (exp x) (sqrt (cos x))) (exp (- x))))