Average Error: 0.1 → 0.3
Time: 38.3s
Precision: 64
\[x \cdot \sin y + z \cdot \cos y\]
\[\sqrt[3]{\sqrt[3]{\cos y}} \cdot \left(\left(z \cdot {\left(\cos y \cdot \cos y\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}}\right) + x \cdot \sin y\]
x \cdot \sin y + z \cdot \cos y
\sqrt[3]{\sqrt[3]{\cos y}} \cdot \left(\left(z \cdot {\left(\cos y \cdot \cos y\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}}\right) + x \cdot \sin y
double f(double x, double y, double z) {
        double r11875004 = x;
        double r11875005 = y;
        double r11875006 = sin(r11875005);
        double r11875007 = r11875004 * r11875006;
        double r11875008 = z;
        double r11875009 = cos(r11875005);
        double r11875010 = r11875008 * r11875009;
        double r11875011 = r11875007 + r11875010;
        return r11875011;
}

double f(double x, double y, double z) {
        double r11875012 = y;
        double r11875013 = cos(r11875012);
        double r11875014 = cbrt(r11875013);
        double r11875015 = cbrt(r11875014);
        double r11875016 = z;
        double r11875017 = r11875013 * r11875013;
        double r11875018 = 0.3333333333333333;
        double r11875019 = pow(r11875017, r11875018);
        double r11875020 = r11875016 * r11875019;
        double r11875021 = r11875014 * r11875014;
        double r11875022 = cbrt(r11875021);
        double r11875023 = r11875020 * r11875022;
        double r11875024 = r11875015 * r11875023;
        double r11875025 = x;
        double r11875026 = sin(r11875012);
        double r11875027 = r11875025 * r11875026;
        double r11875028 = r11875024 + r11875027;
        return r11875028;
}

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-cube-cbrt0.3

    \[\leadsto x \cdot \sin y + \left(z \cdot \sqrt[3]{\cos y \cdot \cos y}\right) \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}\right) \cdot \sqrt[3]{\cos y}}}\]
  9. Applied cbrt-prod0.3

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

    \[\leadsto x \cdot \sin y + \color{blue}{\left(\left(z \cdot \sqrt[3]{\cos y \cdot \cos y}\right) \cdot \sqrt[3]{\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}}\right) \cdot \sqrt[3]{\sqrt[3]{\cos y}}}\]
  11. Using strategy rm
  12. Applied pow1/30.3

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

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

Reproduce

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