The Stacks project

A ring map is surjective if and only if it is a finite epimorphism.

Lemma 10.107.6. Let $R \to S$ be a ring map. The following are equivalent

  1. $R \to S$ is an epimorphism and finite, and

  2. $R \to S$ is surjective.

Proof. (This lemma seems to have been reproved many times in the literature, and has many different proofs.) It is clear that a surjective ring map is an epimorphism. Suppose that $R \to S$ is a finite ring map such that $S \otimes _ R S \to S$ is an isomorphism. Our goal is to show that $R \to S$ is surjective. Assume $S/R$ is not zero. The exact sequence $R \to S \to S/R \to 0$ leads to an exact sequence

\[ R \otimes _ R S \to S \otimes _ R S \to S/R \otimes _ R S \to 0. \]

Our assumption implies that the first arrow is an isomorphism, hence we conclude that $S/R \otimes _ R S = 0$. Hence also $S/R \otimes _ R S/R = 0$. By Lemma 10.5.4 there exists a surjection of $R$-modules $S/R \to R/I$ for some proper ideal $I \subset R$. Hence there exists a surjection $S/R \otimes _ R S/R \to R/I \otimes _ R R/I = R/I \not= 0$, contradiction. $\square$


Comments (4)

Comment #834 by on

Suggested slogan: A ring map is surjective if and only if it is a finite epimorphism.

Comment #3861 by anon on

Why does surjective imply finite? Perhaps the finiteness should be an apriori assumption?

Comment #3862 by anon on

Why does surjective imply finite? Perhaps the finiteness should be an apriori assumption?

Comment #3942 by on

A surjective ring map is a finite ring map. So everything is fine.


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