Average Error: 42.3 → 9.5
Time: 53.9s
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 -1.553783986221834 \cdot 10^{+100}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(-t\right) \cdot \sqrt{2} + \frac{t}{x \cdot \sqrt{2}} \cdot -2}\\ \mathbf{elif}\;t \le -1.4322347372292155 \cdot 10^{-204}:\\ \;\;\;\;t \cdot \frac{\sqrt{2}}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\\ \mathbf{elif}\;t \le -6.832864618771794 \cdot 10^{-299}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(-t\right) \cdot \sqrt{2} + \frac{t}{x \cdot \sqrt{2}} \cdot -2}\\ \mathbf{elif}\;t \le 1.3114437315239944 \cdot 10^{-183}:\\ \;\;\;\;\frac{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\\ \mathbf{elif}\;t \le 1.1716671711905764 \cdot 10^{-156} \lor \neg \left(t \le 2.2244318270175734 \cdot 10^{+137}\right):\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{(\left(\frac{\frac{2}{x}}{\sqrt{2}}\right) \cdot t + \left(\sqrt{2} \cdot t\right))_*}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\\ \end{array}\]

Error

Bits error versus x

Bits error versus l

Bits error versus t

Derivation

  1. Split input into 5 regimes
  2. if t < -1.553783986221834e+100 or -1.4322347372292155e-204 < t < -6.832864618771794e-299

    1. Initial program 53.4

      \[\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. Initial simplification53.4

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

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

    if -1.553783986221834e+100 < t < -1.4322347372292155e-204

    1. Initial program 29.3

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

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

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

      \[\leadsto \frac{t \cdot \sqrt{2}}{\sqrt{\color{blue}{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}}\]
    5. Using strategy rm
    6. Applied *-un-lft-identity8.6

      \[\leadsto \frac{t \cdot \sqrt{2}}{\color{blue}{1 \cdot \sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}}\]
    7. Applied times-frac8.5

      \[\leadsto \color{blue}{\frac{t}{1} \cdot \frac{\sqrt{2}}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}}\]
    8. Simplified8.5

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

    if -6.832864618771794e-299 < t < 1.3114437315239944e-183

    1. Initial program 61.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. Initial simplification61.2

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

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

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

      \[\leadsto \frac{t \cdot \color{blue}{\left(\sqrt{\sqrt{2}} \cdot \sqrt{\sqrt{2}}\right)}}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\]
    7. Applied associate-*r*30.7

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

    if 1.3114437315239944e-183 < t < 1.1716671711905764e-156 or 2.2244318270175734e+137 < t

    1. Initial program 58.0

      \[\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. Initial simplification57.9

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

      \[\leadsto \frac{t \cdot \sqrt{2}}{\color{blue}{t \cdot \sqrt{2} + 2 \cdot \frac{t}{\sqrt{2} \cdot x}}}\]
    4. Simplified5.1

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

    if 1.1716671711905764e-156 < t < 2.2244318270175734e+137

    1. Initial program 24.5

      \[\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. Initial simplification24.5

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -1.553783986221834 \cdot 10^{+100}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(-t\right) \cdot \sqrt{2} + \frac{t}{x \cdot \sqrt{2}} \cdot -2}\\ \mathbf{elif}\;t \le -1.4322347372292155 \cdot 10^{-204}:\\ \;\;\;\;t \cdot \frac{\sqrt{2}}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\\ \mathbf{elif}\;t \le -6.832864618771794 \cdot 10^{-299}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(-t\right) \cdot \sqrt{2} + \frac{t}{x \cdot \sqrt{2}} \cdot -2}\\ \mathbf{elif}\;t \le 1.3114437315239944 \cdot 10^{-183}:\\ \;\;\;\;\frac{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot t\right)}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\\ \mathbf{elif}\;t \le 1.1716671711905764 \cdot 10^{-156} \lor \neg \left(t \le 2.2244318270175734 \cdot 10^{+137}\right):\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{(\left(\frac{\frac{2}{x}}{\sqrt{2}}\right) \cdot t + \left(\sqrt{2} \cdot t\right))_*}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{(2 \cdot \left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) + \left(\left(t \cdot 4\right) \cdot \frac{t}{x}\right))_*}}\\ \end{array}\]

Reproduce

