#  Copyright (c) 1997-2010
#  Ewgenij Gawrilow, Michael Joswig (Technische Universitaet Darmstadt, Germany)
#  http://www.polymake.de
#
#  This program is free software; you can redistribute it and/or modify it
#  under the terms of the GNU General Public License as published by the
#  Free Software Foundation; either version 2, or (at your option) any
#  later version: http://www.gnu.org/licenses/gpl.txt.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#-------------------------------------------------------------------------------
#  $Project: polymake $$Id: main.rules 9574 2010-03-16 17:17:03Z herr $


# @topic application
# This is the historically first application, and the largest one.
#
# It deals with convex pointed polyhedra.  It allows to define a polyhedron either as a convex hull of a point set, an intersection of
# halfspaces, or as an incidence matrix without any embedding.  Then you can ask for a plenty of its (especially combinatorial)
# properties,  construct new polyhedra by modifying it,  or study the behavior of the objective functions.
#
# There is a wide range of visualization methods for polyhedra, even for dimensions > 4 and purely combinatorial descriptions,
# including interfaces to interactive geometry viewers (such as [[wiki:external_software#JavaView|JavaView]] or [[wiki:external_software#geomview|geomview]]), generating
# PostScript drawings and povray scene files.


IMPORT graph

USE topaz

file_suffix poly

# A bounded or unbounded pointed polyhedron.
# Note that a pointed polyhedron is projectively equivalent to a polytope.
# //Scalar// is the numeric data type used for the coordinates.
declare object Polytope<Scalar=Rational [ typechecks::is_ordered_field(Scalar) ]>;


# these rules are intrinsic: they don't depend on any external software to be installed separately
INCLUDE
  polytope_properties.rules
  common.rules
  lp_properties.rules
  lp.rules
  unbounded_polyhedron.rules
  rational.rules
  float.rules
  flag_vector.rules
  lattice.rules
  point_configuration.rules
  polarize.rules
  visual.rules
  schlegel.rules
  visual_graph.rules
  gale.rules
  steiner.rules
  voronoi.rules
  tight_span.rules
  propagated_polytope.rules
  visual_point_configuration.rules

# framework.rules


# self-configuring rules
INCLUDE
  javaview.rules
  postscript.rules
  splitstree.rules
  topcom.rules
  azove.rules

default_object Polytope;


# Local Variables:
# mode: perl
# c-basic-offset:3
# End:
