CGC Prague-Berlin DocCourse, Part II --- TU Berlin, Summer term 2004



Discrete Geometry
(Polytopes and More)

Prof. Günter M. Ziegler

Fakultät II
TU Berlin
Institut für
Mathematik


On this page you will find a growing list of excercises concerning the polymake software package. If you are looking for special properties or clients, take a look at the polymake documentation .
For a small introduction, you can try the webdemo or take a look at the tutorial.


Here is the promised quiz: Who recognizes the polytope pictured below? We will draw a winner from all correct answers sent in by Friday 7th of May. The winner will receive a signed copy of Prof. Ziegler's "Proofs From The Book".

First Week

  1. Create a octahedron in two different ways and compare them visually and combinatorially. On the one hand, polymake may produce an octahedron using the client cross. On the other hand, the octahedron is the polar of the cube.
  2. Create a random sphere with 100 points. Take a look at its VERTEX_DEGREES and cut off the vertices of maximal degree.
  3. Try to create all combinatorial types of 3-polytopes with less than 7 vertices using the operations presented in Tuesdays afternoon session. You may look up the constructions in Producing a new polyhedron from others .
  4. Try the constructions of the lecture and check the number of facets and vertices. Do they add? Which multiply?
  5. Take a 3-polytope and truncate all its vertices. Is the resulting polytope always simple? Check using the truncation .

Hints and Solutions

  • When calling the client truncation use the -relabel option to distinguish between the original and the new vertices.
  • To perform a stellar subdivision of the face given by the vertex set {v1 v2 ... vn} add the section
    STELLAR
    {v1 v2 ... vn}
    to your file and call the client stellar_indep_faces <out_file> <in_file> STELLAR.
    If you want to stellar subdivide the facet {0 1 2 3} and the edge {6 7} of the standard 3-cube created using the cube client, this should be your polymake-file.
  • The client polarize calculates the polar of a polytope, iff the polytope is CENTERED. Use center to center your polytope.
  • The combinatorial types of 3-polytopes with 6 vertices can be downloaded as a ps-file or pdf-file.

Second Week

  1. polymake provides three different convex hull algorithms, namely cdd, lrs and beneath beyond. Test the performance of the these algorithms in different dimensions using
    • the cube,
    • the cross polytope,
    • the polar of the dwarfed cube,
    • products of simplices and
    • random spheres.
    Here are two files describing how to preceed with polymake ( ps, pdf) and how to use gnuplot ( ps, pdf) to evaluate the results.
  2. Use polymake to show which two constructions of the constructions of the lecture are polar. What does the polar of a pyramid look like?
JavaView-lite applet displays a polytope
Who am I ? Answers to: thilosch@math.tu-berlin.de

Hints and Solutions

  • Here are the results of the Tuesday afternoon session as a ps-file or pdf-file.
  • If you are interested in further material on the discussed convex hull algorithms and their performance, you may look at the cdd and lrs homepages and the article Beneath-and- Beyond revisited.
  • Boris Springborn classified all combinatorial types of 3-polytopes with up to 10 vertices and computed representing polymake models.

Third Week

  1. Try to generalize the construction of the icosahedron from the first problem set to dimension four and try to understand the combinatorics of the resulting polytope. Use polymake <file> SCHLEGEL to visualize the polytope.
  2. Use the client tutte_lifting to visualize the spring embedding of graphs of 3-polytopes.
  3. Try to construct the Koebe embedding of the dual and primal graph of the cube as shown in the lecture using Cinderella.
  4. Use Cinderella to construct the Soddy Circle. Further let P be a simple polytope and let Q be obtained from P by truncation. How can you use the Soddy Circle to construct the Koebe embedding of G(Q) from the Koebe embedding of G(P)?

Hints and Solutions

  • When using the client tutte_lifting, make sure your graph is the graph of a 3-polytope and has at least one triangular face. If you use polymake to generate a polytope and it's graph, delete all sections except the GRAPH section. Otherwise polymake will complain about mismatching realizations (i.e. VERTICES).
  • To visualize the spring embedding of the graph of a 3-Polytope, Cinderella is a good tool. You will have to use the beta version of Cinderella 2.0, which you can find at /homes/combi/Software/Cinderella2/Cinderella2
  • The Koebe embedding of graphs of 3-polytopes is done by Boris Springborn's software circlepatternsoftware.

Fourth Week

  1. Visualize the schlegel-diagram of the dwarfed_cube using all combinatorial types of facets as projection facet.
  2. Visualize the effect of standard constructions (e.g. truncation, stellar subdivision) on the schlegel-diagram of 4-polytopes.

Hints and Solutions

  • To solve exercise 3(c) from the "further material" section of the fourth problem set, use the client check_iso and the option --graph.
  • Try polymake <file> interactive SCHLEGEL to manipulate the schlegel-diagram of a 4-Polytope.
  • Check out this demonstration of stereographic projection by John M. Sullivan.

Fifth Week

    Pulling one vertex of a dodecahedron.
JavaView-lite applet displays a polytope JavaView-lite applet displays a polytope
JavaView-lite applet displays a polytope
C4 with a pulled vertex.