\frac{1}{3} \cdot \cos^{-1} \left(\frac{3 \cdot \frac{x}{y \cdot 27}}{z \cdot 2} \cdot \sqrt{t}\right)1 \cdot \frac{\cos^{-1} \left(\frac{3 \cdot x}{2} \cdot \frac{\sqrt{t}}{z \cdot \left(y \cdot 27\right)}\right)}{3}double code(double x, double y, double z, double t) {
return ((1.0 / 3.0) * acos((((3.0 * (x / (y * 27.0))) / (z * 2.0)) * sqrt(t))));
}
double code(double x, double y, double z, double t) {
return (1.0 * (acos((((3.0 * x) / 2.0) * (sqrt(t) / (z * (y * 27.0))))) / 3.0));
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t
Results
| Original | 1.4 |
|---|---|
| Target | 1.2 |
| Herbie | 1.2 |
Initial program 1.4
rmApplied *-commutative1.4
Applied div-inv1.4
Applied associate-*r*1.4
Applied times-frac1.3
Applied associate-*l*1.3
Simplified1.2
rmApplied div-inv1.2
Applied associate-*l*1.2
Simplified1.2
Final simplification1.2
herbie shell --seed 2020071 +o rules:numerics
(FPCore (x y z t)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1, D"
:precision binary64
:herbie-target
(/ (acos (* (/ (/ x 27) (* y z)) (/ (sqrt t) (/ 2 3)))) 3)
(* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))))