


Bits error versus a



Bits error versus b
Results
Initial program 14.1
Simplified9.2
rmApplied *-un-lft-identity9.2
Applied times-frac0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019002 +o rules:numerics
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))
Time bar (total: 47.8s)Debug log
1 calls. Slowest were:
| 348.0ms | (* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 11.1b
Found 3 expressions with local error:
| 11.1b | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (* (+ a b) (- b a))) |
| 0.2b | (/ (/ PI 2) a) |
| 0.1b | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
3 calls. Slowest were:
| 6.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (* (+ a b) (- b a))) |
| 2.0ms | (/ (/ PI 2) a) |
| 0.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
3 calls. Slowest were:
| 131.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (* (+ a b) (- b a))) |
| 71.0ms | (/ (/ PI 2) a) |
| 55.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
32 calls. Slowest were:
| 378.0ms | (* (- a b) (+ b a)) |
| 279.0ms | (* (+ (* a a) (- (* b b) (* a b))) (+ (* b b) (+ (* a a) (* b a)))) |
| 237.0ms | (- (log (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (log (* (+ a b) (- b a)))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.3b | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) |
| 0.2b | (/ (/ PI 2) a) |
| 0.2b | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) (- b a)) |
| 0.1b | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
4 calls. Slowest were:
| 7.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) |
| 6.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) (- b a)) |
| 4.0ms | (/ (/ PI 2) a) |
4 calls. Slowest were:
| 111.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) (- b a)) |
| 86.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) |
| 75.0ms | (/ (/ PI 2) a) |
| 47.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
155 calls. Slowest were:
| 512.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (- (* a a) (* b b))) (* (cbrt (- b a)) (cbrt (- b a)))) |
| 388.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (- (* a a) (* b b))) 1) |
| 291.0ms | (/ (/ (* (cbrt (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (cbrt (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)))) (* (cbrt (+ a b)) (cbrt (+ a b)))) (* (cbrt (- b a)) (cbrt (- b a)))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.3b | (/ PI (* 2 b)) |
| 0.3b | (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a)) |
| 0.2b | (/ PI (* a 2)) |
| 0.2b | (* (/ 1 (+ a b)) (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a))) |
4 calls. Slowest were:
| 14.0ms | (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a)) |
| 12.0ms | (* (/ 1 (+ a b)) (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a))) |
| 0.0ms | (/ PI (* 2 b)) |
4 calls. Slowest were:
| 125.0ms | (* (/ 1 (+ a b)) (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a))) |
| 90.0ms | (/ PI (* a 2)) |
| 89.0ms | (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a)) |
| 79.0ms | (/ PI (* 2 b)) |
101 calls. Slowest were:
| 352.0ms | (- (pow (/ PI (* a 2)) 3) (pow (/ PI (* 2 b)) 3)) |
| 268.0ms | (/ (* (* (- (/ PI (* a 2)) (/ PI (* 2 b))) (- (/ PI (* a 2)) (/ PI (* 2 b)))) (- (/ PI (* a 2)) (/ PI (* 2 b)))) (* (* (- b a) (- b a)) (- b a))) |
| 226.0ms | (* 1 (/ (- (/ PI (* a 2)) (/ PI (* 2 b))) (- b a))) |
9 alts after pruning (8 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.3b | (* (/ 1 (+ a b)) (- (/ PI (* a 2)) (/ PI (* 2 b)))) |
| 0.3b | (/ PI (* 2 b)) |
| 0.2b | (/ PI (* a 2)) |
| 0.2b | (/ (* (/ 1 (+ a b)) (- (/ PI (* a 2)) (/ PI (* 2 b)))) (- b a)) |
4 calls. Slowest were:
| 18.0ms | (* (/ 1 (+ a b)) (- (/ PI (* a 2)) (/ PI (* 2 b)))) |
| 15.0ms | (/ (* (/ 1 (+ a b)) (- (/ PI (* a 2)) (/ PI (* 2 b)))) (- b a)) |
| 0.0ms | (/ PI (* 2 b)) |
4 calls. Slowest were:
| 122.0ms | (/ (* (/ 1 (+ a b)) (- (/ PI (* a 2)) (/ PI (* 2 b)))) (- b a)) |
| 104.0ms | (* (/ 1 (+ a b)) (- (/ PI (* a 2)) (/ PI (* 2 b)))) |
| 88.0ms | (/ PI (* 2 b)) |
| 68.0ms | (/ PI (* a 2)) |
96 calls. Slowest were:
| 961.0ms | (* (* (* (/ 1 (+ a b)) (/ 1 (+ a b))) (/ 1 (+ a b))) (* (* (- (/ PI (* a 2)) (/ PI (* 2 b))) (- (/ PI (* a 2)) (/ PI (* 2 b)))) (- (/ PI (* a 2)) (/ PI (* 2 b))))) |
| 913.0ms | (* (fma (- (/ 1 (* 2 b))) PI (* (/ 1 (* 2 b)) PI)) (/ 1 (+ a b))) |
| 580.0ms | (* (- (/ PI (* 2 b))) (/ 1 (+ a b))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 0b
0% (0.3b remaining)
Error of 0.3b against oracle of 0.0b and baseline of 0.3b