# polytope(ToricDivisor) -- makes the associated 'Polyhedra' polyhedron

## Synopsis

• Function: polytope
• Usage:
polytope D
• Inputs:
• D, ,
• Outputs:

## Description

For a torus-invariant Weil divisors $D = \sum_i a_i D_i$ the associated polyhedron is $\{ m \in M : (m, v_i) \geq -a_i \forall i \}$. Given a torus-invariant Weil divisor, this methods makes the associated polyhedra as an object in Polyhedra.

 i1 : PP2 = toricProjectiveSpace 2; i2 : P0 = polytope (-PP2_0) o2 = P0 o2 : Polyhedron i3 : assert (dim P0 === -1) i4 : P1 = polytope (0*PP2_0) o4 = P1 o4 : Polyhedron i5 : assert (dim P1 == 0) i6 : assert (vertices P1 == 0) i7 : P2 = polytope (PP2_0) o7 = P2 o7 : Polyhedron i8 : vertices P2 o8 = | 0 1 0 | | 0 0 1 | 2 3 o8 : Matrix QQ <--- QQ i9 : halfspaces P2 o9 = (| -1 0 |, | 0 |) | 0 -1 | | 0 | | 1 1 | | 1 | o9 : Sequence

This method works with $\QQ$-Cartier divisors.

 i10 : Y = normalToricVariety matrix {{0,1,0,0,1},{0,0,1,0,1},{0,0,0,1,1},{0,0,0,0,3}}; i11 : assert not isCartier Y_0 i12 : assert isQQCartier Y_0 i13 : P3 = polytope Y_0; i14 : vertices P3 o14 = | 0 1/3 0 0 1/3 | | 0 0 1/3 0 1/3 | | 0 0 0 1/3 1/3 | | 0 0 0 0 1 | 4 5 o14 : Matrix QQ <--- QQ i15 : vertices polytope Y_0 o15 = | 0 1/3 0 0 1/3 | | 0 0 1/3 0 1/3 | | 0 0 0 1/3 1/3 | | 0 0 0 0 1 | 4 5 o15 : Matrix QQ <--- QQ i16 : halfspaces P3 o16 = (| 3 3 3 -2 |, | 1 |) | 0 0 0 -1 | | 0 | | -3 0 0 1 | | 0 | | 0 -3 0 1 | | 0 | | 0 0 -3 1 | | 0 | o16 : Sequence

It also works divisors on non-complete toric varieties.

 i17 : Z = normalToricVariety ({{1,0},{1,1},{0,1}}, {{0,1},{1,2}}); i18 : assert not isComplete Z i19 : D = - toricDivisor Z o19 = Z + Z + Z 0 1 2 o19 : ToricDivisor on Z i20 : P4 = polytope D; i21 : rays P4 o21 = | 1 0 | | 0 1 | 2 2 o21 : Matrix QQ <--- QQ i22 : vertices P4 o22 = | -1 0 | | 0 -1 | 2 2 o22 : Matrix QQ <--- QQ i23 : halfspaces P4 o23 = (| -1 0 |, | 1 |) | 0 -1 | | 1 | | -1 -1 | | 1 | o23 : Sequence