Zulip Chat Archive

Stream: condensed mathematics

Topic: breen deligne lemma


Johan Commelin (Oct 11 2021 at 13:25):

I think I've worked out a full proof for the following fact (after some help by Peter :thank_you:). Let MM be a condensed abelian group that is torsion free

(i,Exti(Q(M),V)=0)    Exti(M,V)=0\left(∀ i, \text{Ext}^i(Q'(M), V) = 0\right) \quad \implies \quad \text{Ext}^i(M, V) = 0

The proof I have makes use of tensor products of condensed abelian groups, and the fact that the commute with colimits. So we probably want to prove a Hom⊗ ⊣ \text{Hom} adjunction.

Peter Scholze (Oct 11 2021 at 13:26):

(deleted)

Johan Commelin (Oct 11 2021 at 13:28):

I'll try to sketch the proof of the above fact in this thread. Recall that Q(M)Q'(M) is a complex of the form

Z[M2n]Z[M4]Z[M2]Z[M]… → ℤ[M^{2^n}] → … → ℤ[M^4] → ℤ[M^2] → ℤ[M]

See the Breen--Deligne chapter in the blueprint for the definition of the differential.

Johan Commelin (Oct 11 2021 at 13:31):

So we get triangles of the form τi+1Q(M)τiQ(M)Hi(Q(M))[i]τ_{≥ i+1} Q'(M) → τ_i Q'(M) → H_i(Q'(M))[i].
Note that τ0Q(M)=Q(M)τ_0 Q'(M) = Q'(M) and H0(Q(M))=MH_0(Q'(M)) = M.

Johan Commelin (Oct 11 2021 at 13:32):

Also, Exti(τjQ(M),V)=0\text{Ext}^i(τ_j Q'(M), V) = 0 for i<ji < j straightforward from the defn of τjτ_j.

Johan Commelin (Oct 11 2021 at 13:33):

So now we assume by induction that Extj(M,V)=0\text{Ext}^j(M,V) = 0 for all j<ij < i.

Johan Commelin (Oct 11 2021 at 13:36):

The 00-th triangle tells us that Exti(M,V)=0\text{Ext}^i(M,V) = 0 if we can show that Exti(τ1Q(M),V)=0\text{Ext}^i(\tau_{≥1} Q'(M),V) = 0.
Now we use the 11-th triangle, which tells us that we need to prove that Exti(τ2Q(M),V)=0\text{Ext}^i(\tau_{≥2} Q'(M),V) = 0 and additionally, show that Exti(H1(Q(M))[1],V)=0\text{Ext}^i(H_1(Q'(M))[1], V) = 0.

Johan Commelin (Oct 11 2021 at 13:38):

After ii such steps, we end up with Exti(τiQ(M),V)=0\text{Ext}^i(\tau_{≥i} Q'(M),V) = 0 which is trivially true, and ii conditions of the form
Exti(Hj(Q(M))[j],V)=0\text{Ext}^i(H_j(Q'(M))[j], V) = 0.

Johan Commelin (Oct 11 2021 at 13:41):

Those final conditions follow from the following two claims:

  • Hj(Q(M))=Hj(Q(Z))MH_j(Q'(M)) = H_j(Q'(ℤ)) ⊗ M
  • Extj(AM,V)=0\text{Ext}^j(A ⊗ M,V) = 0 for all object AA and all j<ij < i if Extj(M,V)=0\text{Ext}^j(M,V) = 0 for all j<ij < i (which is our ind.hyp.).

Johan Commelin (Oct 11 2021 at 13:44):

For the first claim, we write MM as a filtered colimit of fin.gen. free objects Z[S]ℤ[S], where SS runs over finite subsets of MM. (This can be done, because MM was assumed torsion free.)
From the definition of Q(M)Q'(M) we find Q(M)=colimSQ(Z[S])Q'(M) = \text{colim}_S Q'(ℤ[S]). By the homotopy property of QQ', we know that it is additive (as functor to the derived category, interesting for Lean!!) and therefore we get =colimSQ(Z)S = \text{colim}_S Q'(ℤ)^S.

Johan Commelin (Oct 11 2021 at 13:45):

Now we take homology, and use that homology commutes with filtered colimits (because kernels and cokernels do).

Johan Commelin (Oct 11 2021 at 13:46):

Hence Hj(Q(M))=colimSHj(Q(Z))S=Hj(Q(Z))MH_j(Q'(M)) = \text{colim}_S H_j(Q'(ℤ))^S = H_j(Q'(ℤ)) ⊗ M as desired.

Johan Commelin (Oct 11 2021 at 13:49):

Finally, for the second claim above, we take a free resolution FF^• of AA. We can then compute

Extj(AM,V)=Hj(Hom(FM,V))\text{Ext}^j(A ⊗ M, V) = H_j(\text{Hom}(F^• ⊗ M, V))

and since the FkF^k are free, we can pull them out of the tensor and the hom, and turn the direct sums into products. The result vanishes by the ind.hyp.

Johan Commelin (Oct 11 2021 at 13:51):

As a final remark. If MM comes equipped with a distinguished endomorphism (so that it is a condensed Z[T⁻¹]ℤ[T⁻¹]-module), then all the above is T⁻¹T⁻¹-equivariant, and all the computations still make sense. So the lemma in the first post also holds for Ext groups of Z[T⁻¹]ℤ[T⁻¹]-modules (which is what we need).

Johan Commelin (Oct 11 2021 at 13:56):

I think we can avoid defining the derived category (which is probably a pain if we don't want to bump universes and still be general). We can exhibit a quasi-isomorphism between Q(AB)Q'(A ⊕ B) and Q(A)Q(B)Q'(A) ⊕ Q'(B). It should be possible to work with that. Although it will make the proof a bit uglier.

Riccardo Brasca (Oct 11 2021 at 14:14):

Wow, that's amazing!

Kevin Buzzard (Oct 11 2021 at 14:49):

This is the sort of mathematics which I had somehow imagined would be "trivial to formalise in a theorem prover, and probably done many times already by Voevodsky and others", before I knew anything about theorem provers.

Kevin Buzzard (Oct 11 2021 at 14:50):

Everything follows from the axioms so it must all be trivial, right?

Kevin Buzzard (Oct 11 2021 at 14:51):

Someone once said to me that Lean makes doing maths in a theorem prover about as easy as you thought doing maths in a theorem prover would be before you actually tried to use a theorem prover.

Johan Commelin (Oct 11 2021 at 14:51):

Well, I'm a bit scared by that tensor product. One thing that will help a lot is if we can check things on extremally disconnecteds. For example, there you don't need to sheafify the tensor product.

Johan Commelin (Mar 22 2022 at 18:04):

We finally have a formal statement of the BD lemma:

lemma main_lemma (A : 𝒜ᵒᵖ) (B : 𝒜) (f : A  A) (g : B  B) :
  ( i, is_iso $ ((Ext' i).map f).app B - ((Ext' i).obj A).map g) 
  ( i, is_iso $
    ((Ext i).map ((BD.eval F).op.map f)).app ((single _ 0).obj B) -
    ((Ext i).obj ((BD.eval F).op.obj A)).map ((single _ 0).map g)) :=

Blueprint: https://leanprover-community.github.io/liquid/sect0009.html#Qprime-prop

Johan Commelin (Mar 22 2022 at 18:08):

Reading this statement makes me wonder whether we should have actually tried to work with ℤ[T⁻¹]-modules. But I think it's fine.

Johan Commelin (May 31 2022 at 05:57):

The administration of working with

is_iso $
    ((Ext i).map ((BD.eval F).op.map f)).app ((single _ 0).obj B) -
    ((Ext i).obj ((BD.eval F).op.obj A)).map ((single _ 0).map g))

aka

fg ⁣:Exti(Q(A),B)Exti(Q(A),B)is an isof^* - g_* \colon \text{Ext}^i(Q'(A), B) \to \text{Ext}^i(Q'(A), B) \qquad \text{is an iso}

for maps f ⁣:AAf \colon A \to A and g ⁣:BBg \colon B \to B didn't look very appetizing. So I decided to bundle everything up into the category of endomorphisms, with objects (A,f)(A,f).
If AA was an object of Ab\text{Ab}, then the resulting category is of course equivalent to Z[X]-Mod\mathbb{Z}[X]\text{-Mod}.

The upshot is that (modulo a few sorrys) we now only need to work with

is_zero (((Ext i).obj A').obj B')

where A' and B' are now objects of an arbitrary ab.cat (potentially this category of endomorphisms).

Johan Commelin (May 31 2022 at 05:57):

There is plenty of low-hanging fruit in for_mathlib/endomorphisms/*.

Kevin Buzzard (May 31 2022 at 10:13):

I will have time this evening (but probably not before).

Kevin Buzzard (May 31 2022 at 11:37):

I took a look at the files on the tube to work (where I can't mark!). This claim map_homotopy_category_is_bounded_above in endomorphisms.Ext says that if a complex is bounded below and you hit it with an additive functor it remains bounded below. I am confused about this. Is the functor Ab -> Ab sending all abelian groups to Z/37Z\mathbb{Z}/37\mathbb{Z} and all morphisms to the zero morphism, additive? If so then it sends bounded below complexes to not-bounded-below complexes. Where did I screw up?

Johan Commelin (May 31 2022 at 11:47):

Hmm, you can't send identity maps to 0, right?

Johan Commelin (May 31 2022 at 11:47):

additive functors preserve zero homs, and hence zero objects. Because you are a zero object iff id = 0.

Adam Topaz (May 31 2022 at 12:24):

Do we have something liike functor.map_is_zero for an additive functor? I suppose not.

Adam Topaz (May 31 2022 at 12:25):

Ah we have docs#category_theory.functor.map_zero_object

Kevin Buzzard (May 31 2022 at 12:45):

OK I removed the sorry.

Kevin Buzzard (May 31 2022 at 12:49):

I also added functor.map_is_zero (to this endomorphism file :-/ Where does it go?)

Adam Topaz (May 31 2022 at 15:44):

@Kevin Buzzard I moved your lemma to for_mathlib.additive_functor

Johan Commelin (Jul 10 2022 at 13:02):

  • The Breen-Deligne lemma (for arbitrary abelian cats having a tensor product with a suitable property) is sorry free.
  • The check that Condensed Ab satisfies the property is also sorry free.

Major kudos to @Joël Riou and @Kevin Buzzard for working on this stuff!


Last updated: Dec 20 2023 at 11:08 UTC