This book is intended as a textbook to be used in a first graduate level course, and covers the fundamental principals of optimization in finite dimensions. It develops the necessary background material in multivariable calculus using coordinates as well as in a coordinate-free manner, so that the recent developments such as semi-definite programming can be dealt with ease. All the standard topics of mathematical programming, such as necessary...