


Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -8.508534954191774e+47 or 6.959105460343026e-26 < t Initial program 22.9
rmApplied cube-mult22.9
Applied times-frac15.9
Applied associate-*l*14.0
rmApplied associate-/l*7.6
rmApplied tan-quot7.6
Applied associate-*l/6.3
Applied associate-*r/6.3
Applied frac-times3.0
Applied associate-*l/2.7
Applied associate-/r/2.6
rmApplied associate-*r*2.6
if -8.508534954191774e+47 < t < 6.959105460343026e-26Initial program 46.7
rmApplied cube-mult46.7
Applied times-frac39.8
Applied associate-*l*38.1
rmApplied associate-/l*33.6
rmApplied tan-quot33.6
Applied associate-*l/34.0
Applied associate-*r/34.0
Applied frac-times34.5
Applied associate-*l/31.5
Applied associate-/r/31.5
Taylor expanded around inf 21.2
Simplified16.4
Final simplification8.1
herbie shell --seed 2019016 +o rules:numerics
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10+)"
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))))
Time bar (total: 1.8m)Debug log
| 346× | (pre true 80) |
| 180× | (body real 80) |
| 78× | (body real 1280) |
| 53× | (body real 640) |
| 19× | (body real 320) |
| 16× | (body real 160) |
| 168.0ms | (/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))) |
1 alts after pruning (1 fresh and 0 done)
Merged error: 32.9b
Found 4 expressions with local error:
| 16.5b | (/ (pow t 3) (* l l)) |
| 13.7b | (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 4.3b | (* (/ (pow t 3) (* l l)) (sin k)) |
| 2.5b | (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) |
| 44× | add-exp-log |
| 34× | add-cbrt-cube |
| 22× | prod-exp |
| 20× | pow1 |
| 16× | cbrt-unprod |
| 16× | associate-*l/ |
| 11× | add-cube-cbrt |
| 11× | associate-*l* |
| 11× | *-un-lft-identity |
| 11× | add-sqr-sqrt |
| 10× | pow-prod-down |
| 10× | times-frac |
| 10× | frac-times |
| 9× | associate-*r* |
| 8× | tan-quot |
| 8× | div-exp |
| 6× | associate-*r/ |
| 5× | associate-/l* |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | flip-+ |
| 4× | flip3-+ |
| 4× | cbrt-undiv |
| 4× | pow-to-exp |
| 4× | expm1-log1p-u |
| 3× | *-commutative |
| 3× | unpow3 |
| 3× | cube-mult |
| 2× | div-inv |
| 1× | distribute-lft-in |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | distribute-rgt-in |
| 42.0ms | (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 13.0ms | (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) |
| 5.0ms | (* (/ (pow t 3) (* l l)) (sin k)) |
| 3.0ms | (/ (pow t 3) (* l l)) |
| 328.0ms | (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 188.0ms | (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) |
| 78.0ms | (* (/ (pow t 3) (* l l)) (sin k)) |
| 27.0ms | (/ (pow t 3) (* l l)) |
| 1.3s | (* (* l l) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 834.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 706.0ms | (* (* l l) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (- (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1)))) |
| 625.0ms | (* (cos k) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (- (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1)))) |
| 609.0ms | (* (* (* l l) (cos k)) (- (+ 1 (pow (/ k t) 2)) 1)) |
10 alts after pruning (10 fresh and 0 done)
Merged error: 14.3b
Found 4 expressions with local error:
| 13.7b | (* (* (* (/ t l) (* (/ (* t t) l) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 7.7b | (/ (* t t) l) |
| 4.8b | (* (/ (* t t) l) (sin k)) |
| 2.5b | (* (* (/ t l) (* (/ (* t t) l) (sin k))) (tan k)) |
| 44× | associate-*l/ |
| 34× | frac-times |
| 29× | add-exp-log |
| 29× | add-cbrt-cube |
| 29× | pow1 |
| 17× | cbrt-unprod |
| 17× | prod-exp |
| 17× | pow-prod-down |
| 16× | tan-quot |
| 14× | associate-*r/ |
| 9× | associate-*r* |
| 8× | flip-+ |
| 8× | add-cube-cbrt |
| 8× | flip3-+ |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 6× | associate-*l* |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | expm1-log1p-u |
| 3× | *-commutative |
| 2× | div-inv |
| 1× | associate-/l* |
| 1× | distribute-lft-in |
| 1× | frac-2neg |
| 1× | clear-num |
| 1× | distribute-rgt-in |
| 81.0ms | (* (* (* (/ t l) (* (/ (* t t) l) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 32.0ms | (* (* (/ t l) (* (/ (* t t) l) (sin k))) (tan k)) |
| 9.0ms | (* (/ (* t t) l) (sin k)) |
| 4.0ms | (/ (* t t) l) |
| 355.0ms | (* (* (* (/ t l) (* (/ (* t t) l) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 211.0ms | (* (* (/ t l) (* (/ (* t t) l) (sin k))) (tan k)) |
| 100.0ms | (* (/ (* t t) l) (sin k)) |
| 18.0ms | (/ (* t t) l) |
| 1.1s | (* (* l l) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 757.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 693.0ms | (* (* (* l l) (cos k)) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 648.0ms | (* (* l (cos k)) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (- (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1)))) |
| 569.0ms | (* (* l (cos k)) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (- (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1)))) |
11 alts after pruning (11 fresh and 0 done)
Merged error: 7.7b
Found 4 expressions with local error:
| 13.7b | (* (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 4.8b | (* (/ t (/ l t)) (sin k)) |
| 2.5b | (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) |
| 0.6b | (/ 2 (* (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))) |
| 78× | associate-*l/ |
| 63× | frac-times |
| 29× | add-exp-log |
| 29× | add-cbrt-cube |
| 29× | pow1 |
| 28× | tan-quot |
| 25× | associate-*r/ |
| 24× | associate-/r/ |
| 17× | cbrt-unprod |
| 17× | prod-exp |
| 17× | pow-prod-down |
| 16× | flip-+ |
| 16× | flip3-+ |
| 9× | associate-*r* |
| 8× | add-cube-cbrt |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 7× | associate-*l* |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | expm1-log1p-u |
| 3× | *-commutative |
| 2× | div-inv |
| 1× | distribute-lft-in |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | distribute-rgt-in |
| 78.0ms | (* (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 30.0ms | (/ 2 (* (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))) |
| 28.0ms | (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) |
| 4.0ms | (* (/ t (/ l t)) (sin k)) |
| 358.0ms | (* (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 259.0ms | (/ 2 (* (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))) |
| 188.0ms | (* (* (/ t l) (* (/ t (/ l t)) (sin k))) (tan k)) |
| 66.0ms | (* (/ t (/ l t)) (sin k)) |
| 1.2s | (* (* (* t (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 917.0ms | (* (* l (cos k)) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (- (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1)))) |
| 808.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 771.0ms | (* (/ l t) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 737.0ms | (* (/ l t) (- (+ 1 (pow (/ k t) 2)) 1)) |
13 alts after pruning (12 fresh and 1 done)
Merged error: 6.8b
Found 4 expressions with local error:
| 10.9b | (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 7.4b | (* (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1))) (* (/ l t) (cos k))) |
| 2.0b | (* (* (/ t l) (* t (sin k))) (sin k)) |
| 1.5b | (* (/ t l) (* t (sin k))) |
| 25× | add-exp-log |
| 25× | add-cbrt-cube |
| 25× | pow1 |
| 20× | associate-*l/ |
| 15× | associate-*l* |
| 13× | cbrt-unprod |
| 13× | prod-exp |
| 13× | pow-prod-down |
| 8× | add-cube-cbrt |
| 8× | associate-*r* |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 5× | associate-/r/ |
| 5× | associate-*r/ |
| 5× | frac-times |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | flip-+ |
| 4× | *-commutative |
| 4× | flip3-+ |
| 4× | expm1-log1p-u |
| 2× | div-inv |
| 1× | distribute-lft-in |
| 1× | distribute-rgt-in |
| 50.0ms | (* (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1))) (* (/ l t) (cos k))) |
| 40.0ms | (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 23.0ms | (* (* (/ t l) (* t (sin k))) (sin k)) |
| 11.0ms | (* (/ t l) (* t (sin k))) |
| 198.0ms | (* (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1))) (* (/ l t) (cos k))) |
| 195.0ms | (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 82.0ms | (* (* (/ t l) (* t (sin k))) (sin k)) |
| 80.0ms | (* (/ t l) (* t (sin k))) |
| 1.1s | (* (* (* t (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)) |
| 658.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 650.0ms | (* (* (* (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1))) (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)))) (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)))) (* (* (* (/ l t) (cos k)) (* (/ l t) (cos k))) (* (/ l t) (cos k)))) |
| 525.0ms | (* (* (* (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1))) (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)))) (/ 2 (* (* (* (/ t l) (* t (sin k))) (sin k)) (+ (+ 1 (pow (/ k t) 2)) 1)))) (* (* (* (/ l t) (/ l t)) (/ l t)) (* (* (cos k) (cos k)) (cos k)))) |
| 525.0ms | (* (* (* (/ t l) (/ t l)) (/ t l)) (* (* (* t (sin k)) (* t (sin k))) (* t (sin k)))) |
14 alts after pruning (12 fresh and 2 done)
Merged error: 4.0b
67.8% (2.9b remaining)
Error of 8.1b against oracle of 5.3b and baseline of 14.2b
| 11050× | (pre true 80) |
| 5886× | (body real 80) |
| 2081× | (body real 1280) |
| 1766× | (body real 640) |
| 871× | (body real 320) |
| 446× | (body real 160) |