Average Error: 2.4 → 2.4
Time: 1.2s
Precision: binary64
\[\frac{inflow}{lam} + \left(1 - \frac{outflow}{lam}\right) \cdot p\]
\[\frac{inflow}{lam} + \left(1 - \frac{outflow}{lam}\right) \cdot p\]
\frac{inflow}{lam} + \left(1 - \frac{outflow}{lam}\right) \cdot p
\frac{inflow}{lam} + \left(1 - \frac{outflow}{lam}\right) \cdot p
double code(double inflow, double lam, double outflow, double p) {
	return ((double) (((double) (inflow / lam)) + ((double) (((double) (1.0 - ((double) (outflow / lam)))) * p))));
}
double code(double inflow, double lam, double outflow, double p) {
	return ((double) (((double) (inflow / lam)) + ((double) (((double) (1.0 - ((double) (outflow / lam)))) * p))));
}

Error

Bits error versus inflow

Bits error versus lam

Bits error versus outflow

Bits error versus p

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 2.4

    \[\frac{inflow}{lam} + \left(1 - \frac{outflow}{lam}\right) \cdot p\]
  2. Final simplification2.4

    \[\leadsto \frac{inflow}{lam} + \left(1 - \frac{outflow}{lam}\right) \cdot p\]

Reproduce

herbie shell --seed 2020153 
(FPCore (inflow lam outflow p)
  :name "(+ (/ inflow lam) (* (- 1.0 (/ outflow lam)) p))"
  :precision binary64
  (+ (/ inflow lam) (* (- 1.0 (/ outflow lam)) p)))