1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
# Ocplib-simplex
`Ocplib-simplex` a is library implementing a simplex algorithm, in a functional
style, for solving systems of linear inequalities and optimizing linear
objective functions. The implementation is incremental and backtrackable.
It is able to extract unsat-cores for unsatisfiable problems. Versions `> 0.1`
also support linear optimization.
## Website
Ocplib-simplex's web is available at: https://ocamlpro.github.io/ocplib-simplex
## Dependencies
`ocplib-simplex` requires `4.08.1` or higher and `ocamlfind`.
You can use `make opam-deps` to install dependencies in the current switch.
## Build and Install Instructions
The easiest way to install ocplib-simplex is to use OPAM:
$ opam install ocplib-simplex
If you want to install ocplib-simplex from sources, use the following
instructions:
$ make opam-deps (if you are using OPAM and some deps are missing)
$ make
$ make install
to compile and install `ocplib-simplex` on your system. You can
uninstall the library with `make uninstall`.
## Minimal Examples
Solving a system of linear inequalities: see the file `tests/standalone_minimal.ml`
Linear optimization: see the file `tests/standalone_minimal_maximization.ml`
## Contributing
Don't hesitate to report encountered bugs on this Git repo's issues
tracker. Please follow the [contribution guide][contributing].
## TODO
- the code is not (well) documented,
- some parts of the code need factorization/simplification,
- some invariants (check unsat-core, linear optimization) are missing.
## Licensing
`ocplib-simplex` is Copyright (C) --- OCamlPro. it is distributed
under the terms of the GNU Lesser General Public License (LGPL)
version 2.1 (see LICENSE file for more details).
|