Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(CategoryTheory/DiscreteCategory): binary sums and products of discrete categories #22281

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

robin-carlier
Copy link
Collaborator

We show that if C and D are discrete categories, then C ⊕ D and C × D are also discrete categories. This is stated both in terms of equivalences Discrete (J × K) ≌ Discrete J × Discrete K and Discrete (J ⊕ K) ≌ Discrete J ⊕ Discrete K, and in terms of the IsDiscrete typeclass.

We also implement a small refactor by creating a directory CategoryTheory/DiscreteCategory and moving CategoryTheory/DiscreteCategory.lean to CategoryTheory/DiscreteCategory/Basic.lean.


I opted for the creation of a separate directory about DiscreteCategory so that one could still import DiscreteCategory.Basic but not necessarily the content of this PR, which imports CategoryTheory.Sums.Basic and CategoryTheory.Products.Basic.

Open in Gitpod

Copy link

github-actions bot commented Feb 25, 2025

PR summary 65ee99958f

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.CategoryTheory.DiscreteCategory -314
Mathlib.CategoryTheory.Discrete.Basic 314
Mathlib.CategoryTheory.Discrete.SumsProducts (new file) 316

Declarations diff

+ prod
+ productEquiv
+ sum
+ sumEquiv

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

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

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


No changes to technical debt.

You can run this locally as

./scripts/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 Feb 25, 2025
Copy link
Collaborator

@callesonne callesonne left a comment

Choose a reason for hiding this comment

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

Very clean, LGTM!

I also like the DiscreteCategory folder, but what about naming it just Discrete so its shorter? CategoryTheory.Discrete should still be an unambiguous import.

@joelriou joelriou added the awaiting-author A reviewer has asked the author a question or requested changes label Mar 4, 2025
@robin-carlier
Copy link
Collaborator Author

DiscreteCategory directory has been renamed to Discrete.

@robin-carlier robin-carlier removed the awaiting-author A reviewer has asked the author a question or requested changes label Mar 10, 2025
@leanprover-community-bot-assistant leanprover-community-bot-assistant added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Mar 10, 2025
@github-actions github-actions 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 Mar 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
t-category-theory Category theory
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants