Optimization By Vector Space Methods by David G. Luenberger