Zulip Chat Archive
Stream: condensed mathematics
Topic: for_mathlib/chain_complex_exact
Kevin Buzzard (Jun 01 2022 at 13:51):
I'm working on the sorries in this file @Adam Topaz @Johan Commelin ; the claim on line 16 is that the whole file is self-contained which is probably an ideal place for me to learn more about this part of the repo.
Adam Topaz (Jun 01 2022 at 14:03):
I think that claim is still true :wink:
Kevin Buzzard (Jun 01 2022 at 17:24):
I've pushed some progress. Let me just ignore the fact that I'm taking a train to Switzerland tomorrow morning and press on.
Kevin Buzzard (Jun 01 2022 at 17:53):
Do we have this:
import category_theory.abelian.exact
open category_theory category_theory.limits
lemma is_zero.exact {𝒞 : Type*} [category 𝒞] [abelian 𝒞] {A B C : 𝒞} {f : A ⟶ B} {g : B ⟶ C}
(hB : is_zero B) : exact f g :=
begin
rw abelian.exact_iff,
split,
{ rw [is_zero.eq_zero_of_tgt hB f, zero_comp], },
{ rw [is_zero.eq_zero_of_tgt hB (kernel.ι g), zero_comp], },
end
?
Adam Topaz (Jun 01 2022 at 17:56):
see for_mathlib/homology_exact
Adam Topaz (Jun 01 2022 at 17:57):
Kevin Buzzard (Jun 01 2022 at 18:02):
Do we have
lemma exact_of_epi {𝒞 : Type*} [category 𝒞] [abelian 𝒞] {A B C : 𝒞} {f : A ⟶ B} {g : B ⟶ C}
(hfg : f ≫ g = 0) (hf : epi f) : exact f g :=
sorry
?
Adam Topaz (Jun 01 2022 at 18:03):
yeah it should be somewhere
Adam Topaz (Jun 01 2022 at 18:03):
maybe in for_mathlib/abelian_category
?
Adam Topaz (Jun 01 2022 at 18:05):
Oh wait, that's false.
Adam Topaz (Jun 01 2022 at 18:06):
Oh wait, no it's not.
Kevin Buzzard (Jun 01 2022 at 18:06):
Oh is it? Rotten luck :-/ I have got it as far as
hf: epi f
⊢ is_zero (cokernel f)
Is that false too?
Adam Topaz (Jun 01 2022 at 18:08):
No they should both be true
Adam Topaz (Jun 01 2022 at 18:10):
lemma exact_of_epi {A : Type*} [category A] [abelian A]
(X Y Z : A) (f : X ⟶ Y) (g : Y ⟶ Z) [epi f] (w : f ≫ g = 0) : exact f g :=
begin
rw abelian.exact_iff,
use w,
convert comp_zero,
apply is_zero.eq_of_tgt,
library_search -- exact is_zero_cokernel_of_epi f,
end
Adam Topaz (Jun 01 2022 at 18:12):
We might be missing exact_of_epi
Kevin Buzzard (Jun 01 2022 at 18:12):
lemma exact_of_epi {𝒞 : Type*} [category 𝒞] [abelian 𝒞] {A B C : 𝒞} {f : A ⟶ B} {g : B ⟶ C}
(hfg : f ≫ g = 0) (hf : epi f) : exact f g :=
begin
rw abelian.exact_iff,
refine ⟨hfg, _⟩,
rw [(abelian.epi_iff_cokernel_π_eq_zero _).1 hf, comp_zero],
end
Adam Topaz (Jun 01 2022 at 18:13):
epi
is a class
Kevin Buzzard (Jun 01 2022 at 18:13):
I've been avoiding the convert
technique recently, it can get really slow; I think it's a bad habit :-)
Adam Topaz (Jun 01 2022 at 18:13):
yeah, I use it sparingly.
Kevin Buzzard (Jun 01 2022 at 18:29):
OK I just pushed one more sorry. I doubt I'll have any more time today. I can finish these off tomorrow hopefully.
Kevin Buzzard (Jun 01 2022 at 19:29):
OK I did one more :-) The last one will have to wait -- anyway it's of a slightly different nature to the rest, so I will need new tricks. I'm done for the day :-)
Kevin Buzzard (Jun 02 2022 at 12:39):
Working on the final sorry in this file.
Kevin Buzzard (Jun 02 2022 at 15:07):
OK so it's now sorry-free. I'm not sure if I missed any tricks. Checking that an additive equivalence of categories preserves and reflects exactness was surprisingly long.
Last updated: Dec 20 2023 at 11:08 UTC