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

chore(data/real/basic): split off star instance #17772

Closed
wants to merge 7 commits into from

Conversation

hrmacbeth
Copy link
Member

@hrmacbeth hrmacbeth commented Nov 30, 2022

Split the star_ring instance off from data/real/basic into a new file data/real/star, thus reducing the imports of the former.


Open in Gitpod

previously:
Also delete the construction ring_equiv_Cauchy of a ring equivalence between and cau_seq.completion.Cauchy: this adds quite a lot of imports, it could also have been put in a separate file but since it's not used anywhere and I can't really imagine a use case it seems easier just to get rid of it.

@hrmacbeth hrmacbeth added awaiting-review The author would like community review of the PR awaiting-CI The author would like to see what CI has to say before doing more work. labels Nov 30, 2022
@semorrison
Copy link
Collaborator

I think I'd prefer keeping ring_equiv_Cauchy (or rather, I'd very happily delete it, but only as an independent PR).

@github-actions github-actions bot removed the awaiting-CI The author would like to see what CI has to say before doing more work. label Nov 30, 2022
@hrmacbeth
Copy link
Member Author

hrmacbeth commented Dec 1, 2022

OK, I've made a more conservative version which leaves ring_equiv_Cauchy (so the only change here is the splitting off of the star instance). I'll make another PR later proposing the deletion of ring_equiv_Cauchy, so that it can be discussed properly.

Copy link
Member

@eric-wieser eric-wieser left a comment

Choose a reason for hiding this comment

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

This feels like a somewhat questionable split to me. Is algebra.star.basic a heavy import? I thought it was just some very basic typeclasses.

@hrmacbeth
Copy link
Member Author

@eric-wieser Did you look at the import tree? algebra.star.basic imports algebra.ring.aut which imports algebra.group_ring_action which imports ring_theory.subring.basic. This is one heavy import of many.

@eric-wieser
Copy link
Member

To me it sounds like this is fighting the symptom not the cause:

algebra.star.basic imports algebra.ring.aut

This seems somewhat reasonable, but flipping the direction also seems ok

which imports algebra.group_ring_action

This feels backwards, since ring_hom.apply_distrib_mul_action is handled near the material about distrib_mul_actions.

which imports ring_theory.subring.basic. This is one heavy import of many.

This also seems backwards; all the other action typeclasses are provided long before subobjects are defined!

@eric-wieser
Copy link
Member

I've opened #17786 with some of the cleanup I was suggesting; I was meaning to do it at some point anyway.

@hrmacbeth
Copy link
Member Author

I still think it wouldn't hurt to split star out of data/real/basic, but it sounds like you have a strong aesthetic preference to keep it in. I'm ok with this, given

@eric-wieser
Copy link
Member

eric-wieser commented Dec 2, 2022

a further splitting of star to remove the finiteness import (currently there because of a few big-operators lemmas) -- can you do this?

I don't know if I'll have time to get back to this; but I'll do my best to get #17786 through CI quickly. Indeed, that adds a big_operators import that was previously implicit, so I agree this is probably a good idea.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RFC Request for comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants