



Bits error versus a




Bits error versus b




Bits error versus c




Bits error versus d




Bits error versus e
Results
| Original | 0.4 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.4
rmApplied associate-+l+0.3
rmApplied associate-+l+0.3
rmApplied add-log-exp0.3
Applied add-log-exp0.3
Applied sum-log0.3
Simplified0.2
Final simplification0.2
herbie shell --seed 2019007 +o rules:numerics
(FPCore (a b c d e)
:name "Expression 1, p15"
:pre (<= 1 a 2 b 4 c 8 d 16 e 32)
:herbie-target
(+ (+ d (+ c (+ a b))) e)
(+ (+ (+ (+ e d) c) b) a))
Time bar (total: 14.7s)Debug log
1 calls. Slowest were:
| 204.0ms | (+ (+ (+ (+ e d) c) b) a) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 0.4b
Found 3 expressions with local error:
| 0.3b | (+ (+ (+ (+ e d) c) b) a) |
| 0.3b | (+ (+ (+ e d) c) b) |
| 0.2b | (+ (+ e d) c) |
3 calls. Slowest were:
| 66.0ms | (+ (+ (+ (+ e d) c) b) a) |
| 23.0ms | (+ (+ (+ e d) c) b) |
| 5.0ms | (+ (+ e d) c) |
3 calls. Slowest were:
| 64.0ms | (+ (+ (+ (+ e d) c) b) a) |
| 34.0ms | (+ (+ (+ e d) c) b) |
| 21.0ms | (+ (+ e d) c) |
17 calls. Slowest were:
| 53.0ms | (* (cbrt (+ (+ (+ e d) c) b)) (cbrt (+ (+ (+ e d) c) b))) |
| 25.0ms | (sqrt (+ (+ (+ e d) c) b)) |
| 8.0ms | (* (cbrt (+ (+ e d) c)) (cbrt (+ (+ e d) c))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 0b
Found 2 expressions with local error:
| 0.2b | (+ (+ (+ e d) c) (+ b a)) |
| 0.2b | (+ (+ e d) c) |
2 calls. Slowest were:
| 26.0ms | (+ (+ (+ e d) c) (+ b a)) |
| 5.0ms | (+ (+ e d) c) |
2 calls. Slowest were:
| 63.0ms | (+ (+ (+ e d) c) (+ b a)) |
| 21.0ms | (+ (+ e d) c) |
21 calls. Slowest were:
| 308.0ms | (* (+ (* (+ e d) (+ e d)) (- (* c c) (* (+ e d) c))) (- b a)) |
| 224.0ms | (+ (* (- (* (+ e d) (+ e d)) (* c c)) (+ (* b b) (- (* a a) (* b a)))) (* (- (+ e d) c) (+ (pow b 3) (pow a 3)))) |
| 222.0ms | (* (exp (+ (+ e d) c)) (exp (+ b a))) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 0b
Found 2 expressions with local error:
| 0.2b | (+ (+ e (+ d c)) (+ b a)) |
| 0.2b | (+ e (+ d c)) |
2 calls. Slowest were:
| 8.0ms | (+ (+ e (+ d c)) (+ b a)) |
| 1.0ms | (+ e (+ d c)) |
2 calls. Slowest were:
| 51.0ms | (+ (+ e (+ d c)) (+ b a)) |
| 11.0ms | (+ e (+ d c)) |
18 calls. Slowest were:
| 797.0ms | (* (- e (+ d c)) (- b a)) |
| 390.0ms | (* (+ (* e e) (- (* (+ d c) (+ d c)) (* e (+ d c)))) (- b a)) |
| 315.0ms | (* (- e (+ d c)) (+ (* b b) (- (* a a) (* b a)))) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 0b
Found 4 expressions with local error:
| 3.4b | (exp (+ (+ (+ d b) (+ a c)) e)) |
| 0.2b | (+ (+ (+ d b) (+ a c)) e) |
| 0.2b | (+ (+ d b) (+ a c)) |
| 0.0b | (log (exp (+ (+ (+ d b) (+ a c)) e))) |
4 calls. Slowest were:
| 78.0ms | (log (exp (+ (+ (+ d b) (+ a c)) e))) |
| 56.0ms | (exp (+ (+ (+ d b) (+ a c)) e)) |
| 20.0ms | (+ (+ (+ d b) (+ a c)) e) |
4 calls. Slowest were:
| 56.0ms | (exp (+ (+ (+ d b) (+ a c)) e)) |
| 45.0ms | (+ (+ (+ d b) (+ a c)) e) |
| 43.0ms | (log (exp (+ (+ (+ d b) (+ a c)) e))) |
| 27.0ms | (+ (+ d b) (+ a c)) |
40 calls. Slowest were:
| 536.0ms | (+ (* (+ (pow d 3) (pow b 3)) (- a c)) (* (+ (* d d) (- (* b b) (* d b))) (- (* a a) (* c c)))) |
| 520.0ms | (+ (* (- (* d d) (* b b)) (- a c)) (* (- d b) (- (* a a) (* c c)))) |
| 489.0ms | (* (+ (* d d) (- (* b b) (* d b))) (+ (* a a) (- (* c c) (* a c)))) |
5 alts after pruning (4 fresh and 1 done)
Merged error: 0b
0% (0.2b remaining)
Error of 0.2b against oracle of 0.0b and baseline of 0.2b