Skip to content

[Merged by Bors] - feat: more API for Function.Exact#14520

Closed
joelriou wants to merge 6 commits intomasterfrom
function-exact-addequiv
Closed

[Merged by Bors] - feat: more API for Function.Exact#14520
joelriou wants to merge 6 commits intomasterfrom
function-exact-addequiv

Conversation

@joelriou
Copy link
Copy Markdown
Contributor

@joelriou joelriou commented Jul 8, 2024

If two diagrams involving additive maps are isomorphic, one is exact (in the sense of Function.Exact) iff the other is. In this PR, we also relate Function.Exact and ShortComplex.Exact in the categories of abelian groups and modules over a ring.


This shall be used in the (draft) PR #14515 which constructs the covariant long exact sequence of Ext-groups: even though this is phrased in terms of ShortComplex.Exact, proofs use Function.Exact because I need to change universes.

Open in Gitpod

@joelriou joelriou added t-category-theory Category theory t-algebra Algebra (groups, rings, fields, etc) labels Jul 8, 2024
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jul 8, 2024

PR summary 889da084dd

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.Algebra.Homology.ShortComplex.Ab 1141 1142 +1 (+0.09%)
Mathlib.Algebra.Homology.ShortComplex.ModuleCat 1157 1158 +1 (+0.09%)
Import changes for all files
Files Import difference
13 files Mathlib.Algebra.Homology.ShortComplex.Ab Mathlib.RepresentationTheory.GroupCohomology.Hilbert90 Mathlib.Algebra.Category.Grp.AB5 Mathlib.Topology.Category.Profinite.Nobeling Mathlib.Algebra.Homology.ShortComplex.ModuleCat Mathlib.Algebra.Category.ModuleCat.Biproducts Mathlib.GroupTheory.FiniteAbelian Mathlib.Algebra.Module.PID Mathlib.RepresentationTheory.GroupCohomology.LowDegree Mathlib.Algebra.Homology.ShortComplex.ConcreteCategory Mathlib.Algebra.Category.ModuleCat.Free Mathlib.CategoryTheory.Triangulated.Yoneda Mathlib.Algebra.Homology.ConcreteCategory
1

Declarations diff

+ LinearEquiv.conj_exact_iff_exact
+ ShortExact.ab_exact_iff_function_exact
+ ShortExact.moduleCat_exact_iff_function_exact
+ addMonoidHom_comp_eq_zero
+ addMonoidHom_ker_eq
+ apply_apply_eq_zero
+ comp_eq_zero
+ comp_injective
+ iff_of_ladder_addEquiv
+ of_comp_eq_zero_of_ker_in_range
+ of_comp_of_mem_range
+ of_ladder_addEquiv_of_exact
+ of_ladder_addEquiv_of_exact'
++ exact_iff
++ exact_of_comp_eq_zero_of_ker_le_range
++ exact_of_comp_of_mem_range
- Exact.apply_apply_eq_zero
- Exact.comp_eq_zero
- Exact.comp_injective
- Exact.of_comp_eq_zero_of_ker_in_range
- Exact.of_comp_of_mem_range
- _root_.LinearEquiv.conj_exact_iff_exact
- _root_.LinearMap.exact_iff
- _root_.LinearMap.exact_of_comp_eq_zero_of_ker_le_range
- _root_.LinearMap.exact_of_comp_of_mem_range

You can run this locally as follows
## summary with just the declaration names:
./scripts/no_lost_declarations.sh short <optional_commit>

## more verbose report:
./scripts/no_lost_declarations.sh <optional_commit>

@joelriou joelriou added awaiting-review awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. labels Jul 8, 2024
@github-actions github-actions bot removed the awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. label Jul 8, 2024
@AntoineChambert-Loir
Copy link
Copy Markdown
Collaborator

I have no serious comment to make except questions about the way mathlib is supposed to handle namespaces. The multiple invocations of _root_. (lines 78ff of Exact.lean) make me feel one should organize the code slightly differently (for readability, and also to minimize risks of giving functions an incorrect/inconsistent namespace), but I have no idea of what to do. (It has to do with the organization of a file in sections, and the behaviour of namespace, habits seem to differ.)

@ghost ghost added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jul 9, 2024
@ghost ghost removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jul 10, 2024
@joelriou
Copy link
Copy Markdown
Contributor Author

I have no serious comment to make except questions about the way mathlib is supposed to handle namespaces. The multiple invocations of _root_. (lines 78ff of Exact.lean) make me feel one should organize the code slightly differently

I had just replicated the same organization which was already in this file in the LinearMap part. I have slightly reorganized the file so that there are no longer _root_.

Copy link
Copy Markdown
Member

@riccardobrasca riccardobrasca left a comment

Choose a reason for hiding this comment

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

Thanks!

bors d+

@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Jul 10, 2024

✌️ joelriou can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@ghost ghost added the delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). label Jul 10, 2024
joelriou and others added 2 commits July 10, 2024 15:52
Co-authored-by: Riccardo Brasca <riccardo.brasca@gmail.com>
@joelriou
Copy link
Copy Markdown
Contributor Author

Thanks!

bors merge

@github-actions github-actions bot added the ready-to-merge This PR has been sent to bors. label Jul 10, 2024
mathlib-bors bot pushed a commit that referenced this pull request Jul 10, 2024
If two diagrams involving additive maps are isomorphic, one is exact (in the sense of `Function.Exact`) iff the other is. In this PR, we also relate `Function.Exact` and `ShortComplex.Exact` in the categories of abelian groups and modules over a ring.



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

mathlib-bors bot commented Jul 10, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat: more API for Function.Exact [Merged by Bors] - feat: more API for Function.Exact Jul 10, 2024
@mathlib-bors mathlib-bors bot closed this Jul 10, 2024
@mathlib-bors mathlib-bors bot deleted the function-exact-addequiv branch July 10, 2024 15:15
@adomani adomani mentioned this pull request Aug 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). ready-to-merge This PR has been sent to bors. t-algebra Algebra (groups, rings, fields, etc) t-category-theory Category theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants