Macaulay2 » Documentation
Packages » NormalToricVarieties :: map(NormalToricVariety,NormalToricVariety,ZZ)
next | previous | forward | backward | up | index | toc

map(NormalToricVariety,NormalToricVariety,ZZ) -- make a torus-equivariant map between normal toric varieties

Synopsis

Description

Let $X$ and $Y$ be normal toric varieties whose underlying lattices are $N_X$ and $N_Y$ respectively. Every toric map $f : X \to Y$ corresponds to a unique map $g : N_X \to N_Y$ of lattices such that, for any cone $\sigma$ in the fan of $X$, there is a cone in the fan of $Y$ that contains the image $g(\sigma)$. For more information on this correspondence, see Theorem 3.3.4 in Cox-Little-Schenck's Toric Varieties. Given the target, the source, and the matrix representing lattice map, this basic constructor creates the corresponding toric map; the integer determines the lattice map in two distinct ways.

When the integer equals zero, the underlying map of lattices is represented by the zero matrix.

i1 : X = hirzebruchSurface 2;
i2 : Y = toricProjectiveSpace 1;
i3 : f = map(Y, X, 0)

o3 = 0

o3 : ToricMap Y <--- X
i4 : assert (isWellDefined f and source f === X and
         target f === Y and matrix f === map(ZZ^(dim Y), ZZ^(dim X), 0))

If the integer $m$ is nonzero, then the underlying map of lattices is represented by multiplying the identity matrix by the given integer $m$. Hence, this second case requires that the dimension of the source and target be equal.

i5 : Z = normalToricVariety ({{1,0},{-1,2},{0,-1}}, {{0,1},{0,2},{1,2}});
i6 : assert (isWellDefined Z and not isSmooth Z)
i7 : g = map(Z, X, 2)

o7 = | 2 0 |
     | 0 2 |

o7 : ToricMap Z <--- X
i8 : assert (isWellDefined g and source g === X and
         target g === Z and matrix g === 2*id_(ZZ^(dim X)))

Setting m = 1 is a easy way to construct the canonical projection associated to a blow-up or the identity map.

i9 : A = affineSpace 2;
i10 : B = toricBlowup ({0, 1}, A);
i11 : h = map(A, B, 1)

o11 = | 1 0 |
      | 0 1 |

o11 : ToricMap A <--- B
i12 : assert (isWellDefined h and h == B^[])
i13 : i = map(A, A, 1)

o13 = | 1 0 |
      | 0 1 |

o13 : ToricMap A <--- A
i14 : i == id_A

o14 = true
i15 : assert (isWellDefined i and source i === A and
          target i === A and matrix i === id_(ZZ^2))

Caveat

This method does not check that the given matrix determines a map of toric varieties. In particular, it assumes that the image of each cone in the source is contained in a cone in the target. One can verify this by using isWellDefined(ToricMap).

See also

Ways to use this method: