Average Error: 0.0 → 0.0
Time: 16.1s
Precision: 64
\[\left(d - b \cdot b\right) - R \cdot R\]
\[\left(d - b \cdot b\right) - R \cdot R\]
\left(d - b \cdot b\right) - R \cdot R
\left(d - b \cdot b\right) - R \cdot R
double f(double d, double b, double R) {
        double r22840415 = d;
        double r22840416 = b;
        double r22840417 = r22840416 * r22840416;
        double r22840418 = r22840415 - r22840417;
        double r22840419 = R;
        double r22840420 = r22840419 * r22840419;
        double r22840421 = r22840418 - r22840420;
        return r22840421;
}

double f(double d, double b, double R) {
        double r22840422 = d;
        double r22840423 = b;
        double r22840424 = r22840423 * r22840423;
        double r22840425 = r22840422 - r22840424;
        double r22840426 = R;
        double r22840427 = r22840426 * r22840426;
        double r22840428 = r22840425 - r22840427;
        return r22840428;
}

Error

Bits error versus d

Bits error versus b

Bits error versus R

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(d - b \cdot b\right) - R \cdot R\]
  2. Final simplification0.0

    \[\leadsto \left(d - b \cdot b\right) - R \cdot R\]

Reproduce

herbie shell --seed 1 
(FPCore (d b R)
  :name "d - b * b - R * R"
  (- (- d (* b b)) (* R R)))