The Gfan Homepage

Software package written by Anders Nedergaard Jensen


Gfan is a software package for computing Gröbner fans and tropical varieties. These are polyhedral fans associated to polynomial ideals. The maximal cones of a Gröbner fan are in bijection with the marked reduced Gröbner bases of its defining ideal. The software computes all marked reduced Gröbner bases of an ideal. Their union is a universal Gröbner basis. The tropical variety of a polynomial ideal is a certain subcomplex of the Gröbner fan. Gfan contains algorithms for computing this complex for general ideals and specialized algorithms for tropical curves, tropical hypersurfaces and tropical varieties of prime ideals. In addition to the above core functions the package contains many tools which are useful in the study of Gröbner bases, initial ideals and tropical geometry. The full list of commands can be found in Appendix B of the manual. For ordinary Gröbner basis computations Gfan is not competitive in speed compared to programs such as CoCoA, Singular and Macaulay2.

If you do not know what Gfan is you can read an old presentation of it in pdf-format or in postscript-format. If you would like to know more please consult the manual below. CaTS is another program for computing Gröbner fans working for toric and lattice ideals only.


The manual is available as a pdf-file and as a postscript-file.


Please follow the installation instructions given in Section 2 of the manual linked to above. Alternatively, go to the binaries page where you will find precompiled binaries for a small collection of operating systems. On Gentoo Linux it is even easier: Gfan can be installed using the command
sudo emerge gfan
. On other Linux distributions
sudo apt-get install gfan
might work.


Gfan is distributed under the terms of the GPL license version 2 or 3 as desired.


  • Gfan version 0.6 (June 19th 2017, improved mixed volume computation, improved Gröbner basis implementation, new tropical starting cone algorithm, resultant fan algorithms, tropical hypersurface reconstruction algorithm, tropical basis detection (in _tropicalintersection -t was replaced by --tropicalbasistest), stable intersection of tropical cycles (_fancommonrefinement --stable), better implementation of the field of rational functions). Updated June 20th with right version numbering.
  • Gfan version 0.5 (January 23th 2011, major update, Gröbner bases/fans over the integers (experimental), p-adic Gröbner bases/complexes (experimental), fan homology computations, exporting of fans in Polymake's new xml format, performance improvements (gfan is now faster than TOPCOM for (most) secondary fan computations) and much more.) Updated January 25th 2011 (xml format and installation instructions).
  • Gfan version 0.4plus (October 20 2009, same as version 0.4, but with three bugs fixed. Update to this version if you are working with tropical multiplicities)
  • Gfan version 0.4 (May 31 2009, major update, performance improvements for polyhedral computations, possibility to link to the SoPlex LP library, computation of secondary fans, links, toric ideals, lattice ideals, and tropical Weil-divisors, symmetry is now exploitable for tropical hypersurface intersections)
  • Gfan version 0.3 (October 12 2007, major update, some programs have changed behaviour, a new Polymake compatible format for polyhedral fans and polyhedral cones is supported, free choice of variable names)
  • Gfan version 0.2.2 (July 24 2006, changes in installation script, bug fixes for non-homogeneous ideals in and xfig output, GPL license)
  • Gfan version 0.2.1 (February 5 2006, support for Z/pZ as coefficient field added)
  • Gfan version 0.2 (October 12 2005)
  • Gfan version 0.1 (April 8 2005)


Parts of gfan have been put into a library. You can download it here:
  • gfanlib0.6.2.tar.gz (June 19th, 2017) (bugfix (gfanlib_matrix.h: reduceAndComputeKernel()), bugfix for reporting dimension of empty fans, unsigned to signed type change in mixed volume code, extracts into gfanlib/).
  • gfanlib0.6.tar.gz (April 24th, 2016) (extracts into gfanlib/).


     author = {Jensen, Anders N.},
     title = {{G}fan, a software system for {G}r{\"o}bner fans and tropical varieties},
     howpublished = {Available at \url{}}


  • David Avis and Komei Fukuda. A basis enumeration algorithm for convex hulls and vertex enumeration of arrangements and polyhedra. Discrete Computational Geometry, 8:295--313, 1992.
  • Tristram Bogart, Anders Jensen, David Speyer, Bernd Sturmfels, and Rekha Thomas. Computing tropical varieties. 2005. math.AG/0507563.
  • Stéphane Collart, Michael Kalkbrener, and Daniel Mall. Converting bases with the Gröbner walk. J. Symb. Comput., 24(3/4):465--469, 1997.
  • Komei Fukuda. cddlib reference manual, cddlib Version 093b. Swiss Federal Institute of Technology, Lausanne and Zürich, Switzerland, 2003. .
  • Komei Fukuda, Anders Jensen, and Rekha Thomas. Computing Gröbner fans. 2005. math.AC/0509544.
  • Torbjörn Granlund et al. GNU multiple precision arithmetic library 4.1.2, December 2002.
  • Birkett Huber and Rekha R. Thomas. Computing Gröbner fans of toric ideals. Experimental Mathematics, 9(3/4):321--331, 2000.
  • Anders Jensen. CaTS, a software system for toric state polytopes. Available at
  • Anders Jensen. A non-regular Gröbner fan. 2005. math.CO/0501352.
  • Teo Mora and Lorenzo Robbiano. The Gröbner fan of an ideal. J. Symb. Comput., 6(2/3):183--208, 1988.
  • Jörg Rambau. Topcom: Triangulations of point configurations and oriented matroids. ZIB report, 02-17, 2002.
  • Bernd Sturmfels. Gröbner bases and Convex Polytopes, volume 8 of University Lecture Series. American Mathematical Society, 1996.