Average Error: 47.4 → 1.8
Time: 2.1m
Precision: 64
Internal Precision: 128
\[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)}\]
\[\frac{2}{\sin k \cdot \left(\frac{\sin k}{\frac{\ell}{k}} \cdot \frac{\frac{t}{\cos k}}{\frac{\ell}{k}}\right)}\]

Error

Bits error versus t

Bits error versus l

Bits error versus k

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 47.4

    \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)}\]
  2. Taylor expanded around inf 23.9

    \[\leadsto \frac{2}{\color{blue}{\frac{t \cdot \left({k}^{2} \cdot {\left(\sin k\right)}^{2}\right)}{{\ell}^{2} \cdot \cos k}}}\]
  3. Using strategy rm
  4. Applied associate-/l*24.0

    \[\leadsto \frac{2}{\color{blue}{\frac{t}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot {\left(\sin k\right)}^{2}}}}}\]
  5. Using strategy rm
  6. Applied times-frac22.7

    \[\leadsto \frac{2}{\frac{t}{\color{blue}{\frac{{\ell}^{2}}{{k}^{2}} \cdot \frac{\cos k}{{\left(\sin k\right)}^{2}}}}}\]
  7. Applied associate-/r*21.9

    \[\leadsto \frac{2}{\color{blue}{\frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\frac{\cos k}{{\left(\sin k\right)}^{2}}}}}\]
  8. Using strategy rm
  9. Applied add-sqr-sqrt42.1

    \[\leadsto \frac{2}{\frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\frac{\cos k}{{\color{blue}{\left(\sqrt{\sin k} \cdot \sqrt{\sin k}\right)}}^{2}}}}\]
  10. Applied unpow-prod-down42.1

    \[\leadsto \frac{2}{\frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\frac{\cos k}{\color{blue}{{\left(\sqrt{\sin k}\right)}^{2} \cdot {\left(\sqrt{\sin k}\right)}^{2}}}}}\]
  11. Applied *-un-lft-identity42.1

    \[\leadsto \frac{2}{\frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\frac{\color{blue}{1 \cdot \cos k}}{{\left(\sqrt{\sin k}\right)}^{2} \cdot {\left(\sqrt{\sin k}\right)}^{2}}}}\]
  12. Applied times-frac42.1

    \[\leadsto \frac{2}{\frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\color{blue}{\frac{1}{{\left(\sqrt{\sin k}\right)}^{2}} \cdot \frac{\cos k}{{\left(\sqrt{\sin k}\right)}^{2}}}}}\]
  13. Applied *-un-lft-identity42.1

    \[\leadsto \frac{2}{\frac{\color{blue}{1 \cdot \frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}}{\frac{1}{{\left(\sqrt{\sin k}\right)}^{2}} \cdot \frac{\cos k}{{\left(\sqrt{\sin k}\right)}^{2}}}}\]
  14. Applied times-frac42.1

    \[\leadsto \frac{2}{\color{blue}{\frac{1}{\frac{1}{{\left(\sqrt{\sin k}\right)}^{2}}} \cdot \frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\frac{\cos k}{{\left(\sqrt{\sin k}\right)}^{2}}}}}\]
  15. Simplified42.1

    \[\leadsto \frac{2}{\color{blue}{\sin k} \cdot \frac{\frac{t}{\frac{{\ell}^{2}}{{k}^{2}}}}{\frac{\cos k}{{\left(\sqrt{\sin k}\right)}^{2}}}}\]
  16. Simplified1.8

    \[\leadsto \frac{2}{\sin k \cdot \color{blue}{\left(\frac{\frac{t}{\cos k}}{\frac{\ell}{k}} \cdot \frac{\sin k}{\frac{\ell}{k}}\right)}}\]
  17. Final simplification1.8

    \[\leadsto \frac{2}{\sin k \cdot \left(\frac{\sin k}{\frac{\ell}{k}} \cdot \frac{\frac{t}{\cos k}}{\frac{\ell}{k}}\right)}\]

Reproduce

herbie shell --seed 2019022 +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))))

Details

Time bar (total: 2.0m)Debug log

sample1.3s

Algorithm
intervals
Results
506.0ms34×body5120valid
298.0ms77×body2560valid
292.0ms136×body1280valid
102.0ms70×body640valid
40.0ms40×body320valid
20.0ms62×body80valid
11.0ms17×body160valid

simplify87.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
87.0ms
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1)))

prune11.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 47.1b

