Given two GKM varieties $X$ and $Y$ with an action of a common torus $T$, the product is $X \times Y$ with the structure of a GKM variety given by the diagonal action of $T$. This method constructs $X \times Y$ as a GKMVariety. To speed up computation, this method does not automatically cache the moment graph of $X \times Y$. The user can cache this using the method MomentGraph ** MomentGraph.
The following example exhibits the product of $\mathbb P^1$ with the Lagrangian Grassmannian SpGr(2,4).
i1 : R = makeCharacterRing 2; |
i2 : X = projectiveSpace(1,R); |
i3 : Y = generalizedFlagVariety("C",2,{2},R); |
i4 : Z = X ** Y; |
i5 : peek Z o5 = GKMVariety{cache => CacheTable{} } characterRing => R charts => HashTable{(set {0}, {set {0*, 1*}}) => {{-1, 1}, {1, 1}, {2, 0}, {0, 2}} } (set {0}, {set {0*, 1}}) => {{-1, 1}, {2, 0}, {1, -1}, {0, -2}} (set {0}, {set {0, 1*}}) => {{-1, 1}, {0, 2}, {-1, 1}, {-2, 0}} (set {0}, {set {0, 1}}) => {{-1, 1}, {0, -2}, {-2, 0}, {-1, -1}} (set {1}, {set {0*, 1*}}) => {{1, -1}, {1, 1}, {2, 0}, {0, 2}} (set {1}, {set {0*, 1}}) => {{1, -1}, {2, 0}, {1, -1}, {0, -2}} (set {1}, {set {0, 1*}}) => {{1, -1}, {0, 2}, {-1, 1}, {-2, 0}} (set {1}, {set {0, 1}}) => {{1, -1}, {0, -2}, {-2, 0}, {-1, -1}} points => {(set {1}, {set {0, 1*}}), (set {1}, {set {0, 1}}), (set {0}, {set {0, 1*}}), (set {0}, {set {0, 1}}), (set {1}, {set {0*, 1}}), (set {1}, {set {0*, 1*}}), (set {0}, {set {0*, 1*}}), (set {0}, {set {0*, 1}})} |
We can cache the moment graph of $Z$ as follows:
i6 : G = momentGraph X; |
i7 : H = momentGraph Y; |
i8 : momentGraph(Z, G** H); |
i9 : peek Z o9 = GKMVariety{cache => CacheTable{} } characterRing => R charts => HashTable{(set {0}, {set {0*, 1*}}) => {{-1, 1}, {1, 1}, {2, 0}, {0, 2}} } (set {0}, {set {0*, 1}}) => {{-1, 1}, {2, 0}, {1, -1}, {0, -2}} (set {0}, {set {0, 1*}}) => {{-1, 1}, {0, 2}, {-1, 1}, {-2, 0}} (set {0}, {set {0, 1}}) => {{-1, 1}, {0, -2}, {-2, 0}, {-1, -1}} (set {1}, {set {0*, 1*}}) => {{1, -1}, {1, 1}, {2, 0}, {0, 2}} (set {1}, {set {0*, 1}}) => {{1, -1}, {2, 0}, {1, -1}, {0, -2}} (set {1}, {set {0, 1*}}) => {{1, -1}, {0, 2}, {-1, 1}, {-2, 0}} (set {1}, {set {0, 1}}) => {{1, -1}, {0, -2}, {-2, 0}, {-1, -1}} momentGraph => a moment graph on 8 vertices with 17 edges points => {(set {1}, {set {0, 1*}}), (set {1}, {set {0, 1}}), (set {0}, {set {0, 1*}}), (set {0}, {set {0, 1}}), (set {1}, {set {0*, 1}}), (set {1}, {set {0*, 1*}}), (set {0}, {set {0*, 1*}}), (set {0}, {set {0*, 1}})} |