-
Notifications
You must be signed in to change notification settings - Fork 251
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
[Merged by Bors] - chore: refactor of concrete categories #3900
Conversation
I strongly agree that it is much better that coercion of morphisms to functions does not make the |
Thanks 🎉 bors merge |
I think the ports * #2902 (MonCat) * #3036 (GroupCat) * #3260 (ModuleCat) didn't quite get things right, and also have some variation between them. This PR tries to straighten things out. Major changes: * Have the coercion to type be via `X.\a`, and put attribute `@[coe]` on this. * Make sure the coercion from morphisms to functions means that simp lemmas about the underlying bundled morphisms apply directly. * This means we drop lemmas like ``` lemma Hom.map_mul {X Y : MonCat} (f : X ⟶ Y) (x y : X) : ((forget MonCat).map f) (x * y) = f x * f y ``` * But at the expense of adding lemmas like ``` lemma coe_comp {X Y Z : MonCat} {f : X ⟶ Y} {g : Y ⟶ Z} : (f ≫ g : X → Z) = g ∘ f := rfl ``` Overall I'm pretty happy, and it allows me to unstick the long stuck #3105. This is not everything I want to do to refactor these files, but once I was satisfied that I can move forward with RingCat, I want to get this merged so we can unblock porting progress. I'll promise to come back to this soon! :-) Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au>
Pull request successfully merged into master. Build succeeded! The publicly hosted instance of bors-ng is deprecated and will go away soon. If you want to self-host your own instance, instructions are here. If you want to switch to GitHub's built-in merge queue, visit their help page. |
Or at least I think that is why
This is a replacement for #3105 which makes use of the refactors proposed in #3900. I'm happy to just merge this into #3105 if that's preferred, but since it depends on a refactor I thought I'd keep it separate for now. - [x] depends on: #3900 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Co-authored-by: Adam Topaz <adamtopaz@users.noreply.github.com> Co-authored-by: adamtopaz <github@adamtopaz.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Johan Commelin <johan@commelin.net>
I think the ports
didn't quite get things right, and also have some variation between them. This PR tries to straighten things out.
Major changes:
X.\a
, and put attribute@[coe]
on this.Overall I'm pretty happy, and it allows me to unstick the long stuck #3105.
This is not everything I want to do to refactor these files, but once I was satisfied that I can move forward with RingCat, I want to get this merged so we can unblock porting progress. I'll promise to come back to this soon! :-)