


Bits error versus a



Bits error versus b
Results
Initial program 29.9
Initial simplification7.8
Final simplification7.8
herbie shell --seed 2018362 +o rules:numerics
(FPCore (a b)
:name "Eccentricity of an ellipse"
:pre (<= 0 b a 1)
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))
Time bar (total: 9.1s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 4.5b
Found 2 expressions with local error:
| 4.6b | (sqrt (fabs (- 1 (* (/ b a) (/ b a))))) |
| 0.4b | (* (/ b a) (/ b a)) |
2 calls. Slowest were:
| 3.0ms | (* (/ b a) (/ b a)) |
| 1.0ms | (sqrt (fabs (- 1 (* (/ b a) (/ b a))))) |
2 calls. Slowest were:
| 14.0ms | (* (/ b a) (/ b a)) |
| 12.0ms | (sqrt (fabs (- 1 (* (/ b a) (/ b a))))) |
25 calls. Slowest were:
| 803.0ms | (* (* (* (/ b a) (/ b a)) (/ b a)) (* (* (/ b a) (/ b a)) (/ b a))) |
| 39.0ms | (sqrt (* (cbrt (fabs (- 1 (* (/ b a) (/ b a))))) (cbrt (fabs (- 1 (* (/ b a) (/ b a))))))) |
| 36.0ms | (sqrt (fabs (- 1 (/ (pow b 2) (pow a 2))))) |
3 alts after pruning (2 fresh and 1 done)
Merged error: 4.5b
Found 3 expressions with local error:
| 7.1b | (* (* (/ b a) b) (/ 1 a)) |
| 4.6b | (sqrt (fabs (- 1 (* (* (/ b a) b) (/ 1 a))))) |
| 0.2b | (* (/ b a) b) |
3 calls. Slowest were:
| 13.0ms | (* (* (/ b a) b) (/ 1 a)) |
| 3.0ms | (* (/ b a) b) |
| 2.0ms | (sqrt (fabs (- 1 (* (* (/ b a) b) (/ 1 a))))) |
3 calls. Slowest were:
| 14.0ms | (* (* (/ b a) b) (/ 1 a)) |
| 13.0ms | (sqrt (fabs (- 1 (* (* (/ b a) b) (/ 1 a))))) |
| 12.0ms | (* (/ b a) b) |
27 calls. Slowest were:
| 862.0ms | (* (* (* (* (/ b a) b) (* (/ b a) b)) (* (/ b a) b)) (* (* (/ 1 a) (/ 1 a)) (/ 1 a))) |
| 615.0ms | (sqrt (sqrt (fabs (- 1 (* (* (/ b a) b) (/ 1 a)))))) |
| 303.0ms | (sqrt (* (cbrt (fabs (- 1 (* (* (/ b a) b) (/ 1 a))))) (cbrt (fabs (- 1 (* (* (/ b a) b) (/ 1 a))))))) |
3 alts after pruning (1 fresh and 2 done)
Merged error: 4.5b
Found 4 expressions with local error:
| 4.6b | (sqrt (fabs (- 1 (* (/ b a) (/ b a))))) |
| 1.5b | (log (exp (sqrt (fabs (- 1 (* (/ b a) (/ b a))))))) |
| 0.4b | (* (/ b a) (/ b a)) |
| 0.0b | (exp (sqrt (fabs (- 1 (* (/ b a) (/ b a)))))) |
4 calls. Slowest were:
| 3.0ms | (* (/ b a) (/ b a)) |
| 3.0ms | (log (exp (sqrt (fabs (- 1 (* (/ b a) (/ b a))))))) |
| 2.0ms | (exp (sqrt (fabs (- 1 (* (/ b a) (/ b a)))))) |
4 calls. Slowest were:
| 44.0ms | (exp (sqrt (fabs (- 1 (* (/ b a) (/ b a)))))) |
| 14.0ms | (* (/ b a) (/ b a)) |
| 13.0ms | (log (exp (sqrt (fabs (- 1 (* (/ b a) (/ b a))))))) |
| 13.0ms | (sqrt (fabs (- 1 (* (/ b a) (/ b a))))) |
48 calls. Slowest were:
| 1.0s | (* (* (* (/ b a) (/ b a)) (/ b a)) (* (* (/ b a) (/ b a)) (/ b a))) |
| 73.0ms | (exp (sqrt (* (cbrt (fabs (- 1 (* (/ b a) (/ b a))))) (cbrt (fabs (- 1 (* (/ b a) (/ b a)))))))) |
| 70.0ms | (exp (* (cbrt (sqrt (fabs (- 1 (* (/ b a) (/ b a)))))) (cbrt (sqrt (fabs (- 1 (* (/ b a) (/ b a)))))))) |
3 alts after pruning (0 fresh and 3 done)
Merged error: 4.5b
0% (0.0b remaining)
Error of 7.8b against oracle of 7.8b and baseline of 7.8b