This is a self-contained exposition of several core aspects of the theory of rational polyhedra with a view towards algorithmic applications to efficient counting of integer points, a problem arising in many areas of pure and applied mathematics. The approach is based on the consistent development and application of the apparatus of generating functions and the algebra of polyhedra. Topics range from classical, such as the Euler characteristic, continued fractions, Ehrhart polynomial, Minkowski Convex Body Theorem, and the Lenstra– Lenstra–Lovász lattice reduction algorithm, to recent advances such as the Berline–Vergne local formula.
The text is intended for graduate students and researchers. Prerequisites are a modest background in linear algebra and analysis as well as some general mathematical maturity. Numerous figures, exercises of varying degree of difficulty as well as references to the literature and publicly available software make the text suitable for a graduate course.