\sqrt{\left(\left(\frac{\left(a + b\right) + c}{2} \cdot \left(\frac{\left(a + b\right) + c}{2} - a\right)\right) \cdot \left(\frac{\left(a + b\right) + c}{2} - b\right)\right) \cdot \left(\frac{\left(a + b\right) + c}{2} - c\right)}double f(double a, double b, double c) {
double r8776 = a;
double r8777 = b;
double r8778 = r8776 + r8777;
double r8779 = c;
double r8780 = r8778 + r8779;
double r8781 = 2.0;
double r8782 = r8780 / r8781;
double r8783 = r8782 - r8776;
double r8784 = r8782 * r8783;
double r8785 = r8782 - r8777;
double r8786 = r8784 * r8785;
double r8787 = r8782 - r8779;
double r8788 = r8786 * r8787;
double r8789 = sqrt(r8788);
return r8789;
}
Please include this information when filing a bug report:
herbie shell --seed 2019191 +o rules:numerics
(FPCore (a b c)
:name "Area of a triangle"
:pre (and (< 0.0 a (+ b c)) (< 0.0 b (+ a c)) (< 0.0 c (+ a b)))
:herbie-target
(/ (sqrt (* (* (* (+ a (+ b c)) (- c (- a b))) (+ c (- a b))) (+ a (- b c)))) 4.0)
(sqrt (* (* (* (/ (+ (+ a b) c) 2.0) (- (/ (+ (+ a b) c) 2.0) a)) (- (/ (+ (+ a b) c) 2.0) b)) (- (/ (+ (+ a b) c) 2.0) c))))
| get-representation: Unknown representation #f | L | C | |
|---|---|---|---|
| loop | /data/pavpan/nightlies/herbie/interface2/src/points.rkt | 122 | 4 |
| prepare-points | /data/pavpan/nightlies/herbie/interface2/src/points.rkt | 146 | 0 |
| setup-prog!34 | /data/pavpan/nightlies/herbie/interface2/src/mainloop.rkt | 67 | 0 |
| run-improve43 | /data/pavpan/nightlies/herbie/interface2/src/mainloop.rkt | 339 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |
| run | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |