Macaulay2 » Documentation
Packages » ReesAlgebra :: analyticSpread
next | previous | forward | backward | up | index | toc

# analyticSpread -- Compute the analytic spread of a module or ideal

- Usage:
    `analyticSpread M`
    `analyticSpread(M,f)`
- Inputs:
  - M, a module, or an ideal
  - f, a ring element, an optional element, which is a non-zerodivisor such that $M[f^{-1}]$ is a free module when $M$ is a module, an element in $M$ when $M$ is an ideal
- Optional inputs:
  - BasisElementLimit => ..., default value infinity, Bound the number of Groebner basis elements to compute in the saturation step
  - DegreeLimit => ..., default value {}, Bound the degrees considered in the saturation step. Defaults to infinity
  - MinimalGenerators => ..., default value true, Whether the saturation step returns minimal generators
  - PairLimit => ..., default value infinity, Bound the number of s-pairs considered in the saturation step
  - Strategy => ..., default value null, Choose a strategy for the saturation step
- Outputs:
  - an integer, the analytic spread of a module or an ideal $M$

## Description

The analytic spread of a module is the dimension of its special fiber ring. When $I$ is an ideal (and more generally, with the right definitions) the analytic spread of $I$ is the smallest number of generators of an ideal $J$ such that $I$ is integral over $J$. See for example the book Integral closure of ideals, rings, and modules. London Mathematical Society Lecture Note Series, 336. Cambridge University Press, Cambridge, 2006, by Craig Huneke and Irena Swanson.

    i1 : R=QQ[a..h]

    o1 = R

    o1 : PolynomialRing

    i2 : M=matrix{{a,b,c,d},{e,f,g,h}}

    o2 = | a b c d |
         | e f g h |

                 2      4
    o2 : Matrix R  <-- R

    i3 : analyticSpread minors(2,M)

    o3 = 5

    i4 : specialFiberIdeal minors(2,M)

    o4 = ideal(Z Z  - Z Z  + Z Z )
                2 3    1 4    0 5

    o4 : Ideal of QQ[Z ..Z ]
                      0   5

    i5 : R=QQ[a,b,c,d]

    o5 = R

    o5 : PolynomialRing

    i6 : M=matrix{{a,b,c,d},{b,c,d,a}}

    o6 = | a b c d |
         | b c d a |

                 2      4
    o6 : Matrix R  <-- R

    i7 : analyticSpread minors(2,M)

    o7 = 4

    i8 : specialFiberIdeal minors(2,M)

                                     2                  2
    o8 = ideal (Z Z  - Z Z  + Z Z , Z  - Z Z  - Z Z  - Z  + Z Z  + Z Z )
                 2 3    1 4    0 5   1    0 2    0 3    4    2 5    3 5

    o8 : Ideal of QQ[Z ..Z ]
                      0   5

## See also

- specialFiberIdeal -- Special fiber of a blowup
- reesIdeal -- Compute the defining ideal of the Rees Algebra

## Ways to use analyticSpread:

- `analyticSpread(Ideal)`
- `analyticSpread(Ideal,RingElement)`
- `analyticSpread(Module)`
- `analyticSpread(Module,RingElement)`

## For the programmer

The object analyticSpread is a method function with options.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/ReesAlgebra.m2:1479:0.