Average Error: 0.5 → 0.5
Time: 29.4s
Precision: 64
\[\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
\[\left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\frac{1}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(\left(\frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot a2\right) \cdot a2\right)\]
\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)
\left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\frac{1}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(\left(\frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot a2\right) \cdot a2\right)
double f(double a1, double a2, double th) {
        double r89014 = th;
        double r89015 = cos(r89014);
        double r89016 = 2.0;
        double r89017 = sqrt(r89016);
        double r89018 = r89015 / r89017;
        double r89019 = a1;
        double r89020 = r89019 * r89019;
        double r89021 = r89018 * r89020;
        double r89022 = a2;
        double r89023 = r89022 * r89022;
        double r89024 = r89018 * r89023;
        double r89025 = r89021 + r89024;
        return r89025;
}

double f(double a1, double a2, double th) {
        double r89026 = th;
        double r89027 = cos(r89026);
        double r89028 = 2.0;
        double r89029 = sqrt(r89028);
        double r89030 = r89027 / r89029;
        double r89031 = a1;
        double r89032 = r89030 * r89031;
        double r89033 = r89032 * r89031;
        double r89034 = 1.0;
        double r89035 = cbrt(r89029);
        double r89036 = r89034 / r89035;
        double r89037 = cbrt(r89035);
        double r89038 = r89037 * r89037;
        double r89039 = r89036 / r89038;
        double r89040 = r89027 / r89035;
        double r89041 = r89040 / r89037;
        double r89042 = a2;
        double r89043 = r89041 * r89042;
        double r89044 = r89043 * r89042;
        double r89045 = r89039 * r89044;
        double r89046 = r89033 + r89045;
        return r89046;
}

Error

Bits error versus a1

Bits error versus a2

Bits error versus th

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.5

    \[\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
  2. Using strategy rm
  3. Applied associate-*r*0.5

    \[\leadsto \color{blue}{\left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1} + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
  4. Using strategy rm
  5. Applied add-cube-cbrt0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\cos th}{\color{blue}{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \sqrt[3]{\sqrt{2}}}} \cdot \left(a2 \cdot a2\right)\]
  6. Applied associate-/r*0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \color{blue}{\frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt{2}}}} \cdot \left(a2 \cdot a2\right)\]
  7. Using strategy rm
  8. Applied add-cube-cbrt0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}}}{\color{blue}{\left(\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}\right) \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}}} \cdot \left(a2 \cdot a2\right)\]
  9. Applied *-un-lft-identity0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\frac{\color{blue}{1 \cdot \cos th}}{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}}}{\left(\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}\right) \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(a2 \cdot a2\right)\]
  10. Applied times-frac0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\color{blue}{\frac{1}{\sqrt[3]{\sqrt{2}}} \cdot \frac{\cos th}{\sqrt[3]{\sqrt{2}}}}}{\left(\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}\right) \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(a2 \cdot a2\right)\]
  11. Applied times-frac0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \color{blue}{\left(\frac{\frac{1}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}}\right)} \cdot \left(a2 \cdot a2\right)\]
  12. Applied associate-*l*0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \color{blue}{\frac{\frac{1}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(\frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(a2 \cdot a2\right)\right)}\]
  13. Using strategy rm
  14. Applied associate-*r*0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\frac{1}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \color{blue}{\left(\left(\frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot a2\right) \cdot a2\right)}\]
  15. Final simplification0.5

    \[\leadsto \left(\frac{\cos th}{\sqrt{2}} \cdot a1\right) \cdot a1 + \frac{\frac{1}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \left(\left(\frac{\frac{\cos th}{\sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot a2\right) \cdot a2\right)\]

Reproduce

herbie shell --seed 2019325 
(FPCore (a1 a2 th)
  :name "Migdal et al, Equation (64)"
  :precision binary64
  (+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))))