Average Error: 17.2 → 17.1
Time: 1.0m
Precision: 64
\[\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\]
\[\begin{array}{l} \mathbf{if}\;J \le -9.781248954356997 \cdot 10^{-92}:\\ \;\;\;\;\left(\sqrt{1 + \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)} \cdot \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)}} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(J \cdot -2\right)\\ \mathbf{elif}\;J \le 5.1968831935464863 \cdot 10^{-225}:\\ \;\;\;\;-U\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt{1 + \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)} \cdot \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)}} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(J \cdot -2\right)\\ \end{array}\]
\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}
\begin{array}{l}
\mathbf{if}\;J \le -9.781248954356997 \cdot 10^{-92}:\\
\;\;\;\;\left(\sqrt{1 + \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)} \cdot \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)}} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(J \cdot -2\right)\\

\mathbf{elif}\;J \le 5.1968831935464863 \cdot 10^{-225}:\\
\;\;\;\;-U\\

\mathbf{else}:\\
\;\;\;\;\left(\sqrt{1 + \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)} \cdot \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)}} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(J \cdot -2\right)\\

\end{array}
double f(double J, double K, double U) {
        double r6551822 = -2.0;
        double r6551823 = J;
        double r6551824 = r6551822 * r6551823;
        double r6551825 = K;
        double r6551826 = 2.0;
        double r6551827 = r6551825 / r6551826;
        double r6551828 = cos(r6551827);
        double r6551829 = r6551824 * r6551828;
        double r6551830 = 1.0;
        double r6551831 = U;
        double r6551832 = r6551826 * r6551823;
        double r6551833 = r6551832 * r6551828;
        double r6551834 = r6551831 / r6551833;
        double r6551835 = pow(r6551834, r6551826);
        double r6551836 = r6551830 + r6551835;
        double r6551837 = sqrt(r6551836);
        double r6551838 = r6551829 * r6551837;
        return r6551838;
}

double f(double J, double K, double U) {
        double r6551839 = J;
        double r6551840 = -9.781248954356997e-92;
        bool r6551841 = r6551839 <= r6551840;
        double r6551842 = 1.0;
        double r6551843 = U;
        double r6551844 = K;
        double r6551845 = 2.0;
        double r6551846 = r6551844 / r6551845;
        double r6551847 = cos(r6551846);
        double r6551848 = r6551845 * r6551839;
        double r6551849 = r6551847 * r6551848;
        double r6551850 = r6551843 / r6551849;
        double r6551851 = r6551850 * r6551850;
        double r6551852 = r6551842 + r6551851;
        double r6551853 = sqrt(r6551852);
        double r6551854 = r6551853 * r6551847;
        double r6551855 = -2.0;
        double r6551856 = r6551839 * r6551855;
        double r6551857 = r6551854 * r6551856;
        double r6551858 = 5.1968831935464863e-225;
        bool r6551859 = r6551839 <= r6551858;
        double r6551860 = -r6551843;
        double r6551861 = r6551859 ? r6551860 : r6551857;
        double r6551862 = r6551841 ? r6551857 : r6551861;
        return r6551862;
}

Error

Bits error versus J

Bits error versus K

Bits error versus U

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if J < -9.781248954356997e-92 or 5.1968831935464863e-225 < J

    1. Initial program 10.9

      \[\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\]
    2. Simplified10.9

      \[\leadsto \color{blue}{\sqrt{\frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} \cdot \frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} + 1} \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \left(-2 \cdot J\right)\right)}\]
    3. Using strategy rm
    4. Applied associate-*r*10.9

      \[\leadsto \color{blue}{\left(\sqrt{\frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} \cdot \frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} + 1} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(-2 \cdot J\right)}\]

    if -9.781248954356997e-92 < J < 5.1968831935464863e-225

    1. Initial program 36.7

      \[\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\]
    2. Simplified36.7

      \[\leadsto \color{blue}{\sqrt{\frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} \cdot \frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} + 1} \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \left(-2 \cdot J\right)\right)}\]
    3. Using strategy rm
    4. Applied associate-*r*36.7

      \[\leadsto \color{blue}{\left(\sqrt{\frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} \cdot \frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)} + 1} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(-2 \cdot J\right)}\]
    5. Taylor expanded around inf 36.0

      \[\leadsto \color{blue}{-1 \cdot U}\]
    6. Simplified36.0

      \[\leadsto \color{blue}{-U}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification17.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;J \le -9.781248954356997 \cdot 10^{-92}:\\ \;\;\;\;\left(\sqrt{1 + \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)} \cdot \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)}} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(J \cdot -2\right)\\ \mathbf{elif}\;J \le 5.1968831935464863 \cdot 10^{-225}:\\ \;\;\;\;-U\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt{1 + \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)} \cdot \frac{U}{\cos \left(\frac{K}{2}\right) \cdot \left(2 \cdot J\right)}} \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(J \cdot -2\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019144 
(FPCore (J K U)
  :name "Maksimov and Kolovsky, Equation (3)"
  (* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))