Changeset 8baa37 in git for Singular/LIB/schreyer.lib


Ignore:
Timestamp:
Jan 24, 2014, 1:39:15 PM (10 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', '5b153614cbc72bfa198d75b1e9e33dab2645d9fe')
Children:
ee5e11e63c911034966a67782a24e7326c52abb1
Parents:
5c8e18ff3dc32f83461ed21cad1151a77366ed567661e1502f806195a6458595ba7e711664a932bb
Message:
Merge pull request #456 from surface-smoothers/improve.documentation.genus

improved genus documentation for 1-dim affine variety input
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/schreyer.lib

    r7661e1 r8baa37  
    33category="General purpose";
    44info="
    5 LIBRARY: schreyer.lib     Helpers for working with the Schreyer induced ordering
     5LIBRARY: schreyer.lib     Helpers for computing a Schreyer resolution in @code{derham.lib}
    66AUTHOR:  Oleksandr Motsak <U@D>, where U={motsak}, D={mathematik.uni-kl.de}
     7KEYWORDS: Schreyer ordering; Schreyer resolution; syzygy
     8OVERVIEW:
     9@* The library contains helper procedures for computing a Schreyer resoltion (cf. [SFO]),
     10   originally meant to be used by @code{derham.lib} (which requires resolutions over the homogenized Weyl algebra).
     11   The library works both in the commutative and non-commutative setting (cf. [MO]).
     12   Here, we call a free resolution a Schreyer resolution if each syzygy module is given by a Groebner basis
     13   with respect to the corresponding Schreyer ordering.
     14   A Schreyer resolution can be much bigger than a minimal resolution of the same module, but may be easier to construct.
     15@* The input for the resolution computations is a set of vectors @code{M} in form of a module over some basering @code{R}.
     16   The ring @code{R} may be non-commutative, in which case the ring ordering should be global.
     17@* These procedures produce/work with partial Schreyer resolutions of @code{(R^rank(M))/M} in form of
     18   a ring (endowed with a special ring ordering that will be extended in the course of a resolution computation)
     19   containing a list of modules @code{RES} and a module @code{MRES}:
     20@* The list of modules @code{RES} contains the images of maps (also called syzygy modules) substituting the
     21   computed beginning of a Schreyer resolution, that is, each syzygy module is given by a Groebner basis
     22   with respect to the corresponding Schreyer ordering.
     23@* The list @code{RES} starts with a zero map given by @code{rank(M)} zero generators indicating that the image of
     24   the first differential map is zero. The second map @code{RES[2]} is given by @code{M}, which indicates that
     25   the resolution of @code{(R^rank(M))/M} is being computed.
     26@* The module @code{MRES} is a direct sum of modules from @code{RES} and thus comprises all computed differentials.
     27@* Syzygies are shifted so that @code{gen(i)} is mapped to @code{MRES[i]} under the differential map.
     28@* The Schreyer ordering succesively extends the starting module ordering on @code{M} (defined in Singular by the basering @code{R})
     29   and is extended to higher syzygies using the following definition:
     30@*        a < b if and only if (d(a) < d(b)) OR ( (d(a) = d(b) AND (comp(a) < comp(b)) ),
     31@* where @code{d(a)} is the image of a under the differential (given by @code{MRES}),
     32   and @code{comp(a)} is the module component, for any module terms @code{a} and @code{b} from the same higher syzygy module.
     33REFERENCES:
     34[SFO] Schreyer, F.O.: Die Berechnung von Syzygien mit dem verallgemeinerten Weierstrassschen Divisionssatz,
     35      Master's thesis, Univ. Hamburg, 1980.
     36[MO]  Motsak, O.: Non-commutative Computer Algebra with applications: Graded commutative algebra and related
     37      structures in Singular with applications, Ph.D. thesis, TU Kaiserslautern, 2010
     38
     39NOTE:  requires the dynamic or built-in module @code{syzextra}
    740
    841PROCEDURES:
    9  Sres(M,l)      Schreyer resolution of module M of maximal length l
    10  Ssyz(M)        Schreyer resolution of module M of length 1
    11  Scontinue(l)   continue the resolution computation by most l steps
    12 
    13 KEYWORDS:  syzygy; Schreyer induced ordering; Schreyer free resolution
    14 NOTE:  requires the dynamic module: syzextra
     42  Sres(M,len)     compute Schreyer resolution of module M of maximal length len
     43  Ssyz(M)         compute Schreyer resolution of module M of length 1
     44  Scontinue(len)  extend currently active resolution by (at most) len syszygies
    1545";
    1646
     
    329359
    330360proc Scontinue(int l)
    331 "USAGE:  Scontinue(l)
    332 RETURN:  nothing, instead it changes RES and MRES variables in the current ring
    333 PURPOSE: computes further (at most l) syzygies
    334 NOTE:    must be used within a ring returned by Sres or Ssyz. RES and MRES are
    335          explained in Sres
     361"USAGE:  Scontinue(int len)
     362RETURN:  nothing, instead it changes the currently active resolution
     363PURPOSE: extends the currently active resolution by at most len syzygies
     364ASSUME:  must be used within a ring returned by Sres or Ssyz
    336365EXAMPLE: example Scontinue; shows an example
    337366"
     
    361390
    362391proc Ssyz(module M)
    363 "USAGE:  Ssyz(M)
    364 RETURN:  ring, containing a list of modules RES and a module MRES
    365 PURPOSE: computes the first syzygy module of M (wrt some Schreyer ordering)
    366 NOTE:    The output is explained in Sres
     392"USAGE:  Ssyz(module M)
     393RETURN:  ring, containing a Schreyer resolution
     394PURPOSE: computes a Schreyer resolution of M of length 1 (see the library overview)
     395SEE ALSO: Sres
    367396EXAMPLE: example Ssyz; shows an example
    368397"
     
    393422
    394423proc Sres(module M, int l)
    395 "USAGE:  Sres(M, l)
    396 RETURN:  ring, containing a list of modules RES and a module MRES
    397 PURPOSE: computes (at most l) syzygy modules of M wrt the classical Schreyer
    398          induced ordering with gen(i) > gen(j) if i > j, provided both gens
    399          are from the same syzygy level.
    400 NOTE:    RES contains the images of maps subsituting the beginning of the
    401          Schreyer free resolution of baseRing^r/M, while MRES is a sum of
    402          these images in a big free sum, containing all the syzygy modules.
    403          The syzygy modules are shifted so that gen(i) correspons to MRES[i].
    404          The leading zero module RES[0] indicates the fact that coker of the
    405          first map is zero. The number of zeroes inducates the rank of input.
    406 NOTE:    If l == 0 then l is set to be nvars(basering) + 1
     424"USAGE:  Sres(module M, int len)
     425RETURN:  ring, containing a Schreyer resolution
     426PURPOSE: computes a Schreyer resolution of M of length at most len (see the library overview)
     427NOTE:    If given len is zero then nvars(basering) + 1 is used instead.
     428SEE ALSO: Ssyz
    407429EXAMPLE: example Sres; shows an example
    408430"
Note: See TracChangeset for help on using the changeset viewer.