



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
Initial simplification0.2
rmApplied associate-+l+0.2
Final simplification0.2
herbie shell --seed 2018365
(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: 25.2s)Debug log
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.1b
Found 2 expressions with local error:
| 0.2b | (+ (+ a d) (+ c b)) |
| 0.2b | (+ (+ (+ a d) (+ c b)) e) |
2 calls. Slowest were:
| 25.0ms | (+ (+ (+ a d) (+ c b)) e) |
| 3.0ms | (+ (+ a d) (+ c b)) |
2 calls. Slowest were:
| 72.0ms | (+ (+ (+ a d) (+ c b)) e) |
| 36.0ms | (+ (+ a d) (+ c b)) |
17 calls. Slowest were:
| 477.0ms | (+ (* (+ (pow a 3) (pow d 3)) (- c b)) (* (+ (* a a) (- (* d d) (* a d))) (- (* c c) (* b b)))) |
| 475.0ms | (+ (* (- (* a a) (* d d)) (- c b)) (* (- a d) (- (* c c) (* b b)))) |
| 397.0ms | (* (+ (* a a) (- (* d d) (* a d))) (- c b)) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 0b
Found 2 expressions with local error:
| 0.2b | (+ (+ a d) (+ (+ c b) e)) |
| 0.1b | (+ (+ c b) e) |
2 calls. Slowest were:
| 19.0ms | (+ (+ a d) (+ (+ c b) e)) |
| 4.0ms | (+ (+ c b) e) |
2 calls. Slowest were:
| 56.0ms | (+ (+ a d) (+ (+ c b) e)) |
| 16.0ms | (+ (+ c b) e) |
16 calls. Slowest were:
| 423.0ms | (* (- a d) (- (+ c b) e)) |
| 348.0ms | (* (exp (+ a d)) (exp (+ (+ c b) e))) |
| 228.0ms | (+ (* (+ (pow a 3) (pow d 3)) (+ (* (+ c b) (+ c b)) (- (* e e) (* (+ c b) e)))) (* (+ (* a a) (- (* d d) (* a d))) (+ (pow (+ c b) 3) (pow e 3)))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0b
Found 2 expressions with local error:
| 0.2b | (+ (+ a d) (+ c (+ b e))) |
| 0.2b | (+ c (+ b e)) |
2 calls. Slowest were:
| 4.0ms | (+ (+ a d) (+ c (+ b e))) |
| 1.0ms | (+ c (+ b e)) |
2 calls. Slowest were:
| 39.0ms | (+ (+ a d) (+ c (+ b e))) |
| 18.0ms | (+ c (+ b e)) |
17 calls. Slowest were:
| 356.0ms | (* (- a d) (- c (+ b e))) |
| 263.0ms | (+ (* (- (* a a) (* d d)) (+ (* c c) (- (* (+ b e) (+ b e)) (* c (+ b e))))) (* (- a d) (+ (pow c 3) (pow (+ b e) 3)))) |
| 257.0ms | (* (exp (+ a d)) (exp (+ c (+ b e)))) |
6 alts after pruning (4 fresh and 2 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.4b | (* (+ (* a a) (* d (- d a))) (+ (pow b 3) (pow c 3))) |
| 0.4b | (+ (* b (- b c)) (* c c)) |
| 0.4b | (* (+ (* b (- b c)) (* c c)) (+ (pow a 3) (pow d 3))) |
| 0.4b | (* (- (* b b) (* (- b c) c)) (+ (* a a) (* (- d a) d))) |
4 calls. Slowest were:
| 22.0ms | (* (+ (* b (- b c)) (* c c)) (+ (pow a 3) (pow d 3))) |
| 19.0ms | (* (+ (* a a) (* d (- d a))) (+ (pow b 3) (pow c 3))) |
| 14.0ms | (* (- (* b b) (* (- b c) c)) (+ (* a a) (* (- d a) d))) |
4 calls. Slowest were:
| 183.0ms | (* (+ (* b (- b c)) (* c c)) (+ (pow a 3) (pow d 3))) |
| 155.0ms | (* (- (* b b) (* (- b c) c)) (+ (* a a) (* (- d a) d))) |
| 152.0ms | (* (+ (* a a) (* d (- d a))) (+ (pow b 3) (pow c 3))) |
| 20.0ms | (+ (* b (- b c)) (* c c)) |
87 calls. Slowest were:
| 1.1s | (* (+ (pow (* a a) 3) (pow (* d (- d a)) 3)) (- (* (pow b 3) (pow b 3)) (* (pow c 3) (pow c 3)))) |
| 810.0ms | (* (+ (pow (* a a) 3) (pow (* d (- d a)) 3)) (+ (pow b 3) (pow c 3))) |
| 652.0ms | (* (+ (pow (* b (- b c)) 3) (pow (* c c) 3)) (+ (pow a 3) (pow d 3))) |
6 alts after pruning (3 fresh and 3 done)
Merged error: 0b
0% (0.2b remaining)
Error of 0.2b against oracle of 0.0b and baseline of 0.2b