Describir: Nonlinear programming: theory and algorithms