Lie algebra su(N) of SU(N) N×N complex matrices A satisfying:
- Traceless: Tr(A) = 0
- Anti-Hermitian: A† = -A (where † denotes conjugate transpose)
Matrix representation
Traceless condition
Anti-Hermitian condition: A† = -A
Instances For
Zero element
Addition
Equations
- Newton.SuNAlgebra.instAdd = { add := fun (A B : Newton.SuNAlgebra N) => { matrix := A.matrix + B.matrix, trace_zero := ⋯, anti_hermitian := ⋯ } }
Negation
Equations
- Newton.SuNAlgebra.instNeg = { neg := fun (A : Newton.SuNAlgebra N) => { matrix := -A.matrix, trace_zero := ⋯, anti_hermitian := ⋯ } }
Subtraction
Equations
- Newton.SuNAlgebra.instSub = { sub := fun (A B : Newton.SuNAlgebra N) => A + -B }
Real scalar multiplication (su(N) is a real vector space)
Equations
- Newton.SuNAlgebra.instSMulReal = { smul := fun (r : ℝ) (A : Newton.SuNAlgebra N) => { matrix := ↑r • A.matrix, trace_zero := ⋯, anti_hermitian := ⋯ } }
Equality via matrix equality
SuNAlgebra equality is equivalent to matrix equality
If matrix is zero, then the element is zero
Zero element has zero matrix
Addition is compatible with matrix addition
Negation is compatible with matrix negation
Scalar multiplication is compatible with matrix scalar multiplication
Subtraction is compatible with matrix subtraction
Additive commutative group instance
Equations
- One or more equations did not get rendered due to their size.
Lie bracket [A, B] = AB - BA for SuNAlgebra
The Lie bracket of two su(N) elements is again in su(N). Uses Mathlib's Lie bracket on the underlying matrices.
Instances For
LieRing instance for SuNAlgebra using Mathlib's Lie structure
Equations
- Newton.instLieRingSuNAlgebra = { toAddCommGroup := Newton.SuNAlgebra.instAddCommGroup, bracket := Newton.SuNAlgebra.lie, add_lie := ⋯, lie_add := ⋯, lie_self := ⋯, leibniz_lie := ⋯ }
Square of an su(N) element has non-positive trace (Tr(A²) ≤ 0)
Killing form: B(A, B) = Tr(AB)
Instances For
Killing form is symmetric
Bilinearity of Killing form (left)
Bilinearity of Killing form (right)