The Stacks project

Lemma 31.15.2. Let $X$ be a locally Noetherian scheme. Let $D \subset X$ be a closed subscheme corresponding to the quasi-coherent ideal sheaf $\mathcal{I} \subset \mathcal{O}_ X$.

  1. If for every $x \in D$ the ideal $\mathcal{I}_ x \subset \mathcal{O}_{X, x}$ can be generated by one element, then $D$ is locally principal.

  2. If for every $x \in D$ the ideal $\mathcal{I}_ x \subset \mathcal{O}_{X, x}$ can be generated by a single nonzerodivisor, then $D$ is an effective Cartier divisor.

Proof. Let $\mathop{\mathrm{Spec}}(A)$ be an affine neighbourhood of a point $x \in D$. Let $\mathfrak p \subset A$ be the prime corresponding to $x$. Let $I \subset A$ be the ideal defining the trace of $D$ on $\mathop{\mathrm{Spec}}(A)$. Since $A$ is Noetherian (as $X$ is Noetherian) the ideal $I$ is generated by finitely many elements, say $I = (f_1, \ldots , f_ r)$. Under the assumption of (1) we have $I_\mathfrak p = (f)$ for some $f \in A_\mathfrak p$. Then $f_ i = g_ i f$ for some $g_ i \in A_\mathfrak p$. Write $g_ i = a_ i/h_ i$ and $f = f'/h$ for some $a_ i, h_ i, f', h \in A$, $h_ i, h \not\in \mathfrak p$. Then $I_{h_1 \ldots h_ r h} \subset A_{h_1 \ldots h_ r h}$ is principal, because it is generated by $f'$. This proves (1). For (2) we may assume $I = (f)$. The assumption implies that the image of $f$ in $A_\mathfrak p$ is a nonzerodivisor. Then $f$ is a nonzerodivisor on a neighbourhood of $x$ by Algebra, Lemma 10.68.6. This proves (2). $\square$


Comments (2)

Comment #3829 by Antoine VEZIER on

Small typo on line 5 I think. It is a_i, h\in A and not h_i, h\in A.


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 0AG8. Beware of the difference between the letter 'O' and the digit '0'.