felixwellen / synthetic-zariski

Latex documentation of our understanding of the synthetic /internal theory of the Zariski-Topos
MIT License
50 stars 5 forks source link

Define flatness #8

Open MatthiasHu opened 11 months ago

MatthiasHu commented 11 months ago

Can we give a pointwise definition of flat maps between (affine) schemes?

MatthiasHu commented 11 months ago

If A, B are (external) finitely presented k-Algebras and $A\to B$ is a map, is " $A\to B$ flat" the same as "internally, $A \otimes R\to B \otimes R$ is flat"?

iblech commented 11 months ago

The former implies the latter: Being flat can be put as a (countable conjunction of) geometric sequents, by the equational criterion for flatness. Hence, if A → B is flat (in Set), then the induced map A̲ → B̲ of constant sheaves is also flat. Because base change (to R) preserves flatness, the map A̲ ⊗ R → B̲ ⊗ R is flat as well.

The converse also holds, a quick way to see this is as follows: If A̲ ⊗ R → B̲ ⊗ R is flat, then so are the induced maps on stalks (= on local R-algebras). In particular, the maps A\mathfrak{p} → B\mathfrak{p} for all prime ideals \mathfrak{p} are flat. By a standard commutative algebra result, the map A → B is flat.

As stated, this argument is not constructive but it can be constructivized (by direct Kripke-Joyal computation or by the geometric Nullstellensatz or probably by several other techniques).

MatthiasHu commented 11 months ago

Regarding the original question above (for affine schemes): Yes, an algebra homomorphism is flat iff $B \otimes p$ is a flat R-algebra for every point p of Spec(A).

Proof sketch (found with Hugo and Marc): We use the equational criterion for flatness, involving -- in the terminology of [Lombardi, Quitté] -- "syzygies" in the A-module B and "explaining" them. So let a syzygy in B be given and let its image syzygy in $B \otimes p$ be explained for every p. By Z-choice, we get explanations in every $B_f$, for some Zariski cover $(1) = (f_1, ..., f_n)$ of $A$. Then by the "Concrete local-global principle. (For flat modules)" in [Lombardi, Quitté], we get a global explanation in B. So B is flat over A.

MatthiasHu commented 11 months ago

We still lack a good definition for general types.

hmoeneclaey commented 11 months ago

By the way with Matthias and Marc we listed a few properties that should hold for flat and faithfully flat maps (we guess faithfully flat = flat + non-empty fiber):

Formally smooth implies flat (By the fact that smooth schemes are locally standard, it seems enough to show that étale implies flat when dealing with schemes).

If we have f : X -> Y surjective and formally smooth then X flat iff Y flat. Moreover f faithfully flat should be enough.

We should have faithfully flat descent for schemes, modules, ... This means e.g. the the type of schemes should be a fppf sheaf in a broad sense (i.e. any faithfully flat map is a cover).

If M : X -> R-Mod is flat, then $\Gamma(X,M)$ should be flat, as well as $H^n(X,M)$ for all $n$.

Projective families of schemes are flat iff they have a constant Hilbert polynomial. What does it mean in SAG?

In TAG, faithfully flat maps have the (non-unique) right lifting property against embeddings of schemes. This does not seem to work for us as a type having this property is merely inhabited (since 0 -> 1 is an embedding of schemes).

mnieper commented 11 months ago

Proposal

A type X is flat if the functor f*: QCoh(1) -> QCoh(X) is an exact functor of abelian categories. The type X is faithfully flat if f*: QCoh(1) -> QCoh(X) is faithful and exact.


Here by QCoh, I mean weakly quasi-coherent modules. I suggest to drop the adverb "weakly" in future expositions.

felixwellen commented 11 months ago

It would definitely mean that a type if flat iff it's 1-truncation is flat. But it is already for other properties the case that they are determined by the 0-truncation, so I guess this is okay. I am also for dropping "weakly".

felixwellen commented 11 months ago

By the way: We do not know if étale implies flat for affine schemes.

coquand commented 11 months ago

Here are some comments from Henri about this question (Section 3)

On 12 Oct 2023, at 11:25, Felix Cherubini @.***> wrote:

By the way: We do not know if étale implies flat for (affine) schemes.

— Reply to this email directly, view it on GitHub https://github.com/felixwellen/synthetic-zariski/issues/8#issuecomment-1759253806, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAVNPFBTO5GHWOOI7DZ3OCTX66ZRZANCNFSM6AAAAAA5PDKGPQ. You are receiving this because you are subscribed to this thread.

felixwellen commented 11 months ago

image

hmoeneclaey commented 11 months ago

To comment on Marc proposal, do we know that QCoh(X) is abelian? If exactness in Qcoh(X) is defined pointwise then any type is flat...

felixwellen commented 11 months ago

Ah yes - we know that QCoh(X), where X is an affine scheme has kernels and cokernels (so it should be abelian). But as far as I remember, we also know that exactness is pointwise. So any affine scheme would be flat with this definition...

felixwellen commented 11 months ago

This weirdness around exactness would actually be a reason to keep the "weakly", because it diverts so much from the classical qc-modules.

