Explains steps, correctness, efficiency and complexity.