


Bits error versus x
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019005
(FPCore (x)
:name "Hyperbolic secant"
(/ 2 (+ (exp x) (exp (- x)))))
Time bar (total: 12.8s)Debug log
1 calls. Slowest were:
| 6.0ms | (/ 2 (+ (exp x) (exp (- x)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 0.0b
Found 1 expressions with local error:
| 0.0b | (/ 2 (+ (exp x) (exp (- x)))) |
1 calls. Slowest were:
| 3.0ms | (/ 2 (+ (exp x) (exp (- x)))) |
1 calls. Slowest were:
| 43.0ms | (/ 2 (+ (exp x) (exp (- x)))) |
9 calls. Slowest were:
| 145.0ms | (+ (* (exp x) (exp x)) (- (* (exp (- x)) (exp (- x))) (* (exp x) (exp (- x))))) |
| 56.0ms | (- (+ (* 5/24 (pow x 4)) 1) (* 1/2 (pow x 2))) |
| 17.0ms | (/ 2 (+ (exp (* -1 x)) (exp x))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.0b | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) |
4 calls. Slowest were:
| 13.0ms | (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) |
| 1.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 1.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
4 calls. Slowest were:
| 282.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 226.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 222.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 168.0ms | (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) |
72 calls. Slowest were:
| 507.0ms | (* (* (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x))))))) (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x))))))) (/ 2 (+ (exp x) (exp (- x))))) |
| 283.0ms | (cbrt (/ 2 (- (* (exp x) (exp x)) (* (exp (- x)) (exp (- x)))))) |
| 226.0ms | (- (+ (* (pow 1/2 1/3) (cbrt 2)) (* 1/24 (* (* (pow x 4) (cbrt 2)) (pow 1/2 1/3)))) (* 1/6 (* (* (pow x 2) (cbrt 2)) (pow 1/2 1/3)))) |
2 alts after pruning (1 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.0b | (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3) |
| 0.0b | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 0.0b | (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3)) |
4 calls. Slowest were:
| 15.0ms | (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3)) |
| 1.0ms | (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3) |
| 1.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
4 calls. Slowest were:
| 426.0ms | (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3)) |
| 277.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 253.0ms | (cbrt (/ 2 (+ (exp x) (exp (- x))))) |
| 170.0ms | (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3) |
60 calls. Slowest were:
| 444.0ms | (* (* (* (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x)))))) (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x))))))) (* (cbrt (/ 2 (+ (exp x) (exp (- x))))) (cbrt (/ 2 (+ (exp x) (exp (- x))))))) (/ 2 (+ (exp x) (exp (- x))))) |
| 396.0ms | (- (+ (* 1/2 (* (pow (cbrt 2) 2) (pow 2 1/3))) (* 5/48 (* (* (pow x 4) (pow (cbrt 2) 2)) (pow 2 1/3)))) (* 1/4 (* (* (pow x 2) (pow (cbrt 2) 2)) (pow 2 1/3)))) |
| 295.0ms | (* (* (/ 2 (+ (exp x) (exp (- x)))) (/ 2 (+ (exp x) (exp (- x))))) (* (* (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3) (pow (/ 2 (+ (exp x) (exp (- x)))) 1/3)) (pow (/ 2 (+ (exp x) (exp (- x)))) 1/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