.. _spkg_dsdp:

dsdp: Semidefinite programming solver
=====================================

Description
-----------

Implementation of an interior-point method for semidefinite
programming. It provides primal and dual solutions, exploits low-rank
structure and sparsity in the data, and has relatively low memory
requirements for an interior-point method. It allows feasible and
infeasible starting points and provides approximate certificates of
infeasibility when no feasible solution exists. The dual-scaling
algorithm implemented in this package has a convergence proof and
worst-case polynomial complexity under mild assumptions on the data.


License
-------

Permissive open source license
https://www.mcs.anl.gov/hs/software/DSDP/Copyright.txt


Upstream Contact
----------------

https://www.mcs.anl.gov/hs/software/DSDP/

Type
----

optional


Dependencies
------------

- $(BLAS)
- :ref:`spkg_cmake`

Version Information
-------------------

package-version.txt::

    5.8


Equivalent System Packages
--------------------------

arch:

.. CODE-BLOCK:: bash

    $ sudo pacman -S  dsdp


conda:

.. CODE-BLOCK:: bash

    $ conda install  dsdp


Debian/Ubuntu:

.. CODE-BLOCK:: bash

    $ sudo apt-get install  libdsdp-dev


Fedora/Redhat/CentOS:

.. CODE-BLOCK:: bash

    $ sudo yum install  DSDP-devel


freebsd:

.. CODE-BLOCK:: bash

    $ sudo pkg install math/dsdp


gentoo:

.. CODE-BLOCK:: bash

    $ sudo emerge sci-libs/dsdp


macports:
install the following packages: DSDP

See https://repology.org/project/dsdp/versions


However, these system packages will not be used for building Sage
because spkg-configure.m4 has not been written for this package;
see :issue:`27330`

