
(FPCore (a b) :precision binary64 (* (+ a b) (+ a b)))
double code(double a, double b) {
return (a + b) * (a + b);
}
real(8) function code(a, b)
real(8), intent (in) :: a
real(8), intent (in) :: b
code = (a + b) * (a + b)
end function
public static double code(double a, double b) {
return (a + b) * (a + b);
}
def code(a, b): return (a + b) * (a + b)
function code(a, b) return Float64(Float64(a + b) * Float64(a + b)) end
function tmp = code(a, b) tmp = (a + b) * (a + b); end
code[a_, b_] := N[(N[(a + b), $MachinePrecision] * N[(a + b), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
\left(a + b\right) \cdot \left(a + b\right)
\end{array}
herbie shell --seed 2024261
(FPCore (a b)
:name "Expression 4, p15"
:precision binary64
:pre (and (and (<= 5.0 a) (<= a 10.0)) (and (<= 0.0 b) (<= b 0.001)))
:alt
(! :herbie-platform default (+ (+ (+ (* b a) (* b b)) (* b a)) (* a a)))
(* (+ a b) (+ a b)))
Please file a bug report with this information.
| run-egg: cannot find proof; start and end are not equal. start: (*.f64 (fma.f64 #s(literal 2 binary64) a b) b) end: #s(literal 8 binary64) | L | C | |
|---|---|---|---|
| add-soundiness | /home/nightlies/herbie/artem-batch-finish-rewrite/src/core/soundiness.rkt | 140 | 0 |
| extract! | /home/nightlies/herbie/artem-batch-finish-rewrite/src/core/mainloop.rkt | 79 | 0 |
| run-improve! | /home/nightlies/herbie/artem-batch-finish-rewrite/src/core/mainloop.rkt | 45 | 0 |
| get-alternatives/report | /home/nightlies/herbie/artem-batch-finish-rewrite/src/api/sandbox.rkt | 186 | 0 |
| (unnamed) | /home/nightlies/herbie/artem-batch-finish-rewrite/src/api/sandbox.rkt | 282 | 6 |
| (unnamed) | /usr/share/racket/pkgs/profile-lib/main.rkt | 40 | 10 |
| profile-thunk | /usr/share/racket/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /usr/share/racket/collects/racket/engine.rkt | 42 | 24 |