Content-type: text/html; charset=UTF-8
lrs(1) converts an H-representation of a polyhedron to its V-representation and vice versa, known respectively as the vertex enumeration and facet enumeration problems (see Example (1) below). lrs can also be used to solve a linear program, remove linearities from a system, and extract a subset of columns.
redund(1) removes redundant inequalities in an input H-representation and outputs the remaining inequalities. For a V-representation input it outputs all extreme points and extreme rays. Both outputs can be piped directly into lrs. redund is a link to lrs which performs these functions via the redund and redund_list options.
minrep(1) performs the same functions as redund(1) but in addition searches for hidden linearities in the input. These are made explicit in the output which is a minimum representation of the polyhedron.
fel(1) projects an input H-representation onto a given set of variables using Fourier-Motzkin elimination. For a V-representation it extracts the specified columns. The output is non-redundant and can be can be piped directly into lrs. fel is a link to lrs which performs these functions via the eliminate and project options.
mplrs(1) is Skip Jordan's parallel wrapper for lrs/redund/minrep/fel.
lrsnash(1) is Terje Lensberg's application of lrs for finding Nash-equilibria in 2-person games.
hvref(1) xvref(1) produce a cross reference list between H- and V-representations.
polyv(1) is Skip Jordan's utility to create logical formulas for checking equivalence between H- and V- representations or determining whether a given inequality is redundant after eliminating variables, without eliminating the variables.
Various arithmetic versions are available and can be built from the makefile.
User's guide for lrslib