


Bits error versus x1



Bits error versus x2
Results
Initial program 0.5
rmApplied sub-neg0.5
Applied distribute-lft-in0.5
Applied associate-+r+0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019016 +o rules:numerics
(FPCore (x1 x2)
:name "Rosa's FloatVsDoubleBenchmark"
(+ x1 (+ (+ (+ (+ (* (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) (+ (* x1 x1) 1)) (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* (* x1 x1) x1)) x1) (* 3 (/ (- (- (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))))))
Time bar (total: 4.3m)Debug log
| 492× | (pre true 80) |
| 462× | (body real 80) |
| 9× | (body real 1280) |
| 7× | (body real 320) |
| 7× | (body real 160) |
| 7× | (body real 640) |
| 425.0ms | (+ x1 (+ (+ (+ (+ (* (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) (+ (* x1 x1) 1)) (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* (* x1 x1) x1)) x1) (* 3 (/ (- (- (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))))) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.5b
Found 4 expressions with local error:
| 8.4b | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 5.8b | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 3.7b | (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) |
| 0.7b | (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))) |
| 192× | times-frac |
| 185× | add-sqr-sqrt |
| 140× | *-un-lft-identity |
| 110× | add-cube-cbrt |
| 39× | prod-diff |
| 30× | difference-of-squares |
| 15× | distribute-lft-out-- |
| 13× | div-inv |
| 13× | fma-neg |
| 13× | associate-/r* |
| 11× | add-exp-log |
| 11× | add-cbrt-cube |
| 6× | add-log-exp |
| 6× | associate-/l* |
| 6× | pow1 |
| 5× | associate-*l* |
| 4× | associate-/l/ |
| 4× | log1p-expm1-u |
| 4× | frac-sub |
| 4× | expm1-log1p-u |
| 3× | fma-udef |
| 3× | associate-*r* |
| 3× | div-exp |
| 3× | cbrt-undiv |
| 2× | flip-- |
| 2× | flip-+ |
| 2× | associate-/r/ |
| 2× | flip3-- |
| 2× | flip3-+ |
| 1× | associate--r+ |
| 1× | cbrt-unprod |
| 1× | *-commutative |
| 1× | prod-exp |
| 1× | associate-*l/ |
| 1× | pow-prod-down |
| 1× | div-sub |
| 1× | diff-log |
| 1× | distribute-lft-in |
| 1× | frac-2neg |
| 1× | sub-neg |
| 1× | clear-num |
| 1× | distribute-rgt-in |
| 87.0ms | (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))) |
| 45.0ms | (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) |
| 7.0ms | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 3.0ms | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 185.0ms | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 153.0ms | (/ (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))) |
| 49.0ms | (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3)) |
| 33.0ms | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 717.0ms | (/ (sqrt (- (/ (fma x1 (* 3 x1) (* x2 2)) (fma x1 x1 1)) (+ (/ x1 (fma x1 x1 1)) 3))) (/ 1 (sqrt (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 628.0ms | (/ 1 (/ (sqrt (fma x1 x1 1)) (* (cbrt (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (cbrt (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))))) |
| 583.0ms | (- (* (fma x1 (* 3 x1) (* x2 2)) (- (/ x1 (fma x1 x1 1)) 3)) (* (fma x1 x1 1) (- (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (* 3 3)))) |
| 575.0ms | (- (* (fma x1 (* 3 x1) (* x2 2)) (- (/ x1 (fma x1 x1 1)) 3)) (* (fma x1 x1 1) (- (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (* 3 3)))) |
| 556.0ms | (fma (- (+ (/ x1 (fma x1 x1 1)) 3)) 1 (* (+ (/ x1 (fma x1 x1 1)) 3) 1)) |
6 alts after pruning (6 fresh and 0 done)
Merged error: 0.4b
Found 4 expressions with local error:
| 8.6b | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (* (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (* (fma x1 x1 1) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))))))) |
| 5.8b | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 3.8b | (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) |
| 0.7b | (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (* (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (* (fma x1 x1 1) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))))) |
| 100× | associate-*r/ |
| 36× | frac-add |
| 32× | frac-sub |
| 24× | add-exp-log |
| 24× | add-cbrt-cube |
| 22× | flip-+ |
| 22× | flip3-+ |
| 20× | flip-- |
| 20× | flip3-- |
| 20× | frac-times |
| 18× | associate-/l/ |
| 18× | associate-/r/ |
| 14× | associate-*l/ |
| 8× | add-cube-cbrt |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 7× | cbrt-unprod |
| 7× | prod-exp |
| 7× | div-exp |
| 7× | cbrt-undiv |
| 6× | add-log-exp |
| 6× | pow1 |
| 5× | associate-*l* |
| 4× | log1p-expm1-u |
| 4× | expm1-log1p-u |
| 3× | associate-/l* |
| 3× | fma-udef |
| 3× | associate-*r* |
| 3× | times-frac |
| 3× | distribute-lft-in |
| 3× | distribute-rgt-in |
| 2× | associate--r+ |
| 2× | div-inv |
| 2× | associate--l+ |
| 1× | *-commutative |
| 1× | pow-prod-down |
| 1× | prod-diff |
| 1× | div-sub |
| 1× | diff-log |
| 1× | fma-neg |
| 1× | frac-2neg |
| 1× | sub-neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 58.0ms | (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (* (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (* (fma x1 x1 1) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))))) |
| 20.0ms | (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) |
| 4.0ms | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 0.0ms | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (* (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (* (fma x1 x1 1) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))))))) |
| 305.0ms | (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (* (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (* (fma x1 x1 1) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))))) |
| 298.0ms | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (* (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))) (* (fma x1 x1 1) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))))))) |
| 150.0ms | (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) |
| 54.0ms | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 1.3s | (- (* (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (* (/ x1 (fma x1 x1 1)) x1) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (* 3 3) (* 3 3)) (* (* (/ x1 (fma x1 x1 1)) 3) (* (/ x1 (fma x1 x1 1)) 3)))))) (- (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3))) (* (* (fma x1 x1 1) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (pow (/ x1 (fma x1 x1 1)) 3) (pow (/ x1 (fma x1 x1 1)) 3)) (* (pow 3 3) (pow 3 3)))))) |
| 1.2s | (- (* (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (* x1 x1) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (* (fma x1 x1 1) (fma x1 x1 1)) (- (* (* 3 3) (* 3 3)) (* (* (/ x1 (fma x1 x1 1)) 3) (* (/ x1 (fma x1 x1 1)) 3)))))) (- (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3))) (* (* (* (fma x1 x1 1) (fma x1 x1 1)) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (pow (/ x1 (fma x1 x1 1)) 3) (pow (/ x1 (fma x1 x1 1)) 3)) (* (pow 3 3) (pow 3 3)))))) |
| 1.0s | (- (* (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (* x1 (/ x1 (fma x1 x1 1))) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (* 3 3) (* 3 3)) (* (* (/ x1 (fma x1 x1 1)) 3) (* (/ x1 (fma x1 x1 1)) 3)))))) (- (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3))) (* (* (fma x1 x1 1) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (pow (/ x1 (fma x1 x1 1)) 3) (pow (/ x1 (fma x1 x1 1)) 3)) (* (pow 3 3) (pow 3 3)))))) |
| 915.0ms | (- (* (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (* x1 (/ x1 (fma x1 x1 1))) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (* 3 3) (* 3 3)) (* (* (/ x1 (fma x1 x1 1)) 3) (* (/ x1 (fma x1 x1 1)) 3)))))) (- (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3))) (* (* (fma x1 x1 1) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (pow (/ x1 (fma x1 x1 1)) 3) (pow (/ x1 (fma x1 x1 1)) 3)) (* (pow 3 3) (pow 3 3)))))) |
| 902.0ms | (- (* (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (* x1 x1) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (* (fma x1 x1 1) (fma x1 x1 1)) (- (* (* 3 3) (* 3 3)) (* (* (/ x1 (fma x1 x1 1)) 3) (* (/ x1 (fma x1 x1 1)) 3)))))) (- (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3))) (* (* (* (fma x1 x1 1) (fma x1 x1 1)) (+ (* 3 3) (* (/ x1 (fma x1 x1 1)) 3))) (* (fma x1 x1 1) (- (* (pow (/ x1 (fma x1 x1 1)) 3) (pow (/ x1 (fma x1 x1 1)) 3)) (* (pow 3 3) (pow 3 3)))))) |
6 alts after pruning (5 fresh and 1 done)
Merged error: 0.4b
Found 4 expressions with local error:
| 8.4b | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 5.8b | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 3.8b | (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) |
| 0.7b | (/ (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))) |
| 421× | times-frac |
| 202× | add-cube-cbrt |
| 202× | *-un-lft-identity |
| 202× | add-sqr-sqrt |
| 36× | associate-*r/ |
| 30× | div-inv |
| 18× | add-exp-log |
| 18× | add-cbrt-cube |
| 16× | frac-sub |
| 13× | associate-/l* |
| 13× | associate-/r* |
| 12× | frac-add |
| 10× | flip-+ |
| 10× | flip3-+ |
| 8× | div-exp |
| 8× | cbrt-undiv |
| 7× | flip-- |
| 7× | flip3-- |
| 6× | add-log-exp |
| 6× | pow1 |
| 5× | associate-*l/ |
| 5× | associate-*l* |
| 4× | log1p-expm1-u |
| 4× | frac-times |
| 4× | expm1-log1p-u |
| 3× | fma-udef |
| 3× | associate-*r* |
| 3× | distribute-lft-in |
| 3× | distribute-rgt-in |
| 2× | associate--r+ |
| 2× | associate-/r/ |
| 2× | associate--l+ |
| 2× | div-sub |
| 1× | associate-/l/ |
| 1× | cbrt-unprod |
| 1× | *-commutative |
| 1× | prod-exp |
| 1× | pow-prod-down |
| 1× | prod-diff |
| 1× | diff-log |
| 1× | fma-neg |
| 1× | frac-2neg |
| 1× | sub-neg |
| 1× | clear-num |
| 50.0ms | (/ (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))) |
| 28.0ms | (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) |
| 4.0ms | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 0.0ms | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 293.0ms | (/ (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1))))) |
| 284.0ms | (fma (fma 4 (/ (fma 3 (* x1 x1) (- (* x2 2) x1)) (fma x1 x1 1)) -6) (* x1 x1) (/ (/ (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (/ (fma x1 x1 1) (fma (fma x1 (* 3 x1) (* x2 2)) (* x1 2) (* (* x1 2) (- x1)))))) |
| 153.0ms | (- (* (fma x1 (* 3 x1) (* x2 2)) (+ (* (/ x1 (fma x1 x1 1)) (/ x1 (fma x1 x1 1))) (- (* 3 3) (* (/ x1 (fma x1 x1 1)) 3)))) (* (fma x1 x1 1) (+ (pow (/ x1 (fma x1 x1 1)) 3) (pow 3 3)))) |
| 58.0ms | (* (/ 3 (/ (fma x1 x1 1) (* x1 x1))) (fma 3 (* x1 x1) (- (* x2 2) x1))) |
| 1.6s | (/ (/ 1 (sqrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1))))) (/ 1 1)) |
| 1.5s | (/ (/ 1 (sqrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1))))) 1) |
| 1.5s | (/ (/ 1 (* (cbrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (cbrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))))) (/ 1 1)) |
| 1.5s | (/ (/ 1 (* (cbrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (cbrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))))) 1) |
| 1.4s | (/ 1 (* (cbrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))) (cbrt (fma (fma x1 x1 1) (fma -3 (/ x1 (fma x1 x1 1)) 9) (/ (* x1 x1) (fma x1 x1 1)))))) |
5 alts after pruning (4 fresh and 1 done)
Merged error: 0.4b
Found 4 expressions with local error:
| 5.9b | (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) |
| 5.8b | (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) |
| 3.7b | (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) |
| 2.7b | (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) |
| 23× | associate-*r/ |
| 19× | add-cube-cbrt |
| 19× | *-un-lft-identity |
| 19× | add-sqr-sqrt |
| 18× | associate-*r* |
| 18× | times-frac |
| 15× | fma-neg |
| 11× | flip-- |
| 11× | add-exp-log |
| 11× | add-cbrt-cube |
| 11× | flip3-- |
| 10× | frac-add |
| 8× | pow1 |
| 7× | sub-neg |
| 6× | add-log-exp |
| 6× | distribute-lft-in |
| 6× | distribute-rgt-in |
| 4× | log1p-expm1-u |
| 4× | associate-/r/ |
| 4× | associate-+r+ |
| 4× | associate-+l+ |
| 4× | frac-times |
| 4× | expm1-log1p-u |
| 3× | flip-+ |
| 3× | cbrt-unprod |
| 3× | prod-exp |
| 3× | flip3-+ |
| 2× | div-inv |
| 2× | *-commutative |
| 2× | associate-*l/ |
| 2× | pow-prod-down |
| 2× | associate-*l* |
| 1× | div-exp |
| 1× | div-sub |
| 1× | fma-def |
| 1× | sum-log |
| 1× | +-commutative |
| 1× | cbrt-undiv |
| 1× | associate--l- |
| 91.0ms | (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) |
| 82.0ms | (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) |
| 26.0ms | (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) |
| 20.0ms | (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) |
| 161.0ms | (+ (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6))) |
| 42.0ms | (- (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) |
| 42.0ms | (* (* x1 x1) (- (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) |
| 29.0ms | (* (* (* 3 x1) x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) |
| 608.0ms | (+ (* (* (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (- (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 3 3))) (+ (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (+ (* 6 6) (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)))) (* (+ (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) (* (* x1 x1) (- (pow (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 3) (pow 6 3))))) |
| 416.0ms | (+ (* (* (* (* 2 x1) (- (+ (* (* 3 x1) x1) (* 2 x2)) x1)) (- (pow (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3) (pow 3 3))) (+ (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) (* (* (+ (* x1 x1) 1) (+ (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (+ (* 3 3) (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)))) (* (* x1 x1) (- (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* 6 6))))) |
| 402.0ms | (+ (* (* (* (* 2 x1) (- (+ (* (* 3 x1) x1) (* 2 x2)) x1)) (- (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 3 3))) (+ (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) 6)) (* (* (+ (* x1 x1) 1) (+ (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) 3)) (* (* x1 x1) (- (* (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1))) (* 4 (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) (* 6 6))))) |
| 369.0ms | (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) |
| 365.0ms | (* (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)) (* (* 2 x1) (/ (- (+ (* (* 3 x1) x1) (* 2 x2)) x1) (+ (* x1 x1) 1)))) |
9 alts after pruning (8 fresh and 1 done)
Merged error: 0.4b
0% (0.1b remaining)
Error of 0.5b against oracle of 0.4b and baseline of 0.5b
| 15099× | (pre true 80) |
| 14030× | (body real 80) |
| 433× | (body real 640) |
| 272× | (body real 320) |
| 185× | (body real 1280) |
| 179× | (body real 160) |