Average Error: 0.1 → 0.1
Time: 44.1s
Precision: 64
\[x \cdot \left(\left(\left(\left(y + z\right) + z\right) + y\right) + t\right) + y \cdot 5\]
\[\left(\left(\left(z + y\right) + \left(z + y\right)\right) + t\right) \cdot x + y \cdot 5\]
x \cdot \left(\left(\left(\left(y + z\right) + z\right) + y\right) + t\right) + y \cdot 5
\left(\left(\left(z + y\right) + \left(z + y\right)\right) + t\right) \cdot x + y \cdot 5
double f(double x, double y, double z, double t) {
        double r7392726 = x;
        double r7392727 = y;
        double r7392728 = z;
        double r7392729 = r7392727 + r7392728;
        double r7392730 = r7392729 + r7392728;
        double r7392731 = r7392730 + r7392727;
        double r7392732 = t;
        double r7392733 = r7392731 + r7392732;
        double r7392734 = r7392726 * r7392733;
        double r7392735 = 5.0;
        double r7392736 = r7392727 * r7392735;
        double r7392737 = r7392734 + r7392736;
        return r7392737;
}

double f(double x, double y, double z, double t) {
        double r7392738 = z;
        double r7392739 = y;
        double r7392740 = r7392738 + r7392739;
        double r7392741 = r7392740 + r7392740;
        double r7392742 = t;
        double r7392743 = r7392741 + r7392742;
        double r7392744 = x;
        double r7392745 = r7392743 * r7392744;
        double r7392746 = 5.0;
        double r7392747 = r7392739 * r7392746;
        double r7392748 = r7392745 + r7392747;
        return r7392748;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[x \cdot \left(\left(\left(\left(y + z\right) + z\right) + y\right) + t\right) + y \cdot 5\]
  2. Simplified0.1

    \[\leadsto \color{blue}{y \cdot 5 + \left(\left(\left(y + z\right) + \left(y + z\right)\right) + t\right) \cdot x}\]
  3. Final simplification0.1

    \[\leadsto \left(\left(\left(z + y\right) + \left(z + y\right)\right) + t\right) \cdot x + y \cdot 5\]

Reproduce

herbie shell --seed 2019172 
(FPCore (x y z t)
  :name "Graphics.Rendering.Plot.Render.Plot.Legend:renderLegendOutside from plot-0.2.3.4, B"
  (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5.0)))