Average Error: 0.5 → 0.5
Time: 7.3s
Precision: 64
\[\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\]
\[\cos th \cdot \left(\left|a1\right| \cdot \frac{\left|a1\right|}{\sqrt{2}}\right) + \cos th \cdot \frac{\frac{{a2}^{2}}{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt{2}}}\]
\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)
\cos th \cdot \left(\left|a1\right| \cdot \frac{\left|a1\right|}{\sqrt{2}}\right) + \cos th \cdot \frac{\frac{{a2}^{2}}{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt{2}}}
double f(double a1, double a2, double th) {
        double r102042 = th;
        double r102043 = cos(r102042);
        double r102044 = 2.0;
        double r102045 = sqrt(r102044);
        double r102046 = r102043 / r102045;
        double r102047 = a1;
        double r102048 = r102047 * r102047;
        double r102049 = r102046 * r102048;
        double r102050 = a2;
        double r102051 = r102050 * r102050;
        double r102052 = r102046 * r102051;
        double r102053 = r102049 + r102052;
        return r102053;
}

double f(double a1, double a2, double th) {
        double r102054 = th;
        double r102055 = cos(r102054);
        double r102056 = a1;
        double r102057 = fabs(r102056);
        double r102058 = 2.0;
        double r102059 = sqrt(r102058);
        double r102060 = r102057 / r102059;
        double r102061 = r102057 * r102060;
        double r102062 = r102055 * r102061;
        double r102063 = a2;
        double r102064 = 2.0;
        double r102065 = pow(r102063, r102064);
        double r102066 = cbrt(r102059);
        double r102067 = r102066 * r102066;
        double r102068 = r102065 / r102067;
        double r102069 = r102068 / r102066;
        double r102070 = r102055 * r102069;
        double r102071 = r102062 + r102070;
        return r102071;
}

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 div-inv0.5

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

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

    \[\leadsto \frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \cos th \cdot \color{blue}{\frac{{a2}^{2}}{\sqrt{2}}}\]
  6. Using strategy rm
  7. Applied div-inv0.5

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

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

    \[\leadsto \cos th \cdot \color{blue}{\frac{{a1}^{2}}{\sqrt{2}}} + \cos th \cdot \frac{{a2}^{2}}{\sqrt{2}}\]
  10. Using strategy rm
  11. Applied *-un-lft-identity0.5

    \[\leadsto \cos th \cdot \frac{{a1}^{2}}{\sqrt{\color{blue}{1 \cdot 2}}} + \cos th \cdot \frac{{a2}^{2}}{\sqrt{2}}\]
  12. Applied sqrt-prod0.5

    \[\leadsto \cos th \cdot \frac{{a1}^{2}}{\color{blue}{\sqrt{1} \cdot \sqrt{2}}} + \cos th \cdot \frac{{a2}^{2}}{\sqrt{2}}\]
  13. Applied add-sqr-sqrt0.5

    \[\leadsto \cos th \cdot \frac{\color{blue}{\sqrt{{a1}^{2}} \cdot \sqrt{{a1}^{2}}}}{\sqrt{1} \cdot \sqrt{2}} + \cos th \cdot \frac{{a2}^{2}}{\sqrt{2}}\]
  14. Applied times-frac0.5

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

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

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

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

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

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

Reproduce

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