Based on undergraduate teaching to students in computer science, economics and mathematics at Aarhus University, this is an elementary introduction to convex sets and convex functions with emphasis on concrete computations and examples.Starting from linear inequalities and Fourier-Motzkin elimination, the theory is developed by introducing polyhedra, the double description method and the simplex algorithm, closed convex subsets, convex functions of one and several variables ending with a chapter on convex optimization with the Karush-Kuhn-Tucker conditions, duality and an interior point algorithm. Study Guide here