| Alternative 1 | |
|---|---|
| Error | 0.0 |
| Cost | 448 |
\[\frac{f + n}{n - f}
\]
(FPCore (f n) :precision binary64 (/ (- (+ f n)) (- f n)))
(FPCore (f n) :precision binary64 (/ (- (- n) f) (- f n)))
double code(double f, double n) {
return -(f + n) / (f - n);
}
double code(double f, double n) {
return (-n - f) / (f - n);
}
real(8) function code(f, n)
real(8), intent (in) :: f
real(8), intent (in) :: n
code = -(f + n) / (f - n)
end function
real(8) function code(f, n)
real(8), intent (in) :: f
real(8), intent (in) :: n
code = (-n - f) / (f - n)
end function
public static double code(double f, double n) {
return -(f + n) / (f - n);
}
public static double code(double f, double n) {
return (-n - f) / (f - n);
}
def code(f, n): return -(f + n) / (f - n)
def code(f, n): return (-n - f) / (f - n)
function code(f, n) return Float64(Float64(-Float64(f + n)) / Float64(f - n)) end
function code(f, n) return Float64(Float64(Float64(-n) - f) / Float64(f - n)) end
function tmp = code(f, n) tmp = -(f + n) / (f - n); end
function tmp = code(f, n) tmp = (-n - f) / (f - n); end
code[f_, n_] := N[((-N[(f + n), $MachinePrecision]) / N[(f - n), $MachinePrecision]), $MachinePrecision]
code[f_, n_] := N[(N[((-n) - f), $MachinePrecision] / N[(f - n), $MachinePrecision]), $MachinePrecision]
\frac{-\left(f + n\right)}{f - n}
\frac{\left(-n\right) - f}{f - n}
Results
Initial program 0.0
Final simplification0.0
| Alternative 1 | |
|---|---|
| Error | 0.0 |
| Cost | 448 |
| Alternative 2 | |
|---|---|
| Error | 18.0 |
| Cost | 328 |

herbie shell --seed 2022289
(FPCore (f n)
:name "subtraction fraction"
:precision binary64
(/ (- (+ f n)) (- f n)))