Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

[Merged by Bors] - feat(algebraic_topology/dold_kan): tools for compatibilities, lemmas#17923

Closed
joelriou wants to merge 10 commits intomasterfrom
dold-kan-23
Closed

[Merged by Bors] - feat(algebraic_topology/dold_kan): tools for compatibilities, lemmas#17923
joelriou wants to merge 10 commits intomasterfrom
dold-kan-23

Conversation

@joelriou
Copy link
Copy Markdown
Collaborator

@joelriou joelriou commented Dec 13, 2022

@joelriou joelriou requested a review from a team as a code owner December 13, 2022 09:40
@joelriou joelriou added the t-category-theory Category theory label Dec 13, 2022
@ghost ghost added the blocked-by-other-PR This PR depends on another PR which is still in the queue. A bot manages this label via PR comment. label Dec 13, 2022
@joelriou joelriou added the awaiting-CI The author would like to see what CI has to say before doing more work. label Dec 13, 2022
@github-actions github-actions bot removed the awaiting-CI The author would like to see what CI has to say before doing more work. label Dec 13, 2022
@ghost ghost removed the blocked-by-other-PR This PR depends on another PR which is still in the queue. A bot manages this label via PR comment. label Mar 28, 2023
@ghost
Copy link
Copy Markdown

ghost commented Mar 28, 2023

@joelriou joelriou added awaiting-review The author would like community review of the PR modifies-synchronized-file This PR touches a files that has already been ported to mathlib4, and may need a synchronization PR. labels Apr 4, 2023
Copy link
Copy Markdown
Member

@kbuzzard kbuzzard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It feels to me like this is some kind of "higher" version of the copy definitions we have in mathlib, e.g. here. Is there a general "copy" mechanism that one could create here?

/-- The isomorphism `eB.functor ⋙ e'.inverse ⋙ e'.functor ≅ eB.functor` deduced
from the counit isomorphism of `e'`. -/
@[simps hom_app]
def τ₀ : eB.functor ⋙ e'.inverse ⋙ e'.functor ≅ eB.functor :=
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The name τ₀ is not great, unless it is standard for what you are doing. It is however tucked away in a namespace so perhaps wouldn't cause too much trouble. Will you be using this declaration outside this file? If not, it could be private; if so it could be called some horrible long mathlib name, or you could just leave it because in my mind it's very much a "lemma 3" kind of definition (needs to be there, is really called "this square obviously commutes" or whatever). Same comments for tau_1 and υ later on.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, these τ₀ etc appear in the assumptions to the constructions and statements in this file. They are used for the Dold-Kan equivalence for pseudoabelian categories (which is the very reason for the stuff in this file compatibility.lean). Then, keeping these in their separate namespace looks like the best solution.

equivalence.fun_inv_map, iso.inv_hom_id_app_assoc, hG.inv_hom_id_app],
dsimp,
rw [comp_id, eA.functor_unit_iso_comp, e'.functor.map_id, id_comp, hF.inv_hom_id_app_assoc],
end
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wow! Well done, it doesn't even take forever to compile. Could you imagine a tactic doing this kind of argument in Lean 4?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was more painful when I initially attempted to prove these compatibilities directly on the Dold-Kan functors, but it become more smooth when I isolated the "general" statement involving abstract functors and isomorphisms. I do not know how to even think of a category_coherence which would prove all diagrams involving adjunctions commute.

joelriou and others added 3 commits June 7, 2023 09:08
Co-authored-by: Kevin Buzzard <k.buzzard@imperial.ac.uk>
Co-authored-by: Kevin Buzzard <k.buzzard@imperial.ac.uk>
@joelriou
Copy link
Copy Markdown
Collaborator Author

joelriou commented Jun 7, 2023

It feels to me like this is some kind of "higher" version of the copy definitions we have in mathlib, e.g. here. Is there a general "copy" mechanism that one could create here?

Thanks for the review @kbuzzard ! Indeed, I could have obtained a Dold-Kan equivalence simplicial_object C ≌ chain_complex C ℕ for pseudo-abelian (or abelian) categories by composing three equivalences (passing by the Karoubi-anisation of these categories), but I wanted an equivalence such that at least one of the functors have good definitional properties. It is more difficult than the basic copy mechanism because here in the definition of an equivalence of categories, we replace functors by functors which are not necessarily equal, but only isomorphic to the original ones. In that sense, it is indeed a kind of higher order matter.

@eric-wieser eric-wieser added the not-too-late This PR was ready at the point mathlib3 was frozen: we will try to merge it and port it to mathlib4 label Jul 15, 2023
@kim-em
Copy link
Copy Markdown
Collaborator

kim-em commented Jul 25, 2023

bors merge

@github-actions github-actions bot added ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) and removed awaiting-review The author would like community review of the PR labels Jul 25, 2023
bors bot pushed a commit that referenced this pull request Jul 25, 2023
…17923)

Co-authored-by: Joël Riou <37772949+joelriou@users.noreply.github.com>
@bors
Copy link
Copy Markdown

bors bot commented Jul 25, 2023

Pull request successfully merged into master.

Build succeeded!

The publicly hosted instance of bors-ng is deprecated and will go away soon.

If you want to self-host your own instance, instructions are here.
For more help, visit the forum.

If you want to switch to GitHub's built-in merge queue, visit their help page.

@bors bors bot changed the title feat(algebraic_topology/dold_kan): tools for compatibilities, lemmas [Merged by Bors] - feat(algebraic_topology/dold_kan): tools for compatibilities, lemmas Jul 25, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

modifies-synchronized-file This PR touches a files that has already been ported to mathlib4, and may need a synchronization PR. not-too-late This PR was ready at the point mathlib3 was frozen: we will try to merge it and port it to mathlib4 ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) t-category-theory Category theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants