


Bits error versus t



Bits error versus l



Bits error versus k
Results
Initial program 47.5
Taylor expanded around -inf 23.5
rmApplied times-frac23.5
Applied associate-/r*23.4
rmApplied add-cube-cbrt23.5
Applied times-frac23.5
Applied div-inv23.5
Applied times-frac22.3
Simplified16.9
rmApplied associate-*l/16.8
Final simplification16.8
herbie shell --seed 2019010 +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.7m)Debug log
| 87.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: 45.1b
Found 4 expressions with local error:
| 28.8b | (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 16.1b | (/ (pow t 3) (* l l)) |
| 1.4b | (- (+ 1 (pow (/ k t) 2)) 1) |
| 1.3b | (* (/ (pow t 3) (* l l)) (sin k)) |
| 33× | add-exp-log |
| 25× | add-cbrt-cube |
| 15× | prod-exp |
| 15× | pow1 |
| 13× | associate-*l/ |
| 13× | add-sqr-sqrt |
| 11× | cbrt-unprod |
| 11× | add-cube-cbrt |
| 11× | *-un-lft-identity |
| 10× | associate-*l* |
| 10× | times-frac |
| 9× | frac-times |
| 7× | pow-prod-down |
| 7× | associate-*r* |
| 6× | tan-quot |
| 6× | div-exp |
| 5× | associate-/l* |
| 5× | flip-- |
| 5× | associate-*r/ |
| 5× | flip3-- |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | expm1-log1p-u |
| 3× | associate--l+ |
| 3× | unpow3 |
| 3× | fma-neg |
| 3× | distribute-lft-in |
| 3× | sub-neg |
| 3× | cbrt-undiv |
| 3× | pow-to-exp |
| 3× | cube-mult |
| 3× | distribute-rgt-in |
| 2× | div-inv |
| 2× | *-commutative |
| 2× | difference-of-sqr-1 |
| 1× | frac-2neg |
| 1× | associate-/r* |
| 1× | clear-num |
| 1× | expm1-def |
| 63.0ms | (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 14.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 9.0ms | (* (/ (pow t 3) (* l l)) (sin k)) |
| 3.0ms | (/ (pow t 3) (* l l)) |
| 331.0ms | (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 78.0ms | (* (/ (pow t 3) (* l l)) (sin k)) |
| 17.0ms | (/ (pow t 3) (* l l)) |
| 14.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 1.3s | (* (* (* (pow t 3) (sin k)) (sin k)) (- (+ 1 (pow (/ k t) 2)) 1)) |
| 1.0s | (cbrt (- (+ 1 (pow (/ k t) 2)) 1)) |
| 974.0ms | (sqrt (- (+ 1 (pow (/ k t) 2)) 1)) |
| 826.0ms | (- (+ 1 (pow (/ k t) 2)) 1) |
| 690.0ms | (* (* l l) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (+ (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1)))) |
8 alts after pruning (8 fresh and 0 done)
Merged error: 15.1b
Found 4 expressions with local error:
| 17.1b | (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))) |
| 6.8b | (* t (* (pow k 2) (pow (sin k) 2))) |
| 0.7b | (/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))) |
| 0.4b | (* (pow k 2) (pow (sin k) 2)) |
| 18× | add-exp-log |
| 11× | add-cbrt-cube |
| 8× | add-cube-cbrt |
| 8× | prod-exp |
| 8× | associate-*r* |
| 8× | *-un-lft-identity |
| 8× | add-sqr-sqrt |
| 6× | associate-/r* |
| 6× | pow-to-exp |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | associate-*l* |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | div-inv |
| 3× | div-exp |
| 3× | unpow-prod-down |
| 2× | unpow2 |
| 2× | cbrt-unprod |
| 2× | *-commutative |
| 2× | pow-exp |
| 2× | times-frac |
| 2× | frac-2neg |
| 2× | clear-num |
| 2× | cbrt-undiv |
| 1× | associate-/l* |
| 1× | associate-/r/ |
| 1× | pow-prod-down |
| 14.0ms | (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))) |
| 5.0ms | (* t (* (pow k 2) (pow (sin k) 2))) |
| 5.0ms | (* (pow k 2) (pow (sin k) 2)) |
| 1.0ms | (/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))) |
| 269.0ms | (/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))) |
| 223.0ms | (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))) |
| 82.0ms | (* t (* (pow k 2) (pow (sin k) 2))) |
| 41.0ms | (* (pow k 2) (pow (sin k) 2)) |
| 780.0ms | (sqrt (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))) |
| 583.0ms | (cbrt (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))) |
| 573.0ms | (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))) |
| 562.0ms | (- (log (* t (* (pow k 2) (pow (sin k) 2)))) (log (* (pow l 2) (cos k)))) |
| 556.0ms | (/ (* (* (* t (* (pow k 2) (pow (sin k) 2))) (* t (* (pow k 2) (pow (sin k) 2)))) (* t (* (pow k 2) (pow (sin k) 2)))) (* (* (* (pow l 2) (pow l 2)) (pow l 2)) (* (* (cos k) (cos k)) (cos k)))) |
14 alts after pruning (14 fresh and 0 done)
Merged error: 10.6b
Found 4 expressions with local error:
| 14.3b | (/ (/ 2 (/ t (pow l 2))) (/ (* (pow k 2) (pow (sin k) 2)) (cos k))) |
| 6.9b | (/ t (pow l 2)) |
| 0.7b | (/ 2 (/ t (pow l 2))) |
| 0.4b | (* (pow k 2) (pow (sin k) 2)) |
| 53× | times-frac |
| 35× | add-exp-log |
| 29× | add-cube-cbrt |
| 29× | *-un-lft-identity |
| 29× | add-sqr-sqrt |
| 18× | div-inv |
| 15× | div-exp |
| 15× | add-cbrt-cube |
| 15× | associate-/r* |
| 12× | prod-exp |
| 10× | associate-/r/ |
| 10× | pow-to-exp |
| 7× | associate-*r* |
| 5× | associate-/l* |
| 5× | cbrt-undiv |
| 4× | add-log-exp |
| 4× | log1p-expm1-u |
| 4× | pow-exp |
| 4× | associate-*l* |
| 4× | pow1 |
| 4× | expm1-log1p-u |
| 3× | unpow2 |
| 3× | frac-2neg |
| 3× | unpow-prod-down |
| 3× | clear-num |
| 2× | cbrt-unprod |
| 1× | associate-/l/ |
| 1× | *-commutative |
| 1× | pow-prod-down |
| 12.0ms | (/ (/ 2 (/ t (pow l 2))) (/ (* (pow k 2) (pow (sin k) 2)) (cos k))) |
| 9.0ms | (* (pow k 2) (pow (sin k) 2)) |
| 1.0ms | (/ t (pow l 2)) |
| 1.0ms | (/ 2 (/ t (pow l 2))) |
| 240.0ms | (/ (/ 2 (/ t (pow l 2))) (/ (* (pow k 2) (pow (sin k) 2)) (cos k))) |
| 36.0ms | (* (pow k 2) (pow (sin k) 2)) |
| 26.0ms | (/ 2 (/ t (pow l 2))) |
| 19.0ms | (/ t (pow l 2)) |
| 485.0ms | (/ (/ 2 (/ t (pow l 2))) (/ (* (pow k 2) (pow (sin k) 2)) (cos k))) |
| 472.0ms | (/ (* (* (/ 2 (/ t (pow l 2))) (/ 2 (/ t (pow l 2)))) (/ 2 (/ t (pow l 2)))) (/ (* (* (* (pow k 2) (pow k 2)) (pow k 2)) (* (* (pow (sin k) 2) (pow (sin k) 2)) (pow (sin k) 2))) (* (* (cos k) (cos k)) (cos k)))) |
| 433.0ms | (/ (/ 1 (/ t (pow l 2))) (/ (* (pow k 2) (pow (sin k) 2)) (cos k))) |
| 406.0ms | (/ (/ 1 (/ t (pow l 2))) (/ 1 (cos k))) |
| 404.0ms | (/ (/ 1 (/ t (pow l 2))) (cbrt (/ (* (pow k 2) (pow (sin k) 2)) (cos k)))) |
12 alts after pruning (12 fresh and 0 done)
Merged error: 7.4b
Found 4 expressions with local error:
| 10.4b | (* (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) (* (/ (cbrt (cos k)) (sin k)) (* (/ (/ l t) (sin k)) l))) |
| 2.7b | (* (/ (cbrt (cos k)) (sin k)) (* (/ (/ l t) (sin k)) l)) |
| 2.7b | (/ (/ l t) (sin k)) |
| 0.5b | (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) |
| 34× | times-frac |
| 29× | add-cube-cbrt |
| 29× | *-un-lft-identity |
| 29× | add-sqr-sqrt |
| 27× | associate-*l* |
| 20× | add-exp-log |
| 18× | add-cbrt-cube |
| 11× | associate-/r* |
| 11× | pow1 |
| 10× | associate-*l/ |
| 9× | div-inv |
| 9× | cbrt-prod |
| 7× | cbrt-unprod |
| 7× | prod-exp |
| 6× | associate-*r/ |
| 6× | frac-times |
| 4× | add-log-exp |
| 4× | associate-/l* |
| 4× | log1p-expm1-u |
| 4× | pow-prod-down |
| 4× | expm1-log1p-u |
| 3× | div-exp |
| 3× | cbrt-undiv |
| 2× | *-commutative |
| 2× | associate-/r/ |
| 2× | associate-*r* |
| 2× | frac-2neg |
| 2× | clear-num |
| 1× | associate-/l/ |
| 1× | unpow2 |
| 39.0ms | (* (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) (* (/ (cbrt (cos k)) (sin k)) (* (/ (/ l t) (sin k)) l))) |
| 17.0ms | (* (/ (cbrt (cos k)) (sin k)) (* (/ (/ l t) (sin k)) l)) |
| 3.0ms | (/ (/ l t) (sin k)) |
| 2.0ms | (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) |
| 264.0ms | (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) |
| 174.0ms | (* (/ (cbrt (cos k)) (sin k)) (* (/ (/ l t) (sin k)) l)) |
| 147.0ms | (* (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) (* (/ (cbrt (cos k)) (sin k)) (* (/ (/ l t) (sin k)) l))) |
| 97.0ms | (/ (/ l t) (sin k)) |
| 413.0ms | (+ (log (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k)))))) (+ (- (log (cbrt (cos k))) (log (sin k))) (log (* (/ (/ l t) (sin k)) l)))) |
| 403.0ms | (* 2 (* (cbrt (cos k)) (* (/ (/ l t) (sin k)) l))) |
| 380.0ms | (* 2 (/ (* (pow l 2) (cos k)) (* t (* (pow k 2) (pow (sin k) 2))))) |
| 357.0ms | (* (* (* (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k))))) (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k)))))) (/ 2 (/ (pow k 2) (* (cbrt (cos k)) (cbrt (cos k)))))) (* (* (* (/ (cbrt (cos k)) (sin k)) (/ (cbrt (cos k)) (sin k))) (/ (cbrt (cos k)) (sin k))) (* (* (* (/ (/ l t) (sin k)) l) (* (/ (/ l t) (sin k)) l)) (* (/ (/ l t) (sin k)) l)))) |
| 331.0ms | (* 2 (* (/ 1 (pow k 2)) (pow (pow (cos k) 2) 1/3))) |
14 alts after pruning (14 fresh and 0 done)
Merged error: 7.1b
0% (7.5b remaining)
Error of 16.8b against oracle of 9.4b and baseline of 16.8b