Average Error: 0.1 → 0.3
Time: 19.6s
Precision: 64
\[x \cdot \sin y + z \cdot \cos y\]
\[\sqrt[3]{\cos y} \cdot \left(z \cdot e^{\left(\log \left(\cos y \cdot \cos y\right) \cdot \left(\sqrt[3]{\frac{1}{3}} \cdot \sqrt[3]{\frac{1}{3}}\right)\right) \cdot \sqrt[3]{\frac{1}{3}}}\right) + x \cdot \sin y\]
x \cdot \sin y + z \cdot \cos y
\sqrt[3]{\cos y} \cdot \left(z \cdot e^{\left(\log \left(\cos y \cdot \cos y\right) \cdot \left(\sqrt[3]{\frac{1}{3}} \cdot \sqrt[3]{\frac{1}{3}}\right)\right) \cdot \sqrt[3]{\frac{1}{3}}}\right) + x \cdot \sin y
double f(double x, double y, double z) {
        double r9861156 = x;
        double r9861157 = y;
        double r9861158 = sin(r9861157);
        double r9861159 = r9861156 * r9861158;
        double r9861160 = z;
        double r9861161 = cos(r9861157);
        double r9861162 = r9861160 * r9861161;
        double r9861163 = r9861159 + r9861162;
        return r9861163;
}

double f(double x, double y, double z) {
        double r9861164 = y;
        double r9861165 = cos(r9861164);
        double r9861166 = cbrt(r9861165);
        double r9861167 = z;
        double r9861168 = r9861165 * r9861165;
        double r9861169 = log(r9861168);
        double r9861170 = 0.3333333333333333;
        double r9861171 = cbrt(r9861170);
        double r9861172 = r9861171 * r9861171;
        double r9861173 = r9861169 * r9861172;
        double r9861174 = r9861173 * r9861171;
        double r9861175 = exp(r9861174);
        double r9861176 = r9861167 * r9861175;
        double r9861177 = r9861166 * r9861176;
        double r9861178 = x;
        double r9861179 = sin(r9861164);
        double r9861180 = r9861178 * r9861179;
        double r9861181 = r9861177 + r9861180;
        return r9861181;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[x \cdot \sin y + z \cdot \cos y\]
  2. Using strategy rm
  3. Applied add-cube-cbrt0.4

    \[\leadsto x \cdot \sin y + z \cdot \color{blue}{\left(\left(\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}\right) \cdot \sqrt[3]{\cos y}\right)}\]
  4. Applied associate-*r*0.4

    \[\leadsto x \cdot \sin y + \color{blue}{\left(z \cdot \left(\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}\right)\right) \cdot \sqrt[3]{\cos y}}\]
  5. Using strategy rm
  6. Applied cbrt-unprod0.3

    \[\leadsto x \cdot \sin y + \left(z \cdot \color{blue}{\sqrt[3]{\cos y \cdot \cos y}}\right) \cdot \sqrt[3]{\cos y}\]
  7. Using strategy rm
  8. Applied add-exp-log0.3

    \[\leadsto x \cdot \sin y + \left(z \cdot \color{blue}{e^{\log \left(\sqrt[3]{\cos y \cdot \cos y}\right)}}\right) \cdot \sqrt[3]{\cos y}\]
  9. Simplified0.2

    \[\leadsto x \cdot \sin y + \left(z \cdot e^{\color{blue}{\log \left(\cos y \cdot \cos y\right) \cdot \frac{1}{3}}}\right) \cdot \sqrt[3]{\cos y}\]
  10. Using strategy rm
  11. Applied add-cube-cbrt0.3

    \[\leadsto x \cdot \sin y + \left(z \cdot e^{\log \left(\cos y \cdot \cos y\right) \cdot \color{blue}{\left(\left(\sqrt[3]{\frac{1}{3}} \cdot \sqrt[3]{\frac{1}{3}}\right) \cdot \sqrt[3]{\frac{1}{3}}\right)}}\right) \cdot \sqrt[3]{\cos y}\]
  12. Applied associate-*r*0.3

    \[\leadsto x \cdot \sin y + \left(z \cdot e^{\color{blue}{\left(\log \left(\cos y \cdot \cos y\right) \cdot \left(\sqrt[3]{\frac{1}{3}} \cdot \sqrt[3]{\frac{1}{3}}\right)\right) \cdot \sqrt[3]{\frac{1}{3}}}}\right) \cdot \sqrt[3]{\cos y}\]
  13. Final simplification0.3

    \[\leadsto \sqrt[3]{\cos y} \cdot \left(z \cdot e^{\left(\log \left(\cos y \cdot \cos y\right) \cdot \left(\sqrt[3]{\frac{1}{3}} \cdot \sqrt[3]{\frac{1}{3}}\right)\right) \cdot \sqrt[3]{\frac{1}{3}}}\right) + x \cdot \sin y\]

Reproduce

herbie shell --seed 2019170 
(FPCore (x y z)
  :name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, B"
  (+ (* x (sin y)) (* z (cos y))))