


Bits error versus x
Results
Initial program 0.0
rmApplied add-cbrt-cube0.1
rmApplied associate-*l/0.1
Applied frac-times0.1
Applied cbrt-div0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019007
(FPCore (x)
:name "Hyperbolic secant"
(/ 2 (+ (exp x) (exp (- x)))))
Time bar (total: 27.7s)Debug log
1 calls. Slowest were:
| 8.0ms | (/ 2 (+ (exp x) (exp (- x)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 0.0b | (+ (exp x) (exp (- x))) |
| 0.0b | (/ 2 (+ (exp x) (exp (- x)))) |
2 calls. Slowest were:
| 7.0ms | (+ (exp x) (exp (- x))) |
| 5.0ms | (/ 2 (+ (exp x) (exp (- x)))) |
2 calls. Slowest were:
| 41.0ms | (/ 2 (+ (exp x) (exp (- x)))) |
| 28.0ms | (+ (exp x) (exp (- x))) |
14 calls. Slowest were:
| 153.0ms | (+ (* (exp x) (exp x)) (- (* (exp (- x)) (exp (- x))) (* (exp x) (exp (- x))))) |
| 68.0ms | (- (+ (* 5/24 (pow x 4)) 1) (* 1/2 (pow x 2))) |
| 19.0ms | (+ (pow x 2) (+ (* 1/12 (pow x 4)) 2)) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.0b | (cbrt (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x)))))) |
| 0.0b | (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (+ (exp x) (exp (- x))) |
4 calls. Slowest were:
| 10.0ms | (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x))))) |
| 7.0ms | (cbrt (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x)))))) |
| 4.0ms | (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) |
4 calls. Slowest were:
| 80.0ms | (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x))))) |
| 49.0ms | (cbrt (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x)))))) |
| 44.0ms | (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) |
| 38.0ms | (+ (exp x) (exp (- x))) |
75 calls. Slowest were:
| 784.0ms | (* (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x))))) (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x)))))) |
| 360.0ms | (/ 8 (pow (+ (exp (* -1 x)) (exp x)) 3)) |
| 309.0ms | (* (* (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x))))) (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x)))))) (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (/ 2 (+ (exp x) (exp (- x)))))) |
2 alts after pruning (1 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.0b | (cbrt (/ 8 (+ (exp x) (exp (- x))))) |
| 0.0b | (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))) |
| 0.0b | (/ (cbrt (/ 8 (+ (exp x) (exp (- x))))) (cbrt (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))))) |
| 0.0b | (+ (exp x) (exp (- x))) |
4 calls. Slowest were:
| 14.0ms | (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))) |
| 6.0ms | (/ (cbrt (/ 8 (+ (exp x) (exp (- x))))) (cbrt (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))))) |
| 4.0ms | (+ (exp x) (exp (- x))) |
4 calls. Slowest were:
| 216.0ms | (cbrt (/ 8 (+ (exp x) (exp (- x))))) |
| 48.0ms | (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))) |
| 41.0ms | (/ (cbrt (/ 8 (+ (exp x) (exp (- x))))) (cbrt (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))))) |
| 41.0ms | (+ (exp x) (exp (- x))) |
142 calls. Slowest were:
| 550.0ms | (cbrt (cbrt (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x)))))) |
| 428.0ms | (/ (cbrt (/ 8 (+ (pow (exp x) 3) (pow (exp (- x)) 3)))) (sqrt (cbrt (* (+ (exp x) (exp (- x))) (+ (exp x) (exp (- x))))))) |
| 399.0ms | (* (+ (pow (exp x) 3) (pow (exp (- x)) 3)) (+ (pow (exp x) 3) (pow (exp (- x)) 3))) |
2 alts after pruning (0 fresh and 2 done)
Merged error: 0b
0% (0.0b remaining)
Error of 0.0b against oracle of 0.0b and baseline of 0.0b