Skip to content

[Merged by Bors] - feat(CategoryTheory/Triangulated): Generators in triangulated categories#37046

Closed
justus-springer wants to merge 26 commits intoleanprover-community:masterfrom
justus-springer:justus/triangulated_generators
Closed

[Merged by Bors] - feat(CategoryTheory/Triangulated): Generators in triangulated categories#37046
justus-springer wants to merge 26 commits intoleanprover-community:masterfrom
justus-springer:justus/triangulated_generators

Conversation

@github-actions github-actions bot added the large-import Automatically added label for PRs with a significant increase in transitive imports label Mar 23, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 23, 2026

PR summary 410d5afde2

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.CategoryTheory.ObjectProperty.ClosureShift (new file) 882
Mathlib.CategoryTheory.Triangulated.Generators (new file) 1190

Declarations diff

+ IsClassicalTriangulatedGenerator
+ IsStrongTriangulatedGenerator
+ IsStrongTriangulatedGenerator.isClassicalTriangulatedGenerator
+ instance : P.triangEnvelope.IsStableUnderRetracts
+ instance : P.triangEnvelope.IsStableUnderShift ℤ
+ instance [IsTriangulated C] : P.triangEnvelope.IsTriangulatedClosed₂ := by
+ instance [P.Nonempty] : P.triangEnvelope.Nonempty
+ instance [P.Nonempty] [IsTriangulated C] : P.triangEnvelope.IsTriangulated
+ instance {A : Type*} [AddGroup A] [HasShift C A] {α : Type*} {J : α → Type*}
+ instance {A : Type*} [AddMonoid A] [HasShift C A] [P.IsStableUnderShift A] :
+ isClassicalTriangulatedGenerator_iff
+ isStrongTriangulatedGenerator_iff
+ le_triangEnvelope
+ le_triangEnvelopeIter
+ monotone'_triangEnvelopeIter
+ monotone_triangEnvelope
+ monotone_triangEnvelopeIter
+ prop_triangEnvelope_iff
+ retractClosure_retractClosure
+ triangEnvelope
+ triangEnvelopeIter
+ triangEnvelopeIter_add
+ triangEnvelopeIter_add'
+ triangEnvelopeIter_le_triangEnvelope
+ triangEnvelopeIter_succ
+ triangEnvelopeIter_succ'
+ triangEnvelopeIter_zero
+ triangEnvelope_le_iff

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

## more verbose report:
./scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/reporting/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@github-actions github-actions bot added the t-category-theory Category theory label Mar 23, 2026
mathlib-bors bot pushed a commit that referenced this pull request Mar 24, 2026
…zeros (#37081)

Bicones and zeros are always retracts, hence if an object property is stable under retracts, it is also is stable under taking summands.

This is used in the definition of strong generators in #37046
mathlib-bors bot pushed a commit that referenced this pull request Mar 24, 2026
Define an abbreviation `limitClosure` where you only take limits of one shape. Then this is used to define `binaryProductsClosure` and its dual.

This is used in the definition of strong generators in #37046.
@justus-springer justus-springer force-pushed the justus/triangulated_generators branch from b26f803 to af85c09 Compare March 24, 2026 14:27
mathlib-bors bot pushed a commit that referenced this pull request Mar 24, 2026
…#37083)

This PR adds some more API to `extensionProduct` and then defines `extensionProductIter`, the `n`-fold extension product of an object property with itself. Note that there is no "neutral element" for the extension product, hence `extensionProductIter P 0` is `P`, and `extensionProductIter P n` is `P * ... * P` with `n+1` terms. See also `extensionProductIter_add`, where this offset is clearly visible.

This is used in the definition of strong generators in #37046.
mathlib-bors bot pushed a commit that referenced this pull request Mar 24, 2026
…ties (#37090)

This PR adds some instances and API handling bot and top as object properties.

This is used in the definition of strong generators in #37046.
@mathlib-dependent-issues mathlib-dependent-issues bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Mar 24, 2026
@justus-springer justus-springer added the awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. label Mar 24, 2026
@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 Mar 24, 2026
Comment thread Mathlib/CategoryTheory/ObjectProperty/Shift.lean Outdated
@github-actions github-actions bot removed the large-import Automatically added label for PRs with a significant increase in transitive imports label Mar 25, 2026
@justus-springer justus-springer removed the awaiting-author A reviewer has asked the author a question or requested changes. label Mar 31, 2026
@mathlib-dependent-issues mathlib-dependent-issues bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Mar 31, 2026
mathlib-bors bot pushed a commit that referenced this pull request Apr 3, 2026
…37442)

Adding this typeclass was suggested in the review of #37046.

The crucial point where this gets used is in the file `CategoryTheory/ObjectProperty/Retract.lean`. Here, we have the instance `P.IsStableUnderRetracts -> P.Nonempty -> P.ContainsZero`, since a zero object is a retract of *any* object.

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
@mathlib-dependent-issues mathlib-dependent-issues bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Apr 3, 2026
@mathlib-merge-conflicts mathlib-merge-conflicts bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Apr 3, 2026
@mathlib-merge-conflicts
Copy link
Copy Markdown

This pull request has conflicts, please merge master and resolve them.

@mathlib-merge-conflicts mathlib-merge-conflicts bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Apr 4, 2026
riccardobrasca pushed a commit to riccardobrasca/mathlib4 that referenced this pull request Apr 6, 2026
…eanprover-community#37442)

Adding this typeclass was suggested in the review of leanprover-community#37046.

The crucial point where this gets used is in the file `CategoryTheory/ObjectProperty/Retract.lean`. Here, we have the instance `P.IsStableUnderRetracts -> P.Nonempty -> P.ContainsZero`, since a zero object is a retract of *any* object.

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
YellPika pushed a commit to YellPika/mathlib4 that referenced this pull request Apr 6, 2026
…eanprover-community#37442)

Adding this typeclass was suggested in the review of leanprover-community#37046.

The crucial point where this gets used is in the file `CategoryTheory/ObjectProperty/Retract.lean`. Here, we have the instance `P.IsStableUnderRetracts -> P.Nonempty -> P.ContainsZero`, since a zero object is a retract of *any* object.

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Comment thread Mathlib/CategoryTheory/Triangulated/Generators.lean Outdated
Comment thread Mathlib/CategoryTheory/Triangulated/Generators.lean Outdated
@dagurtomas dagurtomas added the awaiting-author A reviewer has asked the author a question or requested changes. label Apr 10, 2026
@justus-springer justus-springer removed the awaiting-author A reviewer has asked the author a question or requested changes. label Apr 10, 2026
@robin-carlier
Copy link
Copy Markdown
Contributor

Thanks!

maintainer merge

@github-actions
Copy link
Copy Markdown

🚀 Pull request has been placed on the maintainer queue by robin-carlier.

@mathlib-triage mathlib-triage bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Apr 13, 2026
@joelriou
Copy link
Copy Markdown
Contributor

Thanks!

bors merge

@mathlib-triage mathlib-triage bot added ready-to-merge This PR has been sent to bors. and removed maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. labels Apr 13, 2026
mathlib-bors bot pushed a commit that referenced this pull request Apr 13, 2026
…ies (#37046)

Define strong and classical generators in triangulated categories. See also the [zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Generators.20in.20triangulated.20categories/with/573268390).

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Apr 13, 2026

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(CategoryTheory/Triangulated): Generators in triangulated categories [Merged by Bors] - feat(CategoryTheory/Triangulated): Generators in triangulated categories Apr 13, 2026
@mathlib-bors mathlib-bors bot closed this Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-merge This PR has been sent to bors. t-category-theory Category theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants