 
Summary: A C Implementation of the Reverse Search Vertex Enumeration
Algorithm
David Avis
School of Computer Science
McGill University
3480 University, Montreal, Quebec H3A 2A7
Revised June 1993
ABSTRACT
This report documents a C implementation of the reverse search vertex enu
meration algorithm for convex polyhedra of Avis and Fukuda. The implementa
tion uses multiple precision rational arithmetic and contains a few improvements
over the original algorithm, resulting in a small reduction in the complexity in
most cases. For a polyhedron with n 0 inequalities in d nonnegative variables and
nondegenerate origin, it finds all bases in time O(n 0 d 2 ) per basis. It is also
shown how the implementation can be improved to run in time
O(n 0 d min(n 0 , d)) time per basis for any polyhedron. This implementation can
handle problems of quite large size, especially for simple polyhedra (where each
basis corresponds to a vertex). Computational experience is included in the
report.
1. Background
