I’m currently reading the documentation of MathProgBase from top to bottom and back again and having a look on some implementations of solvers.

As far as I understood it:

JuMP divides a problem into different categories like LP,Conic and NLP and gives different parameters to MathProgBase based on that. For linear that’s a matrix A a vector b and so on.

For NLP this is kind of an expression of f(x) and g(x) and some other stuff.

Actually I’m not really understanding where the types of each variable are stored.

I get the number of variables and its upper and lower bounds but that’s all. I tried to understand the Pajarito solver but there it seems to be somewhere between `loadproblem!`

and `optimize!`

. I thought there is kind of nothing in between besides from `initialize`

but it doesn’t seem to happen there.

Thanks for any help and maybe you also have some tutorial or documentation or another solver where I might be able to get some information.