Average Error: 16.7 → 0.4
Time: 44.1s
Precision: 64
\[\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + U\]
\[\left(\left({\ell}^{5} \cdot \frac{1}{60} + \left(2 + \left(\frac{1}{3} \cdot \ell\right) \cdot \ell\right) \cdot \ell\right) \cdot J\right) \cdot \cos \left(\frac{K}{2}\right) + U\]
\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + U
\left(\left({\ell}^{5} \cdot \frac{1}{60} + \left(2 + \left(\frac{1}{3} \cdot \ell\right) \cdot \ell\right) \cdot \ell\right) \cdot J\right) \cdot \cos \left(\frac{K}{2}\right) + U
double f(double J, double l, double K, double U) {
        double r9046284 = J;
        double r9046285 = l;
        double r9046286 = exp(r9046285);
        double r9046287 = -r9046285;
        double r9046288 = exp(r9046287);
        double r9046289 = r9046286 - r9046288;
        double r9046290 = r9046284 * r9046289;
        double r9046291 = K;
        double r9046292 = 2.0;
        double r9046293 = r9046291 / r9046292;
        double r9046294 = cos(r9046293);
        double r9046295 = r9046290 * r9046294;
        double r9046296 = U;
        double r9046297 = r9046295 + r9046296;
        return r9046297;
}

double f(double J, double l, double K, double U) {
        double r9046298 = l;
        double r9046299 = 5.0;
        double r9046300 = pow(r9046298, r9046299);
        double r9046301 = 0.016666666666666666;
        double r9046302 = r9046300 * r9046301;
        double r9046303 = 2.0;
        double r9046304 = 0.3333333333333333;
        double r9046305 = r9046304 * r9046298;
        double r9046306 = r9046305 * r9046298;
        double r9046307 = r9046303 + r9046306;
        double r9046308 = r9046307 * r9046298;
        double r9046309 = r9046302 + r9046308;
        double r9046310 = J;
        double r9046311 = r9046309 * r9046310;
        double r9046312 = K;
        double r9046313 = r9046312 / r9046303;
        double r9046314 = cos(r9046313);
        double r9046315 = r9046311 * r9046314;
        double r9046316 = U;
        double r9046317 = r9046315 + r9046316;
        return r9046317;
}

Error

Bits error versus J

Bits error versus l

Bits error versus K

Bits error versus U

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 16.7

    \[\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + U\]
  2. Taylor expanded around 0 0.4

    \[\leadsto \left(J \cdot \color{blue}{\left(2 \cdot \ell + \left(\frac{1}{3} \cdot {\ell}^{3} + \frac{1}{60} \cdot {\ell}^{5}\right)\right)}\right) \cdot \cos \left(\frac{K}{2}\right) + U\]
  3. Simplified0.4

    \[\leadsto \left(J \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \left(\frac{1}{3} \cdot \ell\right) + 2\right) + {\ell}^{5} \cdot \frac{1}{60}\right)}\right) \cdot \cos \left(\frac{K}{2}\right) + U\]
  4. Final simplification0.4

    \[\leadsto \left(\left({\ell}^{5} \cdot \frac{1}{60} + \left(2 + \left(\frac{1}{3} \cdot \ell\right) \cdot \ell\right) \cdot \ell\right) \cdot J\right) \cdot \cos \left(\frac{K}{2}\right) + U\]

Reproduce

herbie shell --seed 2019119 
(FPCore (J l K U)
  :name "Maksimov and Kolovsky, Equation (4)"
  (+ (* (* J (- (exp l) (exp (- l)))) (cos (/ K 2))) U))