herbie shell --seed 2018362 +o rules:numerics
(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.6s)Debug log

start934.0ms

Algorithm
intervals

setup594.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 43.4b

localize85.0ms

Local error

Found 4 expressions with local error:

19.9b
(sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l))))
14.6b
(fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))
0.4b
(* t (sqrt 2))
0.0b
(/ (* t (sqrt 2)) (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))))

rewrite19.0ms

Algorithm
rewrite-expression-head
Counts
4 → 64
Calls

4 calls. Slowest were:

9.0ms
(/ (* t (sqrt 2)) (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))))
4.0ms
(sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l))))
3.0ms
(* t (sqrt 2))

series713.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

338.0ms
(/ (* t (sqrt 2)) (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))))
234.0ms
(sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l))))
115.0ms
(fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))
25.0ms
(* t (sqrt 2))

simplify12.7s

Counts
39 → 76
Calls

39 calls. Slowest were:

691.0ms
(cbrt (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))))
626.0ms
(/ t (* (cbrt (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l))))) (cbrt (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l)))))))
623.0ms
(/ (sqrt 2) (cbrt (sqrt (fma (fma (* 2 t) t (* l l)) (/ (+ 1 x) (+ -1 x)) (* l (- l))))))

prune1.5s

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 3.6b

localize44.0ms

Local error

Found 4 expressions with local error:

25.5b
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
4.6b
(fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))
0.4b
(* t (sqrt 2))
0.1b
(/ (* t (sqrt 2)) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))

rewrite8.0ms

Algorithm
rewrite-expression-head
Counts
4 → 64
Calls

4 calls. Slowest were:

5.0ms
(/ (* t (sqrt 2)) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))
1.0ms
(* t (sqrt 2))
1.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))

series448.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

262.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
114.0ms
(/ (* t (sqrt 2)) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))
50.0ms
(fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))
22.0ms
(* t (sqrt 2))

simplify2.9s

Counts
39 → 76
Calls

39 calls. Slowest were:

160.0ms
(- (log (* t (sqrt 2))) (log (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))
158.0ms
(/ t (sqrt (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))
152.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))

prune1.3s

Pruning

8 alts after pruning (7 fresh and 1 done)

Merged error: 3.6b

localize12.0ms

Local error

Found 4 expressions with local error:

25.5b
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
4.6b
(fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))
0.4b
(/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))
0.2b
(* t (/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))

rewrite11.0ms

Algorithm
rewrite-expression-head
Counts
4 → 99
Calls

4 calls. Slowest were:

6.0ms
(/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))
3.0ms
(* t (/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))
2.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))

series571.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

258.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
153.0ms
(/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))
122.0ms
(* t (/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))
39.0ms
(fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))

simplify8.2s

Counts
86 → 111
Calls

86 calls. Slowest were:

194.0ms
(/ (* (* (sqrt 2) (sqrt 2)) (sqrt 2)) (* (* (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))
185.0ms
(/ (sqrt 2) (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))))
168.0ms
(- (log (sqrt 2)) (log (sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))

prune1.9s

Pruning

8 alts after pruning (6 fresh and 2 done)

Merged error: 3.6b

localize18.0ms

Local error

Found 4 expressions with local error:

25.5b
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
25.5b
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
25.5b
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
4.6b
(fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))

rewrite3.0ms

Algorithm
rewrite-expression-head
Counts
4 → 52
Calls

4 calls. Slowest were:

1.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
1.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
1.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))

series728.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

261.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
217.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
211.0ms
(sqrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))
39.0ms
(fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))

simplify1.2s

Counts
24 → 64
Calls

24 calls. Slowest were:

131.0ms
(sqrt (* (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))) (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))
114.0ms
(+ (* 2 (pow t 2)) (+ (* 2 (/ (pow l 2) x)) (* 4 (/ (pow t 2) x))))
106.0ms
(sqrt (* (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x)))) (cbrt (fma 2 (fma (/ l x) l (* t t)) (* (* t 4) (/ t x))))))

prune1.7s

Pruning

8 alts after pruning (5 fresh and 3 done)

Merged error: 3.6b

regimes362.0ms

Accuracy

76.7% (5.5b remaining)

Error of 9.5b against oracle of 4.0b and baseline of 27.6b

bsearch2.6s