Average Error: 0.1 → 0.1
Time: 15.7s
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 r110502 = x;
        double r110503 = y;
        double r110504 = sin(r110503);
        double r110505 = r110502 + r110504;
        double r110506 = z;
        double r110507 = cos(r110503);
        double r110508 = r110506 * r110507;
        double r110509 = r110505 + r110508;
        return r110509;
}

double f(double x, double y, double z) {
        double r110510 = x;
        double r110511 = y;
        double r110512 = sin(r110511);
        double r110513 = r110510 + r110512;
        double r110514 = z;
        double r110515 = cos(r110511);
        double r110516 = r110514 * r110515;
        double r110517 = r110513 + r110516;
        return r110517;
}

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 2019305 
(FPCore (x y z)
  :name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, C"
  :precision binary64
  (+ (+ x (sin y)) (* z (cos y))))