lrs home page 

 lrslib is a self-contained ANSI C implementation of the reverse search algorithm for  vertex enumeration/convex hull problems and comes with a choice of three arithmetic packages. Input file formats are compatible with Komei Fukuda's cdd package. All computations are done exactly in either multiple  precision or fixed integer arithmetic. Output is not stored in memory, so even problems with very large output sizes can sometimes be solved. The program is intended for Unix/Linux platforms, but will compile using gcc/cygwin on Windows. Precompiled linux/Windows binaries supplied for small problems.

lrsarith (new)is a light self-contained ANSI C package of arithmetic routines used in lrslib. It contains fixed precision integer/rational arithmetic in 64 and 128-bit integers as well as extended precision interfaces to GMP/FLINT/lrsMP. A hybrid template allows automatic use of 64/128/GMP arithmetic. Overflow protection is included. Download includes sample programs.

Download                                                                    Debian/Ubuntu distribution:  sudo apt install lrslib     (maintained by David Bremner <bremner at> )

Release of v7.1:  All C library using hybrid arithmetic offering speedups of 2-5 times for combinatorial polytopes. New: parallel redund computation via mplrs.

Documentation:  User's Guide   lrslib Guide   Theoretical Description   Computational Results  Applications   lrsarith (new)
                                    mplrs/plrs Computational Results     mplrs:Theoretical Description        slides  

Interface: Libraries: Demos: Links to related software

David Avis           2021.1.29                  School of Informatics, Kyoto University and School of Computer Science, McGill University