Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Sigpy is for signomial and polynomial optimization

For Signomials, it implements the SAGE hierarchy as described by Chandrasekaran and Shah:

For Polynomials, it uses the idea of a "signomial representative" to produce global lower bounds as described in my recent paper: The result is a theoretically and practically efficient method for computing lower bounds on polynomials, and is especially well-suited to sparse polynomials or polynomials of high degree. The bounds returned are always at least as strong as those computed by "SONC" as in, and can be stronger. Additional documentation for this sub-package of sigpy is on the way!

To install

  1. Download this repository. If needed, change your directory so that you are in the same directory as sigpy's file. Activate the Python virtual environment of your choice. (Please do not install this directly to your system's Python distribution!)
  2. Run python install, so as to install sigpy to your current Python environment.
  3. Run python -c "import sigpy; print(sigpy.__version__)" to verify that sigpy installed correctly.
  4. [Optional] Run python tests/ to verify behavior of Signomial objects, and python tests/ to verify behavior of CVXPY implementations of SAGE relaxations.


Soon we will have a dedicated collection of examples hosted on this repository. For now, there are two places to look:

  1. Functions in tests/ and tests/
  2. The second set of slides under "Newton Polytopes and Relative Entropy Optimization" at my website.
You can’t perform that action at this time.