-
Notifications
You must be signed in to change notification settings - Fork 133
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
Adapt interface for orthogonal and symplectic Lie algebras #3391
Conversation
|
Bump @fingolfin |
such that $f(xv, w) = -f(v, xw)$ for all $v, w \in R^n$. | ||
|
||
If `gram` is not provided, for $n = 2k$ the form defined by $\begin{matrix} 0 & I_k \\ -I_k & 0 \end{matrix}$ | ||
is used, and for $n = 2k + 1$ the form defined by $\begin{matrix} 1 & 0 & 0 \\ 0 & 0 I_k \\ 0 & I_k & 0 \end{matrix}$. |
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.
Why that form in particular? Is that the form you used before?
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.
No, I used the identity matrix before, which for general users is a bad choice, as eg over QQ the Cartan sub is not split.
This is the form used most often in the literature to construct the B_n and D_n types, eg in Humphreys Introduction to Lie Algebras. I think we should provide just any default here, and thus particular one has, in most cases, nice properties.
@assert characteristic(R) != 0 || dim == div(n^2 - n, 2) | ||
s = ["x_$(i)" for i in 1:dim] | ||
L = lie_algebra(R, n, basis, s; check=false) | ||
set_attribute!(L, :type => :special_orthogonal, :form => form) |
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.
Maybe also add a documented form to query the form? Of course that can also come in a future PR.
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.
Comes in a future PR
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.
@fingolfin do you have a name idea for this function? form
can be ambiguous with e.g. the killing form
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.
defining_form
?
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.
invariant_form
(if it is invariant :))?
Co-authored-by: Max Horn <[email protected]>
* Small docs improvements * Adapt so interface * Add sp Lie algebra * Adapt to `vec` renaming * Don't assume anything about the kernel structure * Apply suggestions from code review Co-authored-by: Max Horn <[email protected]> --------- Co-authored-by: Max Horn <[email protected]> (cherry picked from commit db3dc1f)
### Backported PRs - [x] #3367 - [x] #3379 - [x] #3369 - [x] #3291 - [x] #3325 - [x] #3350 - [x] #3351 - [x] #3365 - [x] #3366 - [x] #3382 - [x] #3373 - [x] #3341 - [x] #3346 - [x] #3381 - [x] #3385 - [x] #3387 - [x] #3398 - [x] #3399 - [x] #3374 - [x] #3406 - [x] #2823 - [x] #3298 - [x] #3386 - [x] #3412 - [x] #3392 - [x] #3415 - [x] #3394 - [x] #3391
As discussed with @fingolfin in some slack thread a long time ago, the function
special_orthogonal_lie_algebra
should be able to handle an arbitrary symmetric bilinear form as input. This is now possible; the previous behavior can be achieved by providingidentity_matrix(ZZ, n)
as the form.Furthermore, I added the same interface for the new
symplectic_lie_algebra
function.