SMS: The calculus of finite differences.