Convergence of Sequential Quadratic Programming (SQP)

My question is regarding Sequential Quadratic Programming (SQP) for nonlinear programming problem. I am new to SQP algorithm, but I hope to get some advice and learn more about SQP. I am investigating the problem with linear objective function, quadratic equality constraints, and box constraints, given as below: \begin{align} \underset{x,u}{\mathrm{min}} &\,\,\, q^\top x\\ \mathrm{s.t.} &\,\,\, x^\top P x + p^\top x - b = 0,\\ &\,\,\, x \geq 0, \end{align} where $$P$$ is not necessarily positive (semi)definite. To solve the above problem, I am trying to apply sequential quadratic programming (SQP). But, from my studying, it requires a certain assumptions for convergence, including the following statement:

The Hessian of the Lagrangian with respect to $$x$$ is positive definite on the null space of $$G(x^∗)^\top$$, i.e. $$d^\top H \mathcal{L}^* d > 0$$ for all $$d \neq 0$$ such that $$G(x^∗)^\top d = 0$$ where $$\mathcal{L}$$ is the Lagrangian function, $$H\mathcal{L}$$ denotes Hessian of the Lagrangian function, $$\mathcal{L}^* = \mathcal{L}(x^*,\lambda^*)$$, and $$G(x) := [\nabla h_1(x), \ldots, \nabla h_m(x)]$$.

Regarding the problem, I have two questions.

1. Will SQP converge for the above problem even if the Hessian of the Lagrangian function is not positive definite?

2. The second question is more fundamental question regarding the SQP algorithm itself. In SQP algorithm, $$H \mathcal{L}$$ is approximated using some methods, e.g., Broyden-Fletcher-Goldfarb-Shanno (BFGS). Why do we need to approximate Hessian of the Lagrangian function? For example, in the above problem, I think we can get an explicit expression for the Lagrangian function as well as Hessian of the Lagrangian function.

There's a couple of things going, so we need to disambiguate them. First, it's important to realize that SQP isn't exactly a singular algorithm, but a general idea that can be implemented in multiple ways. For example, one version of SQP is to simply take a quadratic approximation of the Lagrangian and a linear approximation of the constraints and to iteratively solve the optimality conditions. Another version can splits each optimization step into two pieces, a step to feasibilty (quasi-normal step), and a step to optimality (tangential step.) Both of these are SQP, but they are also different algorithms. In addition, there are different globalization strategies that can be considered such as trust-region versus line-search. Each one of these choices results in different algorithms. Alternatively, there's a choice of which merit function to use such as differentiable versus non-differentiable. Maybe we want to use a filter method. Also, layered on this decision is whether something like a second-order correction step is or is not taken. Each one of these decisions leads to a slightly different algorithm. This is important because it takes us to the first question.

1. Generally speaking, it's not exactly right to ask whether or not SQP converges. We could be a little more precise and ask does a particular variety of SQP converge, but this isn't really the right question either. It's really more proper to ask whether the particular globalization scheme chosen for a particular SQP algorithm guarantees convergence from an arbitrary starting point. For the most part, the choice boils down to trust-region vs line-search and merit functions vs filter method. It's not entirely that simply, but it's mostly that. For example, IPOPT uses a line-search with a filter method. NITRO uses trust-region with a non-differentiable merit function. Both are SQP and both converge.