Skip to content

feat(Algebra/Lie/Classical): finrank of sl(n) equals n² - 1#33818

Closed
JohnnyTeutonic wants to merge 7 commits intoleanprover-community:masterfrom
JohnnyTeutonic:finrank-sl
Closed

feat(Algebra/Lie/Classical): finrank of sl(n) equals n² - 1#33818
JohnnyTeutonic wants to merge 7 commits intoleanprover-community:masterfrom
JohnnyTeutonic:finrank-sl

Conversation

@JohnnyTeutonic
Copy link
Copy Markdown
Contributor

Proves finrank R (sl n R) = Fintype.card n ^ 2 - 1 using rank-nullity and Matrix.trace_surjective.


Open in Gitpod

@github-actions github-actions Bot added the t-algebra Algebra (groups, rings, fields, etc) label Jan 10, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jan 10, 2026

PR summary 2c8f930e22

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.Algebra.Lie.Classical 1533 1537 +4 (+0.26%)
Import changes for all files
Files Import difference
Mathlib.Algebra.Lie.Classical 4

Declarations diff

+ finrank_sl

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

Comment thread Mathlib/Algebra/Lie/Classical.lean Outdated
Comment thread Mathlib/Algebra/Lie/Classical.lean Outdated
Comment on lines +13 to +14
public import Mathlib.LinearAlgebra.Dimension.Finrank
public import Mathlib.LinearAlgebra.FiniteDimensional.Lemmas
Copy link
Copy Markdown
Collaborator

@themathqueen themathqueen Jan 10, 2026

Choose a reason for hiding this comment

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

Can you reorganize the imports alphabetically please?

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.

of course =)

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.

done

Comment thread Mathlib/Algebra/Lie/Classical.lean Outdated
JohnnyTeutonic and others added 4 commits January 11, 2026 02:08
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
Comment thread Mathlib/Algebra/Lie/Classical.lean Outdated
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
@JohnnyTeutonic
Copy link
Copy Markdown
Contributor Author

Hi @alreadydone - just checking in on this PR. Let me know if there's anything you'd like me to address. Thanks!

Comment thread Mathlib/Algebra/Lie/Classical.lean Outdated
@eric-wieser
Copy link
Copy Markdown
Member

eric-wieser commented Jan 22, 2026

I think #Is there code for X? > lie algebra @ 💬 was working towards a proof that worked for CommRing.

@ocfnash, would you be happy to merge this less-general proof with a TODO comment in the docstring linking the Zulip thread?

Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@ocfnash
Copy link
Copy Markdown
Contributor

ocfnash commented Jan 22, 2026

Unless someone needs to build on top of this result right now, I think we should not take this approach and should instead just define the standard basis with n^2 - 1 elements.

@ocfnash
Copy link
Copy Markdown
Contributor

ocfnash commented Jan 22, 2026

@JohnnyTeutonic I'll mark this as awaiting author until you've given feedback on my opinion here.

@ocfnash ocfnash added the awaiting-author A reviewer has asked the author a question or requested changes. label Jan 22, 2026
@JohnnyTeutonic
Copy link
Copy Markdown
Contributor Author

Thanks for the feedback @ocfnash. I'm happy to defer to your judgement here - if the standard basis approach is preferable, I'll close this and leave it for someone with more Lie algebra expertise to do properly. Let me know if you'd like me to take a crack at the basis construction instead."

@ocfnash
Copy link
Copy Markdown
Contributor

ocfnash commented Jan 22, 2026

Thanks @JohnnyTeutonic

If you want to construct the basis, then go for it. Based on the Zulip thread linked above, nobody has worked on it since since last May. I think it should be not be hard and it will have the advantage of giving a result for any coefficients, rather than just fields.

JohnnyTeutonic added a commit to JohnnyTeutonic/mathlib4 that referenced this pull request Jan 26, 2026
…iagonal index

This adds a standard basis for the special linear Lie algebra sl n R
parametrized by a chosen diagonal index i. The basis consists of:
- Off-diagonal matrix units E_ij for i  j
- Diagonal differences E_ii - E_{ii} for i  i

The diagonal entry at i is determined by the trace-zero condition.

New definitions:
- OffDiag n: off-diagonal index pairs
- slBasisIndex i: basis index type
- slBasisFun i: basis element function
- slBasisRepr, slBasisCoord: linear maps for representation
- slBasisEquiv: linear equivalence to coordinate functions
- slBasis i: the actual basis

Closes a request from leanprover-community#33818.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting-author A reviewer has asked the author a question or requested changes. t-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants