A product of varieties is equipped with canonical inclusion maps from a product of any subset of its factors. Given a product of normal toric varieties and a nonempty array, this methods provides a concise way to make these toric maps.
The product of two normal toric varieties has inclusions from each factor.
i1 : Y0 = toricProjectiveSpace 1; |
i2 : Y1 = hirzebruchSurface 3; |
i3 : X = Y0 ** Y1; |
i4 : X_[0] o4 = | 1 | | 0 | | 0 | o4 : ToricMap X <--- Y0 |
i5 : assert (isWellDefined X_[0] and source X_[0] === Y0 and target X_[0] === X) |
i6 : X_[1] o6 = | 0 0 | | 1 0 | | 0 1 | o6 : ToricMap X <--- Y1 |
i7 : assert (isWellDefined X_[1] and source X_[1] === Y1 and target X_[1] === X) |
The canonical inclusions interact with the canonical projections in the expected way.
i8 : assert (X^[0] * X_[0] == id_Y0 and X^[1] * X_[1] == id_Y1) |
i9 : assert (X^[1] * X_[0] == map(Y1, Y0, 0) and X^[0] * X_[1] == map(Y0, Y1, 0)) |
If A indexes all the factors, then we simply obtain the identity map on X.
i10 : X_[0,1] o10 = | 1 0 0 | | 0 1 0 | | 0 0 1 | o10 : ToricMap X <--- X |
i11 : assert (X_[0,1] == id_X) |
When there are more than two factors, we also obtain inclusions from any subset of the factors.
i12 : Z = Y0 ^** 3; |
i13 : Z_[0] o13 = | 1 | | 0 | | 0 | o13 : ToricMap Z <--- Y0 |
i14 : Z_[1] o14 = | 0 | | 1 | | 0 | o14 : ToricMap Z <--- Y0 |
i15 : Z_[2] o15 = | 0 | | 0 | | 1 | o15 : ToricMap Z <--- Y0 |
i16 : assert all (3, i -> isWellDefined Z_[i] and source Z_[i] === Y0 and target Z_[i] === Z) |
i17 : Z_[0,1] o17 = | 1 0 | | 0 1 | | 0 0 | o17 : ToricMap Z <--- normalToricVariety ({{-1, 0}, {1, 0}, {0, -1}, {0, 1}}, {{0, 2}, {0, 3}, {1, 2}, {1, 3}}) |
i18 : Z_[0,2] o18 = | 1 0 | | 0 0 | | 0 1 | o18 : ToricMap Z <--- normalToricVariety ({{-1, 0}, {1, 0}, {0, -1}, {0, 1}}, {{0, 2}, {0, 3}, {1, 2}, {1, 3}}) |
i19 : Z_[1,2] o19 = | 0 0 | | 1 0 | | 0 1 | o19 : ToricMap Z <--- normalToricVariety ({{-1, 0}, {1, 0}, {0, -1}, {0, 1}}, {{0, 2}, {0, 3}, {1, 2}, {1, 3}}) |
i20 : assert (isWellDefined Z_[1,2] and source Z_[1,2] === Y0 ** Y0) |
i21 : Z_[0,1,2] o21 = | 1 0 0 | | 0 1 0 | | 0 0 1 | o21 : ToricMap Z <--- Z |
i22 : assert (Z_[0,1,2] == id_Z) |
When the normal toric variety is not constructed as a product, this method only reproduces the identity map.
i23 : components Y1 o23 = {Y1} o23 : List |
i24 : Y1_[0] o24 = | 1 0 | | 0 1 | o24 : ToricMap Y1 <--- Y1 |
i25 : assert (Y1_[0] == id_Y1) |