next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
TestIdeals :: TestIdeals

TestIdeals -- a package for calculations of singularities in positive characteristic

Description

TestIdeals is a package for basic computations of F-singularities. It is focused on computing test ideals and related objects. It does this via frobeniusRoot, which computes I[1/pe] as introduced by Blickle-Mustata-Smith (this is equivalent to the image of an ideal under the Cartier operator in a polynomial ring).

We describe some notable functions below.

Notable functions:
  • testIdeal compute the test ideal of a normal Q-Gorenstein ring or pair.
  • testModule compute the parameter test module of a ring or pair.
  • parameterTestIdeal compute the parameter test ideal of a Cohen-Macaulay ring.
  • HSLGModule compute the stable image of the trace of Frobenius on the canonical module.
  • isFRegular checks if a normal Q-Gorenstein ring or pair is F-regular.
  • isFPure checks if a ring is F-pure.
  • isFRational checks if a ring is F-rational.
  • isFInjective checks if a ring is F-injective.
  • compatibleIdeals finds the compatibly F-split ideals with a (near) F-splitting.

Consider for instance the test ideal of the cone over an elliptic curve
i1 : R = ZZ/5[x,y,z]/ideal(z*y^2-x*(x-z)*(x+z));
i2 : testIdeal(R)

o2 = ideal (z, y, x)

o2 : Ideal of R

The following example was studied by Anurag Singh when showing that F-regularity does not deform
i3 : S = ZZ/3[A,B,C,D,T];
i4 : m = 4;
i5 : n = 3;
i6 : M = matrix{{A^2+T^m, B, D}, {C, A^2, B^n-D}};

             2       3
o6 : Matrix S  <--- S
i7 : I = ideal(T) + minors(2, M);

o7 : Ideal of S
i8 : isFRegular(S/I)

o8 = true


Acknowledgements:

The authors would like to thank David Eisenbud, Daniel Grayson, Anurag Singh, Greg Smith, and Mike Stillman for useful conversations and comments on the development of this package.

Authors

Version

This documentation describes version 1.0 of TestIdeals.

Source code

The source code from which this documentation is derived is in the file TestIdeals.m2. The auxiliary files accompanying it are in the directory TestIdeals/.

Exports

  • Functions and commands
    • adicDigit -- digit of the non-terminating expansion of a number in [0,1] in a given base
    • adicExpansion -- compute adic expansion
    • adicTruncation -- truncation of a non-terminating adic expansion
    • ascendIdeal -- finds the smallest ideal containing a given ideal which is compatible with a given $p^{-e}$-linear map
    • ascendModule -- finds the smallest submodule of free module containing a given submodule which is compatible with a given $p^{-e}$-linear map
    • canonicalIdeal -- given a ring, produces an ideal isomorphic to the canonical module
    • compatibleIdeals -- finds all ideals compatibly compatible with a Frobenius near-splitting ideals
    • decomposeFraction -- decompose a rational number into a/(p^b(p^c-1))
    • fastExponentiation -- computes powers of elements in rings of positive characteristic quickly
    • floorLog -- floor of a logarithm
    • frobenius -- computes Frobenius powers of ideals and matrices
    • frobeniusPower -- computes the (generalized) Frobenius power of an ideal
    • frobeniusRoot -- computes I^[1/p^e] in a polynomial ring over a finite field
    • frobeniusTraceOnCanonicalModule -- finds the u, which in a polynomial ring, determines the Frobenius trace on the canonical module of a quotient of that ring
    • HSLGModule -- computes the submodule of the canonical module stable under the image of the trace of Frobenius
    • isCohenMacaulay -- determines if a ring is Cohen-Macaulay
    • isFInjective -- whether a ring is F-injective
    • isFPure -- whether a ring is F-pure
    • isFRational -- whether a ring is F-rational
    • isFRegular -- whether a ring or pair is strongly F-regular
    • multiplicativeOrder -- multiplicative order of an integer modulo another
    • parameterTestIdeal -- computes the parameter test ideal of a Cohen-Macaulay ring
    • QGorensteinGenerator -- finds an element representing the Frobenius trace map of a Q-Gorenstein ring
    • testElement -- finds a test element of a ring
    • testIdeal -- computes the test ideal of f^t in a Q-Gorenstein ring
    • testModule -- finds the parameter test module of a reduced ring
  • Symbols
    • AscentCount -- an option for ascendIdeal
    • AssumeCM -- make assumptions about your ring
    • AssumeNormal, see AssumeCM -- make assumptions about your ring
    • AssumeReduced, see AssumeCM -- make assumptions about your ring
    • AssumeDomain -- an option to assume a ring is a domain
    • CanonicalStrategy -- an option for isFInjective
    • DepthOfSearch -- an option to specify how hard to search for something
    • FrobeniusPowerStrategy -- an option for frobeniusPower
    • FrobeniusRootStrategy -- an option for various functions
    • IsLocal -- an option used to specify whether to only work locally
    • Katzman -- a valid value for the option CanonicalStrategy
    • MaxCartierIndex -- an option to specify the maximum number to consider when computing the Cartier index of a divisor
    • MonomialBasis -- a valid value for the FrobeniusRootStrategy option
    • Naive -- a valid value for the option FrobeniusPowerStrategy
    • NoZeroC -- an option for decomposeFraction
    • QGorensteinIndex -- an option to specify the index of the canonical divisor, if known
    • Safe -- a valid value for the option FrobeniusPowerStrategy
    • Substitution -- a valid value for the FrobeniusRootStrategy option