Average Error: 42.4 → 9.7
Time: 39.8s
Precision: 64
Internal Precision: 128
\[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;t \le -2.693333462834878 \cdot 10^{+18}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{\frac{t}{x}}{2 \cdot x} - \frac{t}{x}\right) \cdot \frac{2}{\sqrt{2}} - \left(\sqrt{2} \cdot t + \frac{\frac{t}{x}}{x} \cdot \frac{2}{\sqrt{2}}\right)}\\ \mathbf{elif}\;t \le 2.515008804416559 \cdot 10^{+112}:\\ \;\;\;\;\frac{\left(\left(\sqrt{\sqrt{2}} \cdot t\right) \cdot \sqrt{\sqrt[3]{\sqrt{2}}}\right) \cdot \left|\sqrt[3]{\sqrt{2}}\right|}{\sqrt{\left(2 \cdot \ell\right) \cdot \frac{\ell}{x} + \left(t \cdot t\right) \cdot \left(2 + \frac{4}{x}\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{t \cdot \left(\frac{\frac{2}{x}}{\sqrt{2}} + \sqrt{2}\right) + \frac{\frac{\frac{2}{x}}{x}}{\sqrt{2}} \cdot \left(t - \frac{t}{2}\right)}\\ \end{array}\]

Error

Bits error versus x

Bits error versus l

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if t < -2.693333462834878e+18

    1. Initial program 42.1

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around -inf 4.9

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \left(2 \cdot \frac{t}{\sqrt{2} \cdot {x}^{2}} + \left(t \cdot \sqrt{2} + 2 \cdot \frac{t}{\sqrt{2} \cdot x}\right)\right)}}\]
    3. Simplified4.9

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\frac{2}{\sqrt{2}} \cdot \left(\frac{\frac{t}{x}}{x \cdot 2} - \frac{t}{x}\right) - \left(\frac{\frac{t}{x}}{x} \cdot \frac{2}{\sqrt{2}} + \sqrt{2} \cdot t\right)}}\]

    if -2.693333462834878e+18 < t < 2.515008804416559e+112

    1. Initial program 39.2

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around -inf 18.7

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{2 \cdot {t}^{2} + \left(2 \cdot \frac{{\ell}^{2}}{x} + 4 \cdot \frac{{t}^{2}}{x}\right)}}}\]
    3. Simplified14.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}}\]
    4. Using strategy rm
    5. Applied add-sqr-sqrt14.6

      \[\leadsto \frac{\color{blue}{\left(\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}\right)} \cdot t}{\sqrt{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}\]
    6. Applied associate-*l*14.5

      \[\leadsto \frac{\color{blue}{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)}}{\sqrt{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}\]
    7. Using strategy rm
    8. Applied add-cube-cbrt14.5

      \[\leadsto \frac{\sqrt{\color{blue}{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \sqrt[3]{\sqrt{2}}}} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)}{\sqrt{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}\]
    9. Applied sqrt-prod14.6

      \[\leadsto \frac{\color{blue}{\left(\sqrt{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}} \cdot \sqrt{\sqrt[3]{\sqrt{2}}}\right)} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)}{\sqrt{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}\]
    10. Applied associate-*l*14.4

      \[\leadsto \frac{\color{blue}{\sqrt{\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}} \cdot \left(\sqrt{\sqrt[3]{\sqrt{2}}} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)\right)}}{\sqrt{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}\]
    11. Simplified14.4

      \[\leadsto \frac{\color{blue}{\left|\sqrt[3]{\sqrt{2}}\right|} \cdot \left(\sqrt{\sqrt[3]{\sqrt{2}}} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)\right)}{\sqrt{\frac{\ell}{x} \cdot \left(\ell \cdot 2\right) + \left(2 + \frac{4}{x}\right) \cdot \left(t \cdot t\right)}}\]

    if 2.515008804416559e+112 < t

    1. Initial program 52.1

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around inf 2.9

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot {x}^{2}} + \left(t \cdot \sqrt{2} + 2 \cdot \frac{t}{\sqrt{2} \cdot x}\right)\right) - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}}}\]
    3. Simplified2.9

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\frac{\frac{\frac{2}{x}}{x}}{\sqrt{2}} \cdot \left(t - \frac{t}{2}\right) + t \cdot \left(\sqrt{2} + \frac{\frac{2}{x}}{\sqrt{2}}\right)}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification9.7

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -2.693333462834878 \cdot 10^{+18}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{\frac{t}{x}}{2 \cdot x} - \frac{t}{x}\right) \cdot \frac{2}{\sqrt{2}} - \left(\sqrt{2} \cdot t + \frac{\frac{t}{x}}{x} \cdot \frac{2}{\sqrt{2}}\right)}\\ \mathbf{elif}\;t \le 2.515008804416559 \cdot 10^{+112}:\\ \;\;\;\;\frac{\left(\left(\sqrt{\sqrt{2}} \cdot t\right) \cdot \sqrt{\sqrt[3]{\sqrt{2}}}\right) \cdot \left|\sqrt[3]{\sqrt{2}}\right|}{\sqrt{\left(2 \cdot \ell\right) \cdot \frac{\ell}{x} + \left(t \cdot t\right) \cdot \left(2 + \frac{4}{x}\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{t \cdot \left(\frac{\frac{2}{x}}{\sqrt{2}} + \sqrt{2}\right) + \frac{\frac{\frac{2}{x}}{x}}{\sqrt{2}} \cdot \left(t - \frac{t}{2}\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2019008 
(FPCore (x l t)
  :name "Toniolo and Linder, Equation (7)"
  (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))

Details

Time bar (total: 38.5s)Debug log

sample351.0ms

Algorithm
intervals

simplify258.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

257.0ms
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))))

prune18.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 43.6b

localize46.0ms

Local error

Found 4 expressions with local error:

22.9b
(sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))
12.6b
(- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))
0.4b
(* (sqrt 2) t)
0.0b
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))))

