\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\frac{{a1}^{2} \cdot \cos th}{\sqrt{2}} + \frac{1}{\sqrt[3]{\sqrt[3]{\sqrt{2}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{2}}}} \cdot \frac{\frac{\left(a2 \cdot \cos th\right) \cdot a2}{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}}}{\sqrt[3]{\sqrt[3]{\sqrt{2}}}}double f(double a1, double a2, double th) {
double r78151 = th;
double r78152 = cos(r78151);
double r78153 = 2.0;
double r78154 = sqrt(r78153);
double r78155 = r78152 / r78154;
double r78156 = a1;
double r78157 = r78156 * r78156;
double r78158 = r78155 * r78157;
double r78159 = a2;
double r78160 = r78159 * r78159;
double r78161 = r78155 * r78160;
double r78162 = r78158 + r78161;
return r78162;
}
double f(double a1, double a2, double th) {
double r78163 = a1;
double r78164 = 2.0;
double r78165 = pow(r78163, r78164);
double r78166 = th;
double r78167 = cos(r78166);
double r78168 = r78165 * r78167;
double r78169 = 2.0;
double r78170 = sqrt(r78169);
double r78171 = r78168 / r78170;
double r78172 = 1.0;
double r78173 = cbrt(r78170);
double r78174 = cbrt(r78173);
double r78175 = r78174 * r78174;
double r78176 = r78172 / r78175;
double r78177 = a2;
double r78178 = r78177 * r78167;
double r78179 = r78178 * r78177;
double r78180 = r78173 * r78173;
double r78181 = r78179 / r78180;
double r78182 = r78181 / r78174;
double r78183 = r78176 * r78182;
double r78184 = r78171 + r78183;
return r78184;
}



Bits error versus a1



Bits error versus a2



Bits error versus th
Results
Initial program 0.5
Simplified0.5
rmApplied distribute-lft-in0.5
Simplified0.5
Simplified0.5
rmApplied unpow20.5
Applied associate-*r*0.4
Simplified0.4
rmApplied add-cube-cbrt0.4
Applied associate-/r*0.5
rmApplied add-cube-cbrt0.5
Applied *-un-lft-identity0.5
Applied times-frac0.4
Final simplification0.4
herbie shell --seed 2019347
(FPCore (a1 a2 th)
:name "Migdal et al, Equation (64)"
:precision binary64
(+ (* (/ (cos th) (sqrt 2)) (* a1 a1)) (* (/ (cos th) (sqrt 2)) (* a2 a2))))