Average Error: 47.7 → 17.5
Time: 1.5m
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)}\]
\[\begin{array}{l} \mathbf{if}\;\ell \cdot \ell \le 1.347905859362174 \cdot 10^{-308}:\\ \;\;\;\;\frac{2}{\sqrt[3]{{\left(\frac{k \cdot \left(t \cdot k\right)}{\cos k} \cdot \left(\frac{\sin k}{\ell} \cdot \frac{\sin k}{\ell}\right)\right)}^{3}}}\\ \mathbf{elif}\;\ell \cdot \ell \le 7.332829679811125 \cdot 10^{+307}:\\ \;\;\;\;\frac{2}{\frac{{\left(\sin k\right)}^{2}}{\cos k} \cdot \frac{k \cdot \left(t \cdot k\right)}{{\ell}^{2}}}\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{2}{{k}^{4}} - \frac{\frac{\frac{1}{3}}{k}}{k}\right) \cdot \left(\ell \cdot \frac{\ell}{t}\right)\\ \end{array}\]

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. Split input into 3 regimes
  2. if (* l l) < 1.347905859362174e-308

    1. Initial program 45.1

      \[\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 20.5

      \[\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-*r*19.5

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

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

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

      \[\leadsto \frac{2}{\frac{\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}}{\color{blue}{\sqrt[3]{\left(\left({\ell}^{2} \cdot \cos k\right) \cdot \left({\ell}^{2} \cdot \cos k\right)\right) \cdot \left({\ell}^{2} \cdot \cos k\right)}}}}\]
    10. Applied add-cbrt-cube22.5

      \[\leadsto \frac{2}{\frac{\color{blue}{\sqrt[3]{\left(\left(\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}\right) \cdot \left(\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}\right)\right) \cdot \left(\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}\right)}}}{\sqrt[3]{\left(\left({\ell}^{2} \cdot \cos k\right) \cdot \left({\ell}^{2} \cdot \cos k\right)\right) \cdot \left({\ell}^{2} \cdot \cos k\right)}}}\]
    11. Applied cbrt-undiv22.5

      \[\leadsto \frac{2}{\color{blue}{\sqrt[3]{\frac{\left(\left(\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}\right) \cdot \left(\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}\right)\right) \cdot \left(\left(\left(t \cdot k\right) \cdot k\right) \cdot {\left(\sin k\right)}^{2}\right)}{\left(\left({\ell}^{2} \cdot \cos k\right) \cdot \left({\ell}^{2} \cdot \cos k\right)\right) \cdot \left({\ell}^{2} \cdot \cos k\right)}}}}\]
    12. Simplified15.2

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

    if 1.347905859362174e-308 < (* l l) < 7.332829679811125e+307

    1. Initial program 45.0

      \[\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 15.6

      \[\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-*r*13.6

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

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

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

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

    if 7.332829679811125e+307 < (* l l)

    1. Initial program 62.3

      \[\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 62.0

      \[\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-*r*62.0

      \[\leadsto \frac{2}{\frac{\color{blue}{\left(t \cdot {k}^{2}\right) \cdot {\left(\sin k\right)}^{2}}}{{\ell}^{2} \cdot \cos k}}\]
    5. Taylor expanded around 0 62.5

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{t \cdot {k}^{4}} - \frac{1}{3} \cdot \frac{{\ell}^{2}}{t \cdot {k}^{2}}}\]
    6. Simplified55.2

      \[\leadsto \color{blue}{\left(\frac{2}{{k}^{4}} - \frac{\frac{\frac{1}{3}}{k}}{k}\right) \cdot \left(\frac{\ell}{t} \cdot \ell\right)}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification17.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;\ell \cdot \ell \le 1.347905859362174 \cdot 10^{-308}:\\ \;\;\;\;\frac{2}{\sqrt[3]{{\left(\frac{k \cdot \left(t \cdot k\right)}{\cos k} \cdot \left(\frac{\sin k}{\ell} \cdot \frac{\sin k}{\ell}\right)\right)}^{3}}}\\ \mathbf{elif}\;\ell \cdot \ell \le 7.332829679811125 \cdot 10^{+307}:\\ \;\;\;\;\frac{2}{\frac{{\left(\sin k\right)}^{2}}{\cos k} \cdot \frac{k \cdot \left(t \cdot k\right)}{{\ell}^{2}}}\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{2}{{k}^{4}} - \frac{\frac{\frac{1}{3}}{k}}{k}\right) \cdot \left(\ell \cdot \frac{\ell}{t}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019008 +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.5m)Debug log

sample1.2s

Algorithm
intervals

simplify459.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

459.0ms
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1)))

prune27.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 46.6b

localize55.0ms

Local error

Found 4 expressions with local error:

34.2b
(* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1))
12.9b
(/ (pow t 3) (* l l))
3.1b
(- (+ 1 (pow (/ k t) 2)) 1)
0.8b
(* (/ (pow t 3) (* l l)) (sin k))

rewrite107.0ms

Algorithm
rewrite-expression-head
Counts
4 → 118
Calls

4 calls. Slowest were:

86.0ms
(* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1))
9.0ms
(- (+ 1 (pow (/ k t) 2)) 1)
6.0ms
(* (/ (pow t 3) (* l l)) (sin k))

series439.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

330.0ms
(* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1))
66.0ms
(* (/ (pow t 3) (* l l)) (sin k))
23.0ms
(- (+ 1 (pow (/ k t) 2)) 1)
20.0ms
(/ (pow t 3) (* l l))

simplify18.5s

Counts
90 → 130
Calls

90 calls. Slowest were:

