Surjectivity is stable under base change
Nowadays, I close a new small case.
Proposition. For a surjective morphism between scheme $X\stackrel{f}\to Y$, For any $Z\to Y$, the base change $X\times_Y Z\to Z$ is also surjective.
The diagram is as following
$$\begin{array}{ccc} X\times_Y Z& \to & Z\\ \downarrow && \downarrow \\ Z& \to & Y\\\end{array}$$
In the first place, we will reduce the proposition into affine case.Since the proof involves some essential computation of tensor product, I will deal with secondly. At the end of the post, I will close the proof.
First Step (reduce to affine case). We will prove a more stronger statement,
For any $z\in Z$, let $y\in Y$ be its image, if there exists $x\in X$ such that $f(x)=y$, then exists $w\in X\times_Y Z$ mapsto $y$.
Take an affine set $\operatorname{Spec}A, \operatorname{Spec}B, \operatorname{Spec}C$ of $x,y,z$ such that the image of $\operatorname{Spec} A$ and $\operatorname{Spec} C$ is in $\operatorname{Spec} B$. So the problem reduce to the following statement.
Let $A\stackrel{\varphi}\leftarrow B\stackrel{\psi}\to C$ be ring homomorphisms, and primes $\mathfrak{p}, \mathfrak{r}$ of $A,C$ respectively, such that $\mathfrak{q}=\varphi^{-1}(\mathfrak{p})=\psi^{-1}(\mathfrak{r})$. Then there exists a prime $\mathfrak{s}$ of $A\otimes_B C$, such $\mathfrak{r}$ is the inverse image of $\mathfrak{s}$.
$$\begin{array}{ccc} A\otimes_B C& \leftarrow & A\\ \uparrow && \uparrow \\ C& \leftarrow & B \\ \end{array}\qquad \begin{array}{ccc} \mathfrak{s}& \mapsto & \mathfrak{p}\\ \overline{\downarrow} && \overline{\downarrow} \\ \mathfrak{r}& \mapsto & \mathfrak{q} \\ \end{array} $$
Second Step (some computation of tensor product). We show the following
Consider the tensor product of $k$-algebra $R_1\otimes_k R_2$. For a mutiplitive subset $S$ of $R_1$, one have $$S^{-1}(R_1\otimes_k R_2)=S^{-1} R_1\otimes_{\overline{S}^{-1}k} \overline{S}^{-1} R_2$$Where $\overline{S}\subseteq k$ is the inverse image of $S$, and $k$ is not necessary to be a field.
The proof is nothing but check the structure of tensor product. More precisely, $S^{-1}(R_1\otimes_kR_2)=S^{-1}R_1\otimes_{R_1}R_1\otimes_k R_2 =S^{-1}R_1 \otimes_kR_2$ and $$\begin{cases} \frac{r_1}{s}\otimes \frac{r_2}{s'} = \frac{r_1}{ss'}s'\otimes \frac{r_2}{s'}=\frac{r_1}{ss'}\otimes s'\frac{r_2}{s'}=\frac{r_1}{ss'}\otimes r_2\\\frac{r_1}{s_1}\frac{k}{s}\otimes \frac{r_2}{s_2}=\frac{r_1}{s_1}\frac{k}{s}\otimes s\frac{1}{s}\frac{r_2}{s_2}=\frac{r_1}{s_1}k\otimes \frac{1}{s}\frac{r_2}{s_2}=\frac{r_1}{s_1}\otimes \frac{k}{s}\frac{r_2}{s_2}\end{cases}$$
Third Step (finish the proof). By the second step, we can assume $B, C$ to be local ring. Then it reduces to whether $A\otimes_B C \otimes C/\mathfrak{r}=0$. We have know that $A\otimes_B B/\mathfrak{q}\neq 0$ by the assumption on $\mathfrak{q}$. One have $$A\otimes_B C\otimes_C C/\mathfrak{r}=\underbrace{A\otimes_B B/\mathfrak{q}}_{\neq 0}\otimes_{B/\mathfrak{q}}\otimes C/\mathfrak{r}$$But now, $B/\mathfrak{q}$ and $C/\mathfrak{r}$ is field, thus, it is not zero either, the proof is complete.
Appendix (The fiber of $y\in Y$ in the morphism $X \to Y$ is $X\times_Y k(y)$). We only need to prove the affine case. Let $B\stackrel{\varphi}\to A$ be the associated ring homomorphism, given a prime $\mathfrak{q}$ of $B$, one have $$\begin{array}{rl}f^{-1}(\mathfrak{q})& = \{\textrm{prime } \mathfrak{p}\subseteq A: \varphi^{-1}(\mathfrak{p})=\mathfrak{q}\} \\ & =\{\textrm{prime } \mathfrak{p}\subseteq A: \varphi^{-1}(\mathfrak{p})\subseteq \mathfrak{q}, \varphi(\mathfrak{q})\subseteq \mathfrak{p} \}\\ & \cong \{\textrm{prime } \mathfrak{p}\subseteq A_\mathfrak{q}/\varphi(\mathfrak{q})A_{\mathfrak{q}}\} \\ & \cong \operatorname{Spec} (A_\mathfrak{q}/\varphi(\mathfrak{q})A_{\mathfrak{q}})=\operatorname{Spec}( A\otimes_B B_\mathfrak{q}/\mathfrak{q}B_{\mathfrak{q}})=\operatorname{Spec} (A\otimes_B k(\mathfrak{q}))\end{array}$$Where $k(\mathfrak{q})=\operatorname{Frac} B/\mathfrak{q}=B_{\mathfrak{q}}/\mathfrak{q}B_{\mathfrak{q}}$ is the residual field of the point $\mathfrak{q}$.
Surjectivity is stable under base change的更多相关文章
- 关于CI/CD/CD (Continuous Integration/Continuous Delivery/Continuous Deployment)
Continuous Integration (CI) Continuous integration (CI) is the process that ensures the stability of ...
- C++ Core Guidelines
C++ Core Guidelines September 9, 2015 Editors: Bjarne Stroustrup Herb Sutter This document is a very ...
- 说说设计模式~适配器模式(Adapter)
返回目录 之前和大家一起谈了工厂模式和单例模式,今天来看一下另一种非常常用的模式,它就是适配器模式,第一次看到这个模式是通过“张逸”老师的“设计之道”这篇文章,在这里表adapter讲的很透彻,今天把 ...
- CakeDC(cakephp company)Git workflow--适合于较大团队大型项目开发
CakeDC Git workflow是一个项目开发和版本发布的工作流,在这个工作流程中开发和版本发布周期是基于几个关键阶段(key phases): Development: 所有活跃的开发活动都由 ...
- Raspberry Pi Kernel Compilation 内核编译官方文档
elinux.org/Raspberry_Pi_Kernel_Compilation#Use_the_provided_compiler Software & Distributions: S ...
- 1027. Colors in Mars (20) PAT
题目:http://pat.zju.edu.cn/contests/pat-a-practise/1027 简单题,考察十进制数和n进制数的转换和输出格式的控制. People in Mars rep ...
- PHP 使用用户自定义的比较函数对数组中的值进行排序
原文:PHP 使用用户自定义的比较函数对数组中的值进行排序 usort (PHP 4, PHP 5) usort — 使用用户自定义的比较函数对数组中的值进行排序 说明 bool ...
- libevent源码阅读笔记(一):libevent对epoll的封装
title: libevent源码阅读笔记(一):libevent对epoll的封装 最近开始阅读网络库libevent的源码,阅读源码之前,大致看了张亮写的几篇博文(libevent源码深度剖析 h ...
- RPi Kernel Compilation
Overview This page explains how to rebuild the kernel image for the RPi. There are two possible rout ...
随机推荐
- 【MongoDB】使用MongoVUE看不到插入的数据
问题描述 明明在命令行中,输入mongodb的插入数据的命令,并且插入数据显示成功,却在MongoVUE可视化工具中,看不到插入的数据? mongodb使用版本为(3.4.6) mongoVUE使用版 ...
- Python3+Selenium2完整的自动化测试实现之旅(五):自动化测试框架、Python面向对象以及POM设计模型简介
前言 之前的系列博客,陆续学习整理了自动化测试环境的搭建.IE和Chrome浏览器驱动的配置.selenium-webdriver模块封装的元素定位以及控制浏览器.处理警示框.鼠标键盘等方法的使用,这 ...
- [Go] golang的error接口
error接口1.error就是一个接口interface2.属于errors包,该包有一个导出方法New,返回了errorString类型3.errorString类型实现了error接口4.之所以 ...
- [Go] 使用go语言解决现代编程难题
1.计算机一直在演化,64核,128核等等,但是我们依旧在使用为单核设计的技术编程2.Go语言让分享自己的代码包更容易3.Go语言重新思考传统的面向对象,提供了更高效的复用代码手段4.Go不仅提供高性 ...
- (2)Maven快速入门_2maven在Eclipse中的设置
1.1 eclipse Maven 设置 [Eclipse Mars之后的版本已经集成了Maven] 1.1.1 eclipse 设置 Maven 下载jar的源码 和 doc 文件 勾 ...
- es6的let,const
1.es6 新增的let const 命令 let用来定义一个局部变量,故名思意就是只在当前代码块可用 1.1 let 声明的变量不存在变量提升(var 声明的变量存在变量提升)且代码块内 暂时性死区 ...
- Linux驱动学习1.hello world;
最近项目需要使用Linux系统开发,借此机会学习一下Linux驱动开发 hello word代码hello.c #include <linux/module.h> #include < ...
- 学习安卓开发[3] - 使用RecyclerView显示列表
在上一篇学习安卓开发[2] - 在Activity中托管Fragment中了解了使用Fragment的好处和方法,本次记录的是在进行列表展示时RecyclerView的使用. RecyclerView ...
- 安卓开发:UI组件-布局管理器和文本显示
接下来的随笔,记录了在学习b站up主:天哥在奔跑,录制的教学视频的同时,进行一个app开发. up主:天哥在奔跑 视频地址:https://www.bilibili.com/video/av38409 ...
- sed 查找文件的某一行内容
1,查找文件text中第三行的内容 命令: sed -n '3p' text 2,查找文件text中第二行到第四行的内容 命令: sed -n '2,4p' text