Average Error: 46.9 → 1.6
Time: 2.7m
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{1}{\frac{\sin k}{\frac{\frac{2}{t} \cdot \frac{\ell}{k}}{\frac{\tan k}{\frac{\ell}{k}}}}}\]

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 46.9

    \[\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. Initial simplification30.3

    \[\leadsto \frac{\frac{\frac{2}{t} \cdot \left(\frac{\ell}{t} \cdot \frac{\ell}{t}\right)}{\sin k \cdot \tan k}}{\frac{k}{t} \cdot \frac{k}{t}}\]
  3. Using strategy rm
  4. Applied times-frac30.3

    \[\leadsto \frac{\color{blue}{\frac{\frac{2}{t}}{\sin k} \cdot \frac{\frac{\ell}{t} \cdot \frac{\ell}{t}}{\tan k}}}{\frac{k}{t} \cdot \frac{k}{t}}\]
  5. Applied times-frac19.6

    \[\leadsto \color{blue}{\frac{\frac{\frac{2}{t}}{\sin k}}{\frac{k}{t}} \cdot \frac{\frac{\frac{\ell}{t} \cdot \frac{\ell}{t}}{\tan k}}{\frac{k}{t}}}\]
  6. Simplified19.1

    \[\leadsto \color{blue}{\frac{\frac{2}{k}}{\sin k}} \cdot \frac{\frac{\frac{\ell}{t} \cdot \frac{\ell}{t}}{\tan k}}{\frac{k}{t}}\]
  7. Using strategy rm
  8. Applied *-un-lft-identity19.1

    \[\leadsto \frac{\frac{2}{k}}{\sin k} \cdot \frac{\frac{\frac{\ell}{t} \cdot \frac{\ell}{t}}{\tan k}}{\color{blue}{1 \cdot \frac{k}{t}}}\]
  9. Applied *-un-lft-identity19.1

    \[\leadsto \frac{\frac{2}{k}}{\sin k} \cdot \frac{\frac{\frac{\ell}{t} \cdot \frac{\ell}{t}}{\color{blue}{1 \cdot \tan k}}}{1 \cdot \frac{k}{t}}\]
  10. Applied times-frac18.3

    \[\leadsto \frac{\frac{2}{k}}{\sin k} \cdot \frac{\color{blue}{\frac{\frac{\ell}{t}}{1} \cdot \frac{\frac{\ell}{t}}{\tan k}}}{1 \cdot \frac{k}{t}}\]
  11. Applied times-frac12.6

    \[\leadsto \frac{\frac{2}{k}}{\sin k} \cdot \color{blue}{\left(\frac{\frac{\frac{\ell}{t}}{1}}{1} \cdot \frac{\frac{\frac{\ell}{t}}{\tan k}}{\frac{k}{t}}\right)}\]
  12. Applied associate-*r*11.0

    \[\leadsto \color{blue}{\left(\frac{\frac{2}{k}}{\sin k} \cdot \frac{\frac{\frac{\ell}{t}}{1}}{1}\right) \cdot \frac{\frac{\frac{\ell}{t}}{\tan k}}{\frac{k}{t}}}\]
  13. Simplified6.8

    \[\leadsto \left(\frac{\frac{2}{k}}{\sin k} \cdot \frac{\frac{\frac{\ell}{t}}{1}}{1}\right) \cdot \color{blue}{\frac{\frac{\ell}{k}}{\tan k}}\]
  14. Using strategy rm
  15. Applied frac-times6.2

    \[\leadsto \color{blue}{\frac{\frac{2}{k} \cdot \frac{\frac{\ell}{t}}{1}}{\sin k \cdot 1}} \cdot \frac{\frac{\ell}{k}}{\tan k}\]
  16. Applied associate-*l/6.4

    \[\leadsto \color{blue}{\frac{\left(\frac{2}{k} \cdot \frac{\frac{\ell}{t}}{1}\right) \cdot \frac{\frac{\ell}{k}}{\tan k}}{\sin k \cdot 1}}\]
  17. Simplified1.4

    \[\leadsto \frac{\color{blue}{\frac{\frac{\ell}{k} \cdot \frac{2}{t}}{\frac{\tan k}{\frac{\ell}{k}}}}}{\sin k \cdot 1}\]
  18. Using strategy rm
  19. Applied *-un-lft-identity1.4

    \[\leadsto \frac{\color{blue}{1 \cdot \frac{\frac{\ell}{k} \cdot \frac{2}{t}}{\frac{\tan k}{\frac{\ell}{k}}}}}{\sin k \cdot 1}\]
  20. Applied associate-/l*1.6

    \[\leadsto \color{blue}{\frac{1}{\frac{\sin k \cdot 1}{\frac{\frac{\ell}{k} \cdot \frac{2}{t}}{\frac{\tan k}{\frac{\ell}{k}}}}}}\]
  21. Final simplification1.6

    \[\leadsto \frac{1}{\frac{\sin k}{\frac{\frac{2}{t} \cdot \frac{\ell}{k}}{\frac{\tan k}{\frac{\ell}{k}}}}}\]

Reproduce

herbie shell --seed 2018362 +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: 1.7m)Debug log

