This is SectionRing.info, produced by Macaulay2, version 1.25.11

SectionRing -- computing the section ring of a Weil Divisor
***********************************************************

Description
===========

This package provides a method for computing the section ring of a Weil
divisor.

Author
======

  * Andrew Bydlon (see http://www.math.utah.edu/~bydlon/ )
    <thelongdivider@gmail.com>

Version
=======

This documentation describes version 0.2 of SectionRing, released September 21
2016.

Citation
========

If you have used this package in your research, please cite it as follows:

+----------------------------------------------------------------------------+
|@misc{SectionRingSource,                                                    |
|  title = {{SectionRing: the section ring of a Weil Divisor. Version~0.2}}, |
|  author = {Andrew Bydlon},                                                 |
|  howpublished = {A \emph{Macaulay2} package available at                   |
|    \url{https://github.com/Macaulay2/M2/tree/stable/M2/Macaulay2/packages}}|
|}                                                                           |
|                                                                            |
+----------------------------------------------------------------------------+

Exports
=======

  * Functions and commands
      * convertScalarVect (missing documentation)
      * globallyGenerated -- globallyGenerated(D)
        produces a smallest integer a such that O_X(aD) is globally generated.
      * isMRegular -- isMRegular(F,G,m) tests where F is
        m-regular with respect to G (globally generated) in the sense of
        Castelnuovo-Mumford.  Omitting G assumes G=O_X(1).
      * isVectScalar (missing documentation)
      * mRegular -- mRegular(F,G) computes the regularity of F
        with respect to G (globally generated), in the sense of
        Castelnuovo-Mumford.  Omitting G assumes G=O_X(1).
      * sectionRing -- sectionRing(I) produces the section
        ring of an ample divisor.  If I is an ideal, one can input I to get the
        section ring of the corresponding divisor.
  * Methods
      * globallyGenerated(Ideal) (missing documentation)
      * globallyGenerated(Module) (missing documentation)
      * mRegular(Ideal) (missing documentation)
      * sectionRing(Ideal) (missing documentation)

For the programmer
==================

The object SectionRing, is a package (Macaulay2Doc),
defined in SectionRing.m2.

-------------------------------------------------------------------------------

The source of this document is in SectionRing.m2:377:0.

convertScalarVect
*****************

For the programmer
==================

The object convertScalarVect (missing documentation) is a function closure (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in currentString:1:389.

dualToIdeal -- dual ideal
*************************

  * Usage:
        dualToIdeal(I)
  * Inputs:
      * I, an ideal (Macaulay2Doc),
  * Outputs:
      * an ideal (Macaulay2Doc), the dual of I

Description
===========

Takes an ideal I as input, dualizes the ideal, and maps it back into the ring,
producing Hom_R(I,R) ~ J < R.  Used to produce the global sections H^0(mD),
where D is an integral divisor defined by I.

For the programmer
==================

The object dualToIdeal, is a method function (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in SectionRing.m2:395:0.

globallyGenerated -- globallyGenerated(D) produces a smallest integer a such that O_X(aD) is globally generated.
****************************************************************************************************************

  * Usage:
        globallyGenerated(D)
        globallyGenerated(I)
        globallyGenerated(M)
  * Inputs:
      * D, an instance of the type WeilDivisor (WeilDivisors),
      * I, an ideal (Macaulay2Doc),
      * M, a module (Macaulay2Doc),
  * Outputs:
      * a number (Macaulay2Doc),

Description
===========

Takes a divisor as input.  It then uses a binary search to check for the
smallest integer a with the property that |aD| is a basepoint-free linear
series.  In this case, the corresponding line bundle is globally generated.

Ways to use globallyGenerated:
==============================

  * globallyGenerated(Ideal) (missing documentation)
  * globallyGenerated(Module) (missing documentation)

For the programmer
==================

The object globallyGenerated, is a method function (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in SectionRing.m2:416:0.

isMRegular -- isMRegular(F,G,m) tests where F is m-regular with respect to G (globally generated) in the sense of Castelnuovo-Mumford.  Omitting G assumes G=O_X(1).
********************************************************************************************************************************************************************

  * Usage:
        isMRegular(F,G,m)
        isMRegular(F,m)
  * Inputs:
      * F, a coherent sheaf (Varieties),
      * G, a coherent sheaf (Varieties),
      * m, an integer (Macaulay2Doc),
  * Outputs:
      * a Boolean value (Macaulay2Doc),

Description
===========

isMRegular(F,G,m) tests definition 1.8.4 of Lazarsfeld's Positivity in
Algebraic Geometry I, which is to say whether H^i(F \otimes G^(m-i)) = 0 for
every i>0.  It tests (in this order) H^1, H^2, \ldots, H^dim(X), and stops as
soon as a non-zero cohomology is found.  If none is found, F is m-G-regular,
and it outputs true.

For the programmer
==================

The object isMRegular, is a method function (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in SectionRing.m2:436:0.

isVectScalar
************

For the programmer
==================

The object isVectScalar (missing documentation) is a function closure (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in currentString:1:389.

mRegular -- mRegular(F,G) computes the regularity of F with respect to G (globally generated), in the sense of Castelnuovo-Mumford.  Omitting G assumes G=O_X(1).
*****************************************************************************************************************************************************************

  * Usage:
        mRegular(F,G)
        mRegular(F)
  * Inputs:
      * F, a coherent sheaf (Varieties),
      * G, a coherent sheaf (Varieties),
  * Outputs:
      * an integer (Macaulay2Doc),

Description
===========

mRegular(F,G) utilizes a binary search to compute the smallest m such that F is
m-regular with respect to G, utilizing the function isMRegular.  mRegular(I)
computes the regularity of O_X(D), where D is the associated divisor to I.

Ways to use mRegular:
=====================

  * mRegular(Ideal) (missing documentation)

For the programmer
==================

The object mRegular, is a method function (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in SectionRing.m2:455:0.

sectionRing -- sectionRing(I) produces the section ring of an ample divisor.  If I is an ideal, one can input I to get the section ring of the corresponding divisor.
*********************************************************************************************************************************************************************

  * Usage:
        sectionRing(I)
        sectionRing(D)
  * Inputs:
      * I, an ideal (Macaulay2Doc),
      * D, an instance of the type WeilDivisor (WeilDivisors),
  * Outputs:
      * a ring (Macaulay2Doc),

Description
===========

sectionRing(I) begins by computing the regularity m of O_X, O_X(D), O_X(2D),
..., O_X((l-1)D) with respect to O_X(lD), where l is the output of
globallyGenerated(D).  By Mumford's Thm (1.8.5 in Positivity) yields that each
of the maps O_X(iD)\otimes O_X(lD)^\otimes m -> O_X((i+ml)D) is surjective.
Thus, all generators for the section ring can be assumed in lower degree than
bound.  Thus it forms a polynomial ring S over the base field with h^0(iD)-many
generators in degree i, for i=1,2,...,bound-1.  Next, relations in degree d are
computing by considering the total maps \oplus_{partitions P of d}
\otimes_{i\in P} O_X(i D) -> O_X(dD).  Each of these relations is then
quotiented, until the point that a domain of the correct dimension is produced.
Some steps are then performed to make the output more readable and standard.

Ways to use sectionRing:
========================

  * sectionRing(Ideal) (missing documentation)

For the programmer
==================

The object sectionRing, is a method function (Macaulay2Doc).

-------------------------------------------------------------------------------

The source of this document is in SectionRing.m2:474:0.