这三个词经常一起出现,但它们并不是同一层级上的对象。可以把它们理解成现代几何里三次逐步升级的表达方式。
先说 sheaf。sheaf 解决的问题是:一个空间上的局部信息,如何被一致地拼成整体信息。函数、微分形式、解空间、局部截面,都可以通过 sheaf 来组织。它背后的哲学是“先局部,再粘合”。
scheme 是代数几何对“空间”概念的一次大扩展。经典代数几何主要研究多项式方程的零点集合,而 scheme 允许我们把空间与其上的函数环一起看待。这样做的好处是,奇点、不可约分支、算术信息都能被更自然地纳入几何对象内部。
stack 则是在 scheme 之上再进一步。它出现的原因是:有些几何对象不仅有点,还带着非平凡的自同构。例如模空间里两个对象可能不是简单地“相等或不等”,而是“同构”。如果只用普通空间去参数化这些对象,很多结构会丢失。stack 保留了这些同构信息,因此更适合描述模问题。
简化地说:
- sheaf 关心局部数据怎样粘起来;
- scheme 关心什么才算足够好的几何空间;
- stack 关心带有同构和对称性的参数空间如何被正确描述。
它们难的地方不只是定义复杂,而是它们背后都在要求我们改变对“空间”的直觉。