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

[Merged by Bors] - feat(Algebra/Lie/Semisimple): API for semisimple Lie algebras #13217

Closed
wants to merge 32 commits into from

Conversation

jcommelin
Copy link
Member

Including the result that ideals in a semisimple Lie algebra
are in a unique way the direct sum of simple ideals.
This result makes no assumptions on the ring of coefficients or the Lie algebra;
it holds over arbitrary base rings, and in arbitrary dimensions.


Open in Gitpod

@jcommelin jcommelin added awaiting-review The author would like community review of the PR awaiting-CI labels May 25, 2024
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Copy link
Contributor

@ocfnash ocfnash left a comment

Choose a reason for hiding this comment

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

This is really nice!

I only have time for some superficial remarks now. My main thought is whether some of the proofs could be golfed by using more of the results about compactly-generated lattices.

I'll have more to say later.

Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
jcommelin and others added 3 commits May 25, 2024 20:42
Co-authored-by: Oliver Nash <github@olivernash.org>
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
@ocfnash ocfnash added awaiting-author A reviewer has asked the author a question or requested changes t-algebra Algebra (groups, rings, fields etc) and removed awaiting-review The author would like community review of the PR labels May 26, 2024
@jcommelin jcommelin added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels May 27, 2024
Copy link
Contributor

@ocfnash ocfnash left a comment

Choose a reason for hiding this comment

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

Thanks, this is marvelous!

bors d+

Mathlib/Order/BooleanAlgebra.lean Outdated Show resolved Hide resolved
exact (hS.mono hX).isAtom a ha

lemma complementedLattice_of_sSup_eq_top (h : sSup S = ⊤) : ComplementedLattice α := by
constructor
Copy link
Contributor

Choose a reason for hiding this comment

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

I can't help wondering if it might be easier to establish modularity instead. So the proof would start:

Suggested change
constructor
suffices IsModularLattice α by
have _i := isAtomistic_of_sSup_eq_top hS h
apply complementedLattice_of_isAtomistic

More generally I'm not sure what order to establish properties would minimize the effort here (e.g., could we establish complementarity first and then get atomisticness from complementedLattice_iff_isAtomistic etc.).

However what you have is clearly fine.

Copy link
Member Author

Choose a reason for hiding this comment

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

Good suggestion! By putting DistribLattice higher about, I could apply this golf. (It implies modular lattice.)

Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
Mathlib/Algebra/Lie/Semisimple.lean Outdated Show resolved Hide resolved
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented May 28, 2024

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

@ocfnash
Copy link
Contributor

ocfnash commented May 28, 2024

If you have the appetite I think a nice future refactor would be to remove:

import Mathlib.Algebra.Lie.Solvable

and move all the dependent material (HasTrivialRadical etc.) to its own file.

For bonus points, I think we should also remove this import from Mathlib.Algebra.Lie.Nilpotent and move the two short dependent results into Mathlib.Algebra.Lie.Solvable.

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added delegated and removed awaiting-review The author would like community review of the PR labels May 28, 2024
jcommelin and others added 2 commits May 28, 2024 14:38
Co-authored-by: Oliver Nash <github@olivernash.org>
@jcommelin
Copy link
Member Author

bors r+

@github-actions github-actions bot added the ready-to-merge This PR has been sent to bors. label May 28, 2024
mathlib-bors bot pushed a commit that referenced this pull request May 28, 2024
Including the result that ideals in a semisimple Lie algebra
are in a unique way the direct sum of simple ideals.
This result makes no assumptions on the ring of coefficients or the Lie algebra;
it holds over arbitrary base rings, and in arbitrary dimensions.
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented May 28, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(Algebra/Lie/Semisimple): API for semisimple Lie algebras [Merged by Bors] - feat(Algebra/Lie/Semisimple): API for semisimple Lie algebras May 28, 2024
@mathlib-bors mathlib-bors bot closed this May 28, 2024
@mathlib-bors mathlib-bors bot deleted the jmc-simple-semisimple branch May 28, 2024 15:24
callesonne pushed a commit that referenced this pull request Jun 4, 2024
Including the result that ideals in a semisimple Lie algebra
are in a unique way the direct sum of simple ideals.
This result makes no assumptions on the ring of coefficients or the Lie algebra;
it holds over arbitrary base rings, and in arbitrary dimensions.
js2357 pushed a commit that referenced this pull request Jun 18, 2024
Including the result that ideals in a semisimple Lie algebra
are in a unique way the direct sum of simple ideals.
This result makes no assumptions on the ring of coefficients or the Lie algebra;
it holds over arbitrary base rings, and in arbitrary dimensions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
delegated ready-to-merge This PR has been sent to bors. t-algebra Algebra (groups, rings, fields etc)
Development

Successfully merging this pull request may close these issues.

None yet

3 participants