localize76.0ms

Local error

Found 4 expressions with local error:

32.7b
(* (* (* (/ (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.1b
(* (* (/ (pow t 3) (* l l)) (sin k)) (tan k))

rewrite86.0ms

Algorithm
rewrite-expression-head
Rules
38×add-exp-log
29×add-cbrt-cube
19×prod-exp
18×pow1
15×associate-*l/
14×cbrt-unprod
11×add-sqr-sqrt
10×frac-times
add-cube-cbrt
pow-prod-down
*-un-lft-identity
tan-quot
associate-*r*
associate-*r/
div-exp
associate-/l*
flip--
flip3--
times-frac
add-log-exp
log1p-expm1-u
expm1-log1p-u
associate--l+
fma-neg
distribute-lft-in
sub-neg
cbrt-undiv
pow-to-exp
distribute-rgt-in
*-commutative
associate-*l*
difference-of-sqr-1
unpow3
cube-mult
div-inv
frac-2neg
associate-/r*
clear-num
expm1-def
Counts
4 → 115
Calls
4 calls:
Slowest
54.0ms
(* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1))
13.0ms
(- (+ 1 (pow (/ k t) 2)) 1)
13.0ms
(* (* (/ (pow t 3) (* l l)) (sin k)) (tan k))
3.0ms
(/ (pow t 3) (* l l))

series488.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
291.0ms
(* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1))
164.0ms
(* (* (/ (pow t 3) (* l l)) (sin k)) (tan k))
18.0ms
(/ (pow t 3) (* l l))
14.0ms
(- (+ 1 (pow (/ k t) 2)) 1)

simplify17.8s

Counts
89 → 127
Calls
89 calls:
Slowest
1.4s
(* (* (* (pow t 3) (sin k)) (sin k)) (- (+ 1 (pow (/ k t) 2)) 1))
982.0ms
(sqrt (- (+ 1 (pow (/ k t) 2)) 1))
866.0ms
(cbrt (- (+ 1 (pow (/ k t) 2)) 1))
762.0ms
(- (+ 1 (pow (/ k t) 2)) 1)
587.0ms
(* (* l l) (+ (* (+ 1 (pow (/ k t) 2)) (+ 1 (pow (/ k t) 2))) (+ (* 1 1) (* (+ 1 (pow (/ k t) 2)) 1))))

prune2.6s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 15.7b

localize52.0ms

Local error

Found 4 expressions with local error:

18.0b
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
5.2b
(* t (* (pow k 2) (pow (sin k) 2)))
0.4b
(pow (sin k) 2)
0.3b
(/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))

rewrite30.0ms

Algorithm
rewrite-expression-head
Rules
12×add-exp-log
add-cbrt-cube
add-cube-cbrt
*-un-lft-identity
associate-/r*
add-sqr-sqrt
pow1
add-log-exp
log1p-expm1-u
expm1-log1p-u
div-inv
div-exp
unpow-prod-down
prod-exp
times-frac
frac-2neg
clear-num
cbrt-undiv
pow-to-exp
unpow2
associate-/l*
cbrt-unprod
*-commutative
associate-/r/
pow-exp
associate-*r*
pow-pow
Counts
4 → 65
Calls
4 calls:
Slowest
21.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
6.0ms
(* t (* (pow k 2) (pow (sin k) 2)))
1.0ms
(/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))
1.0ms
(pow (sin k) 2)

series560.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
266.0ms
(/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))
204.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
74.0ms
(* t (* (pow k 2) (pow (sin k) 2)))
15.0ms
(pow (sin k) 2)

simplify5.6s

Counts
32 → 77
Calls
32 calls:
Slowest
588.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
561.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
542.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
526.0ms
(sqrt (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))
516.0ms
(- (log (* t (* (pow k 2) (pow (sin k) 2)))) (log (* (pow l 2) (cos k))))

prune1.2s

Pruning

23 alts after pruning (23 fresh and 0 done)

Merged error: 12.3b

localize8.0ms

Local error

Found 4 expressions with local error:

16.2b
(/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))
5.1b
(/ t (/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2))))
0.4b
(pow (sin k) 2)
0.3b
(/ 2 (/ t (/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))))

rewrite22.0ms

