Average Error: 0.1 → 0.6
Time: 20.2s
Precision: 64
\[x \cdot \cos y + z \cdot \sin y\]
\[x \cdot \cos y + \sqrt[3]{\sin y \cdot z} \cdot \left(\left(\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}\right) \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right)\right)\]
x \cdot \cos y + z \cdot \sin y
x \cdot \cos y + \sqrt[3]{\sin y \cdot z} \cdot \left(\left(\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}\right) \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right)\right)
double f(double x, double y, double z) {
        double r11179107 = x;
        double r11179108 = y;
        double r11179109 = cos(r11179108);
        double r11179110 = r11179107 * r11179109;
        double r11179111 = z;
        double r11179112 = sin(r11179108);
        double r11179113 = r11179111 * r11179112;
        double r11179114 = r11179110 + r11179113;
        return r11179114;
}

double f(double x, double y, double z) {
        double r11179115 = x;
        double r11179116 = y;
        double r11179117 = cos(r11179116);
        double r11179118 = r11179115 * r11179117;
        double r11179119 = sin(r11179116);
        double r11179120 = z;
        double r11179121 = r11179119 * r11179120;
        double r11179122 = cbrt(r11179121);
        double r11179123 = cbrt(r11179119);
        double r11179124 = r11179123 * r11179123;
        double r11179125 = cbrt(r11179120);
        double r11179126 = r11179125 * r11179125;
        double r11179127 = r11179124 * r11179126;
        double r11179128 = r11179122 * r11179127;
        double r11179129 = r11179118 + r11179128;
        return r11179129;
}

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 \cos y + z \cdot \sin y\]
  2. Using strategy rm
  3. Applied add-cube-cbrt0.6

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

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

    \[\leadsto x \cdot \cos y + \left(\color{blue}{\left(\sqrt[3]{z} \cdot \sqrt[3]{\sin y}\right)} \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{\sin y}\right)\right) \cdot \sqrt[3]{z \cdot \sin y}\]
  7. Applied swap-sqr0.6

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

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

Reproduce

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