Menu

Tree [c61589] master /
 History

HTTPS access


File Date Author Commit
 instances 2006-04-20 Utz-Uwe Haus Utz-Uwe Haus [693b78] from Achill Schuermann, Uni Magdeburg
 tests 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [e6fcc1] merged from debugging-fmel-v0_4 branch; tag the...
 .cvsignore 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [e6fcc1] merged from debugging-fmel-v0_4 branch; tag the...
 .gitignore 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [c61589] update after hiatus and git migration
 AUTHORS 2005-03-29 Utz-Uwe Haus Utz-Uwe Haus [e02d38] add MK
 COPYING 2005-03-16 Utz-Uwe Haus Utz-Uwe Haus [64f9b6] *** empty log message ***
 HACKING 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [c61589] update after hiatus and git migration
 Makefile 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [043032] this is version 0.5-prerelease
 README 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [e6fcc1] merged from debugging-fmel-v0_4 branch; tag the...
 TODO 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [0a6878] last changes accumulated on laptop
 allegro-load.lisp 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [e6fcc1] merged from debugging-fmel-v0_4 branch; tag the...
 allegro-optimize.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [ad18ab] cleanup
 atrop-wrapper.in 2005-03-17 Utz-Uwe Haus Utz-Uwe Haus [3b47eb] add copyright headers
 atrop.asd 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [c61589] update after hiatus and git migration
 atrop.el 2005-03-16 Utz-Uwe Haus Utz-Uwe Haus [dcaea1] Initial import as a separate project
 atrop.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [c61589] update after hiatus and git migration
 compute-bounds.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [05cc0e] use exported poly interface
 gauss.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [42c658] add rank computation
 ieq-parser.lisp 2006-05-04 Utz-Uwe Haus Utz-Uwe Haus [31d5c0] (parse-ieq): Complain if next section is not fo...
 ine-ext-parser.lisp 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [e6fcc1] merged from debugging-fmel-v0_4 branch; tag the...
 lrestr.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [62531c] change sense symbol use (to non-quoted)
 parser.lisp 2006-03-20 Utz-Uwe Haus Utz-Uwe Haus [e6fcc1] merged from debugging-fmel-v0_4 branch; tag the...
 poly.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [c61589] update after hiatus and git migration
 prepare-core.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [ad18ab] cleanup
 traf.lisp 2006-12-13 Utz-Uwe Haus Utz-Uwe Haus [fa9bb5] attempt to fix de-homogenization
 utils.lisp 2005-03-29 Utz-Uwe Haus Utz-Uwe Haus [ae8d9a] define array-index type
 vint.lisp 2013-06-27 Utz-Uwe Haus Utz-Uwe Haus [ad18ab] cleanup

Read Me

             atrop - a Common Lisp PORTA replacement
             ---------------------------------------

The atrop package is an attempt to provide a replacement of the PORTA
code for computations with polyhedra, see
<http://www.zib.de/Optimization/Software/Porta/>. There are various
reasons to do so, mainly the lack of maintenance of the original PORTA
code, and the integration of the functionality into the Common Lisp
world.

atrop currently provides read/write ability for IEQ files, can write
INE and Latte format, and can compute projections of polyhedra using
the Fourier-Motzkin method, including the redundancy removal rules of
Chernikov and Duffin. Other parts are still partially dysfunctional,
namely transformation between inner and outer description and
INE/POI/EXT file parsing.

Computations are performed in Lisp bignum-rationals, so please compare
performance to other codes in their exact-arithmetic mode. The
Fourier-Motzkin implementation aims to remove more redundant rows than
PORTA does, which incurs extra computational cost, but will make some
problems tractable that were impossible to handle before.

The code aims to be portable across different lisp implementations;
CMUCL, SBCL Allegor CL are tested by the author.


This package is (c) 2005-2006 Utz-Uwe Haus, <atrop@uuhaus.de>,
distributed under the GNU General Public License, as published by the
Free Software Foundation, which you can find at
<http://www.gnu.org/licenses/licenses.html#GPL>. This is free
software, distributed ``AS IS'', WITHOUT WARRANTIES, EXPRESS OR
IMPLIED.


Installation
------------

Obviously, you will need a Common Lisp system. CMUCL, SBCL and Allegro
CL have been tested.

You will need to have the ASDF packaging framework (see
<http://www.cliki.net/asdf/>) installed, and you will need GNU make.

If you got the atrop package by CVS checkout, please see the HACKING
file for instructions on getting a copy of a suitable getopt-long
package.

Edit the top of the Makefile to select your lisp dialect and the lisp
binary name.

After calling `make', you will find a custom lisp core called
atrop.core and a number of wrapper scripts with names familiar to
PORTA users, as well as some file-format converter scripts.

If you want to use the code from within your own Common Lisp code,
please read the function documentation within the .lisp files. Start
with poly.lisp if you dare.

atrop releases will include a release of getopt-long, which is also
available separately from
  <http://sourceforge.net/project/showfiles.php?group_id=27085&package_id=147057>



$Id$