size_linear correctness and running time