.. _spkg_highs:

highs: Linear optimization solver
=================================

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

HiGHS is a high performance serial and parallel solver for large scale sparse
linear optimization problems of the form:

.. MATH::

    \min \, c^T x \quad \text{subject to} \quad L \leq Ax \leq U, \; l \leq x \leq u

where :math:`c`, :math:`x`, :math:`l`, :math:`u` are vectors,
:math:`L`, :math:`U` are constraint bound vectors, and :math:`A` is a matrix.

HiGHS has implementations of the dual revised simplex method, primal and dual
revised simplex solvers, an interior point solver, and a MIP solver.

This package builds the HiGHS C/C++ library with C API headers for use in
Sage's numerical backends.

License
-------

- MIT License

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

- https://github.com/ERGO-Code/HiGHS
- https://www.highs.dev
- Email: hello@highs.dev

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

- CMake (build dependency)

Special Update/Build Instructions
----------------------------------

The library is built using CMake and provides the C API interface
(highs_c_api.h) for integration with Sage's backend system.

Type
----

standard


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

- :ref:`spkg_cmake`

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

package-version.txt::

    1.14.0


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

.. tab:: Arch Linux

   .. CODE-BLOCK:: bash

       $ sudo pacman -S highs 


.. tab:: conda-forge

   .. CODE-BLOCK:: bash

       $ conda install highs 


.. tab:: Debian/Ubuntu

   .. CODE-BLOCK:: bash

       $ sudo apt-get install libhighs-dev highs 


.. tab:: Fedora/Redhat/CentOS

   .. CODE-BLOCK:: bash

       $ sudo dnf install coin-or-HiGHS coin-or-HiGHS-devel 


.. tab:: FreeBSD

   .. CODE-BLOCK:: bash

       $ sudo pkg install math/highs 


.. tab:: Gentoo Linux

   .. CODE-BLOCK:: bash

       $ sudo emerge sci-mathematics/highs 


.. tab:: Homebrew

   .. CODE-BLOCK:: bash

       $ brew install highs 


.. tab:: MacPorts

   .. CODE-BLOCK:: bash

       $ sudo port install HiGHS 


.. tab:: Nixpkgs

   .. CODE-BLOCK:: bash

       $ nix-env --install highs 


.. tab:: openSUSE

   .. CODE-BLOCK:: bash

       $ sudo zypper install HiGHS HiGHS-devel 



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

If the system package is installed, ``./configure`` will check if it can be used.

