-
Notifications
You must be signed in to change notification settings - Fork 381
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] - feat: Cardinal of GLn with coefficients in a finite field #14095
Conversation
PR summary 5ad36cbcc7Import changes for modified filesNo significant changes to the import graph Import changes for all files
Declarations diff
You can run this locally as follows## summary with just the declaration names:
./scripts/no_lost_declarations.sh short <optional_commit>
## more verbose report:
./scripts/no_lost_declarations.sh <optional_commit> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've left some comments on the code, it looks pretty good to me, only some minor fixes/golfing.
Thank you! I've made the corrections that were suggested. |
Coming here for issue triage: it seems you're looking for review on this PR; I have labelled it |
Can you please mark "resolved" the comments that you took into account? There is also an error related to imports (this should be very easy to resolve). Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thinking a little bit more about it, maybe you can use Nat.card and completely avoid various Fintype
instances. It seems to me the best way of doing stuff. Note that you may need the instances in proofs (to make the link between Nat.card
and Fintype.card
, that has a better API), but there is no need to create global instances.
I changed the Fintype.card into Nat.card and suppressed all the instances (hence, also the modification in the file about Clifford algebra). |
I've investigated what's happening here, and the problem is that you are changing the structure of the import graph, and this is making things too slow in other files that import |
Even better, we may have three files: |
After thinking about it, I found it a bit weird to split the GeneralLinearGroup.lean file into a folder. For instance, there is also a SpecialLinearGroup.lean file and not a folder. Thus instead I added a Card.lean file into the folder Matrix which could contain different statements about cardinals of subsets of matrices. For instance, I added a simple result about the cardinal of the set of matrices over a finite field. I moved equiv_linearIndependent to Mathlib.LinearAlgebra.LinearIndependent. But I don’t know where to put card_linearInependent. |
What I am proposing is to split the existing file I can do it you want. |
Split of `LinearAlgebra/Matrix/GeneralLinearGroup.lean` into `LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean` and `LinearAlgebra/Matrix/GeneralLinearGroup/Basic.lean`. This is motivated by PR #14095.
Now the file should go in the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
bors d+
✌️ ThomasLanard can now approve this pull request. To approve and merge a pull request, simply reply with |
Thanks for doing all of this! |
Interesting that we don't need commutativity for the formula to hold (I know commutativity is secretly there, but we don't need to know it). |
I have imported |
Oh, I didn't notice it. I suggest to not import it and prove it for |
Thank you! bors r+ |
Co-authored-by: Riccardo Brasca <[email protected]>
Pull request successfully merged into master. Build succeeded: |
We add the cardinal of the general linear group GLn with coefficients in a finite field.