Differentiable Optimization and Equation Solving by John Nazareth