Average Error: 1.4 → 0.9
Time: 8.6s
Precision: 64
\[x + y \cdot \frac{z - t}{z - a}\]
\[x + \left(\left(z - t\right) \cdot \frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}\right) \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z - a}}\]
x + y \cdot \frac{z - t}{z - a}
x + \left(\left(z - t\right) \cdot \frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}\right) \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z - a}}
double f(double x, double y, double z, double t, double a) {
        double r662204 = x;
        double r662205 = y;
        double r662206 = z;
        double r662207 = t;
        double r662208 = r662206 - r662207;
        double r662209 = a;
        double r662210 = r662206 - r662209;
        double r662211 = r662208 / r662210;
        double r662212 = r662205 * r662211;
        double r662213 = r662204 + r662212;
        return r662213;
}

double f(double x, double y, double z, double t, double a) {
        double r662214 = x;
        double r662215 = z;
        double r662216 = t;
        double r662217 = r662215 - r662216;
        double r662218 = y;
        double r662219 = cbrt(r662218);
        double r662220 = r662219 * r662219;
        double r662221 = a;
        double r662222 = r662215 - r662221;
        double r662223 = cbrt(r662222);
        double r662224 = r662223 * r662223;
        double r662225 = r662220 / r662224;
        double r662226 = r662217 * r662225;
        double r662227 = r662219 / r662223;
        double r662228 = r662226 * r662227;
        double r662229 = r662214 + r662228;
        return r662229;
}

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

Original1.4
Target1.2
Herbie0.9
\[x + \frac{y}{\frac{z - a}{z - t}}\]

Derivation

  1. Initial program 1.4

    \[x + y \cdot \frac{z - t}{z - a}\]
  2. Using strategy rm
  3. Applied *-un-lft-identity1.4

    \[\leadsto x + \color{blue}{\left(1 \cdot y\right)} \cdot \frac{z - t}{z - a}\]
  4. Applied associate-*l*1.4

    \[\leadsto x + \color{blue}{1 \cdot \left(y \cdot \frac{z - t}{z - a}\right)}\]
  5. Simplified3.1

    \[\leadsto x + 1 \cdot \color{blue}{\left(\left(z - t\right) \cdot \frac{y}{z - a}\right)}\]
  6. Using strategy rm
  7. Applied add-cube-cbrt3.5

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

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

    \[\leadsto x + 1 \cdot \left(\left(z - t\right) \cdot \color{blue}{\left(\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z - a}}\right)}\right)\]
  10. Applied associate-*r*0.9

    \[\leadsto x + 1 \cdot \color{blue}{\left(\left(\left(z - t\right) \cdot \frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{z - a} \cdot \sqrt[3]{z - a}}\right) \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z - a}}\right)}\]
  11. Final simplification0.9

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

Reproduce

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

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

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