https://en.wikipedia.org/wiki/Taylor_series
The Taylor series of a function is an infinite sum of terms that are expressed in terms of the function's derivatives at a single point.
Taylor series f(x[i+1]) = f(x[i]) + f'(x[i]) h + f''(x[i]) \frac{ h^2 }{ 2! } + ... + f^{(n)}(x[i]) \frac{ h^n }{ n! } + R_n, where x[i+1] = x[i]+h, R_n = O(h^{n+1}).
Mean value theorem f(x[i+1]) = f(x[i]) + f'(c) h, where c is between x[i] and x[i+1].
Approximation of 1st order derivative by forward difference f'(x[i]) = \frac{ f(x[i+1]) - f(x[i]) }{ h } + O(h). Approximation of 1st order derivative by backward difference f'(x[i]) = \frac{ f(x[i]) - f(x[i-1]) }{ h } + O(h). Approximation of 1st order derivative by central difference f(x[i+1]) = f(x[i]) + f'(x[i])h + f''(x[i]) h^2/2 + f^{(3)}(c1) h^3/(3!), f(x[i-1]) = f(x[i]) - f'(x[i])h + f''(x[i]) h^2/2 - f^{(3)}(c2) h^3/(3!), where c1 is between x[i] and x[i+1]. c2 is between x[i-1] and x[i]. Subtracting f(x[i+1]) - f(x[i-1]) = f'(x[i]) 2h + f^{(3)}(c3) 2h^3/(3!), where c3 is between c2 and c1. Rearanging f'(x[i]) = \frac{ f(x[i+1]) - f(x[i-1]) }{ 2h } + O(h^2). [better]
Forward difference f(x[i+2]) = f(x[i]) + f'(x[i])2h + f''(x[i]) 2h^2 + O(h^3). 4f(x[i+1]) = 4f(x[i]) + f'(x[i])4h + f''(x[i]) 2h^2 + O(h^3). Subtracting 4f(x[i+1]) - f(x[i+2]) = 3f(x[i]) + f'(x[i]) 2h + O(h^3). Rearanging f'(x[i]) = \frac{ -f(x[i+2]) + 4f(x[i+1]) - 3f(x[i]) }{ 2h } + O(h^2).
Backward difference f(x[i-2]) = f(x[i]) - f'(x[i]) 2h + f''(x[i]) 2h^2 + O(h^3). 4f(x[i-1]) = 4f(x[i]) - f'(x[i]) 4h + f''(x[i]) 2h^2 + O(h^3). Subtracting 4f(x[i-1]) - f(x[i-2]) = 3f(x[i]) - f'(x[i]) 2h + O(h^3). Rearanging f'(x[i]) = \frac{ 3f(x[i]) - 4f(x[i-1]) + f(x[i-2]) }{ 2h } + O(h^2).
2nd order forward difference f(x[i+2]) = f(x[i]) + f'(x[i]) 2h + f''(x[i]) 2h^2 + O(h^3). 2f(x[i+1]) = 2f(x[i]) + f'(x[i]) 2h + f''(x[i]) h^2 + O(h^3). Subtracting yields f(x[i+2]) - 2f(x[i+1]) = -f(x[i]) + f''(x[i]) h^2 + O(h^3). Rearanging f''(x[i]) = \frac{ f(x[i+2]) - 2f(x[i+1]) + f(x[i]) }{ h^2 } + O(h).
2nd order backward difference f(x[i-2]) = f(x[i]) - f'(x[i]) 2h + f''(x[i]) 2h^2 + O(h^3). 2f(x[i-1]) = 2f(x[i]) - f'(x[i]) 2h + f''(x[i]) h^2 + O(h^3). Subtracting yields f(x[i-2]) - 2f(x[i-1]) = -f(x[i]) + f''(x[i]) h^2 + O(h^3). Rearanging f''(x[i]) = \frac{ f(x[i]) - 2f(x[i-1]) + f(x[i-2]) }{ h^2 } + O(h).
2nd order central difference f(x[i+1]) = f(x[i]) + f'(x[i])h + f''(x[i]) h^2/2 + f^{(3)}(x[i]) h^3/(3!) + O(h^4). f(x[i-1]) = f(x[i]) - f'(x[i])h + f''(x[i]) h^2/2 - f^{(3)}(x[i]) h^3/(3!) + O(h^4). Adding f(x[i+1]) + f(x[i-1]) = 2f(x[i]) + f''(x[i]) h^2 + O(h^4). Rearanging f''(x[i]) = \frac{ f(x[i+1]) - 2f(x[i]) + f(x[i-1]) }{ h^2 } + O(h^2). [better]