start2.1s

Algorithm
intervals

setup207.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 31.7b

localize48.0ms

Local error

Found 4 expressions with local error:

31.3b
(/ (/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k))) (* (/ k t) (/ k t)))
2.6b
(/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k)))
0.6b
(* (/ 2 t) (* (/ l t) (/ l t)))
0.2b
(* (sin k) (tan k))

rewrite81.0ms

Algorithm
rewrite-expression-head
Counts
4 → 140
Calls

4 calls. Slowest were:

29.0ms
(/ (/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k))) (* (/ k t) (/ k t)))
26.0ms
(/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k)))
15.0ms
(* (/ 2 t) (* (/ l t) (/ l t)))

series661.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

304.0ms
(/ (/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k))) (* (/ k t) (/ k t)))
287.0ms
(/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k)))
47.0ms
(* (sin k) (tan k))
22.0ms
(* (/ 2 t) (* (/ l t) (/ l t)))

simplify27.2s

Counts
110 → 152
Calls

110 calls. Slowest were:

1.1s
(/ (* (* (/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k))) (/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k)))) (/ (* (/ 2 t) (* (/ l t) (/ l t))) (* (sin k) (tan k)))) (* (* (* (/ k t) (/ k t)) (* (/ k t) (/ k t))) (* (/ k t) (/ k t))))
1.1s
(/ (/ (* (* (* (/ 2 t) (/ 2 t)) (/ 2 t)) (* (* (* (/ l t) (/ l t)) (/ l t)) (* (* (/ l t) (/ l t)) (/ l t)))) (* (* (* (sin k) (sin k)) (sin k)) (* (* (tan k) (tan k)) (tan k)))) (* (* (* (/ k t) (/ k t)) (/ k t)) (* (* (/ k t) (/ k t)) (/ k t))))
1.0s
(/ (/ (* (* (* (/ 2 t) (/ 2 t)) (/ 2 t)) (* (* (* (/ l t) (/ l t)) (* (/ l t) (/ l t))) (* (/ l t) (/ l t)))) (* (* (* (sin k) (sin k)) (sin k)) (* (* (tan k) (tan k)) (tan k)))) (* (* (* (/ k t) (/ k t)) (* (/ k t) (/ k t))) (* (/ k t) (/ k t))))

prune2.3s

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 12.9b

localize13.0ms

Local error

Found 4 expressions with local error:

18.9b
(/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t))
5.8b
(* (/ (/ 2 k) (sin k)) (/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t)))
0.7b
(/ (* (/ l t) (/ l t)) (tan k))
0.3b
(/ (/ 2 k) (sin k))

rewrite47.0ms

Algorithm
rewrite-expression-head
Counts
4 → 208
Calls

4 calls. Slowest were:

15.0ms
(* (/ (/ 2 k) (sin k)) (/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t)))
13.0ms
(/ (* (/ l t) (/ l t)) (tan k))
8.0ms
(/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t))

series610.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

239.0ms
(/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t))
174.0ms
(/ (* (/ l t) (/ l t)) (tan k))
170.0ms
(* (/ (/ 2 k) (sin k)) (/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t)))
26.0ms
(/ (/ 2 k) (sin k))

simplify24.6s

Counts
215 → 220
Calls

215 calls. Slowest were:

