next | previous | forward | backward | up | top | index | toc | packages | Macaulay2 website
FrobeniusThresholds :: isFPT

isFPT -- checks whether a given rational number is the F-pure threshold



Consider an element $f$ of a $\mathbb{Q}$-Gorenstein ring of positive characteristic $p$ (of $\mathbb{Q}$-Gorenstein index not divisible by $p$), and a rational number $t$. If $t$ is the $F$-pure threshold of $f$, then the command isFPT(t, f) outputs true, and otherwise, it outputs false.

i1 : R = ZZ/11[x,y];
i2 : f = x^3 + y^2;
i3 : isFPT(9/11, f)

o3 = true
i4 : isFPT(9/12, f)

o4 = false

We also include an example in a singular ambient ring.

i5 : T = ZZ/7[a,b];
i6 : S = ZZ/7[x,y,z,w];
i7 : f = map(T, S, {a^3, a^2*b, a*b^2, b^3});

o7 : RingMap T <--- S
i8 : R = S/ker f;
i9 : isFPT(1/3, x)

o9 = true
i10 : isFPT(1/3 + 1/10000, x)

o10 = false
i11 : isFPT(1/3 - 1/10000, x)

o11 = false

Setting the AtOrigin option to true (its default value is false) tells the function to consider the $F$-pure threshold at the origin.

i12 : R = ZZ/11[x,y,z]/(x^2 - y*(z - 1));
i13 : isFPT(1/2, z - 1)

o13 = true
i14 : isFPT(1/2, z - 1, AtOrigin => true)

o14 = false

If the ambient ring $R$ is not a domain, the option AssumeDomain should be set to false. We assume that the ring is a domain by default, in order to speed up the computation.

If the Gorenstein index of $R$ is known, the user should set the option QGorensteinIndex to this value. Otherwise, the function attempts to find the Gorenstein index of $R$, assuming it is between 1 and the value passed to the option MaxCartierIndex (default value 10).

The option FrobeniusRootStrategy is passed to internal calls of functions from the TestIdeals package. The two valid values of FrobeniusRootStrategy are Substitution and MonomialBasis.

Setting the option Verbose (default value false) to true produces verbose output.

See also

Ways to use isFPT :

For the programmer

The object isFPT is a method function with options.