|
| 1 | +/- |
| 2 | +Copyright (c) 2021 Oliver Nash. All rights reserved. |
| 3 | +Released under Apache 2.0 license as described in the file LICENSE. |
| 4 | +Authors: Oliver Nash |
| 5 | +-/ |
| 6 | +import algebra.lie.free |
| 7 | +import algebra.lie.quotient |
| 8 | + |
| 9 | +/-! |
| 10 | +# Lie algebras from Cartan matrices |
| 11 | +
|
| 12 | +Split semi-simple Lie algebras are uniquely determined by their Cartan matrix. Indeed, if `A` is |
| 13 | +an `l × l` Cartan matrix, the corresponding Lie algebra may be obtained as the Lie algebra on |
| 14 | +`3l` generators: $H_1, H_2, \ldots H_l, E_1, E_2, \ldots, E_l, F_1, F_2, \ldots, F_l$ |
| 15 | +subject to the following relations: |
| 16 | +$$ |
| 17 | +\begin{align} |
| 18 | + [H_i, H_j] &= 0\\ |
| 19 | + [E_i, F_i] &= H_i\\ |
| 20 | + [E_i, F_j] &= 0 \quad\text{if $i \ne j$}\\ |
| 21 | + [H_i, E_j] &= A_{ij}E_j\\ |
| 22 | + [H_i, F_j] &= -A_{ij}F_j\\ |
| 23 | + ad(E_i)^{1 - A_{ij}}(E_j) &= 0 \quad\text{if $i \ne j$}\\ |
| 24 | + ad(F_i)^{1 - A_{ij}}(F_j) &= 0 \quad\text{if $i \ne j$}\\ |
| 25 | +\end{align} |
| 26 | +$$ |
| 27 | +
|
| 28 | +In this file we provide the above construction. It is defined for any square matrix of integers but |
| 29 | +the results for non-Cartan matrices should be regarded as junk. |
| 30 | +
|
| 31 | +Recall that a Cartan matrix is a square matrix of integers `A` such that: |
| 32 | + * For diagonal values we have: `A i i = 2`. |
| 33 | + * For off-diagonal values (`i ≠ j`) we have: `A i j ∈ {-3, -2, -1, 0}`. |
| 34 | + * `A i j = 0 ↔ A j i = 0`. |
| 35 | + * There exists a diagonal matrix `D` over ℝ such that `D ⬝ A ⬝ D⁻¹` is symmetric positive definite. |
| 36 | +
|
| 37 | +## Alternative construction |
| 38 | +
|
| 39 | +This construction is sometimes performed within the free unital associative algebra |
| 40 | +`free_algebra R X`, rather than within the free Lie algebra `free_lie_algebra R X`, as we do here. |
| 41 | +However the difference is illusory since the construction stays inside the Lie subalgebra of |
| 42 | +`free_algebra R X` generated by `X`, and this is naturally isomorphic to `free_lie_algebra R X` |
| 43 | +(though the proof of this seems to require Poincaré–Birkhoff–Witt). |
| 44 | +
|
| 45 | +## References |
| 46 | +
|
| 47 | +* [N. Bourbaki, *Lie Groups and Lie Algebras, Chapters 7--9*](bourbaki1975b) chapter VIII, §4.3 |
| 48 | +
|
| 49 | +* [J.P. Serre, *Complex Semisimple Lie Algebras*](serre1965) chapter VI, appendix |
| 50 | +
|
| 51 | +## Main definitions |
| 52 | +
|
| 53 | + * `matrix.to_lie_algebra` |
| 54 | +
|
| 55 | +## Tags |
| 56 | +
|
| 57 | +lie algebra, semi-simple, cartan matrix |
| 58 | +-/ |
| 59 | + |
| 60 | +universes u v w |
| 61 | + |
| 62 | +noncomputable theory |
| 63 | + |
| 64 | +variables (R : Type u) {B : Type v} [comm_ring R] [decidable_eq B] [fintype B] |
| 65 | +variables (A : matrix B B ℤ) |
| 66 | + |
| 67 | +namespace cartan_matrix |
| 68 | + |
| 69 | +variables (B) |
| 70 | + |
| 71 | +/-- The generators of the free Lie algebra from which we construct the Lie algebra of a Cartan |
| 72 | +matrix as a quotient. -/ |
| 73 | +inductive generators |
| 74 | +| H : B → generators |
| 75 | +| E : B → generators |
| 76 | +| F : B → generators |
| 77 | + |
| 78 | +instance [inhabited B] : inhabited (generators B) := ⟨generators.H $ default B⟩ |
| 79 | + |
| 80 | +variables {B} |
| 81 | + |
| 82 | +namespace relations |
| 83 | + |
| 84 | +open function |
| 85 | + |
| 86 | +local notation `H` := free_lie_algebra.of R ∘ generators.H |
| 87 | +local notation `E` := free_lie_algebra.of R ∘ generators.E |
| 88 | +local notation `F` := free_lie_algebra.of R ∘ generators.F |
| 89 | +local notation `ad` := lie_algebra.ad R (free_lie_algebra R (generators B)) |
| 90 | + |
| 91 | +/-- The terms correpsonding to the `⁅H, H⁆`-relations. -/ |
| 92 | +def HH : B × B → free_lie_algebra R (generators B) := |
| 93 | +uncurry $ λ i j, ⁅H i, H j⁆ |
| 94 | + |
| 95 | +/-- The terms correpsonding to the `⁅E, F⁆`-relations. -/ |
| 96 | +def EF : B × B → free_lie_algebra R (generators B) := |
| 97 | +uncurry $ λ i j, if i = j then ⁅E i, F i⁆ - H i else ⁅E i, F j⁆ |
| 98 | + |
| 99 | +/-- The terms correpsonding to the `⁅H, E⁆`-relations. -/ |
| 100 | +def HE : B × B → free_lie_algebra R (generators B) := |
| 101 | +uncurry $ λ i j, ⁅H i, E j⁆ - (A i j) • E j |
| 102 | + |
| 103 | +/-- The terms correpsonding to the `⁅H, F⁆`-relations. -/ |
| 104 | +def HF : B × B → free_lie_algebra R (generators B) := |
| 105 | +uncurry $ λ i j, ⁅H i, F j⁆ + (A i j) • F j |
| 106 | + |
| 107 | +/-- The terms correpsonding to the `ad E`-relations. |
| 108 | +
|
| 109 | +Note that we use `int.to_nat` so that we can take the power and that we do not bother |
| 110 | +restricting to the case `i ≠ j` since these relations are zero anyway. We also defensively |
| 111 | +ensure this with `ad_E_of_eq_eq_zero`. -/ |
| 112 | +def ad_E : B × B → free_lie_algebra R (generators B) := |
| 113 | +uncurry $ λ i j, (ad (E i))^(-A i j).to_nat $ ⁅E i, E j⁆ |
| 114 | + |
| 115 | +/-- The terms correpsonding to the `ad F`-relations. |
| 116 | +
|
| 117 | +See also `ad_E` docstring. -/ |
| 118 | +def ad_F : B × B → free_lie_algebra R (generators B) := |
| 119 | +uncurry $ λ i j, (ad (F i))^(-A i j).to_nat $ ⁅F i, F j⁆ |
| 120 | + |
| 121 | +private lemma ad_E_of_eq_eq_zero (i : B) (h : A i i = 2) : ad_E R A ⟨i, i⟩ = 0 := |
| 122 | +have h' : (-2 : ℤ).to_nat = 0, { refl, }, |
| 123 | +by simp [ad_E, h, h'] |
| 124 | + |
| 125 | +private lemma ad_F_of_eq_eq_zero (i : B) (h : A i i = 2) : ad_F R A ⟨i, i⟩ = 0 := |
| 126 | +have h' : (-2 : ℤ).to_nat = 0, { refl, }, |
| 127 | +by simp [ad_F, h, h'] |
| 128 | + |
| 129 | +/-- The union of all the relations as a subset of the free Lie algebra. -/ |
| 130 | +def to_set : set (free_lie_algebra R (generators B)) := |
| 131 | +(set.range $ HH R) ∪ |
| 132 | +(set.range $ EF R) ∪ |
| 133 | +(set.range $ HE R A) ∪ |
| 134 | +(set.range $ HF R A) ∪ |
| 135 | +(set.range $ ad_E R A) ∪ |
| 136 | +(set.range $ ad_F R A) |
| 137 | + |
| 138 | +/-- The ideal of the free Lie algebra generated by the relations. -/ |
| 139 | +def to_ideal : lie_ideal R (free_lie_algebra R (generators B)) := |
| 140 | +lie_submodule.lie_span R _ $ to_set R A |
| 141 | + |
| 142 | +end relations |
| 143 | + |
| 144 | +end cartan_matrix |
| 145 | + |
| 146 | +/-- The Lie algebra corresponding to a Cartan matrix. |
| 147 | +
|
| 148 | +Note that it is defined for any matrix of integers. Its value for non-Cartan matrices should be |
| 149 | +regarded as junk. -/ |
| 150 | +@[derive [lie_ring, lie_algebra R]] |
| 151 | +def matrix.to_lie_algebra := (cartan_matrix.relations.to_ideal R A).quotient |
| 152 | + |
| 153 | +instance (A : matrix B B ℤ) : inhabited (matrix.to_lie_algebra R A) := ⟨0⟩ |
0 commit comments