what can computer algebraic geometry do today? · what can computer algebraic geometry do today?...
TRANSCRIPT
EssentialQuestionsWhat can be computed?What software is currently available?What would you like to compute?How should software advance yourresearch?
BasicMathematicalTypesPolynomial Rings, Ideals, Modules,Varieties (affine, projective, toric, abstract),Sheaves, Divisors, Intersection Rings,Maps, Chain Complexes, Homology,Polyhedra, Graphs, Matroids,
EstablishedGeometricToolsElimination, Blowups, Normalization,Rational maps, Working with divisors,Components, Parametrizing curves,Sheaf Cohomology, -modules,
EmergingGeometricToolsClassification of singularities,Numerical algebraic geometry,
, Derived equivalences,Deformation theory, Positivity,
SomeGeometricSuccessesGEOGRAPHY OF SURFACES: exhibitingsurfaces with given invariantsBOIJ-SÖDERBERG: examples lead tonew conjectures and theoremsMODULI SPACES: computer aidedproofs of unirationality
SomeExistingSoftwareGAP, Macaulay2, SINGULAR,CoCoA, Magma, Sage, PARI, RISA/ASIR,Gfan, Polymake, Normaliz, 4ti2,Bertini, PHCpack, Schubert, Bergman,
an idiosyncratic and incomplete list
EffectiveSoftwareUSEABLE: documented examplesMAINTAINABLE: includes tests, part ofa larger distributionPUBLISHABLE: Journal of Software forAlgebra and Geometry; www.j-sag.orgCITATIONS: reference software
Recent Developments in Singular
Wolfram DeckerJanko Bohm, Hans Schonemann, Mathias Schulze
Mohamed Barakat
TU Kaiserslautern
July 14, 2015
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 1 / 24
What is Singular?
A computer algebra system for polynomial computations, with specialemphasis on
algebraic geometry,
commutative and non-commutative algebra,
singularity theory, and with
packages for convex and tropical geometry.
It is free and open-source under the GNU General Public Licence.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 2 / 24
What is Singular?
A computer algebra system for polynomial computations, with specialemphasis on
algebraic geometry,
commutative and non-commutative algebra,
singularity theory, and with
packages for convex and tropical geometry.
It is free and open-source under the GNU General Public Licence.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 2 / 24
What is Singular?
A computer algebra system for polynomial computations, with specialemphasis on
algebraic geometry,
commutative and non-commutative algebra,
singularity theory,
and with
packages for convex and tropical geometry.
It is free and open-source under the GNU General Public Licence.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 2 / 24
What is Singular?
A computer algebra system for polynomial computations, with specialemphasis on
algebraic geometry,
commutative and non-commutative algebra,
singularity theory, and with
packages for convex and tropical geometry.
It is free and open-source under the GNU General Public Licence.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 2 / 24
What is Singular?
A computer algebra system for polynomial computations, with specialemphasis on
algebraic geometry,
commutative and non-commutative algebra,
singularity theory, and with
packages for convex and tropical geometry.
It is free and open-source under the GNU General Public Licence.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 2 / 24
Open development model
Singular issue tracker
Interaction with user base, bug & feature tracking
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 4 / 24
What is Singular?
Over 30 development teams worldwide, over 130 libraries for advancedtopics.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 5 / 24
What is Singular?
Over 30 development teams worldwide, over 130 libraries for advancedtopics.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 5 / 24
What is Singular?
Singular consists of
a kernel, written in C/C ++, and containing the core algorithms,
libraries, written in the Singular language which provides aconvenient way of user interaction and adding new mathematicalfeatures, and
a comprehensive online manual and help function.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 6 / 24
What is Singular?
Singular consists of
a kernel, written in C/C ++, and containing the core algorithms,
libraries, written in the Singular language which provides aconvenient way of user interaction and adding new mathematicalfeatures, and
a comprehensive online manual and help function.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 6 / 24
What is Singular?
Singular consists of
a kernel, written in C/C ++, and containing the core algorithms,
libraries, written in the Singular language which provides aconvenient way of user interaction and adding new mathematicalfeatures, and
a comprehensive online manual and help function.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 6 / 24
Example: Parametrizing Rational Curves
Example> ring R = 0, (x,y,z), dp;
> poly f = x5+10x4y+20x3y2+130x2y3-20xy4+20y5-2x4z-40x3yz-150x2y2z
-90xy3z-40y4z+x3z2+30x2yz2+110xy2z2+20y3z2;
> LIB "paraplanecurves.lib";
> genus(f);
0
> paraPlaneCurve(f);
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 7 / 24
Example: The Parametrization Algorithm
Example> ideal AI = adjointIdeal(f); // requires normalization, integral bases
> AI;
[1]=y3-y2z
[2]=xy2-xyz
[3]=x2y-xyz
[4]=x3-x2z
> def Rn = mapToRatNormCurve(f,AI);
> setring(Rn);
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 8 / 24
Example: The Parametrization Algorithm
Example> RNC;
RNC[1]=y(2)*y(3)-y(1)*y(4)
RNC[2]=20*y(1)*y(2)-20*y(2)^2+130*y(1)*y(4)
+20*y(2)*y(4)+10*y(3)*y(4)+y(4)^2
RNC[3]=20*y(1)^2-20*y(1)*y(2)+130*y(1)*y(3)
+10*y(3)^2+20*y(1)*y(4)+y(3)*y(4)
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 9 / 24
Example: The Parametrization Algorithm
Example> LIB"sing.lib";
> radical(slocus(RNC));
[1]=y(4)
[2]=y(3)
[2]=y(2)
[1]=y(1)
> rncAntiCanonicalMap(RNC);
[1]=2*y(2)+13*y(4)
[2]=y(4)
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 10 / 24
Example: Intersection Theory
Example> LIB "schubert.lib";
> variety G = Grassmannian(2,4);
> def r = G.baseRing;
> setring r;
> sheaf S = makeSheaf(G,subBundle);
> sheaf B = dualSheaf(S)^3;
> integral(G,topChernClass(B));
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 12 / 24
Example: Intersection Theory
Example (continued)
27
Some keywords
Schubert calculus, double point formulas, excess intersection formula,equivariant intersection theory using Bott’s formula, Gromov-Witteninvariants.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 13 / 24
Key Algorithms in Singular
Basic stu↵Grobner and standard Bases;
free resolutions;
polynomial factorization: Factory.
More advanced stu↵Primary decomposition, algorithms of Gianni-Trager-Zacharias,Shimoyama-Yokoyama, Eisenbud-Huneke-Vasconcelos:primdec.lib.;
normalization: normal.lib, locnormal.lib, modnormal.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 14 / 24
Key Algorithms in Singular
Basic stu↵Grobner and standard Bases;
free resolutions;
polynomial factorization: Factory.
More advanced stu↵Primary decomposition, algorithms of Gianni-Trager-Zacharias,Shimoyama-Yokoyama, Eisenbud-Huneke-Vasconcelos:primdec.lib.;
normalization: normal.lib, locnormal.lib, modnormal.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 14 / 24
Key Algorithms in Singular
Basic stu↵Grobner and standard Bases;
free resolutions;
polynomial factorization: Factory.
More advanced stu↵Primary decomposition, algorithms of Gianni-Trager-Zacharias,Shimoyama-Yokoyama, Eisenbud-Huneke-Vasconcelos:primdec.lib.;
normalization: normal.lib, locnormal.lib, modnormal.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 14 / 24
Key Algorithms in Singular
Basic stu↵Grobner and standard Bases;
free resolutions;
polynomial factorization: Factory.
More advanced stu↵Primary decomposition, algorithms of Gianni-Trager-Zacharias,Shimoyama-Yokoyama, Eisenbud-Huneke-Vasconcelos:primdec.lib.;
normalization: normal.lib, locnormal.lib, modnormal.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 14 / 24
Key Algorithms in Singular
Basic stu↵Grobner and standard Bases;
free resolutions;
polynomial factorization: Factory.
More advanced stu↵Primary decomposition, algorithms of Gianni-Trager-Zacharias,Shimoyama-Yokoyama, Eisenbud-Huneke-Vasconcelos:primdec.lib.;
normalization: normal.lib, locnormal.lib, modnormal.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 14 / 24
Example: Coarse Grained Parallelism in Singular
Example> LIB("parallel.lib","random.lib");
> ring R = 0,x(1..4),dp;
> ideal I = randomid(maxideal(3),3,100);
> proc sizeStd(ideal I, string monord){def R = basering; list RL = ringlist(R);
RL[3][1][1] = monord; def S = ring(RL); setring(S);
return(size(std(imap(R,I))));}
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 15 / 24
Example: Coarse Grained Parallelism in Singular
Example> LIB("parallel.lib","random.lib");
> ring R = 0,x(1..4),dp;
> ideal I = randomid(maxideal(3),3,100);
> proc sizeStd(ideal I, string monord){def R = basering; list RL = ringlist(R);
RL[3][1][1] = monord; def S = ring(RL); setring(S);
return(size(std(imap(R,I))));}
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 15 / 24
Example: Coarse Grained Parallelism in Singular
Example> list commands = "sizeStd","sizeStd";
> list args = list(I,"lp"),list(I,"dp");
> parallelWaitFirst(commands, args);
[1] empty list
[2] 11
> parallelWaitAll(commands, args);
[1] 55
[2] 11
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 16 / 24
Example: Coarse Grained Parallelism in Singular
Example> list commands = "sizeStd","sizeStd";
> list args = list(I,"lp"),list(I,"dp");
> parallelWaitFirst(commands, args);
[1] empty list
[2] 11
> parallelWaitAll(commands, args);
[1] 55
[2] 11
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 16 / 24
Example: Coarse Grained Parallelism in Singular
Example> list commands = "sizeStd","sizeStd";
> list args = list(I,"lp"),list(I,"dp");
> parallelWaitFirst(commands, args);
[1] empty list
[2] 11
> parallelWaitAll(commands, args);
[1] 55
[2] 11
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 16 / 24
Key Algorithms in Singular
Singularities
Milnor-, Tjurina-numbers, monodromy and Gauss-Manin systems ofan isolated hypersurface singularity: monodromy.lib, gmssing.lib;
Classification of complex and real isolated hypersurface singularitiesfollowing Arnold: classify.lib and realclassify.lib;
Resolution of singularities: resolve.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 17 / 24
Key Algorithms in Singular
Singularities
Milnor-, Tjurina-numbers, monodromy and Gauss-Manin systems ofan isolated hypersurface singularity: monodromy.lib, gmssing.lib;
Classification of complex and real isolated hypersurface singularitiesfollowing Arnold: classify.lib and realclassify.lib;
Resolution of singularities: resolve.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 17 / 24
Key Algorithms in Singular
Singularities
Milnor-, Tjurina-numbers, monodromy and Gauss-Manin systems ofan isolated hypersurface singularity: monodromy.lib, gmssing.lib;
Classification of complex and real isolated hypersurface singularitiesfollowing Arnold: classify.lib and realclassify.lib;
Resolution of singularities: resolve.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 17 / 24
New Libraries in Singular
Framework for hyperplane arrangements: arr.lib;
Riemann-Roch spaces: hess.lib, brillnoether.lib;
New algorithms for computing tropical varieties: gfanlib.so;
De Rham Cohomology: deRham.lib;
GIT-fans in geometric invariant theory: gitfan.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 18 / 24
New Libraries in Singular
Framework for hyperplane arrangements: arr.lib;
Riemann-Roch spaces: hess.lib, brillnoether.lib;
New algorithms for computing tropical varieties: gfanlib.so;
De Rham Cohomology: deRham.lib;
GIT-fans in geometric invariant theory: gitfan.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 18 / 24
New Libraries in Singular
Framework for hyperplane arrangements: arr.lib;
Riemann-Roch spaces: hess.lib, brillnoether.lib;
New algorithms for computing tropical varieties: gfanlib.so;
De Rham Cohomology: deRham.lib;
GIT-fans in geometric invariant theory: gitfan.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 18 / 24
New Libraries in Singular
Framework for hyperplane arrangements: arr.lib;
Riemann-Roch spaces: hess.lib, brillnoether.lib;
New algorithms for computing tropical varieties: gfanlib.so;
De Rham Cohomology: deRham.lib;
GIT-fans in geometric invariant theory: gitfan.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 18 / 24
New Libraries in Singular
Framework for hyperplane arrangements: arr.lib;
Riemann-Roch spaces: hess.lib, brillnoether.lib;
New algorithms for computing tropical varieties: gfanlib.so;
De Rham Cohomology: deRham.lib;
GIT-fans in geometric invariant theory: gitfan.lib.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 18 / 24
Connections to other Systems
GAPGroups
SingularAlgebraic Geometry
polymakeConvex Geometry
ANTICNumber Theory
Included subsystems
Factory: Polynomial Factorization;
Flint: arithmetic for Number Theory;
Plural: non-commutative stu↵.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 19 / 24
Connections to other Systems
GAPGroups
SingularAlgebraic Geometry
polymakeConvex Geometry
ANTICNumber Theory
Included subsystems
Factory: Polynomial Factorization;
Flint: arithmetic for Number Theory;
Plural: non-commutative stu↵.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 19 / 24
Connections to other Systems
GAPGroups
SingularAlgebraic Geometry
polymakeConvex Geometry
ANTICNumber Theory
Included subsystems
Factory: Polynomial Factorization;
Flint: arithmetic for Number Theory;
Plural: non-commutative stu↵.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 19 / 24
Connections to other Systems
GAPGroups
SingularAlgebraic Geometry
polymakeConvex Geometry
ANTICNumber Theory
Included subsystems
Factory: Polynomial Factorization;
Flint: arithmetic for Number Theory;
Plural: non-commutative stu↵.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 19 / 24
Connections to other Systems
GAPGroups
SingularAlgebraic Geometry
polymakeConvex Geometry
ANTICNumber Theory
Included subsystems
Factory: Polynomial Factorization;
Flint: arithmetic for Number Theory;
Plural: non-commutative stu↵.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 19 / 24
Connections to other Systems
GAPGroups
SingularAlgebraic Geometry
polymakeConvex Geometry
ANTICNumber Theory
Included subsystems
Factory: Polynomial Factorization;
Flint: arithmetic for Number Theory;
Plural: non-commutative stu↵.
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 19 / 24
Homalg Example: From groups to vector bundles
gap> LoadPackage( "repsn" );;gap> LoadPackage( "GradedModules" );;gap> G := SmallGroup( 1000, 93 );<pc group of size 1000 with 6 generators>gap> Display( StructureDescription( G ) );((C5 x C5) : C5) : Q8
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 20 / 24
Homalg Example: From groups to vector bundles
gap> V := Irr( G )[6];; Degree( V );5gap> T0 := Irr( G )[5];; Degree( T0 );2gap> T1 := Irr( G )[8];; Degree( T1 );5gap> mu0 := ConstructTateMap( V, T0, T1, 2 );<A homomorphism of graded left modules>
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 21 / 24
Homalg Example: From groups to vector bundles
gap> A := HomalgRing( mu0 );Q{e0,e1,e2,e3,e4}(weights: [ -1, -1, -1, -1, -1 ])gap> M:=GuessModuleOfGlobalSectionsFromATateMap(2, mu0);;gap> ByASmallerPresentation( M );<A graded non-zero module presented by 92relations for 19 generators>
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 22 / 24
Homalg Example: From groups to vector bundles
gap> S := HomalgRing( M );Q[x0,x1,x2,x3,x4](weights: [ 1, 1, 1, 1, 1 ])gap> ChernPolynomial( M );( 2 | 1-h+4*h^2 ) -> P^4gap> tate := TateResolution( M, -5, 5 );;
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 23 / 24
Homalg Example: From groups to vector bundles
gap> Display( BettiTable( tate ) );
total: 100 37 14 10 5 2 5 10 14 37 100 ? ? ? ?
----------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
4: 100 35 4 . . . . . . . . 0 0 0 0
3: * . 2 10 10 5 . . . . . . 0 0 0
2: * * . . . . . 2 . . . . . 0 0
1: * * * . . . . . . 5 10 10 2 . 0
0: * * * * . . . . . . . . 4 35 100
----------|---|---|---|---|---|---|---|---|---|---|---|---|---|---S
twist: -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5
-------------------------------------------------------------------
Euler: 100 35 2 -10 -10 -5 0 2 0 -5 -10 -10 2 35 100
Wolfram Decker (TU-KL) Recent Developments in Singular July 14, 2015 24 / 24
Macaulay2
Mike Stillman ([email protected])
Department of Mathematics
Cornell
14 July 2015Summer Institute in Algebraic Geometry
Salt Lake City
Macaulay2 essentials in a nutshell
Written with Dan Grayson since 1990’s, open source system
Web site : www.macaulay2.com
Macaulay2 on the web : web.macaulay2.comNo login or installation required !
Has programming language which allows users to create packagesand new types of (mathematical) objects.
around 100 user written packages distributed with Macaulay2.
Selected Macaulay2 packages
NormalToricVarieties (G.G. Smith), cohomology, divisors, res ofsingularities.
BGG (Eisenbud-Schreyer-et al), Bernstein-Gelfand-Gelfandcorrespondence, sheaf cohomology, Beilinson monads.
Dmodules (Leykin-Tsai), b-functions, restriction, local cohomology,multiplier ideals.
Schubert2 Intersection theory, based on maple package Schubert,by Stromme and Katz, with extensions.
NumericalAlgebraicGeometry (Leykin et al) Numerical pathtracking and decomposition, interfaces to Bertini, PHCpack.
Many others : random curves, deformation theory, intersectiontheory of moduli spaces, Schur functors, . . .
Macaulay2, version 1.8.1with packages: ConwayPolynomials, Elimination, IntegralClosure, LLLBases, PrimaryDecomposition, ReesAlgebra, TangentCone
i1 : printWidth=70
o1 = 70
i2 : needsPackage "BGG";
i3 : kk = ZZ/32003
o3 = kk
o3 : QuotientRing
i4 : S = kk[x_0..x_4]
o4 = S
o4 : PolynomialRing
i5 : -- The next line sets the ideal I load "explicit-surface.m2"
i6 : degrees I
o6 = {{6}, {6}, {6}, {6}, {5}, {5}, {5}, {5}, {5}}
o6 : List
i7 : -- 9 generators: 5 of degree 5, 4 of degree 6 I_0
4 2 3 3 2 4 5 4 o7 = - 2704x x + 9448x x - 14844x x + 5013x x - 13570x x x + 0 1 0 1 0 1 0 1 0 1 2 ----------------------------------------------------------------- 3 2 2 3 4 3 2 2 2 2 15457x x x + 11916x x x - 6767x x x + 7798x x x + 2916x x x 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 ----------------------------------------------------------------- 3 2 2 3 2 3 2 2 2 3 2 + 9106x x x + 6032x x x + 4143x x x + 6548x x x + 5689x x x 0 1 2 0 1 2 0 1 2 0 1 3 0 1 3 ----------------------------------------------------------------- 2 2 2 2 3 2 2 2 2 - 2704x x x x + 5551x x x x + 4314x x x - 1819x x x +
0 1 2 3 0 1 2 3 0 1 4 0 1 4 ----------------------------------------------------------------- 3 2 3 2 2 2 2 2 5909x x x - 2704x x x - 6755x x x x + 10115x x x x - 0 1 4 0 2 4 0 1 2 4 0 1 2 4 ----------------------------------------------------------------- 3 2 2 2 2 2 2 2 2 2 5013x x x + 14821x x x + 15672x x x x + 6767x x x - 1 2 4 0 2 4 0 1 2 4 1 2 4 ----------------------------------------------------------------- 3 2 3 2 4 2 2 2 2 2 7779x x x - 9106x x x - 4143x x - 8003x x x x + 4314x x x x 0 2 4 1 2 4 2 4 0 1 3 4 0 2 3 4 ----------------------------------------------------------------- 2 2 2 2 2 4 4 - 5689x x x x - 5551x x x - 6852x x x + 10076x x x - 1 2 3 4 2 3 4 0 1 4 0 2 4 ----------------------------------------------------------------- 4 2 4 2 4 11623x x x - 15829x x - 15149x x 1 2 4 2 4 3 4
o7 : S
i8 : netList I_*
+------------------------------------------------------------- | 4 2 3 3 2 4 5 4 o8 = |- 2704x x + 9448x x - 14844x x + 5013x x - 13570x x x + ... | 0 1 0 1 0 1 0 1 0 1 2 +------------------------------------------------------------- | 5 4 2 3 3 2 4 5 |2704x x - 9448x x + 14844x x - 5013x x + 13570x x - 1545... | 0 1 0 1 0 1 0 1 0 2 +------------------------------------------------------------- | 3 3 2 4 5 6 3 2 |2704x x - 9448x x + 14844x x - 5013x + 13570x x x - 1545 | 0 1 0 1 0 1 1 0 1 2 +------------------------------------------------------------- | 6 5 4 2 3 3 5 |- 2704x + 9448x x - 14844x x + 5013x x + 14821x x + 5726 | 0 0 1 0 1 0 1 0 2 +------------------------------------------------------------- | 3 2 2 3 4 2 |- 5291x x x + 8060x x x - 15744x x x + 12425x x - 12484x | 0 1 2 0 1 2 0 1 2 1 2 0 +------------------------------------------------------------- | 4 3 2 2 3 3 2 |5291x x - 8060x x x + 15744x x x - 12425x x x + 12484x x | 0 2 0 1 2 0 1 2 0 1 2 0 2
+------------------------------------------------------------- | 4 3 2 2 3 4 |- 13570x x + 636x x x + 6190x x x + 4586x x x + 10884x x | 0 2 0 1 2 0 1 2 0 1 2 1 2 +------------------------------------------------------------- | 4 3 2 2 3 3 |- 2704x x + 9448x x x - 14844x x x + 5013x x x + 14821x x ... | 0 2 0 1 2 0 1 2 0 1 2 0 +------------------------------------------------------------- | 3 2 2 3 4 3 |- 2704x x x + 9448x x x - 14844x x x + 5013x x - 13570x x ... | 0 1 2 0 1 2 0 1 2 1 2 0 +-------------------------------------------------------------
i9 : R = S/I
o9 = R
o9 : QuotientRing
i10 : X = Proj R
o10 = X
o10 : ProjectiveVariety
i11 : -------------------------------- -- Basic numerical invariants -- -------------------------------- dim X -- 2
o11 = 2
i12 : degree X -- 12
o12 = 12
i13 : -- X is a surface in P^4, degree 12. genera X -- pa = 2, sectional genus: 13.
o13 = {2, 13, 11}
o13 : List
i14 : --------------------------------- -- Smoothness ------------------- --------------------------------- -- We check this directly:
ideal singularLocus X
o14 = ideal 1
o14 : Ideal of S
i15 : -- X is a nonsingular surface, degree 12, -- sectional genus 13 in P^4 --------------------------------- -- Basic cohomology ------------- --------------------------------- euler OO_X^1 -- 3
o15 = 3
i16 : HH^1(OO_X) -- 1
1o16 = kk
o16 : kk-module, free
i17 : HH^2(OO_X) -- 3
3o17 = kk
o17 : kk-module, free
i18 : h0 = (euler OO_X^1) + rank HH^1(OO_X) - rank HH^2(OO_X)
o18 = 1
i19 : -- therefore h^0(OO_X) = 1 (takes longer to compute directly). -- h^0(OO_X) - h^1 + h^2 = 3, so hh^0 = 1 -- So X is connected -- Whole cohomology table for OO_X -- How to read it: -- row p, column d is entry for h^p(OO_X(d-p)) -- e.g. h^1(OO_X(1)) = 2 ct = cohomologyTable(sheaf(S^1/I), -2, 6)
-2 -1 0 1 2 3 4 5 6 7 8o19 = 2: 123 75 39 15 3 . . . . . . 1: . . . 1 2 1 . . . . . 0: . . 1 5 16 39 75 123 183 255 339
o19 : CohomologyTally
i20 : -- So: X is a smooth irreducible surface, degree 12. -- X is irregular, and pg = 3. -- Canonical Sheaf wX = Ext^(codim I)(S^1/I, S^{-numgens S})
o20 = cokernel {0} | -3092x_0-2149x_2 ... {0} | 2223x_0-10811x_1+5891x_2 ... {0} | x_0+9850x_1-2696x_2 ... {1} | 0 ...
4o20 : S-module, quotient of S
i21 : cohomologyTable(sheaf wX,-2,6)
-2 -1 0 1 2 3 4 5 6o21 = 2: 75 39 16 5 1 . . . . 1: . 1 2 1 . . . . . 0: . . 3 15 39 75 123 183 255
o21 : CohomologyTally
i22 : ct -- Serre duality holds here!
-2 -1 0 1 2 3 4 5 6 7 8o22 = 2: 123 75 39 15 3 . . . . . . 1: . . . 1 2 1 . . . . . 0: . . 1 5 16 39 75 123 183 255 339
o22 : CohomologyTally
i23 : --------------------------------- -- Intersection numbers --------- --------------------------------- KX = sheaf(wX ** R)
o23 = cokernel {0} | -3092x_0-2149x_2 ... {0} | 2223x_0-10811x_1+5891x_2 ... {0} | x_0+9850x_1-2696x_2 ... {1} | 0 ...
3 1o23 : coherent sheaf on X, quotient of OO ++ OO (-1) X X
i24 : -- Riemann-Roch for surfaces: intersectionNumber = (L,M) ->
euler ring L - euler L - euler M + euler(L**M)
o24 = intersectionNumber
o24 : FunctionClosure
i25 : intersectionNumber(OO_X(1), OO_X(1)) -- H.H = 12, as expected
o25 = 12
i26 : intersectionNumber(KX, KX) -- K.K = 0
o26 = 0
i27 : intersectionNumber(KX, OO_X(1)) -- K.H = 12
o27 = 12
i28 : --------------------------------- -- Hodge diamond and h^(1,1) ---- --------------------------------- -- We need the euler char of the cotangent bundle OmegaX = cotangentSheaf(1,X,Minimize=>false);
i29 : euler image generators module OmegaX - euler image relations module OmegaX
o29 = -30
i30 : -- euler characteristic of Omega_X is -30 -- therefore h^(1,1)(X) = 32 -- Hodge diamond: -- 1 -- 1 1 -- 3 32 3 -- 1 1 -- 1 --------------------------------- -- phi_K : X --> E \subset P^2 -- --------------------------------- -- First: bring KX into the ring R = S/I -- One way: Compute Hom(wX,R), take any non-zero -- map, and let J be its image wXR = wX ** R
o30 = cokernel {0} | -3092x_0-2149x_2 ... {0} | 2223x_0-10811x_1+5891x_2 ... {0} | x_0+9850x_1-2696x_2 ... {1} | 0 ...
4o30 : R-module, quotient of R
i31 : hom = Hom(wXR,R)
o31 = image {0} | -12968x_0^3-4556x_0^2x_1+8642x... {0} | -9226x_0^3-1337x_0^2x_1-13005x... {0} | -1822x_0^3-5878x_0^2x_1-6116x_... {-1} | x_0x_1^2x_2-3859x_1^3x_2-14421...
4o31 : R-module, submodule of R
i32 : J = ideal image homomorphism hom_{0}
3 2 2 3 2 o32 = ideal (- 12968x - 4556x x + 8642x x - 6371x - 13175x x + 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 5650x x x - 5369x x + 6425x x - 14501x x - 15967x - 0 1 2 1 2 0 2 1 2 2 ---------------------------------------------------------------- 2 2 2 2 2 10875x x - 15729x x + 4339x x - 15729x x - 3211x x + 0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 3 2 2 3 2 6118x x , - 9226x - 1337x x - 13005x x - 10041x + 5003x x + 2 4 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 3295x x x - 12368x x - 6467x x + 11335x x - 7793x + 0 1 2 1 2 0 2 1 2 2 ---------------------------------------------------------------- 2 2 2 2 2 14956x x - 10910x x + 309x x - 10910x x + 9354x x + 0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 3 2 2 3 2 7656x x , - 1822x - 5878x x - 6116x x + 2843x - 13909x x + 2 4 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 1234x x x - 10761x x - 12450x x - 9173x x - 9619x + 0 1 2 1 2 0 2 1 2 2 ---------------------------------------------------------------- 2 2 2 2 2 13582x x + 5148x x - 11995x x + 5148x x + 526x x +
0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 2 3 2 2 2 2 2 1430x x , x x x - 3859x x - 14421x x - 9381x x x - 7062x x 2 4 0 1 2 1 2 0 2 0 1 2 1 2 ---------------------------------------------------------------- 3 3 4 2 2 + 4924x x - 9555x x + 11943x - 9823x x x - 9743x x x - 0 2 1 2 2 0 2 3 1 2 3 ---------------------------------------------------------------- 2 2 4 2 2 2 2 164x x + 5341x - 14125x x x + 13772x x x + 12460x x - 2 3 3 0 2 4 1 2 4 2 4 ---------------------------------------------------------------- 2 2 4 5447x x + 8369x ) 3 4 4
o32 : Ideal of R
i33 : -- wXR is isomorphic to a twist of the ideal J basis(0, wXR)
o33 = {0} | 1 0 0 | {0} | 0 1 0 | {0} | 0 0 1 | {1} | 0 0 0 |
o33 : Matrix
i34 : betti J -- 3 generators in degree 3.
0 1o34 = total: 1 4 0: 1 . 1: . . 2: . 3 3: . 1
o34 : BettiTally
i35 : J_0
3 2 2 3 2 o35 = - 12968x - 4556x x + 8642x x - 6371x - 13175x x + 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 5650x x x - 5369x x + 6425x x - 14501x x - 15967x - 0 1 2 1 2 0 2 1 2 2
---------------------------------------------------------------- 2 2 2 2 2 10875x x - 15729x x + 4339x x - 15729x x - 3211x x + 0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 6118x x 2 4
o35 : R
i36 : -- next: compute the image of X under the -- 3 cubics in J -- Image of the map: A = kk[a,b,c]
o36 = A
o36 : PolynomialRing
i37 : phi = map(R,A,{J_0,J_1,J_2})
3 2 2 3 2 o37 = map(R,A,{- 12968x - 4556x x + 8642x x - 6371x - 13175x x + ... 0 0 1 0 1 1 0 2
o37 : RingMap R <--- A
i38 : imF = ker phi -- an elliptic curve. Is it smooth?
3 2 2 3 2 o38 = ideal(a + 15592a b + 9520a*b - 7485b - 8060a c - 1884a*b*c + ---------------------------------------------------------------- 2 2 2 3 53b c - 2746a*c + 2263b*c + 2187c )
o38 : Ideal of A
i39 : codim ideal jacobian imF -- 3, so curve is smooth, therefore of genus 1.
o39 = 3
i40 : -- We can also check the following: -- (1) The general fiber is smooth of genus 1 (and degree 12) -- This follows from: genus(K) = 1 + 1/2 K.(K+K) = 1 -- Therefore: X is an elliptic surface
-- (2) This map X --> E \subset P^2 is base point free -- Can be checked by considering set of (g0,g1,g2) which -- define the same morphism: -- (f0,f1,f2) = toSequence flatten entries phi.matrix
3 2 2 3 2 o40 = (- 12968x - 4556x x + 8642x x - 6371x - 13175x x + 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 5650x x x - 5369x x + 6425x x - 14501x x - 15967x - 0 1 2 1 2 0 2 1 2 2 ---------------------------------------------------------------- 2 2 2 2 2 10875x x - 15729x x + 4339x x - 15729x x - 3211x x + 0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 3 2 2 3 2 6118x x , - 9226x - 1337x x - 13005x x - 10041x + 5003x x + 2 4 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 3295x x x - 12368x x - 6467x x + 11335x x - 7793x + 0 1 2 1 2 0 2 1 2 2 ---------------------------------------------------------------- 2 2 2 2 2 14956x x - 10910x x + 309x x - 10910x x + 9354x x + 0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 3 2 2 3 2 7656x x , - 1822x - 5878x x - 6116x x + 2843x - 13909x x + 2 4 0 0 1 0 1 1 0 2 ---------------------------------------------------------------- 2 2 2 3 1234x x x - 10761x x - 12450x x - 9173x x - 9619x + 0 1 2 1 2 0 2 1 2 2 ---------------------------------------------------------------- 2 2 2 2 2 13582x x + 5148x x - 11995x x + 5148x x + 526x x + 0 3 1 3 2 3 0 4 1 4 ---------------------------------------------------------------- 2 1430x x ) 2 4
o40 : Sequence
i41 : -- The map to P^2 consists, off of a set of codim 1, this
vector. -- Is the map a morphism? SZ = syz matrix{{f1,-f0,0},{f2,0,-f0},{0,f2,-f1}};
3 9o41 : Matrix R <--- R
i42 : -- SZ is the entire map SZ_{2}
o42 = {3} | -10602x_0^3-7528x_0^2x_1+3241x_0x_1^2-4750x_1^3-12938x_0 {3} | 9209x_0^3+3963x_0^2x_1-1974x_0x_1^2-10897x_1^3-12469x_0^ {3} | x_0^3+5224x_1^3+3443x_0^2x_2+10389x_0x_1x_2+9049x_1^2x_2 ---------------------------------------------------------------- ^2x_2+7658x_0x_1x_2+12016x_1^2x_2+10149x_0x_2^2+10791x_1x_ 2x_2-11608x_0x_1x_2-11506x_1^2x_2-929x_0x_2^2-2247x_1x_2^2 -12966x_0x_2^2-8158x_1x_2^2-6389x_2^3+9337x_0x_3^2+10563x_ ---------------------------------------------------------------- 2^2+3082x_2^3-1206x_0x_3^2+13213x_1x_3^2-1291x_2x_3^2+13213x_ +4149x_2^3-8088x_0x_3^2-1983x_1x_3^2+567x_2x_3^2-1983x_0x_4^2 1x_3^2+8963x_2x_3^2+10563x_0x_4^2+15060x_1x_4^2+5226x_2x_4^2 ---------------------------------------------------------------- 0x_4^2-9311x_1x_4^2+5522x_2x_4^2 | -15952x_1x_4^2-5291x_2x_4^2 | |
3 1o42 : Matrix R <--- R
i43 : minors(2,SZ) -- all 0, so morphism is given by any column of SZ
o43 = ideal ()
o43 : Ideal of R
i44 : saturate ideal SZ -- no base points!
o44 = ideal 1
o44 : Ideal of R
i45 : -- (3) Singular fibers? -- This is computationally more intensive -- However, (from Hodge diamond) we compute: e(X) = 36. -- e(X) = 36, so there are potentially 36 -- singular fibers (if all are rational double points) -- exercise: find them! What kinds are they?