Skip to content
forked from periscop/piplib

Parametric Integer Programming Library

License

Notifications You must be signed in to change notification settings

verif-scop/piplib

 
 

Repository files navigation

#
#  /**-------------------------------------------------------------------**
#   **                            PIP/PipLib                             **
#   **-------------------------------------------------------------------**
#   **                   Parametric Integer Programming                  **
#   **-------------------------------------------------------------------**
#   **           First version of this file: february 21th 2002          **
#   **-------------------------------------------------------------------**/
#

For complete informations about this software, how to build and use it,
please see the postscript file in the ./doc subdirectory (a pdf version
is available in the web site).

#   **-------------------------------------------------------------------**
#   **                        I. Description                             **
#   **-------------------------------------------------------------------**/

PIP/PipLib is the well known Paul Feautrier's parametric integer programming
solver. PIP is a software which finds the lexicographic minimum of the set of
integer points which lie inside a convex polyhedron. This polyhedron can depend
linearly on one or more integral parameters. If user ask for a non integral
solution, PIP can give the exact solution as an integral quotient. The heart
of PIP is the parametrized Gomory's cuts algorithm followed by parametrized
dual simplex method. The PIP Library (PipLib for short) was implemented to
allow the user to call PIP directly from his programs, without file accesses
or system calls. The user only needs to link his programs with C libraries.

#   **-------------------------------------------------------------------**
#   **                    II. Building PIP/PipLib                        **
#   **-------------------------------------------------------------------**/

The configure shell script attempts to guess correct values for various
system-dependent variables used during compilation. It uses those values to
create a Makefile. The file configure.in is used to create configure by a
program called autoconf.  You only need configure.in if you want to change
it or regenerate configure using a newer version of autoconf.

The simplest way to compile this package is:
cd to the directory containing the package's source code and type 

  ./configure

to configure the package for your system (while running, configure prints
some messages telling which features it is checking for), to compile the
package, type

  make
  

to install the program and/or the library, type

  make install

you can remove the program binaries and object files from the source code
directory by typing
  
  make clean
  
To also remove the files that configure created (so you can compile the
package for a different kind of computer) type
  
  make distclean

#   **-------------------------------------------------------------------**
#   **                           III Options                             **
#   **-------------------------------------------------------------------**/

By default,  make will install the package's files in /usr/local/bin,
/usr/local/lib, etc. You can specify an installation prefix other than 
/usr/local by giving onfigure} the option --prefix=PATH.

By default, both PIP and the PipLib are compiled and installed.
By giving configure the option --without-pip you disable the
compilation and installation of PIP. By giving configure the option
--without-lib you disable the compilation and installation of the PipLib.

By default, both int (32 bits) and long long int (64 bits) versions are
built. By giving configure the option --enable-int you ask for int
version only and by giving configure the option --enable-llint you
ask for long long int version only.

#   **-------------------------------------------------------------------**
#   **                          IV Running PIP                           **
#   **-------------------------------------------------------------------**/

To run PIP, simply type 'pip32' or 'pip64', optionally followed by the name
of an input file. For more informations, please check the ./doc subdirectory.

About

Parametric Integer Programming Library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 65.8%
  • M4 13.8%
  • LLVM 11.5%
  • CMake 5.0%
  • Makefile 2.9%
  • Python 0.8%
  • Shell 0.2%