


Bits error versus F



Bits error versus l
Results
Initial program 8.5
Simplified8.5
Taylor expanded around -inf 8.1
rmApplied log1p-expm1-u8.1
rmApplied add-cbrt-cube8.1
Final simplification8.1
herbie shell --seed 2019016 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))
Time bar (total: 31.6s)Debug log
| 531× | (pre true 80) |
| 284× | (body real 80) |
| 241× | (body exit 10240) |
| 6× | (body real 160) |
| 170.0ms | (- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 6.4b
Found 4 expressions with local error:
| 6.2b | (fma (tan (* PI l)) (/ -1 (* F F)) (* PI l)) |
| 3.5b | (tan (* PI l)) |
| 0.4b | (/ -1 (* F F)) |
| 0.2b | (* PI l) |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | add-cube-cbrt |
| 4× | add-exp-log |
| 4× | add-cbrt-cube |
| 4× | *-un-lft-identity |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 4× | add-sqr-sqrt |
| 1× | div-inv |
| 1× | fma-udef |
| 1× | *-commutative |
| 1× | tan-quot |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 2.0ms | (tan (* PI l)) |
| 1.0ms | (fma (tan (* PI l)) (/ -1 (* F F)) (* PI l)) |
| 0.0ms | (/ -1 (* F F)) |
| 0.0ms | (* PI l) |
| 97.0ms | (fma (tan (* PI l)) (/ -1 (* F F)) (* PI l)) |
| 47.0ms | (tan (* PI l)) |
| 34.0ms | (* PI l) |
| 12.0ms | (/ -1 (* F F)) |
| 377.0ms | (- (* PI l) (+ (/ (* PI l) (pow F 2)) (* 1/3 (/ (* (pow PI 3) (pow l 3)) (pow F 2))))) |
| 262.0ms | (+ (* 2/15 (* (pow PI 5) (pow l 5))) (+ (* 1/3 (* (pow PI 3) (pow l 3))) (* PI l))) |
| 60.0ms | (- (* PI l) (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l))))) |
| 45.0ms | (- (* PI l) (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l))))) |
| 3.0ms | (/ -1 (pow F 2)) |
9 alts after pruning (9 fresh and 0 done)
Merged error: 5.7b
Found 4 expressions with local error:
| 5.7b | (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l)))) |
| 3.4b | (sin (* PI l)) |
| 3.2b | (cos (* PI l)) |
| 0.2b | (* PI l) |
| 11× | add-exp-log |
| 9× | add-cbrt-cube |
| 6× | add-cube-cbrt |
| 6× | *-un-lft-identity |
| 6× | add-sqr-sqrt |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | associate-/l* |
| 3× | div-exp |
| 3× | times-frac |
| 2× | prod-exp |
| 2× | cbrt-undiv |
| 1× | div-inv |
| 1× | cbrt-unprod |
| 1× | *-commutative |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | pow-to-exp |
| 16.0ms | (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l)))) |
| 3.0ms | (sin (* PI l)) |
| 3.0ms | (cos (* PI l)) |
| 0.0ms | (* PI l) |
| 82.0ms | (/ (sin (* PI l)) (* (pow F 2) (cos (* PI l)))) |
| 48.0ms | (* PI l) |
| 27.0ms | (sin (* PI l)) |
| 19.0ms | (cos (* PI l)) |
| 270.0ms | (- (+ (* 1/24 (* (pow PI 4) (pow l 4))) 1) (* 1/2 (* (pow PI 2) (pow l 2)))) |
| 215.0ms | (- (+ (* 1/120 (* (pow PI 5) (pow l 5))) (* PI l)) (* 1/6 (* (pow PI 3) (pow l 3)))) |
| 114.0ms | (/ (* (* (sin (* PI l)) (sin (* PI l))) (sin (* PI l))) (* (* (* (pow F 2) (pow F 2)) (pow F 2)) (* (* (cos (* PI l)) (cos (* PI l))) (cos (* PI l))))) |
| 110.0ms | (- (log (sin (* PI l))) (+ (log (pow F 2)) (log (cos (* PI l))))) |
| 88.0ms | (- (log (sin (* PI l))) (+ (* (log F) 2) (log (cos (* PI l))))) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 4.8b
Found 4 expressions with local error:
| 5.7b | (/ (sin (* PI l)) (* (pow F 2) (log1p (expm1 (cos (* PI l)))))) |
| 3.4b | (sin (* PI l)) |
| 3.2b | (cos (* PI l)) |
| 0.9b | (expm1 (cos (* PI l))) |
| 11× | add-exp-log |
| 9× | add-cbrt-cube |
| 6× | add-cube-cbrt |
| 6× | *-un-lft-identity |
| 6× | add-sqr-sqrt |
| 5× | log1p-expm1-u |
| 4× | add-log-exp |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | associate-/l* |
| 3× | div-exp |
| 3× | times-frac |
| 2× | prod-exp |
| 2× | cbrt-undiv |
| 1× | expm1-udef |
| 1× | div-inv |
| 1× | cbrt-unprod |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | expm1-log1p |
| 1× | pow-to-exp |
| 7.0ms | (/ (sin (* PI l)) (* (pow F 2) (log1p (expm1 (cos (* PI l)))))) |
| 2.0ms | (cos (* PI l)) |
| 2.0ms | (sin (* PI l)) |
| 0.0ms | (expm1 (cos (* PI l))) |
| 172.0ms | (/ (sin (* PI l)) (* (pow F 2) (log1p (expm1 (cos (* PI l)))))) |
| 81.0ms | (expm1 (cos (* PI l))) |
| 19.0ms | (cos (* PI l)) |
| 18.0ms | (sin (* PI l)) |
| 227.0ms | (- (+ (* 1/6 (* E (* (pow PI 4) (pow l 4)))) E) (+ (* 1/2 (* E (* (pow PI 2) (pow l 2)))) 1)) |
| 216.0ms | (- (+ (* 1/24 (* (pow PI 4) (pow l 4))) 1) (* 1/2 (* (pow PI 2) (pow l 2)))) |
| 202.0ms | (- (+ (* 1/120 (* (pow PI 5) (pow l 5))) (* PI l)) (* 1/6 (* (pow PI 3) (pow l 3)))) |
| 136.0ms | (- (log (sin (* PI l))) (+ (log (pow F 2)) (log (log1p (expm1 (cos (* PI l))))))) |
| 109.0ms | (- (log (sin (* PI l))) (log (* (pow F 2) (log1p (expm1 (cos (* PI l))))))) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 4.8b
Found 4 expressions with local error:
| 5.7b | (/ (sin (* PI l)) (* (pow F 2) (log1p (cbrt (* (* (expm1 (cos (* PI l))) (expm1 (cos (* PI l)))) (expm1 (cos (* PI l)))))))) |
| 3.4b | (sin (* PI l)) |
| 3.2b | (cos (* PI l)) |
| 3.2b | (cos (* PI l)) |
| 11× | add-exp-log |
| 9× | add-cbrt-cube |
| 6× | add-cube-cbrt |
| 6× | *-un-lft-identity |
| 6× | add-sqr-sqrt |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | associate-/l* |
| 3× | div-exp |
| 3× | times-frac |
| 2× | prod-exp |
| 2× | cbrt-undiv |
| 1× | div-inv |
| 1× | cbrt-unprod |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | pow-to-exp |
| 14.0ms | (/ (sin (* PI l)) (* (pow F 2) (log1p (cbrt (* (* (expm1 (cos (* PI l))) (expm1 (cos (* PI l)))) (expm1 (cos (* PI l)))))))) |
| 3.0ms | (sin (* PI l)) |
| 3.0ms | (cos (* PI l)) |
| 2.0ms | (cos (* PI l)) |
| 165.0ms | (/ (sin (* PI l)) (* (pow F 2) (log1p (cbrt (* (* (expm1 (cos (* PI l))) (expm1 (cos (* PI l)))) (expm1 (cos (* PI l)))))))) |
| 25.0ms | (sin (* PI l)) |
| 12.0ms | (cos (* PI l)) |
| 11.0ms | (cos (* PI l)) |
| 244.0ms | (- (+ (* 1/24 (* (pow PI 4) (pow l 4))) 1) (* 1/2 (* (pow PI 2) (pow l 2)))) |
| 204.0ms | (- (+ (* 1/24 (* (pow PI 4) (pow l 4))) 1) (* 1/2 (* (pow PI 2) (pow l 2)))) |
| 192.0ms | (- (+ (* 1/120 (* (pow PI 5) (pow l 5))) (* PI l)) (* 1/6 (* (pow PI 3) (pow l 3)))) |
| 151.0ms | (- (log (sin (* PI l))) (+ (log (pow F 2)) (log (log1p (cbrt (* (* (expm1 (cos (* PI l))) (expm1 (cos (* PI l)))) (expm1 (cos (* PI l))))))))) |
| 110.0ms | (- (log (sin (* PI l))) (log (* (pow F 2) (log1p (cbrt (* (* (expm1 (cos (* PI l))) (expm1 (cos (* PI l)))) (expm1 (cos (* PI l))))))))) |
11 alts after pruning (10 fresh and 1 done)
Merged error: 4.8b
0% (1.8b remaining)
Error of 8.1b against oracle of 6.3b and baseline of 8.1b
| 16926× | (pre true 80) |
| 8916× | (body real 80) |
| 7770× | (body exit 10240) |
| 240× | (body real 160) |