Having a finite sequence of double precision floating point numbers (obtained using the fixed point iteration of a function), is there any algorithm which can be used to determine that this sequence is eventually convergent?
I tried to use the relative error between two consecutive elements, but this is not always working nice. For example, considering the fixed point iteration of $2*x/3$, with initial value $x_0 = 1/2$ the below sequence is produced, in which the relative error between two consecutive values is always $0.33$, although the absolute error is decreasing towards zero (but I think that the absolute error can't be used reliably with floating point numbers).
0: 0.333333
1: 0.222222
2: 0.148148
3: 0.098765
4: 0.065843
5: 0.043895
6: 0.029263
7: 0.019509
8: 0.013006
9: 0.008670
10: 0.005780
11: 0.003853
12: 0.002569
13: 0.001712
14: 0.001141
15: 0.000761
16: 0.000507
17: 0.000338
18: 0.000225
19: 0.000150
20: 0.000100