-- This file demonstrates some of the commands from the Macaulay 2 -- package FrobeniusMultiplicities.m2. To best use this file, open -- inside emacs and use the commands below. (This assumes you have -- set up your emacs to interface with Macaulay 2. For help doing -- this, see the M2 webpage http://www.math.uiuc.edu/Macaulay2/ -- This package computes approximations of Hilbert-Kunz multiplicities -- and their higher derived counterparts. First a couple definitions: -- -- Let (A,m,k) be a local ring of characteristic p > 0. Let f:A -> A -- denote the Frobenius morphism and let fnA be the A-module with -- underlying module structure equal to A but with left action defined -- by f^n. Let F:mod(A) -> mod(A) denote the Frobenius functor -- defined by tensoring by fA. -- -- The Hilbert-Kunz multiplicity of A, denoted e_HK(A) is -- -- e_HK(A) = lim_n l(A/m^[p^n]) / p^(nd) -- = lim_n l(F^n(k)) / p^(nd) -- = lim_n l(k tensor_A fnA) / p^(nd) -- where d = dim(A) and I^[t] denotes the ideal (x_1^t,..,x_m^t) -- where I = (x_1,..,x_m). -- -- Similary one can define higher tor versions: -- -- t_i(A) = lim_n l(Tor_i(k,fnA)) / p^(nd). -- -- Note that t_0(A) = e_HK(A). -- The numbers e_HK(A) and t_i(A) encode important information about A, but -- these numbers are often difficult to compute. This package is designed to -- calculate the first few terms in the sequences whose limits are e_HK or t_i. -- Below are some examples. -- Split screen your Emacs (CTRL-x 2, F12) -- Use F11 to run commands -- Make sure this file is in the same directory as "FrobeniusMultiplicites.m2" needsPackage"FrobeniusMultiplicities"; p = 2; R = ZZ/p[x,y,z] -- First an easy example. R is regular so its Hilbert-Kunz Multiplicity -- should be 1. Let's check it. hkSeq(R,6) -- hkSeq(R,n) gives the first n elements of the sequence l(F(k))/p^d, -- l(F^2(k))/p^(2d), l(F^3(k))/p^(3d),..... whose limit is e_HK(A). -- Often it is clear from the first few terms what the limit ought to -- be. In this case, it is clear that the limit is 1. You can also -- run the following command to get by default the first 8 terms. hkSeq(R) -- By Jinjia Li's / Ian Aberbach's result, the invariants t_i(R) -- should be 0 since R is regular. (This is an if and only if.) tiSeq(R,1,6) tiSeq(R,2,6) tiSeq(R,3,6) tiSeq(R,4,6) -- Looks good. The Hilbert-Kunz multiplicity is not always 1. In -- fact, for unmixed rings, it is 1 if and only if the ring is -- regular. So let's give it a nonregular, unmixed ring to check -- this. I = ideal(z^2 - x*y); A = R / I; hkSeq(A,6) -- e_hk(A) = 3/2. (See Tight Closure by Craig Huneke - exercise 6.3) -- Note that this shows e_hk is not always integral. It is -- conjectured to be rational, though there is rumor of a -- counterexample of Monsky. -- What about the higher t_i? tiSeq(A,1,6) tiSeq(A,2,6) tiSeq(A,3,6) tiSeq(A,4,6) -- A is not regular and indeed none of the t_i vanish. -- Let's try another example p = 2 ; R = ZZ/p[x,y,z]; I = ideal(x^2, x*y^2); A = R/I; hkSeq(A,8) -- or if you prefer the "real" thing (pun intended): numeric hkSeq(A,8) -- Note A is not regular, but it is also not unmixed. -- So even though it appears e_hk(A) = 1, this doesn't contradict anything. -- The higher derived multiplicities t_i are a bit more interesting here. tiSeq(A,0,8) tiSeq(A,1,8) tiSeq(A,2,8) tiSeq(A,3,8) -- Another example. By Shimomoto-Enescu, for p != 2, the minimal -- nonregular e_hk (for unmixed rings) is attained by k[X]/(sum_i -- x_i^2). In char 2 this doesn't work, so we get an example of where -- e_hk depends on p. This turns out to be true of the t_i as well. -- char(A) = 2 p = 2; R = ZZ/p[x,y,z]; I = ideal(x^2+y^2+z^2); A = R/I; hkSeq(A,6) tiSeq(A,1,6) tiSeq(A,2,6) -- char(A) = 3 p = 3; R = ZZ/p[x,y,z]; I = ideal(x^2+y^2+z^2); A = R/I; numeric hkSeq(A,6) tiSeq(A,1,6) tiSeq(A,2,6) tiSeq(A,3,6) -- One advantage of this package is that we compute the relevant -- complexes directly by taking elements in the matrices defining maps -- in a free resolution of k and raise them to the p^n-th power and -- compute homology. This turns out to be much quicker than computing -- a tor module against fnA, where one defines fnA using a pushForward -- command. -- -- See below for a sample timing comparison p = 2; R = ZZ/p[x,y,z]; I = ideal({x*y,x*z}); A = R/I; m = ideal vars A; k = module A / m; -- One way to compute Tor_i(M,fnA) is by first computing the module -- fnA via a pushForward command. (The following code was taken, with -- permission, from the package by Bart Snapp and Karl Schwede:) frobenius = method(); frobenius(ZZ,Ring) := RingMap => (n,A)-> ( map(A,A,apply(gens A,i -> i^((char A)^n)),DegreeMap => j -> (char A)^n*j)); f = frobenius(3,A); time Af = pushForward(f,A^1); -- Putting Af (fnA) in the right slot makes M2 compute a free resolution of it. -- This can be very slow. time length Tor_1(k,Af) -- Putting Af (fnA) in the left slot makes M2 compute a free resolution of k -- and then tensor by fnA. This is better, but still difficult for large n -- or if dim(A) is large. time length Tor_1(Af,k) -- This package computes the complex directly and takes homology and is faster -- than both of the above choices. time length torF(k,1,3) -- Ideas? Comments? Suggestions? -- Please send them to Jason McCullough: jmccullo@math.uiuc.edu -- Some useful references (In the order I thought of them): -- 1. Huneke, Craig -- Tight closure and its applications. -- With an appendix by Melvin Hochster. -- CBMS Regional Conference Series in Mathematics, 88. -- Published for the Conference Board of the Mathematical Sciences, Washington, DC; by the -- American Mathematical Society, Providence, RI, 1996. -- -- 2. Watanabe, Kei-ichi; Yoshida, Ken-ichi -- Hilbert-Kunz multiplicity and an inequality between multiplicity and colength. -- J. Algebra 230 (2000), no. 1, 295--317. -- -- 3. Huneke, Craig; Yao, Yongwei -- Unmixed local rings with minimal Hilbert-Kunz multiplicity are regular. -- Proc. Amer. Math. Soc. 130 (2002), no. 3, 661--665 -- -- 4. Li, Jinjia -- Characterizations of regular local rings in positive characteristics. -- Proc. Amer. Math. Soc. 136 (2008), no. 5, 1553--1558. -- -- 5. Aberbach, Ian M.; Li, Jinjia -- Asymptotic vanishing conditions which force regularity in local rings of prime characteristic. -- Math. Res. Lett. 15 (2008), no. 4, 815--820. -- -- 6. Dutta, S. P. -- Ext and Frobenius. -- J. Algebra 127 (1989), no. 1, 163--177. -- -- 7. Dutta, Sankar P. -- Frobenius and multiplicities. -- J. Algebra 85 (1983), no. 2, 424--448. -- -- 8. Roberts, Paul C. -- Multiplicities and Chern classes in local algebra. -- Cambridge Tracts in Mathematics, 133. Cambridge University Press, Cambridge, 1998.