


Bits error versus x
Initial program 31.2
Simplified31.2
Taylor expanded around inf 0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019002 +o rules:numerics
(FPCore (x)
:name "Hyperbolic arc-cosine"
(log (+ x (sqrt (- (* x x) 1)))))
Time bar (total: 18.7s)Debug log
1 calls. Slowest were:
| 103.0ms | (log (+ x (sqrt (- (* x x) 1)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 29.8b
Found 2 expressions with local error:
| 28.6b | (sqrt (fma x x -1)) |
| 0.0b | (+ x (sqrt (fma x x -1))) |
2 calls. Slowest were:
| 1.0ms | (+ x (sqrt (fma x x -1))) |
| 1.0ms | (sqrt (fma x x -1)) |
2 calls. Slowest were:
| 28.0ms | (+ x (sqrt (fma x x -1))) |
| 22.0ms | (sqrt (fma x x -1)) |
10 calls. Slowest were:
| 348.0ms | (- (+ (* 1/2 (/ (pow x 2) (sqrt -1))) (sqrt -1)) (* 1/8 (/ (pow x 4) (pow (sqrt -1) 3)))) |
| 237.0ms | (- (* 2 x) (+ (* 1/8 (/ 1 (pow x 3))) (* 1/2 (/ 1 x)))) |
| 201.0ms | (- x (+ (* 1/8 (/ 1 (pow x 3))) (* 1/2 (/ 1 x)))) |
2 alts after pruning (1 fresh and 1 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 0.1b | (/ (/ 1/8 x) (* x x)) |
| 0.0b | (- (fma 2 x (/ -1/2 x)) (/ (/ 1/8 x) (* x x))) |
2 calls. Slowest were:
| 5.0ms | (- (fma 2 x (/ -1/2 x)) (/ (/ 1/8 x) (* x x))) |
| 3.0ms | (/ (/ 1/8 x) (* x x)) |
2 calls. Slowest were:
| 18.0ms | (- (fma 2 x (/ -1/2 x)) (/ (/ 1/8 x) (* x x))) |
| 16.0ms | (/ (/ 1/8 x) (* x x)) |
75 calls. Slowest were:
| 516.0ms | (/ (* (* (/ 1/8 x) (/ 1/8 x)) (/ 1/8 x)) (* (* (* x x) (* x x)) (* x x))) |
| 437.0ms | (fma (- (/ (/ 1 x) x)) (/ 1/8 x) (* (/ (/ 1 x) x) (/ 1/8 x))) |
| 436.0ms | (fma (- (/ 1 (* x x))) (/ 1/8 x) (* (/ 1 (* x x)) (/ 1/8 x))) |
2 alts after pruning (0 fresh and 2 done)
Merged error: 0.0b
0% (0.2b remaining)
Error of 0.3b against oracle of 0.1b and baseline of 0.3b