Cut-Elimination: Syntax and Semantics