Skip to content

add dual relative entropy cone and bridge - #3049

Merged
odow merged 8 commits into
jump-dev:masterfrom
araujoms:dualrelativeentropy
Aug 14, 2026
Merged

add dual relative entropy cone and bridge#3049
odow merged 8 commits into
jump-dev:masterfrom
araujoms:dualrelativeentropy

Conversation

@araujoms

@araujoms araujoms commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Part of #3037

Basic

  • Add a new AbstractScalarSet or AbstractVectorSet to src/sets.jl
  • If isbitstype(S) == false, implement Base.copy(set::S)
  • If isbitstype(S) == false, implement Base.:(==)(x::S, y::S)
  • If an AbstractVectorSet, implement dimension(set::S), unless the
    dimension is given by set.dimension.
  • Ensure the set does not contain references to any variables or constraints

Utilities

  • If an AbstractVectorSet, implement Utilities.set_dot,
    unless the dot product between two vectors in the set is equivalent to
    LinearAlgebra.dot
  • If an AbstractVectorSet, implement Utilities.set_with_dimension in
    src/Utilities/matrix_of_constraints.jl
  • Add the set to the @model macro at the bottom of src/Utilities.model.jl

Documentation

  • Add a docstring, which gives the mathematical definition of the set,
    along with an ## Example block containing a jldoctest
  • Add the docstring to docs/src/reference/standard_form.md
  • Add the set to the relevant table in docs/src/manual/standard_form.md

Tests

  • Define a new _set(::Type{S}) method in src/Test/test_basic_constraint.jl
    and add the name of the set to the list at the bottom of that files
  • If the set has any checks in its constructor, add tests to test/sets.jl

MathOptFormat

Optional

  • Implement dual_set(::S) and dual_set_type(::Type{S})
  • Add new tests to the Test submodule exercising your new set
  • Add new bridges to convert your set into more commonly used sets

Comment thread src/Test/test_conic.jl

@odow odow left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Test failures are not your fault: JuliaCollections/OrderedCollections.jl#172

@odow
odow merged commit 0f35c1c into jump-dev:master Aug 14, 2026
23 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants