Should we forbid dimension=0 for SOS sets? What does this even mean?
You could argue that throwing an error on MOI.SOS1(Float64[]) is a breaking change, but I don't really set a good reason why anyone would ever want to do it. There's also an argument for making dimension > 1 for SOS1, and dimension > 2 for SOS2...
julia> using JuMP
julia> model = Model();
julia> @constraint(model, VariableRef[] in SOS1())
[] ∈ MathOptInterface.SOS1{Float64}(Float64[])
Discuss...
Should we forbid dimension=0 for SOS sets? What does this even mean?
You could argue that throwing an error on
MOI.SOS1(Float64[])is a breaking change, but I don't really set a good reason why anyone would ever want to do it. There's also an argument for makingdimension > 1for SOS1, anddimension > 2for SOS2...Discuss...