splitting methods for reducing complexity