rewrite44.0ms

Algorithm
rewrite-expression-head
Counts
4 → 66
Calls

4 calls. Slowest were:

21.0ms
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))))
11.0ms
(sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))
7.0ms
(- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))

series1.4s

Counts
4 → 12
Calls

4 calls. Slowest were:

959.0ms
(sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))
300.0ms
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))))
149.0ms
(- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))
28.0ms
(* (sqrt 2) t)

simplify8.1s

Counts
46 → 78
Calls

46 calls. Slowest were:

540.0ms
(- (+ (* 2 (pow t 2)) (+ (* 2 (* x (pow l 2))) (* 2 (pow l 2)))))
418.0ms
(- (* (sqrt -2) t) (+ (* 2 (/ (* t x) (sqrt -2))) (+ (* 2 (/ (* t (pow x 2)) (sqrt -2))) (* 2 (/ (* t (pow x 2)) (pow (sqrt -2) 3))))))
354.0ms
(sqrt (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l))))

prune1.2s

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 3.2b

localize40.0ms

Local error

Found 4 expressions with local error:

29.0b
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
0.8b
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
0.4b
(* (sqrt 2) t)
0.1b
(* (/ l x) (* l 2))

rewrite36.0ms

Algorithm
rewrite-expression-head
Counts
4 → 57
Calls

4 calls. Slowest were:

13.0ms
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
10.0ms
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
7.0ms
(* (/ l x) (* l 2))

series388.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

286.0ms
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
41.0ms
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
40.0ms
(* (sqrt 2) t)
21.0ms
(* (/ l x) (* l 2))

simplify3.2s

Counts
33 → 69
Calls

33 calls. Slowest were:

577.0ms
(* (* (* (/ l x) (/ l x)) (/ l x)) (* (* (* l 2) (* l 2)) (* l 2)))
446.0ms
(sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))))
360.0ms
(+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t))))

prune934.0ms

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 2.4b

localize22.0ms

Local error

Found 4 expressions with local error:

29.0b
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
0.8b
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
0.4b
(* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t))
0.2b
(* (sqrt (sqrt 2)) t)

rewrite50.0ms

Algorithm
rewrite-expression-head
Counts
4 → 61
Calls

4 calls. Slowest were:

20.0ms
(* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t))
13.0ms
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
10.0ms
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))

series401.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

261.0ms
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
59.0ms
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
58.0ms
(* (sqrt (sqrt 2)) t)
23.0ms
(* (sqrt (sqrt 2)) (* (sqrt (sqrt 2)) t))

simplify3.4s

Counts
38 → 73
Calls

38 calls. Slowest were:

474.0ms
(sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))))
389.0ms
(* x (- 2 (/ 4 x)))
359.0ms
(* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x)))))

prune1.1s

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 2.4b

localize37.0ms

Local error

Found 4 expressions with local error:

29.0b
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
0.8b
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))
0.3b
(* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t))
0.3b
(* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t)))

rewrite78.0ms

Algorithm
rewrite-expression-head
Counts
4 → 68
Calls

4 calls. Slowest were:

36.0ms
(* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t)))
17.0ms
(* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t))
13.0ms
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))

series1.4s

Counts
4 → 12
Calls

4 calls. Slowest were:

597.0ms
(* (fabs (cbrt (sqrt 2))) (* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t)))
563.0ms
(* (sqrt (cbrt (sqrt 2))) (* (sqrt (sqrt 2)) t))
216.0ms
(sqrt (+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t))))
41.0ms
(+ (* (/ l x) (* l 2)) (* (+ 2 (/ 4 x)) (* t t)))

simplify3.3s

Counts
45 → 80
Calls

45 calls. Slowest were:

401.0ms
(* x (+ (* 2 2) (- (* (/ 4 x) (/ 4 x)) (* 2 (/ 4 x)))))
398.0ms
(sqrt (+ (* (* l (* l 2)) (- 2 (/ 4 x))) (* x (* (- (* 2 2) (* (/ 4 x) (/ 4 x))) (* t t)))))
304.0ms
(* (exp (* (/ l x) (* l 2))) (exp (* (+ 2 (/ 4 x)) (* t t))))

prune1.4s

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 2.4b

regimes914.0ms

Accuracy

73.3% (6.4b remaining)

Error of 9.7b against oracle of 3.3b and baseline of 27.2b

bsearch1.2s

end0.0ms

sample9.2s

Algorithm
intervals