Average Error: 0.1 → 0.1
Time: 5.1s
Precision: binary64
Cost: 448
$\left(0 \leq muMean \land muMean \leq 100000\right) \land \left(0 \leq vERatioMean \land vERatioMean \leq 100\right)$
$\frac{\left(\left(4 \cdot muMean\right) \cdot muMean\right) \cdot vERatioMean}{1 - \left(6 \cdot muMean\right) \cdot vERatioMean}$
$\left(muMean \cdot muMean\right) \cdot \left(4 \cdot vERatioMean\right)$
(FPCore (muMean vERatioMean)
:precision binary64
(/
(* (* (* 4.0 muMean) muMean) vERatioMean)
(- 1.0 (* (* 6.0 muMean) vERatioMean))))
(FPCore (muMean vERatioMean)
:precision binary64
(* (* muMean muMean) (* 4.0 vERatioMean)))
double code(double muMean, double vERatioMean) {
return (((4.0 * muMean) * muMean) * vERatioMean) / (1.0 - ((6.0 * muMean) * vERatioMean));
}

double code(double muMean, double vERatioMean) {
return (muMean * muMean) * (4.0 * vERatioMean);
}

real(8) function code(mumean, veratiomean)
real(8), intent (in) :: mumean
real(8), intent (in) :: veratiomean
code = (((4.0d0 * mumean) * mumean) * veratiomean) / (1.0d0 - ((6.0d0 * mumean) * veratiomean))
end function

real(8) function code(mumean, veratiomean)
real(8), intent (in) :: mumean
real(8), intent (in) :: veratiomean
code = (mumean * mumean) * (4.0d0 * veratiomean)
end function

public static double code(double muMean, double vERatioMean) {
return (((4.0 * muMean) * muMean) * vERatioMean) / (1.0 - ((6.0 * muMean) * vERatioMean));
}

public static double code(double muMean, double vERatioMean) {
return (muMean * muMean) * (4.0 * vERatioMean);
}

def code(muMean, vERatioMean):
return (((4.0 * muMean) * muMean) * vERatioMean) / (1.0 - ((6.0 * muMean) * vERatioMean))

def code(muMean, vERatioMean):
return (muMean * muMean) * (4.0 * vERatioMean)

function code(muMean, vERatioMean)
return Float64(Float64(Float64(Float64(4.0 * muMean) * muMean) * vERatioMean) / Float64(1.0 - Float64(Float64(6.0 * muMean) * vERatioMean)))
end

function code(muMean, vERatioMean)
return Float64(Float64(muMean * muMean) * Float64(4.0 * vERatioMean))
end

function tmp = code(muMean, vERatioMean)
tmp = (((4.0 * muMean) * muMean) * vERatioMean) / (1.0 - ((6.0 * muMean) * vERatioMean));
end

function tmp = code(muMean, vERatioMean)
tmp = (muMean * muMean) * (4.0 * vERatioMean);
end

code[muMean_, vERatioMean_] := N[(N[(N[(N[(4.0 * muMean), $MachinePrecision] * muMean),$MachinePrecision] * vERatioMean), $MachinePrecision] / N[(1.0 - N[(N[(6.0 * muMean),$MachinePrecision] * vERatioMean), $MachinePrecision]),$MachinePrecision]), $MachinePrecision]  code[muMean_, vERatioMean_] := N[(N[(muMean * muMean),$MachinePrecision] * N[(4.0 * vERatioMean), $MachinePrecision]),$MachinePrecision]

\frac{\left(\left(4 \cdot muMean\right) \cdot muMean\right) \cdot vERatioMean}{1 - \left(6 \cdot muMean\right) \cdot vERatioMean}

\left(muMean \cdot muMean\right) \cdot \left(4 \cdot vERatioMean\right)


# Try it out

Results

 In Out
Enter valid numbers for all inputs

# Derivation

1. Initial program 0.1

$\frac{\left(\left(4 \cdot muMean\right) \cdot muMean\right) \cdot vERatioMean}{1 - \left(6 \cdot muMean\right) \cdot vERatioMean}$
2. Simplified0.1

$\leadsto \color{blue}{\frac{muMean}{\frac{0.25}{muMean \cdot vERatioMean} + -1.5}}$
3. Taylor expanded in muMean around 0 0.1

$\leadsto \color{blue}{4 \cdot \left(vERatioMean \cdot {muMean}^{2}\right)}$
4. Simplified0.1

$\leadsto \color{blue}{muMean \cdot \left(muMean \cdot \left(vERatioMean \cdot 4\right)\right)}$
5. Taylor expanded in muMean around 0 0.1

$\leadsto \color{blue}{4 \cdot \left(vERatioMean \cdot {muMean}^{2}\right)}$
6. Simplified0.1

$\leadsto \color{blue}{\left(muMean \cdot muMean\right) \cdot \left(4 \cdot vERatioMean\right)}$
7. Final simplification0.1

$\leadsto \left(muMean \cdot muMean\right) \cdot \left(4 \cdot vERatioMean\right)$

# Alternatives

Alternative 1
Error60.7
Cost192
$muMean \cdot -0.6666666666666666$

# Reproduce

herbie shell --seed 1
(FPCore (muMean vERatioMean)
:name "(4.0 * muMean*muMean * vERatioMean) / (1.0 - 6.0 * muMean * vERatioMean)"
:precision binary64
:pre (and (and (<= 0.0 muMean) (<= muMean 100000.0)) (and (<= 0.0 vERatioMean) (<= vERatioMean 100.0)))
(/ (* (* (* 4.0 muMean) muMean) vERatioMean) (- 1.0 (* (* 6.0 muMean) vERatioMean))))