# cartesianProduct(Sequence) -- make the Cartesian product of normal toric varieties

## Synopsis

• Function: cartesianProduct
• Usage:
cartesianProduct Seq
• Inputs:
• Seq, , all of whose elements are normal toric varieties; a single normal toric variety is treated as a sequence with just one element
• Outputs:
• , the product of elements

## Description

The Cartesian product of varieties $X_0, X_1, X_2, \dots$, all defined over the same ground field $k$, is the fiber product $X_0 \times_k X_1 \times_k X_2 \times_k \dots$. For normal toric varieties, the fan of the product is given by the Cartesian product of the underlying fans of the factors.

 i1 : X = toricProjectiveSpace 1; i2 : Y = toricProjectiveSpace 2; i3 : Z = toricProjectiveSpace 3; i4 : Seq = (X, Y, Z); i5 : P = cartesianProduct Seq; i6 : dim P o6 = 6 i7 : assert (dim P == 1+2+3) i8 : factors = components P o8 = {X, Y, Z} o8 : List i9 : # factors o9 = 3 i10 : assert (factors#0 === X and factors#1 === Y and factors#2 === Z)

This general method for constructing products is invoked by all of the other product constructors.