



Bits error versus x
| Original | 29.3 |
|---|---|
| Target | 0.0 |
| Herbie | 0.6 |
Initial program 29.3
Taylor expanded around 0 0.6
Simplified0.6
Final simplification0.6
herbie shell --seed 2019004 +o rules:numerics
(FPCore (x)
:name "exp2 (problem 3.3.7)"
:herbie-target
(* 4 (pow (sinh (/ x 2)) 2))
(+ (- (exp x) 2) (exp (- x))))
Time bar (total: 1.1m)Debug log
1 calls. Slowest were:
| 39.0ms | (+ (- (exp x) 2) (exp (- x))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 27.7b
Found 2 expressions with local error:
| 4.3b | (+ (- (exp x) 2) (exp (- x))) |
| 0.0b | (- (exp x) 2) |
2 calls. Slowest were:
| 32.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 3.0ms | (- (exp x) 2) |
2 calls. Slowest were:
| 81.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 9.0ms | (- (exp x) 2) |
23 calls. Slowest were:
| 336.0ms | (+ (* (- (pow (exp x) 3) (pow 2 3)) (exp x)) (* (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2))) (exp 0))) |
| 217.0ms | (+ (* (- (* (exp x) (exp x)) (* 2 2)) (exp x)) (* (+ (exp x) 2) (exp 0))) |
| 196.0ms | (+ (* (- (pow (exp x) 3) (pow 2 3)) (exp x)) (* (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2))) 1)) |
3 alts after pruning (3 fresh and 0 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 0.0b | (fma 1/12 (pow x 4) (fma 1/360 (pow x 6) (* x x))) |
| 0.0b | (fma 1/360 (pow x 6) (* x x)) |
2 calls. Slowest were:
| 0.0ms | (fma 1/12 (pow x 4) (fma 1/360 (pow x 6) (* x x))) |
| 0.0ms | (fma 1/360 (pow x 6) (* x x)) |
2 calls. Slowest were:
| 52.0ms | (fma 1/360 (pow x 6) (* x x)) |
| 23.0ms | (fma 1/12 (pow x 4) (fma 1/360 (pow x 6) (* x x))) |
6 calls. Slowest were:
| 29.0ms | (+ (pow x 2) (+ (* 1/12 (pow x 4)) (* 1/360 (pow x 6)))) |
| 26.0ms | (+ (pow x 2) (+ (* 1/12 (pow x 4)) (* 1/360 (pow x 6)))) |
| 26.0ms | (+ (pow x 2) (+ (* 1/12 (pow x 4)) (* 1/360 (pow x 6)))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 4.3b | (+ (- (exp x) 2) (exp (- x))) |
| 4.3b | (+ (- (exp x) 2) (exp (- x))) |
| 4.3b | (+ (- (exp x) 2) (exp (- x))) |
| 0.1b | (cbrt (+ (- (exp x) 2) (exp (- x)))) |
4 calls. Slowest were:
| 18.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 15.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 15.0ms | (+ (- (exp x) 2) (exp (- x))) |
4 calls. Slowest were:
| 248.0ms | (cbrt (+ (- (exp x) 2) (exp (- x)))) |
| 83.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 78.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 64.0ms | (+ (- (exp x) 2) (exp (- x))) |
67 calls. Slowest were:
| 519.0ms | (cbrt (+ (* (- (* (exp x) (exp x)) (* 2 2)) (exp x)) (* (+ (exp x) 2) 1))) |
| 453.0ms | (+ (* (- (pow (exp x) 3) (pow 2 3)) (exp x)) (* (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2))) (exp 0))) |
| 422.0ms | (+ (* (- (pow (exp x) 3) (pow 2 3)) (exp x)) (* (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2))) (exp 0))) |
4 alts after pruning (3 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 4.3b | (+ (- (exp x) 2) (exp (- x))) |
| 4.3b | (+ (- (exp x) 2) (exp (- x))) |
| 4.3b | (- (* (- (exp x) 2) (- (exp x) 2)) (* (exp (- x)) (exp (- x)))) |
| 0.1b | (cbrt (+ (- (exp x) 2) (exp (- x)))) |
4 calls. Slowest were:
| 25.0ms | (- (* (- (exp x) 2) (- (exp x) 2)) (* (exp (- x)) (exp (- x)))) |
| 16.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 15.0ms | (+ (- (exp x) 2) (exp (- x))) |
4 calls. Slowest were:
| 274.0ms | (cbrt (+ (- (exp x) 2) (exp (- x)))) |
| 83.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 80.0ms | (+ (- (exp x) 2) (exp (- x))) |
| 78.0ms | (- (* (- (exp x) 2) (- (exp x) 2)) (* (exp (- x)) (exp (- x)))) |
206 calls. Slowest were:
| 1.1s | (- (* (* (- (* (exp x) (exp x)) (* 2 2)) (- (* (exp x) (exp x)) (* 2 2))) (exp x)) (* (* (+ (exp x) 2) (+ (exp x) 2)) (* 1 (exp (- x))))) |
| 875.0ms | (* (* (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2))) (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2)))) (* (exp x) (exp x))) |
| 855.0ms | (* (* (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2))) (+ (* (exp x) (exp x)) (+ (* 2 2) (* (exp x) 2)))) (exp x)) |
4 alts after pruning (3 fresh and 1 done)
Merged error: 0.0b
0% (0.6b remaining)
Error of 0.6b against oracle of 0.0b and baseline of 0.6b