Multi-Step Algorithms