


Bits error versus m



Bits error versus v
Initial program 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019016 +o rules:numerics
(FPCore (m v)
:name "b parameter of renormalized beta distribution"
:pre (and (< 0 m) (< 0 v) (< v 0.25))
(* (- (/ (* m (- 1 m)) v) 1) (- 1 m)))
Time bar (total: 26.1s)Debug log
| 413× | (pre true 80) |
| 413× | (body real 80) |
| 894.0ms | (* (- (/ (* m (- 1 m)) v) 1) (- 1 m)) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 0.0b
Found 2 expressions with local error:
| 0.1b | (fma (- 1 m) (/ m v) -1) |
| 0.0b | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 4× | add-cube-cbrt |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | *-un-lft-identity |
| 4× | pow1 |
| 4× | add-sqr-sqrt |
| 3× | associate-*l* |
| 3× | associate-*r* |
| 2× | add-log-exp |
| 2× | log1p-expm1-u |
| 2× | associate-*r/ |
| 2× | distribute-lft-in |
| 2× | sub-neg |
| 2× | expm1-log1p-u |
| 2× | distribute-rgt-in |
| 1× | flip-- |
| 1× | fma-udef |
| 1× | cbrt-unprod |
| 1× | *-commutative |
| 1× | prod-exp |
| 1× | pow-prod-down |
| 1× | flip3-- |
| 4.0ms | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 1.0ms | (fma (- 1 m) (/ m v) -1) |
| 26.0ms | (fma (- 1 m) (/ m v) -1) |
| 25.0ms | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 989.0ms | (* (- m) (fma (- 1 m) (/ m v) -1)) |
| 960.0ms | (* (- m) (fma (- 1 m) (/ m v) -1)) |
| 643.0ms | (* (* (* (fma (- 1 m) (/ m v) -1) (fma (- 1 m) (/ m v) -1)) (fma (- 1 m) (/ m v) -1)) (* (* (- 1 m) (- 1 m)) (- 1 m))) |
| 475.0ms | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 439.0ms | (* (fma (- 1 m) (/ m v) -1) (- m)) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.1b | (fma (/ m v) (* m (+ -1 m)) m) |
| 0.1b | (fma (- 1 m) (/ m v) -1) |
| 0.0b | (+ (* 1 (fma (- 1 m) (/ m v) -1)) (fma (/ m v) (* m (+ -1 m)) m)) |
| 0.0b | (* m (+ -1 m)) |
| 6× | add-log-exp |
| 6× | *-un-lft-identity |
| 5× | fma-udef |
| 5× | add-cube-cbrt |
| 5× | add-sqr-sqrt |
| 4× | log1p-expm1-u |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | associate-*r* |
| 2× | flip-+ |
| 2× | associate-*r/ |
| 2× | flip3-+ |
| 2× | distribute-lft-in |
| 2× | associate-+l+ |
| 2× | distribute-rgt-in |
| 1× | distribute-lft-out |
| 1× | *-commutative |
| 1× | fma-def |
| 1× | sum-log |
| 1× | associate-+r+ |
| 1× | +-commutative |
| 7.0ms | (+ (* 1 (fma (- 1 m) (/ m v) -1)) (fma (/ m v) (* m (+ -1 m)) m)) |
| 2.0ms | (* m (+ -1 m)) |
| 0.0ms | (fma (/ m v) (* m (+ -1 m)) m) |
| 0.0ms | (fma (- 1 m) (/ m v) -1) |
| 35.0ms | (* m (+ -1 m)) |
| 30.0ms | (+ (* 1 (fma (- 1 m) (/ m v) -1)) (fma (/ m v) (* m (+ -1 m)) m)) |
| 21.0ms | (fma (/ m v) (* m (+ -1 m)) m) |
| 11.0ms | (fma (- 1 m) (/ m v) -1) |
| 2.2s | (+ (fma (- 1 m) (/ m v) -1) (fma (/ m v) (* m (+ -1 m)) m)) |
| 273.0ms | (* 1 (* (- 1 m) (/ m v))) |
| 246.0ms | (- (+ m (/ (pow m 3) v)) (* 2 (/ (pow m 2) v))) |
| 232.0ms | (- (+ m (/ (pow m 3) v)) (* 2 (/ (pow m 2) v))) |
| 151.0ms | (- (/ m v) (+ (* 2 (/ (pow m 2) v)) 1)) |
7 alts after pruning (6 fresh and 1 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.3b | (/ (* m (+ (pow -1 3) (pow m 3))) (+ (fma m m 1) m)) |
| 0.1b | (fma (/ m v) (/ (* m (+ (pow -1 3) (pow m 3))) (+ (fma m m 1) m)) m) |
| 0.1b | (fma (- 1 m) (/ m v) -1) |
| 0.0b | (* m (+ (pow -1 3) (pow m 3))) |
| 9× | *-un-lft-identity |
| 7× | add-cube-cbrt |
| 7× | add-sqr-sqrt |
| 6× | add-exp-log |
| 6× | add-cbrt-cube |
| 5× | associate-*r* |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | associate-*r/ |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | flip-+ |
| 3× | times-frac |
| 3× | flip3-+ |
| 3× | associate-/r* |
| 2× | associate-/l/ |
| 2× | fma-udef |
| 2× | associate-/r/ |
| 1× | associate-/l* |
| 1× | distribute-lft-out |
| 1× | div-inv |
| 1× | *-commutative |
| 1× | sum-cubes |
| 1× | div-exp |
| 1× | distribute-lft-in |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | cbrt-undiv |
| 1× | distribute-rgt-in |
| 9.0ms | (/ (* m (+ (pow -1 3) (pow m 3))) (+ (fma m m 1) m)) |
| 5.0ms | (* m (+ (pow -1 3) (pow m 3))) |
| 0.0ms | (fma (/ m v) (/ (* m (+ (pow -1 3) (pow m 3))) (+ (fma m m 1) m)) m) |
| 0.0ms | (fma (- 1 m) (/ m v) -1) |
| 99.0ms | (/ (* m (+ (pow -1 3) (pow m 3))) (+ (fma m m 1) m)) |
| 57.0ms | (* m (+ (pow -1 3) (pow m 3))) |
| 52.0ms | (fma (/ m v) (/ (* m (+ (pow -1 3) (pow m 3))) (+ (fma m m 1) m)) m) |
| 11.0ms | (fma (- 1 m) (/ m v) -1) |
| 610.0ms | (+ (* (pow -1 3) (pow -1 3)) (- (* (pow m 3) (pow m 3)) (* (pow -1 3) (pow m 3)))) |
| 545.0ms | (+ (* (fma m m 1) (fma m m 1)) (- (* m m) (* (fma m m 1) m))) |
| 382.0ms | (* m (- (* (pow -1 3) (pow -1 3)) (* (pow m 3) (pow m 3)))) |
| 275.0ms | (/ (* (* (* m (+ (pow -1 3) (pow m 3))) (* m (+ (pow -1 3) (pow m 3)))) (* m (+ (pow -1 3) (pow m 3)))) (* (* (+ (fma m m 1) m) (+ (fma m m 1) m)) (+ (fma m m 1) m))) |
| 143.0ms | (- (+ m (/ (pow m 3) v)) (/ (pow m 2) v)) |
7 alts after pruning (5 fresh and 2 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 4.7b | (log1p (* (fma (- 1 m) (/ m v) -1) (- 1 m))) |
| 2.9b | (expm1 (log1p (* (fma (- 1 m) (/ m v) -1) (- 1 m)))) |
| 0.1b | (fma (- 1 m) (/ m v) -1) |
| 0.0b | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 6× | add-cube-cbrt |
| 6× | add-exp-log |
| 6× | add-cbrt-cube |
| 6× | *-un-lft-identity |
| 6× | pow1 |
| 6× | add-sqr-sqrt |
| 5× | expm1-log1p-u |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 3× | associate-*l* |
| 3× | associate-*r* |
| 2× | associate-*r/ |
| 2× | distribute-lft-in |
| 2× | sub-neg |
| 2× | distribute-rgt-in |
| 1× | expm1-udef |
| 1× | flip-- |
| 1× | fma-udef |
| 1× | cbrt-unprod |
| 1× | *-commutative |
| 1× | log1p-expm1 |
| 1× | prod-exp |
| 1× | pow-prod-down |
| 1× | flip3-- |
| 1× | expm1-log1p |
| 1× | log1p-udef |
| 4.0ms | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 1.0ms | (log1p (* (fma (- 1 m) (/ m v) -1) (- 1 m))) |
| 0.0ms | (expm1 (log1p (* (fma (- 1 m) (/ m v) -1) (- 1 m)))) |
| 0.0ms | (fma (- 1 m) (/ m v) -1) |
| 74.0ms | (expm1 (log1p (* (fma (- 1 m) (/ m v) -1) (- 1 m)))) |
| 47.0ms | (log1p (* (fma (- 1 m) (/ m v) -1) (- 1 m))) |
| 25.0ms | (* (fma (- 1 m) (/ m v) -1) (- 1 m)) |
| 11.0ms | (fma (- 1 m) (/ m v) -1) |
| 968.0ms | (* (- m) (fma (- 1 m) (/ m v) -1)) |
| 798.0ms | (* (- m) (fma (- 1 m) (/ m v) -1)) |
| 665.0ms | (* (* (* (fma (- 1 m) (/ m v) -1) (fma (- 1 m) (/ m v) -1)) (fma (- 1 m) (/ m v) -1)) (* (* (- 1 m) (- 1 m)) (- 1 m))) |
| 633.0ms | (- (+ (exp (- (log m) (log v))) (* (exp (- (log m) (log v))) v)) (+ (* 2 (* (exp (- (log m) (log v))) m)) 1)) |
| 517.0ms | (- (log (/ 1 v)) (+ (* 3 (log (/ 1 m))) (+ (* 2 (/ 1 m)) (/ 1 (pow m 2))))) |
8 alts after pruning (5 fresh and 3 done)
Merged error: 0b
0% (0.0b remaining)
Error of 0.1b against oracle of 0.0b and baseline of 0.1b
| 13711× | (pre true 80) |
| 13711× | (body real 80) |