  Lambda-calculi come with no fixed evaluation strategy. Different strategies
may then be considered, and it is important that they satisfy some abstract
rewriting property, such as factorization or normalization theorems.
  In this paper we provide simple proof techniques for these theorems. Our
starting point is a revisitation of Takahashi's technique to prove
factorization for head reduction. Our technique is both simpler and more
powerful, as it works in cases where Takahishi's does not. We then pair
factorization with two other abstract properties, defining \emph{essential
systems}, and show that normalization follows. Concretely, we apply the
technique to four case studies, two classic ones, head and the
leftmost-outermost reductions, and two less classic ones, non-deterministic
weak call-by-value and least-level reductions.
