# SOS Julia Newton Polytopes

**URL:** https://discourse.julialang.org/t/sos-julia-newton-polytopes/101369
**Category:** Optimization (Mathematical)
**Tags:** jump, newton
**Created:** [July 8, 2023, 9:08pm UTC](https://discourse.julialang.org/t/sos-julia-newton-polytopes/101369 "2023-07-08T21:08:57Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![ilovemath](https://avatars.discourse-cdn.com/v4/letter/i/a88e4f/32.png) [@ilovemath](https://discourse.julialang.org/u/ilovemath)
#### Post date: [July 8, 2023, 9:08pm UTC](https://discourse.julialang.org/t/sos-julia-newton-polytopes/101369/1 "2023-07-08T21:08:58Z")

</div>

I am trying to investigate the details in which Newton polytope reduction is being incorporated in the sum of squares constraints for SumOfSquares/JuMP.

Firstly, is the Newton polytope reduction being exploited automatically? I believe this to be so if I do not impose any symmetries (e.g., imposing the constraint `@constraint(model, (constraint), certificate=Certificate.Newton(SOSCone(), MB.MonomialBasis, tuple()))` yields the same number of constraints, scalars, and linear matrix variables being handed to my chosen solver as if I had implemented ` @constraint(model, (constraint))`, and the bases are the same), but I noticed that in the sparsity.SignSymmetry code it appears to be enforcing the Newton polytope restrictions explicitly (the function “sparsity” in sign.jl in the SumOfSquares Github repo).

Secondly, in my Julia/SumOfSquares installation multiple certificate options, including Certificate.NewtonDegreeBounds, are not available. Is this supposed to be the case for the latest SumOfSquares software, or do I need to unload and reload SumOfSquares due to some strange import glitch? Any illumination on these hopefully simple questions would be greatly appreciated.
