Assume $X$ is a GKM-variety for which there exists a contracting torus-invariant affine chart around each torus-fixed point. For instance, generalized flag varieties and smooth toric varieties have this property. This returns a HashTable whose keys are the torus-fixed points of $X$ and the values are the negatives of characters of the torus action on the associated contracting affine chart.
The following example describes the charts of the isotropic Grassmannian $SpGr(2,6)$.
i1 : X = generalizedFlagVariety("C",3,{2});
|
i2 : X.charts
o2 = HashTable{{set {0*, 1*}} => {{1, 0, 1}, {1, 0, -1}, {0, 1, 1}, {0, 1, -1}, {1, 1, 0}, {2, 0, 0}, {0, 2, 0}} }
{set {0*, 1}} => {{1, 0, 1}, {1, 0, -1}, {0, -1, 1}, {0, -1, -1}, {2, 0, 0}, {1, -1, 0}, {0, -2, 0}}
{set {0*, 2*}} => {{1, 1, 0}, {1, -1, 0}, {1, 0, 1}, {2, 0, 0}, {0, 0, 2}, {0, 1, 1}, {0, -1, 1}}
{set {0*, 2}} => {{1, 1, 0}, {1, -1, 0}, {2, 0, 0}, {1, 0, -1}, {0, 0, -2}, {0, 1, -1}, {0, -1, -1}}
{set {0, 1*}} => {{-1, 0, 1}, {-1, 0, -1}, {0, 1, 1}, {0, 1, -1}, {0, 2, 0}, {-1, 1, 0}, {-2, 0, 0}}
{set {0, 1}} => {{-1, 0, 1}, {-1, 0, -1}, {0, -1, 1}, {0, -1, -1}, {0, -2, 0}, {-2, 0, 0}, {-1, -1, 0}}
{set {0, 2*}} => {{-1, 1, 0}, {-1, -1, 0}, {0, 0, 2}, {-1, 0, 1}, {-2, 0, 0}, {0, 1, 1}, {0, -1, 1}}
{set {0, 2}} => {{-1, 1, 0}, {-1, -1, 0}, {0, 0, -2}, {-2, 0, 0}, {-1, 0, -1}, {0, 1, -1}, {0, -1, -1}}
{set {1*, 2*}} => {{0, 1, 1}, {0, 2, 0}, {0, 0, 2}, {1, 1, 0}, {-1, 1, 0}, {1, 0, 1}, {-1, 0, 1}}
{set {1*, 2}} => {{0, 2, 0}, {0, 1, -1}, {0, 0, -2}, {1, 1, 0}, {-1, 1, 0}, {1, 0, -1}, {-1, 0, -1}}
{set {1, 2*}} => {{0, 0, 2}, {0, -1, 1}, {0, -2, 0}, {1, -1, 0}, {-1, -1, 0}, {1, 0, 1}, {-1, 0, 1}}
{set {1, 2}} => {{0, 0, -2}, {0, -2, 0}, {0, -1, -1}, {1, -1, 0}, {-1, -1, 0}, {1, 0, -1}, {-1, 0, -1}}
o2 : HashTable
|
If $X$ does not have its charts stored, we can manually cache it as follows.
i3 : R = makeCharacterRing 2; |
i4 : X = makeGKMVariety({{0,1},{0,3},{1,2},{2,3}},R);
|
i5 : peek X
o5 = GKMVariety{cache => CacheTable{} }
characterRing => R
points => {{0, 1}, {0, 3}, {1, 2}, {2, 3}}
|
i6 : L = {{{-1,0},{0,-1}},{{-1,0},{0,1}},{{-3,-1},{1,0}},{{1,0},{3,1}}};
|
i7 : charts(X,L); |
i8 : peek X
o8 = GKMVariety{cache => CacheTable{} }
characterRing => R
charts => HashTable{{0, 1} => {{-1, 0}, {0, -1}}}
{0, 3} => {{-1, 0}, {0, 1}}
{1, 2} => {{-3, -1}, {1, 0}}
{2, 3} => {{1, 0}, {3, 1}}
points => {{0, 1}, {0, 3}, {1, 2}, {2, 3}}
|
i9 : peek makeGKMVariety hirzebruchSurface 3
o9 = GKMVariety{cache => CacheTable{...1...} }
characterRing => ZZ[T ..T ]
0 1
charts => HashTable{{0, 1} => {{-1, 0}, {0, -1}}}
{0, 3} => {{-1, 0}, {0, 1}}
{1, 2} => {{-3, -1}, {1, 0}}
{2, 3} => {{1, 0}, {3, 1}}
momentGraph => a moment graph on 4 vertices with 4 edges
points => {{0, 1}, {0, 3}, {1, 2}, {2, 3}}
|
The object charts is a method function.