Goto Chapter: Top 1 2 3 4 5 6 7 8 9 Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

3 Toric Varieties
 3.1 Toric Varieties: Examples
 3.2 Toric variety: Category and Representations
 3.3 Properties
 3.4 Attributes
 3.5 Methods
 3.6 Constructors

3 Toric Varieties

3.1 Toric Varieties: Examples

3.1-1 The Hirzebruch surface of index 5
gap> H5 := Fan( [[-1,5],[0,1],[1,0],[0,-1]],[[1,2],[2,3],[3,4],[4,1]] );
<A fan in |R^2>
gap> H5 := ToricVariety( H5 );
<A toric variety of dimension 2>
gap> IsComplete( H5 );
true
gap> IsSimplicial( H5 );
true
gap> IsAffine( H5 );
false
gap> IsOrbifold( H5 );
true
gap> IsProjective( H5 );
true
gap> ithBettiNumber( H5, 0 );
1
gap> DimensionOfTorusfactor( H5 );
0
gap> Length( AffineOpenCovering( H5 ) );
4
gap> MorphismFromCoxVariety( H5 );
<A "homomorphism" of right objects>
gap> CartierTorusInvariantDivisorGroup( H5 );
<A free left submodule given by 8 generators>
gap> TorusInvariantPrimeDivisors( H5 );
[ <A prime divisor of a toric variety with coordinates ( 1, 0, 0, 0 )>,
  <A prime divisor of a toric variety with coordinates ( 0, 1, 0, 0 )>,
  <A prime divisor of a toric variety with coordinates ( 0, 0, 1, 0 )>,
  <A prime divisor of a toric variety with coordinates ( 0, 0, 0, 1 )> ]
gap> P := TorusInvariantPrimeDivisors( H5 );
[ <A prime divisor of a toric variety with coordinates ( 1, 0, 0, 0 )>,
  <A prime divisor of a toric variety with coordinates ( 0, 1, 0, 0 )>,
  <A prime divisor of a toric variety with coordinates ( 0, 0, 1, 0 )>,
  <A prime divisor of a toric variety with coordinates ( 0, 0, 0, 1 )> ]
gap> A := P[ 1 ] - P[ 2 ] + 4*P[ 3 ];
<A divisor of a toric variety with coordinates ( 1, -1, 4, 0 )>
gap> A;
<A divisor of a toric variety with coordinates ( 1, -1, 4, 0 )>
gap> IsAmple( A );
false
gap> WeilDivisorsOfVariety( H5 );;
gap> CoordinateRingOfTorus( H5 );
Q[x1,x1_,x2,x2_]/( x1*x1_-1, x2*x2_-1 )
gap> CoordinateRingOfTorus( H5,"x" );
Q[x1,x1_,x2,x2_]/( x1*x1_-1, x2*x2_-1 )
gap> D:=CreateDivisor( [ 0,0,0,0 ],H5 );
<A divisor of a toric variety with coordinates 0>
gap> BasisOfGlobalSections( D );
[ |[ 1 ]| ]
gap> D:=Sum( P );
<A divisor of a toric variety with coordinates ( 1, 1, 1, 1 )>
gap> BasisOfGlobalSections(D);
[ |[ x1_ ]|, |[ x1_*x2 ]|, |[ 1 ]|, |[ x2 ]|,
  |[ x1 ]|, |[ x1*x2 ]|, |[ x1^2*x2 ]|, 
  |[ x1^3*x2 ]|, |[ x1^4*x2 ]|, |[ x1^5*x2 ]|, 
  |[ x1^6*x2 ]| ]
gap> divi := DivisorOfCharacter( [ 1,2 ],H5 );
<A principal divisor of a toric variety with coordinates ( 9, -2, 2, 1 )>
gap> BasisOfGlobalSections( divi );
[ |[ x1_*x2_^2 ]| ]
gap> ZariskiCotangentSheafViaPoincareResidueMap( H5 );;
gap> ZariskiCotangentSheafViaEulerSequence( H5 );;
gap> EQ( H5, ProjectiveSpace( 2 ) );
false
gap> H5B1 := BlowUpOnIthMinimalTorusOrbit( H5, 1 );
<A toric variety of dimension 2>
#@if IsPackageMarkedForLoading( "TopcomInterface", ">= 2021.08.12" )
gap> H5_version2 := DeriveToricVarietiesFromGrading( [[0,1,1,0],[1,0,-5,1]], false );
[ <A toric variety of dimension 2> ]
gap> H5_version3 := ToricVarietyFromGrading( [[0,1,1,0],[1,0,-5,1]] );
<A toric variety of dimension 2>
#@fi
gap> NameOfVariety( H5 );
"H_5"
gap> Display( H5 );
A projective normal toric variety of dimension 2.
The torus of the variety is RingWithOne( ... ).
The class group is <object> and the Cox ring is RingWithOne( ... ).

Another example

gap> P2 := ProjectiveSpace( 2 );
<A projective toric variety of dimension 2>
gap> IsNormalVariety( P2 );
true
gap> AffineCone( P2 );
<An affine normal toric variety of dimension 3>
gap> PolytopeOfVariety( P2 );
<A polytope in |R^2 with 3 vertices>
gap> IsIsomorphicToProjectiveSpace( P2 );
true
gap> IsIsomorphicToProjectiveSpace( H5 );
false
gap> Length( MonomsOfCoxRingOfDegree( P2, [1,2,3] ) );
28
gap> IsDirectProductOfPNs( P2 * P2 );
true
gap> IsDirectProductOfPNs( P2 * H5 );
false

3.1-2 A smooth, complete toric variety which is not projective
gap> rays := [ [1,0,0], [-1,0,0], [0,1,0], [0,-1,0], [0,0,1], [0,0,-1],
>           [2,1,1], [1,2,1], [1,1,2], [1,1,1] ];
[ [ 1, 0, 0 ], [ -1, 0, 0 ], [ 0, 1, 0 ], [ 0, -1, 0 ], [ 0, 0, 1 ], [ 0, 0, -1 ], 
[ 2, 1, 1 ], [ 1, 2, 1 ], [ 1, 1, 2 ], [ 1, 1, 1 ] ]
gap> cones := [ [1,3,6], [1,4,6], [1,4,5], [2,3,6], [2,4,6], [2,3,5], [2,4,5],
>            [1,5,9], [3,5,8], [1,3,7], [1,7,9], [5,8,9], [3,7,8],
>            [7,9,10], [8,9,10], [7,8,10] ];
[ [ 1, 3, 6 ], [ 1, 4, 6 ], [ 1, 4, 5 ], [ 2, 3, 6 ], [ 2, 4, 6 ], [ 2, 3, 5 ],
  [ 2, 4, 5 ], [ 1, 5, 9 ], [ 3, 5, 8 ], [ 1, 3, 7 ], [ 1, 7, 9 ], [ 5, 8, 9 ], 
  [ 3, 7, 8 ], [ 7, 9, 10 ], [ 8, 9, 10 ], [ 7, 8, 10 ] ]
gap> F := Fan( rays, cones );
<A fan in |R^3>
gap> T := ToricVariety( F );
<A toric variety of dimension 3>
gap> [ IsSmooth( T ), IsComplete( T ), IsProjective( T ) ];
[ true, true, false ]
gap> SRIdeal( T );
<A graded torsion-free (left) ideal given by 23 generators>

3.1-3 Convenient construction of toric varieties
gap> rays := [ [1,0],[-1,0],[0,1],[0,-1] ];
[ [ 1, 0 ], [ -1, 0 ], [ 0, 1 ], [ 0, -1 ] ]
gap> cones := [ [1,3],[1,4],[2,3],[2,4] ];
[ [1,3],[1,4],[2,3],[2,4] ]
gap> weights := [ [1,0],[1,0],[0,1],[0,1] ];
[ [1,0],[1,0],[0,1],[0,1] ]
gap> weights2 := [ [1,1],[1,1],[1,2],[1,2] ];
[ [1,1],[1,1],[1,2],[1,2] ]
gap> tor1 := ToricVariety( rays, cones, weights, "x1,x2,y1,y2" );
<A toric variety of dimension 2>
gap> CoxRing( tor1 );
Q[x2,y2,y1,x1]
(weights: [ ( 1, 0 ), ( 0, 1 ), ( 0, 1 ), ( 1, 0 ) ])
gap> tor2:= ToricVariety( rays, cones, weights, "q" );
<A toric variety of dimension 2>
gap> CoxRing( tor2 );
Q[q_2,q_4,q_3,q_1]
(weights: [ ( 1, 0 ), ( 0, 1 ), ( 0, 1 ), ( 1, 0 ) ])
gap> tor3:= ToricVariety( rays, cones, weights );
<A toric variety of dimension 2>
gap> CoxRing( tor3 );
Q[x_2,x_4,x_3,x_1]
(weights: [ ( 1, 0 ), ( 0, 1 ), ( 0, 1 ), ( 1, 0 ) ])
gap> tor4:= ToricVariety( rays, cones, weights2, "x1,x2,z1,z2" );
<A toric variety of dimension 2>
gap> CoxRing( tor4 );
Q[x2,z2,z1,x1]
(weights: [ ( 1, 1 ), ( 1, 2 ), ( 1, 2 ), ( 1, 1 ) ])

3.1-4 Toric varieties from gradings

The following example shows how to create the projective space \mathbb{P}^2 from the grading of its Cox ring. Note that this functionality requires the package TopcomInterface.

gap> g := [[1,1,1]];
[ [ 1,1,1 ] ]
gap> v1 := ToricVarietyFromGrading( g );
<A toric variety of dimension 2>
gap> CoxRing( v1 );
Q[x_1,x_2,x_3]
(weights: [ 1, 1, 1 ])

The following example shows how to create the resolved conifold(s) from the grading of its Cox ring.

gap> g2 := [[1,1,-1,-1]];
[ [ 1,1,-1,-1 ] ]
gap> v2 := ToricVarietiesFromGrading( g2 );
[ <A toric variety of dimension 3>, <A toric variety of dimension 3> ]
gap> CoxRing( v2[ 1 ] );
Q[x_1,x_2,x_3,x_4]
(weights: [ 1, -1, -1, 1 ])
gap> Display( SRIdeal( v2[ 1 ] ) );
x_2*x_3

A (left) ideal generated by the entry of the above matrix

(graded, degree of generator: -2)
gap> Display( SRIdeal( v2[ 2 ] ) );
x_1*x_4

A (left) ideal generated by the entry of the above matrix

(graded, degree of generator: 2)

3.1-5 Blowups of toric varieties by star subdivisions of fans

The following code exemplifies blowups of the 3-dimensional affine space.

gap> rays := [ [1,0,0], [0,1,0], [0,0,1] ];
[ [1,0,0], [0,1,0], [0,0,1] ]
gap> max_cones := [ [1,2,3] ];
[ [1,2,3] ]
gap> fan := Fan( rays, max_cones );
<A fan in |R^3>
gap> C3 := ToricVariety( rays, max_cones, [[0],[0],[0]], "x1,x2,x3" );
<A toric variety of dimension 3>
gap> B1C3 := BlowupOfToricVariety( C3, "x1,x2,x3", "u0" );
<A toric variety of dimension 3>
gap> [ IsComplete( B1C3 ), IsOrbifold( B1C3 ), IsSmooth( B1C3 ) ];
[ false, true, true ]
gap> B2C3 := BlowupOfToricVariety( B1C3, "x1,u0", "u1" );
<A toric variety of dimension 3>
gap> Rank( ClassGroup( B2C3 ) );
3
gap> B3C3 := BlowupOfToricVariety( B2C3, "x1,u1", "u2" );
<A toric variety of dimension 3>
gap> CoxRing( B3C3 );
Q[x3,x2,x1,u0,u1,u2]
(weights: [ ( 0, 1, 0, 0 ), ( 0, 1, 0, 0 ), ( 0, 1, 1, 1 ), 
( 0, -1, 1, 0 ), ( 0, 0, -1, 1 ), ( 0, 0, 0, -1 ) ])

Likewise, we can also perform blowups of the 3-dimensional projective space.

gap> rays := [ [1,0,0], [0,1,0], [0,0,1], [-1,-1,-1] ];
[ [1,0,0], [0,1,0], [0,0,1], [-1,-1,-1] ]
gap> max_cones := [ [1,2,3], [1,2,4], [1,3,4], [2,3,4] ];
[ [1,2,3], [1,2,4], [1,3,4], [2,3,4] ]
gap> fan := Fan( rays, max_cones );
<A fan in |R^3>
gap> P3 := ToricVariety( rays, max_cones, [[1],[1],[1],[1]], "x1,x2,x3,x4" );
<A toric variety of dimension 3>
gap> B1P3 := BlowupOfToricVariety( P3, "x1,x2,x3", "u0" );
<A toric variety of dimension 3>
gap> [ IsComplete( B1P3 ), IsOrbifold( B1P3 ), IsSmooth( B1P3 ) ];
[ true, true, true ]
gap> B2P3 := BlowupOfToricVariety( B1P3, "x1,u0", "u1" );
<A toric variety of dimension 3>
gap> Rank( ClassGroup( B2C3 ) );
3
gap> B3P3 := BlowupOfToricVariety( B2P3, "x1,u1", "u2" );
<A toric variety of dimension 3>
gap> CoxRing( B3P3 );
Q[x4,x3,x2,x1,u0,u1,u2]
(weights: [ ( 1, 0, 0, 0 ), ( 1, 1, 0, 0 ), ( 1, 1, 0, 0 ), 
( 1, 1, 1, 1 ), ( 0, -1, 1, 0 ), ( 0, 0, -1, 1 ), ( 0, 0, 0, -1 ) ])

Also, we can perform blowups of a generalized Hirzebruch 3-fold.

gap> vars := "u,s,v,t,r";
"u,s,v,t,r"
gap> rays := [ [0,0,-1],[1,0,0],[0,1,0],[-1,-1,-17],[0,0,1] ];
[ [0,0,-1],[1,0,0],[0,1,0],[-1,-1,-17],[0,0,1] ]
gap> cones := [ [1,2,3], [1,2,4], [1,3,4], [2,3,5], [2,4,5], [3,4,5] ];
[ [1,2,3], [1,2,4], [1,3,4], [2,3,5], [2,4,5], [3,4,5] ]
gap> weights := [ [1,-17], [0,1], [0,1], [0,1], [1,0] ];
[ [1,-17], [0,1], [0,1], [0,1], [1,0] ]
gap> H3fold := ToricVariety( rays, cones, weights, vars );
<A toric variety of dimension 3>
gap> B1H3fold := BlowupOfToricVariety( H3fold, "u,s", "u1" );
<A toric variety of dimension 3>
gap> CoxRing( B1H3fold );
Q[t,u,r,v,u1,s]
(weights: [ ( 0, 1, 0 ), ( 1, -17, 1 ), ( 1, 0, 0 ), 
( 0, 1, 0 ), ( 0, 0, -1 ), ( 0, 1, 1 ) ])

This example easily extends to an entire sequence of blowups.

gap> vars := "u,s,v,t,r,x,y,w";
"u,s,v,t,r,x,y,w"
gap> rays := [ [0,0,-1,-2,-3], [1,0,0,-2,-3], [0,1,0,-2,-3], [-1,-1,-17,-2,-3], 
>           [0,0,1,-2,-3], [0, 0, 0, 1, 0], 
> [0, 0, 0, 0, 1], [0, 0, 0, -2, -3] ];
[ [0,0,-1,-2,-3], [1,0,0,-2,-3], [0,1,0,-2,-3], [-1,-1,-17,-2,-3], 
[0,0,1,-2,-3], [0, 0, 0, 1, 0], [0, 0, 0, 0, 1], [0, 0, 0, -2, -3] ]
gap> cones := [ [1,2,3,6,7], [1,2,3,6,8], [1,2,3,7,8], [1,2,4,6,7], [1,2,4,6,8],
>            [1,2,4,7,8], [1,3,4,6,7], [1,3,4,6,8], [1,3,4,7,8], [2,3,5,6,7],
>            [2,3,5,6,8], [2,3,5,7,8], [2,4,5,6,7], [2,4,5,6,8], [2,4,5,7,8],
>            [3,4,5,6,7], [3,4,5,6,8], [3,4,5,7,8] ];
[ [ 1, 2, 3, 6, 7 ], [ 1, 2, 3, 6, 8 ], [ 1, 2, 3, 7, 8 ],
  [ 1, 2, 4, 6, 7 ], [ 1, 2, 4, 6, 8 ], [ 1, 2, 4, 7, 8 ],
  [ 1, 3, 4, 6, 7 ], [ 1, 3, 4, 6, 8 ], [ 1, 3, 4, 7, 8 ],
  [ 2, 3, 5, 6, 7 ], [ 2, 3, 5, 6, 8 ], [ 2, 3, 5, 7, 8 ],
  [ 2, 4, 5, 6, 7 ], [ 2, 4, 5, 6, 8 ], [ 2, 4, 5, 7, 8 ],
  [ 3, 4, 5, 6, 7 ], [ 3, 4, 5, 6, 8 ], [ 3, 4, 5, 7, 8 ] ]
gap> w := [ [1,-17,0], [0,1,0], [0,1,0], [0,1,0], [1,0,0], [0,0,2], [0,0,3], 
>        [-2,14,1] ];
[ [1,-17,0], [0,1,0], [0,1,0], [0,1,0], [1,0,0], [0,0,2], [0,0,3], [-2,14,1] ]
gap> base := ToricVariety( rays, cones, w, vars );
<A toric variety of dimension 5>
gap> b1 := BlowupOfToricVariety( base, "x,y,u", "u1" );
<A toric variety of dimension 5>
gap> b2 := BlowupOfToricVariety( b1, "x,y,u1", "u2" );
<A toric variety of dimension 5>
gap> b3 := BlowupOfToricVariety( b2, "y,u1", "u3" );
<A toric variety of dimension 5>
gap> b4 := BlowupOfToricVariety( b3, "y,u2", "u4" );
<A toric variety of dimension 5>
gap> b5 := BlowupOfToricVariety( b4, "u2,u3", "u5" );
<A toric variety of dimension 5>
gap> b6 := BlowupOfToricVariety( b5, "u1,u3", "u6" );
<A toric variety of dimension 5>
gap> b7 := BlowupOfToricVariety( b6, "u2,u4", "u7" );
<A toric variety of dimension 5>
gap> b8 := BlowupOfToricVariety( b7, "u3,u4", "u8" );
<A toric variety of dimension 5>
gap> b9 := BlowupOfToricVariety( b8, "u4,u5", "u9" );
<A toric variety of dimension 5>
gap> b10 := BlowupOfToricVariety( b9, "u5,u8", "u10" );
<A toric variety of dimension 5>
gap> b11 := BlowupOfToricVariety( b10, "u4,u8", "u11" );
<A toric variety of dimension 5>
gap> b12 := BlowupOfToricVariety( b11, "u4,u9", "u12" );
<A toric variety of dimension 5>
gap> b13 := BlowupOfToricVariety( b12, "u8,u9", "u13" );
<A toric variety of dimension 5>
gap> b14 := BlowupOfToricVariety( b13, "u9,u11", "u14" );
<A toric variety of dimension 5>
gap> b15 := BlowupOfToricVariety( b14, "u4,v", "d" );
<A toric variety of dimension 5>
gap> final_space := BlowupOfToricVariety( b15, "u3,u5", "u15" );
<A toric variety of dimension 5>

This sequence of blowups can also be performed with a single command.

gap> final_space2 := SequenceOfBlowupsOfToricVariety( base, 
>                     [ ["x,y,u","u1"], 
>                     ["x,y,u1","u2"],
>                     ["y,u1","u3"],
>                     ["y,u2","u4"],
>                     ["u2,u3","u5"],
>                     ["u1,u3","u6"],
>                     ["u2,u4","u7"],
>                     ["u3,u4","u8"],
>                     ["u4,u5","u9"],
>                     ["u5,u8","u10"],
>                     ["u4,u8","u11"],
>                     ["u4,u9","u12"],
>                     ["u8,u9","u13"],
>                     ["u9,u11","u14"],
>                     ["u4,v","d"],
>                     ["u3,u5","u15"] ] );
<A toric variety of dimension 5>
gap> [ IsComplete( final_space2 ), IsOrbifold( final_space2 ), 
>   IsSmooth( final_space2 ) ];
[ true, true, false ]

3.2 Toric variety: Category and Representations

3.2-1 IsToricVariety
‣ IsToricVariety( M )( filter )

Returns: true or false

Checks if an object is a toric variety.

3.2-2 IsCategoryOfToricVarieties
‣ IsCategoryOfToricVarieties( object )( filter )

Returns: true or false

The GAP category of toric varieties.

3.2-3 twitter
‣ twitter( vari )( attribute )

Returns: a ring

This is a dummy to get immediate methods triggered at some times. It never has a value.

3.3 Properties

3.3-1 IsNormalVariety
‣ IsNormalVariety( vari )( property )

Returns: true or false

Checks if the toric variety vari is a normal variety.

3.3-2 IsAffine
‣ IsAffine( vari )( property )

Returns: true or false

Checks if the toric variety vari is an affine variety.

3.3-3 IsProjective
‣ IsProjective( vari )( property )

Returns: true or false

Checks if the toric variety vari is a projective variety.

3.3-4 IsSmooth
‣ IsSmooth( vari )( property )

Returns: true or false

Checks if the toric variety vari is smooth.

3.3-5 IsComplete
‣ IsComplete( vari )( property )

Returns: true or false

Checks if the toric variety vari is complete.

3.3-6 HasTorusfactor
‣ HasTorusfactor( vari )( property )

Returns: true or false

Checks if the toric variety vari has a torus factor.

3.3-7 HasNoTorusfactor
‣ HasNoTorusfactor( vari )( property )

Returns: true or false

Checks if the toric variety vari has no torus factor.

3.3-8 IsOrbifold
‣ IsOrbifold( vari )( property )

Returns: true or false

Checks if the toric variety vari has an orbifold, which is, in the toric case, equivalent to the simpliciality of the fan.

3.3-9 IsSimplicial
‣ IsSimplicial( vari )( property )

Returns: true or false

Checks if the toric variety vari is simplicial. This is a convenience method equivalent to IsOrbifold.

3.4 Attributes

3.4-1 AffineOpenCovering
‣ AffineOpenCovering( vari )( attribute )

Returns: a list

Returns a torus invariant affine open covering of the variety vari. The affine open cover is computed out of the cones of the fan.

3.4-2 CoxRing
‣ CoxRing( vari )( attribute )

Returns: a ring

Returns the Cox ring of the variety vari. The actual method requires a string with a name for the variables. A method for computing the Cox ring without a variable given is not implemented. You will get an error.

3.4-3 ListOfVariablesOfCoxRing
‣ ListOfVariablesOfCoxRing( vari )( attribute )

Returns: a list

Returns a list of the variables of the cox ring of the variety vari.

3.4-4 ClassGroup
‣ ClassGroup( vari )( attribute )

Returns: a module

Returns the class group of the variety vari as factor of a free module.

3.4-5 TorusInvariantDivisorGroup
‣ TorusInvariantDivisorGroup( vari )( attribute )

Returns: a module

Returns the subgroup of the Weil divisor group of the variety vari generated by the torus invariant prime divisors. This is always a finitely generated free module over the integers.

3.4-6 MapFromCharacterToPrincipalDivisor
‣ MapFromCharacterToPrincipalDivisor( vari )( attribute )

Returns: a morphism

Returns a map which maps an element of the character group into the torus invariant Weil group of the variety vari. This has to be viewed as a help method to compute divisor classes.

3.4-7 MapFromWeilDivisorsToClassGroup
‣ MapFromWeilDivisorsToClassGroup( vari )( attribute )

Returns: a morphism

Returns a map which maps a Weil divisor into the class group.

3.4-8 Dimension
‣ Dimension( vari )( attribute )

Returns: an integer

