Convex optimization is one of the main applications of the theory of convexity and Legendre–Fenchel duality is a basic tool, making more flexible the approach of many concrete problems. The diet problem, the transportation problem, and the optimal assignment problem are among the many problems that during the Second World War and immediately after led L. Kantorovich, T. C. Koopmans, F. L. Hitchcock, and G. B. Danzig to develop the mathematical theory of linear programming. Soon it was realized that most results extend to the framework of convex functions, which marked the birth of convex programming. Later on, W. Fenchel, R. T. Rockafellar, and J. J. Moreau laid the foundations of convex analysis.