mnieper commented 11 months ago

My proposal should work in classical algebraic geometry. So the problem here is that our notion of "exactness" is too weak (or too strong, depending on how one views this). If I have an exact sequence classically and base change it, it doesn't have to be exact anymore. On the other hand, our notion of "exactness" includes exactness under base changes as well.

mnieper commented 11 months ago

To illustrate: Externally, the sequence 0 → 2Z → Z → Z/2Z → 0 is exact. However, its exactness is not stable under base change (to Z/2Z, say). It is tautologically connected to flatness: externally, exactness is conserved by flat base change. Internally, by every base-change, which will amount to the same if every algebra is said to be flat.

hmoeneclaey commented 11 months ago

Very enlightening thanks!

felixwellen commented 11 months ago

I just had a long discussion with Hugo and I want to share our conclusions. Firstly and most importantly, one should always keep in mind, that wqc-Modules are not to be expected to correspond to the qc sheaves of modules of classic algebraic geometry. Also, pullback and push-forward of wqc-modules, like we defined it, should not correspond to the classic operations with the same name in any precise sense, but only vaguely in spirit and function.

Here is an argument, that the pullback of wqc modules is actually not given by tensoring and therefore not a base change in the usual sense: Let us look at the short exact sequence $0\to 2R\to R\to R/2R\to 0$ of wqc-modules. This is a sequence of wqc-modules over the point and we can compute that the pullback to some affine $\mathrm{Spec}(A)$ is $0\to 2A\to A\to A/2A\to 0$. So it is still exact for any fp R-algebra - which would fail if we would take the tensor product. So only these different base changes are exact between categories of wqc-modules.

We could try to figure out more about the relation of wqc-modules and qc-sheaves by internally by defining, say, sheaves on an affine scheme $\mathrm{Spec}(A)$ and the funtors to and from the categories of $A$-modules and from the category of $R$-module bundles on $\mathrm{Spec}(A)$ (a 'to'-functor might be definable by taking stalks, but I don't know if that would do us any good). We know already that there is some induced equivalence on fp modules (between bundles and modules) and are sure that in general none of the functors is an equivalence.

In total: wqc-modules are not qc-sheaves, pullback and push-forward are different from the classical setup and have different properties. So know I am very sure I want to keep the name "wqc" and maybe sometimes think of it as "weirdly quasi-coherent" (which is too much of a joke for an official definition). If we didn't already have evidence that wqc-modules are useful - by Serre-Affininess and Cech-Cohomology - it would be somewhat dubious to work with them. But as things are, I guess we can be happy for now that we have something which is easier to deal with synthetically and seems to give us the classical applications.

mnieper commented 11 months ago

Here is an argument, that the pullback of wqc modules is actually not given by tensoring and therefore not a base change in the usual sense: Let us look at the short exact sequence 0→2R→R→R/2R→0 of wqc-modules. This is a sequence of wqc-modules over the point and we can compute that the pullback to some affine Spec(A) is 0→2A→A→A/2A→0. So it is still exact for any fp R-algebra - which would fail if we would take the tensor product. So only these different base changes are exact between categories of wqc-modules.

So what is the sequence in case A = R/2R? Does your computation give 0 → A → A →0 → 0?

felixwellen commented 11 months ago

$0\to 0\to A \to A \to 0$

mnieper commented 11 months ago

Now, if we write the initial sequence as 0 → R → R → R/2R → 0, where the first non-trivial map is given by multiplication by 2, how would the argument then go? To be consistent, it seems that the base change of an exact sequence is not defined term-wise, but by recalculating the kernel.

hmoeneclaey commented 11 months ago

Marc, the sequence you wrote is not exact in general. If 2 is invertible then you sequence is 0 → R → R → 0 → 0 and the pullback is 0 → A → A → 0 → 0 with multiplication by 2.

felixwellen commented 11 months ago

Maybe Marc had in mind what you told me earlier concerning computation of $0\to 2R^{\mathrm{Spec}(R/2R)}\to R^{\mathrm{Spec}(R/2R)} \to (R/2R)^{\mathrm{Spec}(R/2R)}\to 0$. Since exponentiation with ${\mathrm{Spec}(R/2R)}$ is left exact, we can calculate $2R^{\mathrm{Spec}(R/2R)}$ as the kernel of pointwise multiplication with 2 as a map $R^{\mathrm{Spec}(R/2R)}\to R^{\mathrm{Spec}(R/2R)}$. Which is $2(R^{\mathrm{Spec}(R/2R)})=2R/2R=0$.

mnieper commented 11 months ago

Marc, the sequence you wrote is not exact in general. If 2 is invertible then you sequence is 0 → R → R → 0 → 0 and the pullback is 0 → A → A → 0 → 0 with multiplication by 2.

Exactly. But what is the difference to writing $0 \to 2R \to R \to R/2R \to 0$? In case, $2$ is invertible, $2R = R$ and $R/2R = 0$, so you again end up with $0 \to R \to R \to 0 \to 0$.

Now reading Felix' new comment...