Returns the dimension of the variety vari.

3.4-9 DimensionOfTorusfactor
‣ DimensionOfTorusfactor( vari )( attribute )

Returns: an integer

Returns the dimension of the torus factor of the variety vari.

3.4-10 CoordinateRingOfTorus
‣ CoordinateRingOfTorus( vari )( attribute )

Returns: a ring

Returns the coordinate ring of the torus of the variety vari. This is by default done with the variables x1 to xn where n is the dimension of the variety. To use a different set of variables, a convenience method is provided and described in the methods section.

3.4-11 ListOfVariablesOfCoordinateRingOfTorus
‣ ListOfVariablesOfCoordinateRingOfTorus( vari )( attribute )

Returns: a list

Returns the list of variables in the coordinate ring of the torus of the variety vari.

3.4-12 IsProductOf
‣ IsProductOf( vari )( attribute )

Returns: a list

If the variety vari is a product of 2 or more varieties, the list contains those varieties. If it is not a product or at least not generated as a product, the list only contains the variety itself.

3.4-13 CharacterLattice
‣ CharacterLattice( vari )( attribute )

Returns: a module

The method returns the character lattice of the variety vari, computed as the containing grid of the underlying convex object, if it exists.

3.4-14 TorusInvariantPrimeDivisors
‣ TorusInvariantPrimeDivisors( vari )( attribute )

Returns: a list

The method returns a list of the torus invariant prime divisors of the variety vari.

3.4-15 IrrelevantIdeal
‣ IrrelevantIdeal( vari )( attribute )

Returns: an ideal

Returns the irrelevant ideal of the Cox ring of the variety vari.

3.4-16 SRIdeal
‣ SRIdeal( vari )( attribute )

Returns: an ideal

Returns the Stanley-Reißner ideal of the Cox ring of the variety vari.

3.4-17 MorphismFromCoxVariety
‣ MorphismFromCoxVariety( vari )( attribute )

Returns: a morphism

The method returns the quotient morphism from the variety of the Cox ring to the variety vari.

3.4-18 CoxVariety
‣ CoxVariety( vari )( attribute )

Returns: a variety

The method returns the Cox variety of the variety vari.

3.4-19 FanOfVariety
‣ FanOfVariety( vari )( attribute )

Returns: a fan

Returns the fan of the variety vari. This is set by default.

3.4-20 CartierTorusInvariantDivisorGroup
‣ CartierTorusInvariantDivisorGroup( vari )( attribute )

Returns: a module

Returns the the group of Cartier divisors of the variety vari as a subgroup of the divisor group.

3.4-21 PicardGroup
‣ PicardGroup( vari )( attribute )

Returns: a module

Returns the Picard group of the variety vari as factor of a free module.

3.4-22 NameOfVariety
‣ NameOfVariety( vari )( attribute )

Returns: a string

Returns the name of the variety vari if it has one and it is known or can be computed.

3.4-23 ZariskiCotangentSheaf
‣ ZariskiCotangentSheaf( vari )( attribute )

Returns: a f.p. graded S-module

This method returns a f. p. graded S-module (S being the Cox ring of the variety), such that the sheafification of this module is the Zariski cotangent sheaf of vari.

3.4-24 CotangentSheaf
‣ CotangentSheaf( vari )( attribute )

Returns: a f.p. graded S-module

This method returns a f. p. graded S-module (S being the Cox ring of the variety), such that the sheafification of this module is the cotangent sheaf of vari.

3.4-25 EulerCharacteristic
‣ EulerCharacteristic( vari )( attribute )

Returns: a non-negative integer

This method computes the Euler characteristic of vari.

3.5 Methods

3.5-1 UnderlyingSheaf
‣ UnderlyingSheaf( vari )( operation )

Returns: a sheaf

The method returns the underlying sheaf of the variety vari.

3.5-2 CoordinateRingOfTorus
‣ CoordinateRingOfTorus( vari, vars )( operation )

Returns: a ring

Computes the coordinate ring of the torus of the variety vari with the variables vars. The argument vars need to be a list of strings with length dimension or two times dimension.

