


Bits error versus x



Bits error versus y
Initial program 43.6
Initial simplification43.7
Taylor expanded around 0 31.1
Final simplification31.1
herbie shell --seed 2018362 +o rules:numerics
(FPCore (x y)
:name "Euler formula imaginary part (p55)"
(im (complex (* (/ (+ (exp x) (exp (- x))) 2) (cos y)) (* (/ (- (exp x) (exp (- x))) 2) (sin y)))))
Time bar (total: 31.1s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 44.5b
Found 4 expressions with local error:
| 44.5b | (- (* (exp x) (sin y)) (/ (sin y) (exp x))) |
| 0.0b | (* (exp x) (sin y)) |
| 0.0b | (/ (- (* (exp x) (sin y)) (/ (sin y) (exp x))) 2) |
| 0.0b | (/ (sin y) (exp x)) |
4 calls. Slowest were:
| 15.0ms | (/ (- (* (exp x) (sin y)) (/ (sin y) (exp x))) 2) |
| 7.0ms | (- (* (exp x) (sin y)) (/ (sin y) (exp x))) |
| 6.0ms | (/ (sin y) (exp x)) |
4 calls. Slowest were:
| 115.0ms | (/ (- (* (exp x) (sin y)) (/ (sin y) (exp x))) 2) |
| 98.0ms | (- (* (exp x) (sin y)) (/ (sin y) (exp x))) |
| 45.0ms | (/ (sin y) (exp x)) |
| 43.0ms | (* (exp x) (sin y)) |
78 calls. Slowest were:
| 484.0ms | (fma (exp x) (sin y) (- (* (/ (cbrt (sin y)) (cbrt (exp x))) (/ (* (cbrt (sin y)) (cbrt (sin y))) (* (cbrt (exp x)) (cbrt (exp x))))))) |
| 366.0ms | (- (pow (* (exp x) (sin y)) 3) (pow (/ (sin y) (exp x)) 3)) |
| 321.0ms | (+ (* x y) (+ (* 1/2 (* (pow x 2) y)) y)) |
15 alts after pruning (15 fresh and 0 done)
Merged error: 27.0b
Found 0 expressions with local error:
0 calls. Slowest were:
0 calls. Slowest were:
0 calls. Slowest were:
15 alts after pruning (14 fresh and 1 done)
Merged error: 27.0b
Found 4 expressions with local error:
| 44.5b | (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) |
| 0.0b | (* (sqrt (exp x)) (sin y)) |
| 0.0b | (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) |
| 0.0b | (/ (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) 2) |
4 calls. Slowest were:
| 34.0ms | (/ (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) 2) |
| 33.0ms | (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) |
| 10.0ms | (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) |
4 calls. Slowest were:
| 126.0ms | (/ (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) 2) |
| 117.0ms | (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) |
| 62.0ms | (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) |
| 49.0ms | (* (sqrt (exp x)) (sin y)) |
68 calls. Slowest were:
| 470.0ms | (* (* (* (sqrt (exp x)) (sqrt (exp x))) (sqrt (exp x))) (* (* (* (sqrt (exp x)) (sin y)) (* (sqrt (exp x)) (sin y))) (* (sqrt (exp x)) (sin y)))) |
| 359.0ms | (fma (sqrt (exp x)) (* (sqrt (exp x)) (sin y)) (- (* (/ (sin y) (cbrt (exp x))) (/ 1 (* (cbrt (exp x)) (cbrt (exp x))))))) |
| 353.0ms | (* (* (* (sqrt (exp x)) (sqrt (exp x))) (sqrt (exp x))) (* (* (* (sqrt (exp x)) (sqrt (exp x))) (sqrt (exp x))) (* (* (sin y) (sin y)) (sin y)))) |
16 alts after pruning (15 fresh and 1 done)
Merged error: 27.0b
Found 4 expressions with local error:
| 44.5b | (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) |
| 44.5b | (- (* (sin y) (exp x)) (/ (sin y) (exp x))) |
| 44.5b | (- (* (sin y) (exp x)) (/ (sin y) (exp x))) |
| 14.4b | (cbrt (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x)))) |
4 calls. Slowest were:
| 28.0ms | (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) |
| 23.0ms | (cbrt (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x)))) |
| 15.0ms | (- (* (sin y) (exp x)) (/ (sin y) (exp x))) |
4 calls. Slowest were:
| 170.0ms | (cbrt (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x)))) |
| 143.0ms | (- (* (sqrt (exp x)) (* (sqrt (exp x)) (sin y))) (/ (sin y) (exp x))) |
| 92.0ms | (- (* (sin y) (exp x)) (/ (sin y) (exp x))) |
| 86.0ms | (- (* (sin y) (exp x)) (/ (sin y) (exp x))) |
105 calls. Slowest were:
| 539.0ms | (fma (sin y) (exp x) (- (* (/ (cbrt (sin y)) (cbrt (exp x))) (/ (* (cbrt (sin y)) (cbrt (sin y))) (* (cbrt (exp x)) (cbrt (exp x))))))) |
| 404.0ms | (fma (- (/ (sin y) (cbrt (exp x)))) (/ 1 (* (cbrt (exp x)) (cbrt (exp x)))) (* (/ (sin y) (cbrt (exp x))) (/ 1 (* (cbrt (exp x)) (cbrt (exp x)))))) |
| 397.0ms | (fma (sin y) (exp x) (- (* (/ (cbrt (sin y)) (cbrt (exp x))) (/ (* (cbrt (sin y)) (cbrt (sin y))) (* (cbrt (exp x)) (cbrt (exp x))))))) |
16 alts after pruning (15 fresh and 1 done)
Merged error: 27.0b
0% (2.7b remaining)
Error of 31.1b against oracle of 28.3b and baseline of 31.1b