Average Error: 0.1 → 0.1
Time: 18.5s
Precision: 64
\[\left(x + \sin y\right) + z \cdot \cos y\]
\[\left(x + \sin y\right) + z \cdot \cos y\]
\left(x + \sin y\right) + z \cdot \cos y
\left(x + \sin y\right) + z \cdot \cos y
double f(double x, double y, double z) {
        double r7135237 = x;
        double r7135238 = y;
        double r7135239 = sin(r7135238);
        double r7135240 = r7135237 + r7135239;
        double r7135241 = z;
        double r7135242 = cos(r7135238);
        double r7135243 = r7135241 * r7135242;
        double r7135244 = r7135240 + r7135243;
        return r7135244;
}

double f(double x, double y, double z) {
        double r7135245 = x;
        double r7135246 = y;
        double r7135247 = sin(r7135246);
        double r7135248 = r7135245 + r7135247;
        double r7135249 = z;
        double r7135250 = cos(r7135246);
        double r7135251 = r7135249 * r7135250;
        double r7135252 = r7135248 + r7135251;
        return r7135252;
}

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

    \[\left(x + \sin y\right) + z \cdot \cos y\]
  2. Final simplification0.1

    \[\leadsto \left(x + \sin y\right) + z \cdot \cos y\]

Reproduce

herbie shell --seed 2019168 
(FPCore (x y z)
  :name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, C"
  (+ (+ x (sin y)) (* z (cos y))))