Average Error: 0.1 → 0.1
Time: 6.2s
Precision: 64
\[\left(x + \cos y\right) - z \cdot \sin y\]
\[\left(x + \cos y\right) - z \cdot \sin y\]
\left(x + \cos y\right) - z \cdot \sin y
\left(x + \cos y\right) - z \cdot \sin y
double f(double x, double y, double z) {
        double r180587 = x;
        double r180588 = y;
        double r180589 = cos(r180588);
        double r180590 = r180587 + r180589;
        double r180591 = z;
        double r180592 = sin(r180588);
        double r180593 = r180591 * r180592;
        double r180594 = r180590 - r180593;
        return r180594;
}

double f(double x, double y, double z) {
        double r180595 = x;
        double r180596 = y;
        double r180597 = cos(r180596);
        double r180598 = r180595 + r180597;
        double r180599 = z;
        double r180600 = sin(r180596);
        double r180601 = r180599 * r180600;
        double r180602 = r180598 - r180601;
        return r180602;
}

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 + \cos y\right) - z \cdot \sin y\]
  2. Final simplification0.1

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

Reproduce

herbie shell --seed 2020033 +o rules:numerics
(FPCore (x y z)
  :name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, B"
  :precision binary64
  (- (+ x (cos y)) (* z (sin y))))