====== polymake Workshop at UC Berkeley ======
This took place September 13, 2011, 13:00-18:00 (939 Evans Hall).
The event start out with a short introduction by [[http://math.berkeley.edu/~bernd/|Bernd Sturmfels]] to the mathematical problems listed on the {{:polymake-exercises.pdf|Exercise sheet}}. This was followed by an introduction to polymake as outlined below. Afterwards attendees explored the system via solving exercises.
===== Introduction =====
==== simple computations with polytopes ====
$c=cube(3);
print $c->FACETS;
print $c->F_VECTOR;
$polar_of_c=polarize($c);
print $polar_of_c->F_VECTOR;
$polar_of_c->VISUAL;
product(n_gon(5),n_gon(7))->SCHLEGEL(FACET=>1);
$my_own_cube=new Polytope(POINTS=>[[1,-1,-1,-1],[1,-1,-1,1],[1,-1,1,-1],[1,-1,1,1],[1,1,-1,-1],[1,1,-1,1],[1,1,1,-1],[1,1,1,1]]);
print equal_polyhedra($c,$my_own_cube);
==== rule based computations ====
$p57=product(n_gon(5),n_gon(7));
print join(", ", $p57->list_properties);
$schedule=$p57->get_schedule("GRAPH.BIPARTITE");
print join("\n", $schedule->list);
$schedule->apply($p57);
print join(", ", $p57->list_properties);
print $p57->GRAPH->BIPARTITE;
==== getting help ====
help 'objects';
help 'objects/Polytope';
help 'VERTICES';
$t=typeof $p57;
print join(", ", sorted_uniq(sort { $a cmp $b } map { keys %{$_->properties} } $t, @{$t->super}));
==== long integer arithmetic ====
$f = new Integer(1);
for ($i = new Integer(100); $i>0; --$i) { $f *= $i; }
print $f;
==== other objects ====
application "topaz";
$rp2=projective_plane();
print $rp2->HOMOLOGY;
fan::normal_fan(load("snub-dodecahedron.poly"))->VISUAL;
===== Solutions to Selected Exercises =====
==== 10. Smooth fan in R^3 with 10 rays ====
$c=cube(3);
$cc=new Polytope(INEQUALITIES=>($c->FACETS/(new Matrix([[2,-1,-1,-1],[2,-1,1,1],[2,1,-1,1],[2,1,1,-1]]))));
print $cc->N_FACETS, ", ", $cc->SMOOTH;
$cc->VISUAL;
$f=fan::normal_fan($cc);
$f->VISUAL;