Average Error: 23.5 → 23.5
Time: 7.1s
Precision: 64
\[\frac{x \cdot y + z \cdot \left(t - a\right)}{y + z \cdot \left(b - y\right)}\]
\[\frac{x \cdot y + z \cdot \left(t - a\right)}{y + z \cdot \left(b - y\right)}\]
\frac{x \cdot y + z \cdot \left(t - a\right)}{y + z \cdot \left(b - y\right)}
\frac{x \cdot y + z \cdot \left(t - a\right)}{y + z \cdot \left(b - y\right)}
double f(double x, double y, double z, double t, double a, double b) {
        double r737845 = x;
        double r737846 = y;
        double r737847 = r737845 * r737846;
        double r737848 = z;
        double r737849 = t;
        double r737850 = a;
        double r737851 = r737849 - r737850;
        double r737852 = r737848 * r737851;
        double r737853 = r737847 + r737852;
        double r737854 = b;
        double r737855 = r737854 - r737846;
        double r737856 = r737848 * r737855;
        double r737857 = r737846 + r737856;
        double r737858 = r737853 / r737857;
        return r737858;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r737859 = x;
        double r737860 = y;
        double r737861 = r737859 * r737860;
        double r737862 = z;
        double r737863 = t;
        double r737864 = a;
        double r737865 = r737863 - r737864;
        double r737866 = r737862 * r737865;
        double r737867 = r737861 + r737866;
        double r737868 = b;
        double r737869 = r737868 - r737860;
        double r737870 = r737862 * r737869;
        double r737871 = r737860 + r737870;
        double r737872 = r737867 / r737871;
        return r737872;
}

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

Target

Original23.5
Target18.5
Herbie23.5
\[\frac{z \cdot t + y \cdot x}{y + z \cdot \left(b - y\right)} - \frac{a}{\left(b - y\right) + \frac{y}{z}}\]

Derivation

  1. Initial program 23.5

    \[\frac{x \cdot y + z \cdot \left(t - a\right)}{y + z \cdot \left(b - y\right)}\]
  2. Final simplification23.5

    \[\leadsto \frac{x \cdot y + z \cdot \left(t - a\right)}{y + z \cdot \left(b - y\right)}\]

Reproduce

herbie shell --seed 2020034 
(FPCore (x y z t a b)
  :name "Development.Shake.Progress:decay from shake-0.15.5"
  :precision binary64

  :herbie-target
  (- (/ (+ (* z t) (* y x)) (+ y (* z (- b y)))) (/ a (+ (- b y) (/ y z))))

  (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))))