Algorithm
rewrite-expression-head
Rules
57×add-exp-log
32×prod-exp
23×pow-to-exp
21×div-exp
16×add-cbrt-cube
11×associate-/r*
add-cube-cbrt
pow-exp
*-un-lft-identity
add-sqr-sqrt
div-inv
pow1
add-log-exp
log1p-expm1-u
cbrt-unprod
cbrt-undiv
expm1-log1p-u
associate-/r/
frac-2neg
unpow-prod-down
clear-num
times-frac
unpow2
associate-/l*
pow-pow
Counts
4 → 92
Calls
4 calls:
Slowest
14.0ms
(/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))
3.0ms
(/ t (/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2))))
2.0ms
(pow (sin k) 2)
1.0ms
(/ 2 (/ t (/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))))

series710.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
300.0ms
(/ t (/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2))))
234.0ms
(/ 2 (/ t (/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))))
153.0ms
(/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))
22.0ms
(pow (sin k) 2)

simplify14.1s

Counts
58 → 104
Calls
58 calls:
Slowest
592.0ms
(- (+ (* (log l) 2) (log (cos k))) (+ (* (log k) 2) (* (log (sin k)) 2)))
579.0ms
(/ (* (pow l 2) (cos k)) (* (pow k 2) (pow (sin k) 2)))
526.0ms
(- (log (* (pow l 2) (cos k))) (+ (log (pow k 2)) (log (pow (sin k) 2))))
520.0ms
(- (+ (log (pow l 2)) (log (cos k))) (+ (log (pow k 2)) (* (log (sin k)) 2)))
497.0ms
(- (+ (* (log l) 2) (log (cos k))) (+ (* (log k) 2) (* (log (sin k)) 2)))

prune1.7s

Pruning

24 alts after pruning (24 fresh and 0 done)

Merged error: 9.5b

localize17.0ms

Local error

Found 4 expressions with local error:

14.0b
(/ (pow l 2) (pow k 2))
3.9b
(/ (/ t (/ (pow l 2) (pow k 2))) (/ (cos k) (pow (sin k) 2)))
3.9b
(/ t (/ (pow l 2) (pow k 2)))
0.4b
(pow (sin k) 2)

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
283×times-frac
134×add-cube-cbrt
134×*-un-lft-identity
134×add-sqr-sqrt
57×unpow-prod-down
49×associate-/r*
37×unpow2
36×div-inv
28×associate-/r/
19×add-exp-log
11×div-exp
11×add-cbrt-cube
associate-/l*
pow-to-exp
pow1
add-log-exp
log1p-expm1-u
cbrt-undiv
expm1-log1p-u
frac-2neg
clear-num
pow-exp
associate-/l/
pow-pow
Counts
4 → 265
Calls
4 calls:
Slowest
6.0ms
(/ (/ t (/ (pow l 2) (pow k 2))) (/ (cos k) (pow (sin k) 2)))
3.0ms
(/ (pow l 2) (pow k 2))
1.0ms
(pow (sin k) 2)
1.0ms
(/ t (/ (pow l 2) (pow k 2)))

series385.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
310.0ms
(/ (/ t (/ (pow l 2) (pow k 2))) (/ (cos k) (pow (sin k) 2)))
39.0ms
(/ t (/ (pow l 2) (pow k 2)))
22.0ms
(pow (sin k) 2)
14.0ms
(/ (pow l 2) (pow k 2))

simplify32.2s

Counts
365 → 277
Calls
365 calls:
Slowest
771.0ms
(/ (/ t (pow l 2)) (/ (* (cbrt (cos k)) (cbrt (cos k))) (* (cbrt (pow (sin k) 2)) (cbrt (pow (sin k) 2)))))
515.0ms
(/ (/ t (pow l 2)) (/ 1 (pow (sqrt (sin k)) 2)))
485.0ms
(- (log (/ t (/ (pow l 2) (pow k 2)))) (- (log (cos k)) (* (log (sin k)) 2)))
472.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
471.0ms
(/ (* (* (pow l 2) (pow l 2)) (pow l 2)) (* (* (pow k 2) (pow k 2)) (pow k 2)))

prune4.2s

Pruning

15 alts after pruning (15 fresh and 0 done)

Merged error: 0.1b

regimes462.0ms

Accuracy

0% (1.4b remaining)

Error of 1.8b against oracle of 0.4b and baseline of 1.8b

bsearch2.0ms

end0.0ms

sample38.8s

Algorithm
intervals
Results
11.8s2198×body2560valid
11.5s4061×body1280valid
7.6s959×body5120valid
4.7s2510×body640valid
1.7s1036×body320valid
772.0ms2050×body80valid
353.0ms417×body160valid