\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\frac{\pi}{\sqrt[3]{a + b} \cdot \sqrt[3]{a + b}} \cdot \frac{\frac{\sqrt{\frac{1}{2}}}{\sqrt[3]{\sqrt[3]{a + b} \cdot \sqrt[3]{a + b}}}}{\frac{a}{\frac{\frac{\sqrt{\frac{1}{2}}}{\sqrt[3]{\sqrt[3]{a + b}}}}{b - a}}} - \frac{\frac{1}{b - a}}{b} \cdot \frac{\frac{\pi}{2}}{a + b}double f(double a, double b) {
double r3346559 = atan2(1.0, 0.0);
double r3346560 = 2.0;
double r3346561 = r3346559 / r3346560;
double r3346562 = 1.0;
double r3346563 = b;
double r3346564 = r3346563 * r3346563;
double r3346565 = a;
double r3346566 = r3346565 * r3346565;
double r3346567 = r3346564 - r3346566;
double r3346568 = r3346562 / r3346567;
double r3346569 = r3346561 * r3346568;
double r3346570 = r3346562 / r3346565;
double r3346571 = r3346562 / r3346563;
double r3346572 = r3346570 - r3346571;
double r3346573 = r3346569 * r3346572;
return r3346573;
}
double f(double a, double b) {
double r3346574 = atan2(1.0, 0.0);
double r3346575 = a;
double r3346576 = b;
double r3346577 = r3346575 + r3346576;
double r3346578 = cbrt(r3346577);
double r3346579 = r3346578 * r3346578;
double r3346580 = r3346574 / r3346579;
double r3346581 = 0.5;
double r3346582 = sqrt(r3346581);
double r3346583 = cbrt(r3346579);
double r3346584 = r3346582 / r3346583;
double r3346585 = cbrt(r3346578);
double r3346586 = r3346582 / r3346585;
double r3346587 = r3346576 - r3346575;
double r3346588 = r3346586 / r3346587;
double r3346589 = r3346575 / r3346588;
double r3346590 = r3346584 / r3346589;
double r3346591 = r3346580 * r3346590;
double r3346592 = 1.0;
double r3346593 = r3346592 / r3346587;
double r3346594 = r3346593 / r3346576;
double r3346595 = 2.0;
double r3346596 = r3346574 / r3346595;
double r3346597 = r3346596 / r3346577;
double r3346598 = r3346594 * r3346597;
double r3346599 = r3346591 - r3346598;
return r3346599;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.7
Simplified9.1
rmApplied *-un-lft-identity9.1
Applied div-inv9.1
Applied times-frac4.8
rmApplied *-un-lft-identity4.8
Applied *-un-lft-identity4.8
Applied add-cube-cbrt5.0
Applied div-inv5.0
Applied times-frac5.0
Applied times-frac5.0
Applied times-frac1.5
rmApplied *-un-lft-identity1.5
Applied add-cube-cbrt1.5
Applied cbrt-prod1.6
Applied add-sqr-sqrt1.5
Applied times-frac1.5
Applied times-frac1.5
Applied associate-/l*0.7
Final simplification0.7
herbie shell --seed 2019155 +o rules:numerics
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))