Skip to content

Commit bd63ad3

Browse files
committed
Fixes
1 parent 92f314c commit bd63ad3

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

src/Bridges/bridge_optimizer.jl

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ function MOI.delete(b::AbstractBridgeOptimizer, vi::MOI.VariableIndex)
240240
if is_bridged(b, vi)
241241
MOI.throw_if_not_valid(b, vi)
242242
if Variable.length_of_vector_of_variables(Variable.bridges(b), vi) > 1
243-
if Variable.constrained_set(Variable.bridges(b), vi) <: MOIU.DimensionUpdatableSets
243+
if MOI.supports_dimension_update(Variable.constrained_set(Variable.bridges(b), vi))
244244
MOI.delete(b, bridge(b, vi), _index(b, vi)...)
245245
else
246246
MOIU.throw_delete_variable_in_vov(vi)
@@ -534,7 +534,7 @@ function MOI.get(b::AbstractBridgeOptimizer, attr::MOI.ConstraintSet,
534534
# The function constant of the bridged function was moved to the set,
535535
# we need to remove it.
536536
if is_bridged(b, ci)
537-
func = MOI.get(b, MOI.ConstraintFunction(), bridge(b, c))
537+
func = MOI.get(b, MOI.ConstraintFunction(), bridge(b, ci))
538538
else
539539
func = MOI.get(b.model, MOI.ConstraintFunction(), ci)
540540
end
@@ -1007,6 +1007,10 @@ function unbridged_constraint_function(b::AbstractBridgeOptimizer,
10071007
end
10081008
return f
10091009
end
1010+
function unbridged_constraint_function(
1011+
::AbstractBridgeOptimizer, func::MOI.AbstractVectorFunction)
1012+
return func
1013+
end
10101014

10111015

10121016
# TODO add transform

test/Bridges/Constraint/slack.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ config = MOIT.TestConfig()
7878

7979
for T in [Int, Float64], S in [MOI.GreaterThan{T}, MOI.GreaterThan{T}]
8080
for F in [MOI.ScalarAffineFunction{T}, MOI.ScalarQuadraticFunction{T}]
81-
@test MOIB.added_constraint_types(MOIB.Constraint.ScalarSlackBridge{T, F, S}) == [(F, MOI.EqualTo{T}), (MOI.SingleVariable, S)]
81+
@test MOIB.added_constraint_types(MOIB.Constraint.ScalarSlackBridge{T, F, S}) == [(F, MOI.EqualTo{T})]
8282
end
8383
end
8484
end
@@ -146,7 +146,7 @@ end
146146

147147
for T in [Int, Float64], S in [MOI.Nonnegatives, MOI.Nonpositives]
148148
for F in [MOI.VectorAffineFunction{T}, MOI.VectorQuadraticFunction{T}]
149-
@test MOIB.added_constraint_types(MOIB.Constraint.VectorSlackBridge{T, F, S}) == [(F, MOI.Zeros), (MOI.VectorOfVariables, S)]
149+
@test MOIB.added_constraint_types(MOIB.Constraint.VectorSlackBridge{T, F, S}) == [(F, MOI.Zeros)]
150150
end
151151
end
152152
end

test/Bridges/Variable/rsoc_to_psd.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ bridged_mock = MOIB.Variable.RSOCtoPSD{Float64}(mock)
2828
@test length(v) == 4
2929

3030
message = string("Cannot delete variable as it is constrained with other",
31-
" other variables in a `MOI.VectorOfVariables`.")
31+
" variables in a `MOI.VectorOfVariables`.")
3232
for i in 1:4
3333
err = MOI.DeleteNotAllowed(v[i], message)
3434
@test_throws err MOI.delete(bridged_mock, v[i])

0 commit comments

Comments
 (0)