
(FPCore (x eps) :precision binary64 (- x (sqrt (- (* x x) eps))))
double code(double x, double eps) {
return x - sqrt(((x * x) - eps));
}
real(8) function code(x, eps)
real(8), intent (in) :: x
real(8), intent (in) :: eps
code = x - sqrt(((x * x) - eps))
end function
public static double code(double x, double eps) {
return x - Math.sqrt(((x * x) - eps));
}
def code(x, eps): return x - math.sqrt(((x * x) - eps))
function code(x, eps) return Float64(x - sqrt(Float64(Float64(x * x) - eps))) end
function tmp = code(x, eps) tmp = x - sqrt(((x * x) - eps)); end
code[x_, eps_] := N[(x - N[Sqrt[N[(N[(x * x), $MachinePrecision] - eps), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
x - \sqrt{x \cdot x - \varepsilon}
\end{array}
herbie shell --seed 2024246
(FPCore (x eps)
:name "ENA, Section 1.4, Exercise 4d"
:precision binary64
:pre (and (and (<= 0.0 x) (<= x 1000000000.0)) (and (<= -1.0 eps) (<= eps 1.0)))
:alt
(! :herbie-platform default (/ eps (+ x (sqrt (- (* x x) eps)))))
(- x (sqrt (- (* x x) eps))))
Please file a bug report with this information.
| map: contract violation expected: list? given: '((-.f64 x (sqrt.f64 (-.f64 (*.f64 x x) eps))) . #hasheq((errs . (1 1 4071933343233423473 1 1 610349348897529034 1 2352791112050720444 1 1643568378178688590 1207575131313819795 1779696942774164221 1 1 1 1 1 3460389419954598121 3076142920722939119 144165... | L | C | |
|---|---|---|---|
| gen-map | /usr/local/racket/collects/racket/private/map.rkt | 257 | 2 |
| actual-errors | /home/nightlies/herbie/zane-concrete-values/src/core/explain.rkt | 35 | 0 |
| generate-timelines | /home/nightlies/herbie/zane-concrete-values/src/core/explain.rkt | 493 | 0 |
| explain! | /home/nightlies/herbie/zane-concrete-values/src/core/mainloop.rkt | 322 | 0 |
| run-improve! | /home/nightlies/herbie/zane-concrete-values/src/core/mainloop.rkt | 44 | 0 |
| get-alternatives/report | /home/nightlies/herbie/zane-concrete-values/src/api/sandbox.rkt | 186 | 0 |
| (unnamed) | /home/nightlies/herbie/zane-concrete-values/src/api/sandbox.rkt | 282 | 6 |
| (unnamed) | /usr/local/racket/share/pkgs/profile-lib/main.rkt | 40 | 10 |
| profile-thunk | /usr/local/racket/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /usr/local/racket/collects/racket/engine.rkt | 42 | 24 |