


Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c



Bits error versus i



Bits error versus j



Bits error versus k
Results
if (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < -inf.0Initial program 60.5
Simplified39.4
Taylor expanded around 0 36.5
if -inf.0 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) < 1.892427743955644e+293Initial program 0.4
if 1.892427743955644e+293 < (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) Initial program 41.3
Simplified27.0
Taylor expanded around -inf 37.4
Simplified35.8
Final simplification4.0
herbie shell --seed 2019002
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
(- (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) (* (* j 27.0) k)))
Time bar (total: 45.5s)Debug log
1 calls. Slowest were:
| 81.0ms | (- (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) (* (* j 27.0) k)) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 4.5b
Found 4 expressions with local error:
| 4.5b | (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t) |
| 3.7b | (* (* x 18.0) (* y z)) |
| 0.3b | (* 27.0 (* k j)) |
| 0.0b | (+ (- (* c b) (+ (* 27.0 (* k j)) (* (* x 4.0) i))) (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t)) |
4 calls. Slowest were:
| 23.0ms | (+ (- (* c b) (+ (* 27.0 (* k j)) (* (* x 4.0) i))) (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t)) |
| 11.0ms | (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t) |
| 9.0ms | (* (* x 18.0) (* y z)) |
4 calls. Slowest were:
| 11.8s | (+ (- (* c b) (+ (* 27.0 (* k j)) (* (* x 4.0) i))) (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t)) |
| 62.0ms | (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t) |
| 18.0ms | (* (* x 18.0) (* y z)) |
| 10.0ms | (* 27.0 (* k j)) |
33 calls. Slowest were:
| 576.0ms | (* (exp (- (* c b) (+ (* 27.0 (* k j)) (* (* x 4.0) i)))) (exp (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t))) |
| 537.0ms | (* (* (* (* x 18.0) (* x 18.0)) (* x 18.0)) (* (* (* y z) (* y z)) (* y z))) |
| 384.0ms | (+ (* (- (* (* c b) (* c b)) (* (+ (* 27.0 (* k j)) (* (* x 4.0) i)) (+ (* 27.0 (* k j)) (* (* x 4.0) i)))) (+ (* (* (* x 18.0) (* y z)) (* (* x 18.0) (* y z))) (+ (* (* a 4.0) (* a 4.0)) (* (* (* x 18.0) (* y z)) (* a 4.0))))) (* (+ (* c b) (+ (* 27.0 (* k j)) (* (* x 4.0) i))) (* (- (pow (* (* x 18.0) (* y z)) 3) (pow (* a 4.0) 3)) t))) |
7 alts after pruning (7 fresh and 0 done)
Merged error: 0.5b
Found 4 expressions with local error:
| 4.5b | (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t) |
| 3.7b | (* (* x 18.0) (* y z)) |
| 0.2b | (* (* 27.0 k) j) |
| 0.0b | (+ (- (* c b) (+ (* (* 27.0 k) j) (* (* x 4.0) i))) (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t)) |
4 calls. Slowest were:
| 40.0ms | (+ (- (* c b) (+ (* (* 27.0 k) j) (* (* x 4.0) i))) (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t)) |
| 11.0ms | (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t) |
| 3.0ms | (* (* x 18.0) (* y z)) |
4 calls. Slowest were:
| 11.6s | (+ (- (* c b) (+ (* (* 27.0 k) j) (* (* x 4.0) i))) (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t)) |
| 78.0ms | (* (- (* (* x 18.0) (* y z)) (* a 4.0)) t) |
| 17.0ms | (* (* x 18.0) (* y z)) |
| 14.0ms | (* (* 27.0 k) j) |
33 calls. Slowest were:
| 635.0ms | (* (* (* (* x 18.0) (* x 18.0)) (* x 18.0)) (* (* (* y z) (* y z)) (* y z))) |
| 378.0ms | (+ (* (- (* (* c b) (* c b)) (* (+ (* (* 27.0 k) j) (* (* x 4.0) i)) (+ (* (* 27.0 k) j) (* (* x 4.0) i)))) (+ (* (* (* x 18.0) (* y z)) (* (* x 18.0) (* y z))) (+ (* (* a 4.0) (* a 4.0)) (* (* (* x 18.0) (* y z)) (* a 4.0))))) (* (+ (* c b) (+ (* (* 27.0 k) j) (* (* x 4.0) i))) (* (- (pow (* (* x 18.0) (* y z)) 3) (pow (* a 4.0) 3)) t))) |
| 347.0ms | (* (+ (* (* c b) (* c b)) (+ (* (+ (* (* 27.0 k) j) (* (* x 4.0) i)) (+ (* (* 27.0 k) j) (* (* x 4.0) i))) (* (* c b) (+ (* (* 27.0 k) j) (* (* x 4.0) i))))) (+ (* (* (* x 18.0) (* y z)) (* (* x 18.0) (* y z))) (+ (* (* a 4.0) (* a 4.0)) (* (* (* x 18.0) (* y z)) (* a 4.0))))) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 0.5b
Found 4 expressions with local error:
| 4.5b | (* (- (* x (* 18.0 (* y z))) (* a 4.0)) t) |
| 3.6b | (* x (* 18.0 (* y z))) |
| 0.2b | (* (* 27.0 k) j) |
| 0.2b | (* 18.0 (* y z)) |
4 calls. Slowest were:
| 9.0ms | (* (- (* x (* 18.0 (* y z))) (* a 4.0)) t) |
| 2.0ms | (* x (* 18.0 (* y z))) |
| 2.0ms | (* (* 27.0 k) j) |
4 calls. Slowest were:
| 60.0ms | (* (- (* x (* 18.0 (* y z))) (* a 4.0)) t) |
| 19.0ms | (* x (* 18.0 (* y z))) |
| 11.0ms | (* 18.0 (* y z)) |
| 11.0ms | (* (* 27.0 k) j) |
17 calls. Slowest were:
| 271.0ms | (* (- (* (* x (* 18.0 (* y z))) (* x (* 18.0 (* y z)))) (* (* a 4.0) (* a 4.0))) t) |
| 193.0ms | (- (* 18.0 (* t (* x (* z y)))) (* 4.0 (* t a))) |
| 192.0ms | (- (* 18.0 (* t (* x (* z y)))) (* 4.0 (* t a))) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 0.5b
Found 4 expressions with local error:
| 6.8b | (* (* (* (* x 18.0) y) z) t) |
| 5.7b | (* (* (* x 18.0) y) z) |
| 0.5b | (* (* j 27.0) k) |
| 0.2b | (* (* a 4.0) t) |
4 calls. Slowest were:
| 13.0ms | (* (* (* (* x 18.0) y) z) t) |
| 8.0ms | (* (* (* x 18.0) y) z) |
| 2.0ms | (* (* j 27.0) k) |
4 calls. Slowest were:
| 29.0ms | (* (* (* (* x 18.0) y) z) t) |
| 17.0ms | (* (* (* x 18.0) y) z) |
| 11.0ms | (* (* a 4.0) t) |
| 11.0ms | (* (* j 27.0) k) |
14 calls. Slowest were:
| 168.0ms | (* 18.0 (* t (* x (* z y)))) |
| 139.0ms | (* 18.0 (* t (* x (* z y)))) |
| 24.0ms | (* 18.0 (* x (* z y))) |
8 alts after pruning (5 fresh and 3 done)
Merged error: 0.5b
35.3% (3.3b remaining)
Error of 4.0b against oracle of 0.7b and baseline of 5.8b