Average Error: 0.5 → 0.5
Time: 30.1s
Precision: 64
\[\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
\[\frac{\frac{\left(a1 \cdot a1 + a2 \cdot a2\right) \cdot \cos th}{\left|\sqrt[3]{\sqrt{2}}\right|}}{\sqrt{\sqrt[3]{\sqrt{2}}} \cdot \sqrt{\sqrt{2}}}\]
\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)
\frac{\frac{\left(a1 \cdot a1 + a2 \cdot a2\right) \cdot \cos th}{\left|\sqrt[3]{\sqrt{2}}\right|}}{\sqrt{\sqrt[3]{\sqrt{2}}} \cdot \sqrt{\sqrt{2}}}
double f(double a1, double a2, double th) {
        double r115088 = th;
        double r115089 = cos(r115088);
        double r115090 = 2.0;
        double r115091 = sqrt(r115090);
        double r115092 = r115089 / r115091;
        double r115093 = a1;
        double r115094 = r115093 * r115093;
        double r115095 = r115092 * r115094;
        double r115096 = a2;
        double r115097 = r115096 * r115096;
        double r115098 = r115092 * r115097;
        double r115099 = r115095 + r115098;
        return r115099;
}

double f(double a1, double a2, double th) {
        double r115100 = a1;
        double r115101 = r115100 * r115100;
        double r115102 = a2;
        double r115103 = r115102 * r115102;
        double r115104 = r115101 + r115103;
        double r115105 = th;
        double r115106 = cos(r115105);
        double r115107 = r115104 * r115106;
        double r115108 = 2.0;
        double r115109 = sqrt(r115108);
        double r115110 = cbrt(r115109);
        double r115111 = fabs(r115110);
        double r115112 = r115107 / r115111;
        double r115113 = sqrt(r115110);
        double r115114 = sqrt(r115109);
        double r115115 = r115113 * r115114;
        double r115116 = r115112 / r115115;
        return r115116;
}

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. Simplified0.5

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

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

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

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

    \[\leadsto \frac{\frac{\cos th}{\sqrt{\sqrt{2}}}}{\sqrt{\color{blue}{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \sqrt[3]{\sqrt{2}}}}} \cdot \left(a1 \cdot a1 + a2 \cdot a2\right)\]
  9. Applied sqrt-prod0.6

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

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

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

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

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

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

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

Reproduce

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