


Bits error versus a



Bits error versus b
Results
Initial program 14.0
Simplified9.4
rmApplied associate-/r*0.3
Taylor expanded around 0 0.3
Simplified0.3
rmApplied div-inv0.3
Final simplification0.3
herbie shell --seed 2019016 +o rules:numerics
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))
Time bar (total: 40.6s)Debug log
| 305× | (pre true 80) |
| 305× | (body real 80) |
| 346.0ms | (* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))) |
2 alts after pruning (2 fresh and 0 done)
Merged error: 8.0b
Found 3 expressions with local error:
| 8.0b | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (* (+ a b) (- b a))) |
| 0.2b | (/ (/ PI 2) a) |
| 0.2b | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
| 8× | associate-/r/ |
| 8× | add-exp-log |
| 8× | add-cbrt-cube |
| 7× | associate-/l* |
| 6× | add-cube-cbrt |
| 6× | *-un-lft-identity |
| 6× | add-sqr-sqrt |
| 4× | frac-times |
| 3× | add-log-exp |
| 3× | flip-- |
| 3× | div-inv |
| 3× | log1p-expm1-u |
| 3× | flip-+ |
| 3× | flip3-- |
| 3× | times-frac |
| 3× | flip3-+ |
| 3× | pow1 |
| 3× | expm1-log1p-u |
| 2× | associate-*r/ |
| 2× | associate-*l/ |
| 2× | div-exp |
| 2× | frac-2neg |
| 2× | clear-num |
| 2× | cbrt-undiv |
| 1× | associate-/l/ |
| 1× | fma-udef |
| 1× | cbrt-unprod |
| 1× | prod-exp |
| 1× | associate-/r* |
| 13.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (* (+ a b) (- b a))) |
| 5.0ms | (/ (/ PI 2) a) |
| 0.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
| 133.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (* (+ a b) (- b a))) |
| 73.0ms | (/ (/ PI 2) a) |
| 59.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
| 339.0ms | (* (+ (* a a) (- (* b b) (* a b))) (+ (* b b) (+ (* a a) (* b a)))) |
| 282.0ms | (- (log (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (log (* (+ a b) (- b a)))) |
| 217.0ms | (* (- a b) (+ (* b b) (+ (* a a) (* b a)))) |
| 174.0ms | (/ (* (* (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (* (* (* (+ a b) (- b a)) (* (+ a b) (- b a))) (* (+ a b) (- b a)))) |
| 151.0ms | (* (+ (* a a) (- (* b b) (* a b))) (+ b a)) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 0.0b
Found 4 expressions with local error:
| 0.2b | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) |
| 0.2b | (/ (/ PI 2) a) |
| 0.2b | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
| 0.2b | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) (- b a)) |
| 90× | times-frac |
| 57× | add-cube-cbrt |
| 57× | *-un-lft-identity |
| 57× | add-sqr-sqrt |
| 22× | associate-/l* |
| 12× | associate-/r/ |
| 11× | add-exp-log |
| 11× | add-cbrt-cube |
| 8× | div-inv |
| 6× | associate-/r* |
| 5× | flip-+ |
| 5× | flip3-+ |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | div-exp |
| 4× | cbrt-undiv |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | frac-2neg |
| 3× | clear-num |
| 2× | associate-/l/ |
| 1× | flip-- |
| 1× | fma-udef |
| 1× | flip3-- |
| 13.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) (- b a)) |
| 8.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) |
| 5.0ms | (/ (/ PI 2) a) |
| 0.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
| 135.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) (- b a)) |
| 103.0ms | (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (+ a b)) |
| 71.0ms | (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) |
| 53.0ms | (/ (/ PI 2) a) |
| 412.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (- (* a a) (* b b))) (* (cbrt (- b a)) (cbrt (- b a)))) |
| 354.0ms | (/ (/ (* (cbrt (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (cbrt (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)))) (* (cbrt (+ a b)) (cbrt (+ a b)))) (* (cbrt (- b a)) (cbrt (- b a)))) |
| 346.0ms | (/ (/ (* (cbrt (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a))) (cbrt (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)))) (* (cbrt (+ a b)) (cbrt (+ a b)))) 1) |
| 344.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (- (* a a) (* b b))) 1) |
| 289.0ms | (/ (/ (fma (/ PI 2) (/ -1 b) (/ (/ PI 2) a)) (- (* a a) (* b b))) (sqrt (- b a))) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.3b | (/ PI b) |
| 0.2b | (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) |
| 0.2b | (/ PI a) |
| 0.2b | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 42× | times-frac |
| 24× | add-cube-cbrt |
| 24× | *-un-lft-identity |
| 24× | add-sqr-sqrt |
| 12× | associate-/r/ |
| 11× | add-exp-log |
| 11× | add-cbrt-cube |
| 10× | associate-/l* |
| 8× | div-inv |
| 6× | associate-/r* |
| 5× | flip-+ |
| 5× | flip3-+ |
| 4× | associate-/l/ |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | div-exp |
| 4× | frac-2neg |
| 4× | clear-num |
| 4× | cbrt-undiv |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | associate-*l/ |
| 2× | flip-- |
| 2× | flip3-- |
| 1× | frac-sub |
| 22.0ms | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 15.0ms | (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) |
| 0.0ms | (/ PI a) |
| 0.0ms | (/ PI b) |
| 91.0ms | (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) |
| 87.0ms | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 48.0ms | (/ PI b) |
| 37.0ms | (/ PI a) |
| 367.0ms | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) (sqrt (- b a))) |
| 355.0ms | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ a b)) (cbrt (- b a))) |
| 353.0ms | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ (pow a 3) (pow b 3))) (sqrt (- b a))) |
| 334.0ms | (* (- (* (/ PI a) (/ PI a)) (* (/ PI b) (/ PI b))) 1/2) |
| 321.0ms | (/ (/ (* (- (/ PI a) (/ PI b)) 1/2) (+ (pow a 3) (pow b 3))) (* (cbrt (- b a)) (cbrt (- b a)))) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 0b
Found 4 expressions with local error:
| 0.3b | (* PI (/ 1 a)) |
| 0.3b | (/ PI b) |
| 0.2b | (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) |
| 0.2b | (/ (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 42× | times-frac |
| 25× | add-cube-cbrt |
| 25× | *-un-lft-identity |
| 25× | add-sqr-sqrt |
| 12× | associate-/r/ |
| 11× | add-exp-log |
| 11× | add-cbrt-cube |
| 10× | associate-/l* |
| 8× | div-inv |
| 6× | associate-/r* |
| 5× | associate-/l/ |
| 5× | flip-+ |
| 5× | flip3-+ |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | associate-*l/ |
| 4× | associate-*r* |
| 4× | div-exp |
| 4× | cbrt-undiv |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | frac-2neg |
| 3× | clear-num |
| 2× | flip-- |
| 2× | frac-sub |
| 2× | un-div-inv |
| 2× | associate-*r/ |
| 2× | flip3-- |
| 1× | *-commutative |
| 10.0ms | (/ (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 8.0ms | (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) |
| 1.0ms | (* PI (/ 1 a)) |
| 0.0ms | (/ PI b) |
| 92.0ms | (/ (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 67.0ms | (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) |
| 48.0ms | (* PI (/ 1 a)) |
| 38.0ms | (/ PI b) |
| 584.0ms | (/ (sqrt (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b))) (cbrt (- b a))) |
| 331.0ms | (* (- (pow (* PI (/ 1 a)) 3) (pow (/ PI b) 3)) 1/2) |
| 311.0ms | (- (- (log (* (- (* PI (/ 1 a)) (/ PI b)) 1/2)) (log (+ a b))) (log (- b a))) |
| 294.0ms | (/ (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ a b)) (- b a)) |
| 285.0ms | (/ (/ (* (- (* PI (/ 1 a)) (/ PI b)) 1/2) (+ (pow a 3) (pow b 3))) 1) |
8 alts after pruning (7 fresh and 1 done)
Merged error: 0b
0% (0.3b remaining)
Error of 0.3b against oracle of 0.1b and baseline of 0.3b
| 9556× | (pre true 80) |
| 9556× | (body real 80) |