Using JuMP, I am getting the return code INFEASIBLE_OR_UNBOUNDED, but in my case, knowing whether the problem is feasible is important. I.e. I should be handling an unbounded problem differently from an infeasible one. Is there any way to determine which it is? In case it is relevant, I am using GLPK as the optimizer.

You can set the objective to zero with @objective(model, Min, 0). The status might then change and if it is still INFEASIBLE_OR_UNBOUNDED, as you know it is now unbounded, you know it’s infeasible.

Thanks for the response! I’ll give it a try.