1.0s
(+ (log (/ (/ 2 k) (sin k))) (- (- (+ (log (/ l t)) (log (/ l t))) (log (tan k))) (log (/ k t))))
849.0ms
(/ (* (* (* (/ l t) (/ l t)) (* (/ l t) (/ l t))) (* (/ l t) (/ l t))) (* (* (tan k) (tan k)) (tan k)))
663.0ms
(* (/ (/ 2 k) (sin k)) (/ (/ (* (/ l t) (/ l t)) (tan k)) (/ k t)))

prune3.4s

Pruning

15 alts after pruning (15 fresh and 0 done)

Merged error: 2.9b

localize20.0ms

Local error

Found 4 expressions with local error:

6.6b
(* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1))
0.3b
(/ (/ 2 k) (sin k))
0.2b
(/ (/ l k) (tan k))
0.2b
(* (* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1)) (/ (/ l k) (tan k)))

rewrite50.0ms

Algorithm
rewrite-expression-head
Counts
4 → 156
Calls

4 calls. Slowest were:

17.0ms
(* (* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1)) (/ (/ l k) (tan k)))
15.0ms
(* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1))
10.0ms
(/ (/ l k) (tan k))

series360.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

137.0ms
(* (* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1)) (/ (/ l k) (tan k)))
121.0ms
(/ (/ l k) (tan k))
67.0ms
(* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1))
35.0ms
(/ (/ 2 k) (sin k))

simplify11.3s

Counts
144 → 168
Calls

144 calls. Slowest were:

633.0ms
(* (* (* (/ (/ 2 k) (sin k)) (/ (/ 2 k) (sin k))) (/ (/ 2 k) (sin k))) (* (* (/ (/ (/ l t) 1) 1) (/ (/ (/ l t) 1) 1)) (/ (/ (/ l t) 1) 1)))
628.0ms
(* (* (/ 2 k) (/ (/ (/ l t) 1) 1)) (/ l k))
622.0ms
(* (* (* (* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1)) (* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1))) (* (/ (/ 2 k) (sin k)) (/ (/ (/ l t) 1) 1))) (/ (* (* (/ l k) (/ l k)) (/ l k)) (* (* (tan k) (tan k)) (tan k))))

prune2.7s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 0.0b

localize30.0ms

Local error

Found 4 expressions with local error:

5.5b
(* (/ l k) (/ 2 t))
0.4b
(/ (/ (* (/ l k) (/ 2 t)) (/ (tan k) (/ l k))) (* (sin k) 1))
0.3b
(/ (tan k) (/ l k))
0.2b
(/ (* (/ l k) (/ 2 t)) (/ (tan k) (/ l k)))

rewrite59.0ms

Algorithm
rewrite-expression-head
Counts
4 → 186
Calls

4 calls. Slowest were:

21.0ms
(/ (/ (* (/ l k) (/ 2 t)) (/ (tan k) (/ l k))) (* (sin k) 1))
15.0ms
(/ (* (/ l k) (/ 2 t)) (/ (tan k) (/ l k)))
7.0ms
(* (/ l k) (/ 2 t))

series468.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

182.0ms
(/ (/ (* (/ l k) (/ 2 t)) (/ (tan k) (/ l k))) (* (sin k) 1))
146.0ms
(/ (* (/ l k) (/ 2 t)) (/ (tan k) (/ l k)))
112.0ms
(/ (tan k) (/ l k))
28.0ms
(* (/ l k) (/ 2 t))

simplify22.4s

Counts
196 → 198
Calls

196 calls. Slowest were:

751.0ms
(/ (* (* (* (/ l k) (/ l k)) (/ l k)) (* (* (/ 2 t) (/ 2 t)) (/ 2 t))) (/ (* (* (tan k) (tan k)) (tan k)) (* (* (/ l k) (/ l k)) (/ l k))))
718.0ms
(- (- (+ (log (/ l k)) (log (/ 2 t))) (- (log (tan k)) (log (/ l k)))) (log (* (sin k) 1)))
545.0ms
(/ (/ (* (* (* (/ l k) (/ l k)) (/ l k)) (* (* (/ 2 t) (/ 2 t)) (/ 2 t))) (/ (* (* (tan k) (tan k)) (tan k)) (* (* (/ l k) (/ l k)) (/ l k)))) (* (* (* (sin k) 1) (* (sin k) 1)) (* (sin k) 1)))

prune2.8s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 0b

regimes294.0ms

Accuracy

0% (1.6b remaining)

Error of 1.6b against oracle of 0.0b and baseline of 1.6b

bsearch2.0ms