Average Error: 0.0 → 0.0
Time: 5.8s
Precision: binary64
Cost: 1216
\[1 - \frac{1}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}\]
\[1 - \frac{1}{6 + \left(\frac{4}{1 + t} + -8\right) \cdot \frac{1}{1 + t}}\]
1 - \frac{1}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}
1 - \frac{1}{6 + \left(\frac{4}{1 + t} + -8\right) \cdot \frac{1}{1 + t}}
(FPCore (t)
 :precision binary64
 (-
  1.0
  (/
   1.0
   (+
    2.0
    (*
     (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t))))
     (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))))))))
(FPCore (t)
 :precision binary64
 (- 1.0 (/ 1.0 (+ 6.0 (* (+ (/ 4.0 (+ 1.0 t)) -8.0) (/ 1.0 (+ 1.0 t)))))))
double code(double t) {
	return 1.0 - (1.0 / (2.0 + ((2.0 - ((2.0 / t) / (1.0 + (1.0 / t)))) * (2.0 - ((2.0 / t) / (1.0 + (1.0 / t)))))));
}
double code(double t) {
	return 1.0 - (1.0 / (6.0 + (((4.0 / (1.0 + t)) + -8.0) * (1.0 / (1.0 + t)))));
}

Error

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Alternatives

Alternative 1
Error0.0
Cost13888
\[\log \left(e^{1 - \frac{1}{\frac{\frac{4}{1 + t} + -8}{1 + t} + 6}}\right)\]
Alternative 2
Error0.0
Cost9728
\[\frac{1 - {\left(\frac{1}{\frac{\frac{4}{1 + t} + -8}{1 + t} + 6}\right)}^{3}}{1 + \frac{1 + \frac{1}{\frac{\frac{4}{1 + t} + -8}{1 + t} + 6}}{\frac{\frac{4}{1 + t} + -8}{1 + t} + 6}}\]
Alternative 3
Error0.0
Cost2752
\[1 - \frac{1}{\frac{\frac{4}{1 + t} + -8}{1 + t} \cdot \frac{\frac{4}{1 + t} + -8}{1 + t} - 36} \cdot \left(\frac{\frac{4}{1 + t} + -8}{1 + t} - 6\right)\]
Alternative 4
Error0.0
Cost1856
\[1 - \frac{1}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}\]
Alternative 5
Error0.0
Cost1088
\[1 - \frac{1}{\frac{\frac{4}{1 + t} + -8}{1 + t} + 6}\]
Alternative 6
Error26.1
Cost960
\[1 - \frac{1}{6 + \frac{-8 + \frac{4}{t}}{1 + t}}\]
Alternative 7
Error26.2
Cost960
\[1 - \frac{1}{6 + \left(\frac{-8}{t} + \frac{12}{t \cdot t}\right)}\]
Alternative 8
Error31.2
Cost832
\[1 - \left(\left(\frac{0.2222222222222222}{t} + 0.16666666666666666\right) - \frac{0.037037037037037035}{t \cdot t}\right)\]
Alternative 9
Error31.2
Cost704
\[\frac{0.037037037037037035}{t \cdot t} + \left(0.8333333333333334 - \frac{0.2222222222222222}{t}\right)\]
Alternative 10
Error26.3
Cost576
\[1 - \frac{1}{6 + \frac{-8}{t}}\]
Alternative 11
Error31.2
Cost448
\[1 - \left(\frac{0.2222222222222222}{t} + 0.16666666666666666\right)\]
Alternative 12
Error26.3
Cost64
\[0.8333333333333334\]
Alternative 13
Error26.2
Cost64
\[0.5\]
Alternative 14
Error51.2
Cost64
\[1\]
Alternative 15
Error62.0
Cost64
\[0\]
Alternative 16
Error63.0
Cost64
\[-1\]

Error

Derivation

  1. Initial program 0.0

    \[1 - \frac{1}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}\]
  2. Simplified0.0

    \[\leadsto \color{blue}{1 - \frac{1}{\frac{\frac{4}{1 + t} + -8}{1 + t} + 6}}\]
  3. Using strategy rm
  4. Applied div-inv_binary64_680.0

    \[\leadsto 1 - \frac{1}{\color{blue}{\left(\frac{4}{1 + t} + -8\right) \cdot \frac{1}{1 + t}} + 6}\]
  5. Simplified0.0

    \[\leadsto \color{blue}{1 - \frac{1}{6 + \left(\frac{4}{1 + t} + -8\right) \cdot \frac{1}{1 + t}}}\]
  6. Final simplification0.0

    \[\leadsto 1 - \frac{1}{6 + \left(\frac{4}{1 + t} + -8\right) \cdot \frac{1}{1 + t}}\]

Reproduce

herbie shell --seed 2021042 
(FPCore (t)
  :name "Kahan p13 Example 3"
  :precision binary64
  (- 1.0 (/ 1.0 (+ 2.0 (* (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))) (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))))))))