\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 code(double a, double b, double c) {
return sqrt(((((((a + b) + c) / 2.0) * ((((a + b) + c) / 2.0) - a)) * ((((a + b) + c) / 2.0) - b)) * ((((a + b) + c) / 2.0) - c)));
}
herbie shell --seed 2020091
(FPCore (a b c)
:name "Area of a triangle"
:precision binary64
: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)
(sqrt (* (* (* (/ (+ (+ a b) c) 2) (- (/ (+ (+ a b) c) 2) a)) (- (/ (+ (+ a b) c) 2) b)) (- (/ (+ (+ a b) c) 2) c))))