jump-dev / jump-dev/MathOptInterface.jl

Dimension of SOS sets

Open
#3,074 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
504
Forks
101
Avg merge
6h 26m
Merged PRs (30d)
22

Description

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
julia> using JuMP

julia> model = Model();

julia> @constraint(model, VariableRef[] in SOS1())
[] ∈ MathOptInterface.SOS1{Float64}(Float64[])
```

Discuss...

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the MOI.SOS1(Float64[]) example and the SOS1/SOS2 dimension questions in the issue. Trace how these sets are represented and constructed, then clarify the intended validity rules and add coverage showing the resulting behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.