This paper presents a general, self-contained treatment of convexity or intersection cuts. It describes two equivalent ways of generating a cut — via a convex set or a concave function — and a notion of strong cuts. We then characterize the structure of the sets and functions that generate strong cuts. We then specialize the framework to the case of mixed-integer linear programming (MIP). For t...