1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}1 - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\frac{\sqrt[3]{y - z} \cdot \sqrt[3]{y - z}}{\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{y - t} \cdot \sqrt[3]{y - t}}}} \cdot \frac{\sqrt[3]{1}}{\frac{\sqrt[3]{y - z}}{\frac{\sqrt[3]{x}}{\sqrt[3]{y - t}}}}(FPCore (x y z t) :precision binary64 (- 1.0 (/ x (* (- y z) (- y t)))))
(FPCore (x y z t)
:precision binary64
(-
1.0
(*
(/
(* (cbrt 1.0) (cbrt 1.0))
(/
(* (cbrt (- y z)) (cbrt (- y z)))
(/ (* (cbrt x) (cbrt x)) (* (cbrt (- y t)) (cbrt (- y t))))))
(/ (cbrt 1.0) (/ (cbrt (- y z)) (/ (cbrt x) (cbrt (- y t))))))))double code(double x, double y, double z, double t) {
return 1.0 - (x / ((y - z) * (y - t)));
}
double code(double x, double y, double z, double t) {
return 1.0 - (((cbrt(1.0) * cbrt(1.0)) / ((cbrt(y - z) * cbrt(y - z)) / ((cbrt(x) * cbrt(x)) / (cbrt(y - t) * cbrt(y - t))))) * (cbrt(1.0) / (cbrt(y - z) / (cbrt(x) / cbrt(y - t)))));
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.6
rmApplied clear-num_binary64_79200.7
Simplified1.1
rmApplied add-cube-cbrt_binary64_79561.3
Applied add-cube-cbrt_binary64_79561.3
Applied times-frac_binary64_79271.3
Applied add-cube-cbrt_binary64_79561.4
Applied times-frac_binary64_79270.4
Applied add-cube-cbrt_binary64_79560.4
Applied times-frac_binary64_79270.4
Final simplification0.4
herbie shell --seed 2021098
(FPCore (x y z t)
:name "Data.Random.Distribution.Triangular:triangularCDF from random-fu-0.2.6.2, A"
:precision binary64
(- 1.0 (/ x (* (- y z) (- y t)))))