Average Error: 11.2 → 0.5
Time: 18.4s
Precision: 64
\[x + \frac{y \cdot \left(z - t\right)}{z - a}\]
\[x + \frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}} \cdot \frac{y}{\frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}\]
x + \frac{y \cdot \left(z - t\right)}{z - a}
x + \frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}} \cdot \frac{y}{\frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}
double f(double x, double y, double z, double t, double a) {
        double r40355122 = x;
        double r40355123 = y;
        double r40355124 = z;
        double r40355125 = t;
        double r40355126 = r40355124 - r40355125;
        double r40355127 = r40355123 * r40355126;
        double r40355128 = a;
        double r40355129 = r40355124 - r40355128;
        double r40355130 = r40355127 / r40355129;
        double r40355131 = r40355122 + r40355130;
        return r40355131;
}

double f(double x, double y, double z, double t, double a) {
        double r40355132 = x;
        double r40355133 = z;
        double r40355134 = t;
        double r40355135 = r40355133 - r40355134;
        double r40355136 = cbrt(r40355135);
        double r40355137 = r40355136 * r40355136;
        double r40355138 = a;
        double r40355139 = r40355133 - r40355138;
        double r40355140 = cbrt(r40355139);
        double r40355141 = r40355140 * r40355140;
        double r40355142 = r40355137 / r40355141;
        double r40355143 = y;
        double r40355144 = r40355140 / r40355136;
        double r40355145 = r40355143 / r40355144;
        double r40355146 = r40355142 * r40355145;
        double r40355147 = r40355132 + r40355146;
        return r40355147;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original11.2
Target1.2
Herbie0.5
\[x + \frac{y}{\frac{z - a}{z - t}}\]

Derivation

  1. Initial program 11.2

    \[x + \frac{y \cdot \left(z - t\right)}{z - a}\]
  2. Using strategy rm
  3. Applied associate-/l*1.2

    \[\leadsto x + \color{blue}{\frac{y}{\frac{z - a}{z - t}}}\]
  4. Using strategy rm
  5. Applied add-cube-cbrt1.7

    \[\leadsto x + \frac{y}{\frac{z - a}{\color{blue}{\left(\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}\right) \cdot \sqrt[3]{z - t}}}}\]
  6. Applied add-cube-cbrt1.6

    \[\leadsto x + \frac{y}{\frac{\color{blue}{\left(\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}\right) \cdot \sqrt[3]{z - a}}}{\left(\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}\right) \cdot \sqrt[3]{z - t}}}\]
  7. Applied times-frac1.6

    \[\leadsto x + \frac{y}{\color{blue}{\frac{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}} \cdot \frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}}\]
  8. Applied *-un-lft-identity1.6

    \[\leadsto x + \frac{\color{blue}{1 \cdot y}}{\frac{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}} \cdot \frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}\]
  9. Applied times-frac0.5

    \[\leadsto x + \color{blue}{\frac{1}{\frac{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}} \cdot \frac{y}{\frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}}\]
  10. Simplified0.5

    \[\leadsto x + \color{blue}{\frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}} \cdot \frac{y}{\frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}\]
  11. Final simplification0.5

    \[\leadsto x + \frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}} \cdot \frac{y}{\frac{\sqrt[3]{z - a}}{\sqrt[3]{z - t}}}\]

Reproduce

herbie shell --seed 2019174 
(FPCore (x y z t a)
  :name "Graphics.Rendering.Plot.Render.Plot.Axis:renderAxisTicks from plot-0.2.3.4, A"

  :herbie-target
  (+ x (/ y (/ (- z a) (- z t))))

  (+ x (/ (* y (- z t)) (- z a))))