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

[Merged by Bors] - feat(topology/continuous_function/algebra): generalize algebra instances#12055

Closed
eric-wieser wants to merge 16 commits intomasterfrom
eric-wieser/continuous_function.algebra
Closed

[Merged by Bors] - feat(topology/continuous_function/algebra): generalize algebra instances#12055
eric-wieser wants to merge 16 commits intomasterfrom
eric-wieser/continuous_function.algebra

Conversation

@eric-wieser
Copy link
Copy Markdown
Member

@eric-wieser eric-wieser commented Feb 15, 2022

This adds:

  • some missing instances in the algebra hierarchy (comm_semigroup, mul_one_class, mul_zero_class, monoid_with_zero, comm_monoid_with_zero, comm_semiring).
  • finer-grained scalar action instances, notably none of which require topological_space R any more, as they only need has_continuous_const_smul R M instead of has_continuous_smul R M.
  • continuity lemmas about zpow on groups and zsmul on additive groups (copied directly from the lemmas about pow on monoids), which are used to avoid diamonds in the int-action. In order to make room for these, the lemmas about zpow on groups with zero have been renamed to zpow₀, which is consistent with how the similar clash with inv is solved.
  • a few lemmas about mk_of_compact since an existing proof was broken by refl closing the goal earlier than before.

Open in Gitpod

This adds some missing instances in the algebra hierarchy, as well as more fine-grained scalar instances.
This also introduces continuity lemmas about `zpow` on groups, which are used to avoid diamonds in the int-action.
@eric-wieser eric-wieser added the awaiting-review The author would like community review of the PR label Feb 15, 2022
Comment on lines -61 to +62
lemma coe_inj ⦃f g : C(α, β)⦄ (h : (f : α → β) = g) : f = g :=
by cases f; cases g; cases h; refl
lemma coe_injective : @function.injective (C(α, β)) (α → β) coe_fn :=
λ f g h, by cases f; cases g; congr'
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I know this should use fun_like, but I didn't want to do too many refactors at the same time.

bors bot pushed a commit that referenced this pull request Feb 16, 2022
…2072)

`continuous_linear_map.continuous_nsmul` is nothing to do with `continuous_linear_map`s, and is the same as `continuous_nsmul`, but the latter doesn't require commutativity. There is no reason to keep the former.

This lemma was added in #7084, but probably got missed due to how large that PR had to be.

We can't remove `continuous_linear_map.continuous_zsmul` until #12055 is merged, as there is currently no `continuous_zsmul` in the root namespace.
@urkud
Copy link
Copy Markdown
Member

urkud commented Feb 16, 2022

Otherwise LGTM. Thanks!
bors d+

@bors
Copy link
Copy Markdown

bors bot commented Feb 16, 2022

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

@github-actions github-actions bot added delegated The PR author may merge after reviewing final suggestions. and removed awaiting-review The author would like community review of the PR labels Feb 16, 2022
Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>
@leanprover-community-bot-assistant leanprover-community-bot-assistant added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Feb 16, 2022
@leanprover-community-bot-assistant leanprover-community-bot-assistant removed the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Feb 16, 2022
@eric-wieser
Copy link
Copy Markdown
Member Author

bors merge

@github-actions github-actions bot added the ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) label Feb 16, 2022
bors bot pushed a commit that referenced this pull request Feb 17, 2022
…ces (#12055)

This adds:
* some missing instances in the algebra hierarchy (`comm_semigroup`, `mul_one_class`, `mul_zero_class`, `monoid_with_zero`, `comm_monoid_with_zero`, `comm_semiring`).
* finer-grained scalar action instances, notably none of which require `topological_space R` any more, as they only need `has_continuous_const_smul R M` instead of `has_continuous_smul R M`.
* continuity lemmas about `zpow` on groups and `zsmul` on additive groups (copied directly from the lemmas about `pow` on monoids), which are used to avoid diamonds in the int-action. In order to make room for these, the lemmas about `zpow` on groups with zero have been renamed to `zpow₀`, which is consistent with how the similar clash with `inv` is solved.
* a few lemmas about `mk_of_compact` since an existing proof was broken by `refl` closing the goal earlier than before.
@bors
Copy link
Copy Markdown

bors bot commented Feb 17, 2022

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title feat(topology/continuous_function/algebra): generalize algebra instances [Merged by Bors] - feat(topology/continuous_function/algebra): generalize algebra instances Feb 17, 2022
@bors bors bot closed this Feb 17, 2022
@bors bors bot deleted the eric-wieser/continuous_function.algebra branch February 17, 2022 01:32
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

delegated The PR author may merge after reviewing final suggestions. ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants