1- struct DiagonallyDominantBridge{T, F, G} <: MOIB .Constraint.AbstractBridge
1+ struct DiagonallyDominantBridge{T, F, G} <: MOI.Bridges .Constraint.AbstractBridge
22 # |Qij| variables
33 abs_vars:: Vector{MOI.VariableIndex}
44 # |Qij| ≥ +Qij
@@ -11,15 +11,15 @@ struct DiagonallyDominantBridge{T, F, G} <: MOIB.Constraint.AbstractBridge
1111 dominance:: Vector{MOI.ConstraintIndex{F, MOI.GreaterThan{T}}}
1212end
1313
14- function MOIB . Constraint. bridge_constraint (
14+ function MOI . Bridges . Constraint. bridge_constraint (
1515 :: Type{DiagonallyDominantBridge{T, F, G}} ,
1616 model:: MOI.ModelLike , f:: MOI.AbstractVectorFunction ,
1717 s:: SOS.DiagonallyDominantConeTriangle ) where {T, F, G}
1818
1919 @assert MOI. output_dimension (f) == MOI. dimension (s)
2020 n = s. side_dimension
2121 g = F[zero (F) for i in 1 : n]
22- fs = MOIU . eachscalar (f)
22+ fs = MOI . Utilities . eachscalar (f)
2323 num_off_diag = MOI. dimension (s) - n
2424 CI = MOI. ConstraintIndex{MOI. ScalarAffineFunction{T}, MOI. GreaterThan{T}}
2525 abs_vars = Vector {MOI.VariableIndex} (undef, num_off_diag)
@@ -35,15 +35,15 @@ function MOIB.Constraint.bridge_constraint(
3535 # abs ≥ |Qij|
3636 abs_vars[koff] = MOI. add_variable (model)
3737 fabs = abs_vars[koff]
38- MOIU . operate! (- , T, g[j], fabs)
39- MOIU . operate! (- , T, g[i], fabs)
38+ MOI . Utilities . operate! (- , T, g[j], fabs)
39+ MOI . Utilities . operate! (- , T, g[i], fabs)
4040 abs_plus[koff] = MOI. add_constraint (
41- model, MOIU . operate (+ , T, fabs, fs[k]), MOI. GreaterThan (0.0 ))
41+ model, MOI . Utilities . operate (+ , T, fabs, fs[k]), MOI. GreaterThan (0.0 ))
4242 abs_minus[koff] = MOI. add_constraint (
43- model, MOIU . operate (- , T, fabs, fs[k]), MOI. GreaterThan (0.0 ))
43+ model, MOI . Utilities . operate (- , T, fabs, fs[k]), MOI. GreaterThan (0.0 ))
4444 end
4545 k += 1
46- MOIU . operate! (+ , T, g[j], fs[k])
46+ MOI . Utilities . operate! (+ , T, g[j], fs[k])
4747 end
4848 dominance = map (f -> MOI. add_constraint (model, f, MOI. GreaterThan (0.0 )), g)
4949 return DiagonallyDominantBridge {T, F, G} (abs_vars, abs_plus, abs_minus,
@@ -55,23 +55,23 @@ function MOI.supports_constraint(::Type{<:DiagonallyDominantBridge},
5555 :: Type{<:SOS.DiagonallyDominantConeTriangle} )
5656 return true
5757end
58- function MOIB . added_constrained_variable_types (:: Type{<:DiagonallyDominantBridge} )
58+ function MOI . Bridges . added_constrained_variable_types (:: Type{<:DiagonallyDominantBridge} )
5959 return Tuple{DataType}[]
6060end
61- function MOIB . added_constraint_types (:: Type{<:DiagonallyDominantBridge{T, F}} ) where {T, F}
61+ function MOI . Bridges . added_constraint_types (:: Type{<:DiagonallyDominantBridge{T, F}} ) where {T, F}
6262 added = [(F, MOI. GreaterThan{T})]
6363 if F != MOI. ScalarAffineFunction{T}
6464 push! (added, (MOI. ScalarAffineFunction{T}, MOI. GreaterThan{T}))
6565 end
6666 return added
6767end
68- function MOIB . Constraint. concrete_bridge_type (
68+ function MOI . Bridges . Constraint. concrete_bridge_type (
6969 :: Type{<:DiagonallyDominantBridge{T}} ,
7070 G:: Type{<:MOI.AbstractVectorFunction} ,
7171 :: Type{SOS.DiagonallyDominantConeTriangle} ) where T
7272
73- S = MOIU . scalar_type (G)
74- F = MOIU . promote_operation (- , T, S, MOI. VariableIndex)
73+ S = MOI . Utilities . scalar_type (G)
74+ F = MOI . Utilities . promote_operation (- , T, S, MOI. VariableIndex)
7575 return DiagonallyDominantBridge{T, F, G}
7676end
7777
135135function MOI. get (model:: MOI.ModelLike , attr:: MOI.ConstraintFunction ,
136136 bridge:: DiagonallyDominantBridge{T, F, G} ) where {T, F, G}
137137 set = MOI. get (model, MOI. ConstraintSet (), bridge)
138- H = MOIU . scalar_type (G)
138+ H = MOI . Utilities . scalar_type (G)
139139 g = Vector {H} (undef, MOI. dimension (set))
140140 k = 0
141141 koff = 0
@@ -144,15 +144,15 @@ function MOI.get(model::MOI.ModelLike, attr::MOI.ConstraintFunction,
144144 k += 1
145145 koff += 1
146146 func = MOI. get (model, attr, bridge. abs_plus[koff])
147- g[k] = MOIU . convert_approx (H, MOIU . remove_variable (
147+ g[k] = MOI . Utilities . convert_approx (H, MOI . Utilities . remove_variable (
148148 func, bridge. abs_vars))
149149 end
150150 k += 1
151151 func = MOI. get (model, attr, bridge. dominance[j])
152- g[k] = MOIU . convert_approx (H, MOIU . remove_variable (
152+ g[k] = MOI . Utilities . convert_approx (H, MOI . Utilities . remove_variable (
153153 func, bridge. abs_vars))
154154 end
155- return MOIU . vectorize (g)
155+ return MOI . Utilities . vectorize (g)
156156end
157157
158158# TODO ConstraintPrimal
0 commit comments