# NormalToricVariety ** NormalToricVariety -- make the Cartesian product of two normal toric varieties

## Synopsis

• Operator: **
• Usage:
X ** Y
• Inputs:
• X, ,
• Y, ,
• Outputs:
• , the product of X and Y

## Description

The Cartesian product of two varieties $X$ and $Y$, both defined over the same ground field $k$, is the fiber product $X \times_k Y$. For normal toric varieties, the fan of the product is given by the Cartesian product of each pair of cones in the fans of the factors.

 i1 : PP2 = toricProjectiveSpace 2; i2 : FF2 = hirzebruchSurface 2; i3 : X = FF2 ** PP2; i4 : assert (# rays X == # rays FF2 + # rays PP2) i5 : assert (matrix rays X == matrix rays FF2 ++ matrix rays PP2) i6 : primaryDecomposition ideal X o6 = {ideal (x , x ), ideal (x , x ), ideal (x , x , x )} 2 0 1 3 6 5 4 o6 : List i7 : flatten (primaryDecomposition \ {ideal FF2,ideal PP2}) o7 = {ideal (x , x ), ideal (x , x ), ideal (x , x , x )} 2 0 1 3 2 1 0 o7 : List

The map from the torus-invariant Weil divisors to the class group is the direct sum of the maps for the factors.

 i8 : assert (fromWDivToCl FF2 ++ fromWDivToCl PP2 == fromWDivToCl X)

The factors are cached and can be accessed with components.

 i9 : factors = components X o9 = {FF2, PP2} o9 : List i10 : assert (# factors === 2) i11 : assert (factors#0 === FF2) i12 : assert (factors#1 === PP2)