MathOptInterface and Symbolics.jl

In the announcement for Symbolics.jl, JuMP is mentioned due to its independent implementation of symbolic variables and expressions.

Is it feasible to refactor/rewrite MathOptInterface to use Symbolics.jl variables and expressions? If not, what are the technical limitations that preclude it?

If a rewrite is feasible, would it make sense to refactor MOI bridges to use SymbolicUtils.jl’s expression rewriting capabilities?

It doesn’t need a rewrite. MOI can be targeted by lowered Symbolics expressions. GalacticOptim.jl can do it, and that’s probably a good next step for the library.