Predictive control for non-strictly proper and non-causal systems