Skip to content

[Merged by Bors] - chore: Sink Algebra.Support down the import tree#8919

Closed
YaelDillies wants to merge 11 commits intomasterfrom
sink_support
Closed

[Merged by Bors] - chore: Sink Algebra.Support down the import tree#8919
YaelDillies wants to merge 11 commits intomasterfrom
sink_support

Conversation

@YaelDillies
Copy link
Copy Markdown
Contributor

@YaelDillies YaelDillies commented Dec 9, 2023

Function.support is a very basic definition. Nevertheless, it is a pretty heavy import because it imports most objects a support lemma can be written about.

This PR reverses the dependencies between those objects and Function.support, so that the latter can become a much more lightweight import.

Only two import could not easily be reversed, namely the ones to Data.Set.Finite and Order.ConditionallyCompleteLattice.Basic, so I created two new files instead.

I credit:


Open in Gitpod

`Function.support` is a very basic definition. Nevertheless, it is a pretty heavy import because it imports most objects a `support` lemma can be written about.

This PR reverses the dependencies between those objects and `Function.support`, so that the latter can become a much more lightweight import. Only one import could not easily be reversed, namely the one to `Data.Set.Finite`, so I created a new file instead.

I credit:
* Yury for leanprover-community/mathlib3#6791
* Oliver for leanprover-community/mathlib3#7439
@YaelDillies YaelDillies added awaiting-review awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. t-algebra Algebra (groups, rings, fields, etc) labels Dec 9, 2023
@[simp]
theorem support_mul [MulZeroClass R] [NoZeroDivisors R] (f g : α → R) :
(support fun x => f x * g x) = support f ∩ support g :=
support_smul f g
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.

It's a shame this proof no longer works; are there many others like this, or is it the only one?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

It's the only one.

@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 Dec 10, 2023
@jcommelin
Copy link
Copy Markdown
Member

Thanks 🎉

bors merge

@github-actions github-actions bot added ready-to-merge This PR has been sent to bors. and removed awaiting-review labels Dec 13, 2023
mathlib-bors bot pushed a commit that referenced this pull request Dec 13, 2023
`Function.support` is a very basic definition. Nevertheless, it is a pretty heavy import because it imports most objects a `support` lemma can be written about.

This PR reverses the dependencies between those objects and `Function.support`, so that the latter can become a much more lightweight import.

Only two import could not easily be reversed, namely the ones to `Data.Set.Finite` and `Order.ConditionallyCompleteLattice.Basic`, so I created two new files instead.

I credit:
* Yury for leanprover-community/mathlib3#6791
* Oliver for leanprover-community/mathlib3#7439
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Dec 13, 2023

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title chore: Sink Algebra.Support down the import tree [Merged by Bors] - chore: Sink Algebra.Support down the import tree Dec 13, 2023
@mathlib-bors mathlib-bors bot closed this Dec 13, 2023
@mathlib-bors mathlib-bors bot deleted the sink_support branch December 13, 2023 10:46
awueth pushed a commit that referenced this pull request Dec 19, 2023
`Function.support` is a very basic definition. Nevertheless, it is a pretty heavy import because it imports most objects a `support` lemma can be written about.

This PR reverses the dependencies between those objects and `Function.support`, so that the latter can become a much more lightweight import.

Only two import could not easily be reversed, namely the ones to `Data.Set.Finite` and `Order.ConditionallyCompleteLattice.Basic`, so I created two new files instead.

I credit:
* Yury for leanprover-community/mathlib3#6791
* Oliver for leanprover-community/mathlib3#7439
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-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants