The Stacks project

This is taken from a forthcoming paper by János Kollár entitled “Variants of normality for Noetherian schemes”.

Lemma 10.119.2 (Kollár). Let $(R, \mathfrak m)$ be a local Noetherian ring. Then exactly one of the following holds:

  1. $(R, \mathfrak m)$ is Artinian,

  2. $(R, \mathfrak m)$ is regular of dimension $1$,

  3. $\text{depth}(R) \geq 2$, or

  4. there exists a finite ring map $R \to R'$ which is not an isomorphism whose kernel and cokernel are annihilated by a power of $\mathfrak m$ such that $\mathfrak m$ is not an associated prime of $R'$ and $R' \not= 0$.

Proof. Observe that $(R, \mathfrak m)$ is not Artinian if and only if $V(\mathfrak m) \subset \mathop{\mathrm{Spec}}(R)$ is nowhere dense. See Proposition 10.60.7. We assume this from now on.

Let $J \subset R$ be the largest ideal killed by a power of $\mathfrak m$. If $J \not= 0$ then $R \to R/J$ shows that $(R, \mathfrak m)$ is as in (4).

Otherwise $J = 0$. In particular $\mathfrak m$ is not an associated prime of $R$ and we see that there is a nonzerodivisor $x \in \mathfrak m$ by Lemma 10.63.18. If $\mathfrak m$ is not an associated prime of $R/xR$ then $\text{depth}(R) \geq 2$ by the same lemma. Thus we are left with the case when there is a $y \in R$, $y \not\in xR$ such that $y \mathfrak m \subset xR$.

If $y \mathfrak m \subset x \mathfrak m$ then we can consider the map $\varphi : \mathfrak m \to \mathfrak m$, $f \mapsto yf/x$ (well defined as $x$ is a nonzerodivisor). By the determinantal trick of Lemma 10.16.2 there exists a monic polynomial $P$ with coefficients in $R$ such that $P(\varphi ) = 0$. We conclude that $P(y/x) = 0$ in $R_ x$. Let $R' \subset R_ x$ be the ring generated by $R$ and $y/x$. Then $R \subset R'$ and $R'/R$ is a finite $R$-module annihilated by a power of $\mathfrak m$. Thus $R$ is as in (4).

Otherwise there is a $t \in \mathfrak m$ such that $y t = u x$ for some unit $u$ of $R$. After replacing $t$ by $u^{-1}t$ we get $yt = x$. In particular $y$ is a nonzerodivisor. For any $t' \in \mathfrak m$ we have $y t' = x s$ for some $s \in R$. Thus $y (t' - s t ) = x s - x s = 0$. Since $y$ is not a zero-divisor this implies that $t' = ts$ and so $\mathfrak m = (t)$. Thus $(R, \mathfrak m)$ is regular of dimension 1. $\square$


Comments (8)

Comment #2227 by David Savitt on

I guess you need a little argument to see that (2) and (3) each exclude (4). [For (2), is maximal CM hence free of rank one. For (3), use the long exact sequence of associated to .]

Comment #2230 by on

Yes, this proof is really a bit too terse. I shall work on it when I go through the comments in a few weeks.

Comment #3818 by Sandor Kovacs on

At the end of the fourth paragraph (starting with "If then...") it should be saying that "R′/R is a finite R-module annihilated by a power of " not that "R′/R is a finite R-module annihilated by a power of x".

Comment #6243 by Brendan Seamas Murphy on

I think the lemma is slightly wrong as stated, because condition 1 implies condition 4, taking . If is a local Artinian ring then for some , so the conditions that the kernel and cokernel of the map are automatic. The map isn't an isomorphism since isn't a local ring, it's a finite map, and as is zero there are no associated primes (thus isn't an associated prime of ).

Comment #6244 by Brendan Seamas Murphy on

*that the kernel and cokernel of the map are annihilated are automatic

Comment #6245 by on

Yes, I agree. So the fix is to say in part (4) that is nonzero, right? In other words, this is the usual mistake of forgetting to check what happens with .


Post a comment

Your email address will not be published. Required fields are marked.

In your comment you can use Markdown and LaTeX style mathematics (enclose it like $\pi$). A preview option is available if you wish to see how it works out (just click on the eye in the toolbar).

Unfortunately JavaScript is disabled in your browser, so the comment preview function will not work.

All contributions are licensed under the GNU Free Documentation License.




In order to prevent bots from posting comments, we would like you to prove that you are human. You can do this by filling in the name of the current tag in the following input field. As a reminder, this is tag 0BHZ. Beware of the difference between the letter 'O' and the digit '0'.