


Bits error versus F



Bits error versus l
Results
Initial program 8.4
Simplified8.4
Taylor expanded around -inf 8.0
rmApplied expm1-log1p-u8.0
rmApplied clear-num8.0
rmApplied *-un-lft-identity8.0
Applied associate-/r*8.0
Simplified0.6
Final simplification0.6
herbie shell --seed 2019004 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))
Time bar (total: 33.5s)Debug log
1 calls. Slowest were:
| 226.0ms | (- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 6.0b
Found 4 expressions with local error:
| 5.7b | (fma (tan (* PI l)) (/ -1 (* F F)) (* PI l)) |
| 4.6b | (tan (* PI l)) |
| 0.7b | (/ -1 (* F F)) |
| 0.3b | (* PI l) |
4 calls. Slowest were:
| 3.0ms | (tan (* PI l)) |
| 2.0ms | (fma (tan (* PI l)) (/ -1 (* F F)) (* PI l)) |
| 1.0ms | (/ -1 (* F F)) |
4 calls. Slowest were:
| 114.0ms | (fma (tan (* PI l)) (/ -1 (* F F)) (* PI l)) |
| 46.0ms | (tan (* PI l)) |
| 33.0ms | (* PI l) |
| 16.0ms | (/ -1 (* F F)) |
12 calls. Slowest were:
| 506.0ms | (- (* PI l) (+ (/ (* PI l) (pow F 2)) (* 1/3 (/ (* (pow PI 3) (pow l 3)) (pow F 2))))) |
| 245.0ms | (+ (* 2/15 (* (pow PI 5) (pow l 5))) (+ (* 1/3 (* (pow PI 3) (pow l 3))) (* PI l))) |
| 61.0ms | (- (* PI l) (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l))))) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 5.6b
Found 4 expressions with local error:
| 5.7b | (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l)))) |
| 4.5b | (sin (* PI l)) |
| 4.4b | (cos (* PI l)) |
| 0.3b | (* PI l) |
4 calls. Slowest were:
| 8.0ms | (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l)))) |
| 4.0ms | (cos (* PI l)) |
| 2.0ms | (sin (* PI l)) |
4 calls. Slowest were:
| 94.0ms | (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l)))) |
| 48.0ms | (* PI l) |
| 22.0ms | (sin (* PI l)) |
| 18.0ms | (cos (* PI l)) |
26 calls. Slowest were:
| 249.0ms | (- (+ (* 1/120 (* (pow PI 5) (pow l 5))) (* PI l)) (* 1/6 (* (pow PI 3) (pow l 3)))) |
| 219.0ms | (- (+ (* 1/24 (* (pow PI 4) (pow l 4))) 1) (* 1/2 (* (pow PI 2) (pow l 2)))) |
| 145.0ms | (- (log (sin (* PI l))) (+ (log (pow F 2)) (log (cos (* PI l))))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 5.2b
Found 4 expressions with local error:
| 5.7b | (/ (sin (* PI l)) (* (pow F 2) (expm1 (log1p (cos (* PI l)))))) |
| 4.5b | (sin (* PI l)) |
| 4.4b | (cos (* PI l)) |
| 0.3b | (* PI l) |
4 calls. Slowest were:
| 15.0ms | (/ (sin (* PI l)) (* (pow F 2) (expm1 (log1p (cos (* PI l)))))) |
| 3.0ms | (cos (* PI l)) |
| 3.0ms | (sin (* PI l)) |
4 calls. Slowest were:
| 173.0ms | (/ (sin (* PI l)) (* (pow F 2) (expm1 (log1p (cos (* PI l)))))) |
| 27.0ms | (sin (* PI l)) |
| 26.0ms | (* PI l) |
| 18.0ms | (cos (* PI l)) |
26 calls. Slowest were:
| 236.0ms | (- (+ (* 1/24 (* (pow PI 4) (pow l 4))) 1) (* 1/2 (* (pow PI 2) (pow l 2)))) |
| 183.0ms | (- (+ (* 1/120 (* (pow PI 5) (pow l 5))) (* PI l)) (* 1/6 (* (pow PI 3) (pow l 3)))) |
| 132.0ms | (- (log (sin (* PI l))) (log (* (pow F 2) (expm1 (log1p (cos (* PI l))))))) |
11 alts after pruning (10 fresh and 1 done)
Merged error: 5.2b
Found 4 expressions with local error:
| 5.5b | (/ (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (sin (* PI l))) |
| 4.5b | (sin (* PI l)) |
| 4.4b | (cos (* PI l)) |
| 0.4b | (/ 1 (/ (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (sin (* PI l)))) |
4 calls. Slowest were:
| 14.0ms | (/ (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (sin (* PI l))) |
| 5.0ms | (/ 1 (/ (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (sin (* PI l)))) |
| 3.0ms | (cos (* PI l)) |
4 calls. Slowest were:
| 153.0ms | (/ (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (sin (* PI l))) |
| 152.0ms | (/ 1 (/ (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (sin (* PI l)))) |
| 16.0ms | (cos (* PI l)) |
| 15.0ms | (sin (* PI l)) |
36 calls. Slowest were:
| 1.1s | (/ (* (* (* (pow F 2) (expm1 (log1p (cos (* PI l))))) (* (pow F 2) (expm1 (log1p (cos (* PI l)))))) (* (pow F 2) (expm1 (log1p (cos (* PI l)))))) (* (* (sin (* PI l)) (sin (* PI l))) (sin (* PI l)))) |
| 331.0ms | (+ (/ (* PI l) (pow F 2)) (* 1/3 (/ (* (pow PI 3) (pow l 3)) (pow F 2)))) |
| 312.0ms | (- (/ (pow F 2) (* PI l)) (* 1/3 (* (pow F 2) (* PI l)))) |
10 alts after pruning (9 fresh and 1 done)
Merged error: 0.2b
0% (0.1b remaining)
Error of 0.6b against oracle of 0.5b and baseline of 0.6b