Average Error: 0.0 → 0.0
Time: 18.5s
Precision: 64
\[\left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right) + \left(\left(y + t\right) - 2\right) \cdot b\]
\[\left(\left(y + t\right) - 2\right) \cdot b + \left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right)\]
\left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right) + \left(\left(y + t\right) - 2\right) \cdot b
\left(\left(y + t\right) - 2\right) \cdot b + \left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right)
double f(double x, double y, double z, double t, double a, double b) {
        double r63556 = x;
        double r63557 = y;
        double r63558 = 1.0;
        double r63559 = r63557 - r63558;
        double r63560 = z;
        double r63561 = r63559 * r63560;
        double r63562 = r63556 - r63561;
        double r63563 = t;
        double r63564 = r63563 - r63558;
        double r63565 = a;
        double r63566 = r63564 * r63565;
        double r63567 = r63562 - r63566;
        double r63568 = r63557 + r63563;
        double r63569 = 2.0;
        double r63570 = r63568 - r63569;
        double r63571 = b;
        double r63572 = r63570 * r63571;
        double r63573 = r63567 + r63572;
        return r63573;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r63574 = y;
        double r63575 = t;
        double r63576 = r63574 + r63575;
        double r63577 = 2.0;
        double r63578 = r63576 - r63577;
        double r63579 = b;
        double r63580 = r63578 * r63579;
        double r63581 = x;
        double r63582 = 1.0;
        double r63583 = r63574 - r63582;
        double r63584 = z;
        double r63585 = r63583 * r63584;
        double r63586 = r63581 - r63585;
        double r63587 = r63575 - r63582;
        double r63588 = a;
        double r63589 = r63587 * r63588;
        double r63590 = r63586 - r63589;
        double r63591 = r63580 + r63590;
        return r63591;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right) + \left(\left(y + t\right) - 2\right) \cdot b\]
  2. Using strategy rm
  3. Applied +-commutative0.0

    \[\leadsto \color{blue}{\left(\left(y + t\right) - 2\right) \cdot b + \left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right)}\]
  4. Final simplification0.0

    \[\leadsto \left(\left(y + t\right) - 2\right) \cdot b + \left(\left(x - \left(y - 1\right) \cdot z\right) - \left(t - 1\right) \cdot a\right)\]

Reproduce

herbie shell --seed 2020100 
(FPCore (x y z t a b)
  :name "Statistics.Distribution.Beta:$centropy from math-functions-0.1.5.2"
  :precision binary64
  (+ (- (- x (* (- y 1) z)) (* (- t 1) a)) (* (- (+ y t) 2) b)))