3.5-3 \*
‣ \*( vari1, vari2 )( operation )

Returns: a variety

Computes the categorial product of the varieties vari1 and vari2.

3.5-4 CharacterToRationalFunction
‣ CharacterToRationalFunction( elem, vari )( operation )

Returns: a homalg element

Computes the rational function corresponding to the character grid element elem or to the list of integers elem. This computation needs to know the coordinate ring of the torus of the variety vari. By default this ring is introduced with variables x1 to xn where n is the dimension of the variety. If different variables should be used, then CoordinateRingOfTorus has to be set accordingly before calling this method.

3.5-5 CoxRing
‣ CoxRing( vari, vars )( operation )

Returns: a ring

Computes the Cox ring of the variety vari. vars needs to be a string. We allow for two different formats. Either, it is a string which does not contain ",". Then this string will be index and the resulting strings are then used as names for the variables of the Cox ring. Alternatively, one can also use a string containing ",". In this case, a "," is considered as separator and one can provide individual names for all variables of the Cox ring.

3.5-6 WeilDivisorsOfVariety
‣ WeilDivisorsOfVariety( vari )( operation )

Returns: a list

Returns a list of the currently defined Divisors of the toric variety.

3.5-7 Fan
‣ Fan( vari )( operation )

Returns: a fan

Returns the fan of the variety vari. This is a rename for FanOfVariety.

3.5-8 Factors
‣ Factors( vari )( operation )

3.5-9 BlowUpOnIthMinimalTorusOrbit
‣ BlowUpOnIthMinimalTorusOrbit( vari, p )( operation )

3.5-10 ZariskiCotangentSheafViaEulerSequence
‣ ZariskiCotangentSheafViaEulerSequence( arg )( function )

3.5-11 ZariskiCotangentSheafViaPoincareResidueMap
‣ ZariskiCotangentSheafViaPoincareResidueMap( arg )( function )

3.5-12 ithBettiNumber
‣ ithBettiNumber( vari, p )( operation )

3.5-13 NrOfqRationalPoints
‣ NrOfqRationalPoints( vari, p )( operation )

3.6 Constructors

3.6-1 ToricVariety
‣ ToricVariety( vari )( operation )

3.6-2 ToricVariety
‣ ToricVariety( vari )( operation )

3.6-3 ToricVariety
‣ ToricVariety( conv )( operation )

Returns: a variety

Creates a toric variety out of the convex object conv.

3.6-4 ToricVariety
‣ ToricVariety( rays, cones, degree_list )( operation )

Returns: a variety

Creates a toric variety from a list rays of ray generators and cones cones. Beyond the functionality of the other methods, this constructor allows to assign specific gradings to the homogeneous variables of the Cox ring. With respect to the order in which the rays appear in the list rays, we assign gradings as provided by the third argument degree_list . The latter is a list of integers.

3.6-5 ToricVariety
‣ ToricVariety( rays, cones, degree_list, var_list )( operation )

Returns: a variety

Creates a toric variety from a list rays of ray generators and cones cones. Beyond the functionality of the other methods, this constructor allows to assign specific gradings and homogeneous variable names to the ray generators of this toric variety. With respect to the order in which the rays appear in the list rays, we assign gradings and variable names as provided by the third and fourth argument. These are the list of gradings degree_list and the list of variables names var_list. The former is a list of integers and the latter a list of strings.

3.6-6 ToricVarietiesFromGrading
‣ ToricVarietiesFromGrading( a, list, of, lists, of, integers )( operation )

Returns: a list of toric varieties

Given a \mathbb{Z}^n-grading of a polynomial ring, this method computes all toric varieties, which are normal and have no-torus factor and whose Cox ring obeys the given \mathbb{Z}^n-grading.

3.6-7 ToricVarietyFromGrading
‣ ToricVarietyFromGrading( a, list, of, lists, of, integers )( operation )

Returns: a toric variety

Given a \mathbb{Z}^n-grading of a polynomial ring, this method computes a toric variety, which is normal and has no-torus factor and whose Cox ring obeys the given \mathbb{Z}^n-grading.

 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 Ind

generated by GAPDoc2HTML