Average Error: 0.0 → 0.0
Time: 1.3s
Precision: binary64
\[\left(\left(\left(\left(0.0959766939625851939 + 1.1396830576942301 \cdot X1\right) - 0.228632212957502995 \cdot X2\right) + 0.22233740004927299 \cdot X3\right) + 0.0149055789361975995 \cdot X4\right) + 5.18872419015468998 \cdot 10^{-4} \cdot X5\]
\[\left(\left(\left(\left(0.0959766939625851939 + 1.1396830576942301 \cdot X1\right) - 0.228632212957502995 \cdot X2\right) + 0.22233740004927299 \cdot X3\right) + 0.0149055789361975995 \cdot X4\right) + 5.18872419015468998 \cdot 10^{-4} \cdot X5\]
\left(\left(\left(\left(0.0959766939625851939 + 1.1396830576942301 \cdot X1\right) - 0.228632212957502995 \cdot X2\right) + 0.22233740004927299 \cdot X3\right) + 0.0149055789361975995 \cdot X4\right) + 5.18872419015468998 \cdot 10^{-4} \cdot X5
\left(\left(\left(\left(0.0959766939625851939 + 1.1396830576942301 \cdot X1\right) - 0.228632212957502995 \cdot X2\right) + 0.22233740004927299 \cdot X3\right) + 0.0149055789361975995 \cdot X4\right) + 5.18872419015468998 \cdot 10^{-4} \cdot X5
double code(double X1, double X2, double X3, double X4, double X5) {
	return ((double) (((double) (((double) (((double) (((double) (0.0959766939625852 + ((double) (1.13968305769423 * X1)))) - ((double) (0.228632212957503 * X2)))) + ((double) (0.222337400049273 * X3)))) + ((double) (0.0149055789361976 * X4)))) + ((double) (0.000518872419015469 * X5))));
}
double code(double X1, double X2, double X3, double X4, double X5) {
	return ((double) (((double) (((double) (((double) (((double) (0.0959766939625852 + ((double) (1.13968305769423 * X1)))) - ((double) (0.228632212957503 * X2)))) + ((double) (0.222337400049273 * X3)))) + ((double) (0.0149055789361976 * X4)))) + ((double) (0.000518872419015469 * X5))));
}

Error

Bits error versus X1

Bits error versus X2

Bits error versus X3

Bits error versus X4

Bits error versus X5

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\left(\left(\left(0.0959766939625851939 + 1.1396830576942301 \cdot X1\right) - 0.228632212957502995 \cdot X2\right) + 0.22233740004927299 \cdot X3\right) + 0.0149055789361975995 \cdot X4\right) + 5.18872419015468998 \cdot 10^{-4} \cdot X5\]
  2. Final simplification0.0

    \[\leadsto \left(\left(\left(\left(0.0959766939625851939 + 1.1396830576942301 \cdot X1\right) - 0.228632212957502995 \cdot X2\right) + 0.22233740004927299 \cdot X3\right) + 0.0149055789361975995 \cdot X4\right) + 5.18872419015468998 \cdot 10^{-4} \cdot X5\]

Reproduce

herbie shell --seed 2020153 
(FPCore (X1 X2 X3 X4 X5)
  :name "(+ (+ (+ (- (+ 0.0959766939625852 (* 1.13968305769423 X1)) (* 0.228632212957503 X2)) (* 0.222337400049273 X3)) (* 0.0149055789361976 X4)) (* 0.000518872419015469 X5))"
  :precision binary64
  (+ (+ (+ (- (+ 0.0959766939625852 (* 1.13968305769423 X1)) (* 0.228632212957503 X2)) (* 0.222337400049273 X3)) (* 0.0149055789361976 X4)) (* 0.000518872419015469 X5)))