Flatness of a module sheaf over a morphism #
Scheme.Modules.IsFlatOver p M says that M is flat over the base along
p : X ⟶ S, stalkwise: at every point of X, the stalk of M is flat as a
module over the corresponding stalk of S, restricted along the local-ring
map p induces.
This is a property of one module sheaf and one morphism. It needs no derived
category, no moduli problem and no perfectness notion, and it is used before
any of them: Tor-amplitude models, geometric fibers and base-change arguments
all ask for flat terms. It lives with X.Modules for that reason — the
carrier in its public type is a module sheaf, and moduleStalkFunctor, the
only other repository construction it mentions, is the neighbouring
Modules/Pullback/Stalk.lean.
Flatness over the identity is equivalent to flatness at each module stalk, and is preserved by indexed coproducts of module sheaves.
It previously sat in Moduli/PerfectComplex/Relative.lean, where its first
consumer was; see docs/architecture/cutover-ledger.md, finding 11.
Not a morphism-flatness predicate #
Mathlib.AlgebraicGeometry.Morphisms.Flat is a different subject: it asks
that the morphism be flat, which is this condition for the structure sheaf
alone. Nothing here specializes to or is implied by that class, and no
instance relates them.
A module sheaf on X is flat over S when every stalk, restricted along
the local-ring map induced by p, is a flat module over the corresponding
stalk of S.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The identity morphism induces identity maps on stalk rings, and
ModuleCat.restrictScalarsId'App removes the scalar-restriction bookkeeping.
The stalk of a sheaf coproduct is a direct sum of its module stalks. Direct sums of flat modules are flat, so identity-relative flatness is closed under coproducts.