1.3s
(* (* (* (pow t 3) (sin k)) (sin k)) (- (+ 1 (pow (/ k t) 2)) 1))
1.0s
(cbrt (- (+ 1 (pow (/ k t) 2)) 1))
1.0s
(sqrt (- (+ 1 (pow (/ k t) 2)) 1))

prune2.1s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 18.6b

localize28.0ms

Local error

Found 4 expressions with local error:

19.4b
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
6.2b
(* t (* (pow k 2) (pow (sin k) 2)))
0.4b
(/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))
0.4b
(pow (sin k) 2)

rewrite18.0ms

Algorithm
rewrite-expression-head
Counts
4 → 65
Calls

4 calls. Slowest were:

10.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
5.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))))

series995.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

621.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
272.0ms
(/ 2 (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))
79.0ms
(* t (* (pow k 2) (pow (sin k) 2)))
24.0ms
(pow (sin k) 2)

simplify5.6s

Counts
32 → 77
Calls

32 calls. Slowest were:

619.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
559.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
509.0ms
(cbrt (/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k))))

prune1.3s

Pruning

16 alts after pruning (16 fresh and 0 done)

Merged error: 14.7b

localize22.0ms

Local error

Found 4 expressions with local error:

19.4b
(/ (* (* t (pow k 2)) (pow (sin k) 2)) (* (pow l 2) (cos k)))
5.8b
(* t (pow k 2))
0.4b
(/ 2 (/ (* (* t (pow k 2)) (pow (sin k) 2)) (* (pow l 2) (cos k))))
0.4b
(pow (sin k) 2)

rewrite24.0ms

Algorithm
rewrite-expression-head
Counts
4 → 79
Calls

4 calls. Slowest were:

20.0ms
(/ (* (* t (pow k 2)) (pow (sin k) 2)) (* (pow l 2) (cos k)))
1.0ms
(/ 2 (/ (* (* t (pow k 2)) (pow (sin k) 2)) (* (pow l 2) (cos k))))
1.0ms
(* t (pow k 2))

series497.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

236.0ms
(/ 2 (/ (* (* t (pow k 2)) (pow (sin k) 2)) (* (pow l 2) (cos k))))
221.0ms
(/ (* (* t (pow k 2)) (pow (sin k) 2)) (* (pow l 2) (cos k)))
26.0ms
(* t (pow k 2))
15.0ms
(pow (sin k) 2)

simplify5.5s

Counts
46 → 91
Calls

46 calls. Slowest were:

532.0ms
(/ (* (* (* (* t (pow k 2)) (* t (pow k 2))) (* t (pow k 2))) (* (* (pow (sin k) 2) (pow (sin k) 2)) (pow (sin k) 2))) (* (* (* (pow l 2) (cos k)) (* (pow l 2) (cos k))) (* (pow l 2) (cos k))))
498.0ms
(/ (* (* (* (* t (pow k 2)) (* t (pow k 2))) (* t (pow k 2))) (* (* (pow (sin k) 2) (pow (sin k) 2)) (pow (sin k) 2))) (* (* (* (pow l 2) (pow l 2)) (pow l 2)) (* (* (cos k) (cos k)) (cos k))))
491.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))))

prune1.4s

Pruning

17 alts after pruning (17 fresh and 0 done)

Merged error: 11.6b

localize28.0ms

Local error

Found 4 expressions with local error:

19.4b
(/ (* (* (* t k) k) (pow (sin k) 2)) (* (pow l 2) (cos k)))
0.4b
(/ 2 (/ (* (* (* t k) k) (pow (sin k) 2)) (* (pow l 2) (cos k))))
0.4b
(pow (sin k) 2)
0.2b
(* (pow l 2) (cos k))

rewrite37.0ms

Algorithm
rewrite-expression-head
Counts
4 → 85
Calls

4 calls. Slowest were:

24.0ms
(/ (* (* (* t k) k) (pow (sin k) 2)) (* (pow l 2) (cos k)))
7.0ms
(* (pow l 2) (cos k))
3.0ms
(/ 2 (/ (* (* (* t k) k) (pow (sin k) 2)) (* (pow l 2) (cos k))))

series562.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

279.0ms
(/ 2 (/ (* (* (* t k) k) (pow (sin k) 2)) (* (pow l 2) (cos k))))
230.0ms
(/ (* (* (* t k) k) (pow (sin k) 2)) (* (pow l 2) (cos k)))
38.0ms
(* (pow l 2) (cos k))
15.0ms
(pow (sin k) 2)

simplify7.2s

Counts
51 → 97
Calls

51 calls. Slowest were:

779.0ms
(/ (* t (* (pow k 2) (pow (sin k) 2))) (* (pow l 2) (cos k)))
601.0ms
(/ (* (* (* (* (* t k) k) (pow (sin k) 2)) (* (* (* t k) k) (pow (sin k) 2))) (* (* (* t k) k) (pow (sin k) 2))) (* (* (* (pow l 2) (pow l 2)) (pow l 2)) (* (* (cos k) (cos k)) (cos k))))
577.0ms
(/ (* (* (* (* (* t k) k) (* (* t k) k)) (* (* t k) k)) (* (* (pow (sin k) 2) (pow (sin k) 2)) (pow (sin k) 2))) (* (* (* (pow l 2) (pow l 2)) (pow l 2)) (* (* (cos k) (cos k)) (cos k))))

prune1.3s

Pruning

18 alts after pruning (18 fresh and 0 done)

Merged error: 10.9b

regimes793.0ms

Accuracy

29.9% (5.6b remaining)

Error of 17.5b against oracle of 11.8b and baseline of 19.9b

bsearch6.0ms

end0.0ms

sample39.1s

Algorithm
intervals