Discrete nonlinear control