Package: lie-nn
lie-nnThis library aims to help the development of equivariant polynomials on reductive Lie groups and finite groups. It contains fundamental mathematical operations such as tensor products, symmetric products, and direct sums of reducible and irreducible representations of groups.The library is modular, and new groups can be easily implemented.InstallationTo install viapip, follow the steps below:git clone git@github.com:lie-nn/lie-nn.git
pip install ./lie-nnTabulated Irreducible RepresentationsIrreducible representations (irreps) of reductive Lie groups play an essential role as they are budling blocks of other finite-dimensional representations.
We implement irreducible representations for a variety of Lie groups by providing the following:labelling of the irrepstheir dimensionsan explicit basis (called generators)direct sums of irrepsdecompositions of tensor product of irreps into irreps (Clebsch Gordans)symmetric power of irreps (Symmetric generalized ClebschClebsch Gordans)lie-nncurrently has tabulated the irreps of the following groups:GroupsPotential Applications$\mathrm{SO}_{\mathbb{R}}(3)$3D Point Clouds (Molecules, Vision)$\mathrm{O}_{\mathbb{R}}(3)$Rotations + Reflections$\mathrm{SO}_{\mathbb{R}}(1,3)$Particles Physics$\mathrm{SU}_{\mathbb{R}}(N)$Quantum Physics$\mathrm{SU}_{\mathbb{R}}(3)$QCD$\mathrm{U}_{\mathbb{R}}(1)$Electromagnetism$\mathrm{SL}_{\mathbb{R}}(2, \mathbb{C})$-Irreps of a product of all these groups are also supported. Moreover isomorphics groups have the same irreducible representations. As all the irreps of $\mathfrak{sl}_ {n}$ ($SU(N)$ in the code) are implemented, the irreps of the following Lie algebras can also be obtained:$\mathfrak{so}_ {3} \simeq \mathfrak{sp}_ {2}  = \mathfrak{sl}_ {2}$$\mathfrak{so}_ {4} \simeq \mathfrak{sl}_ {2} \oplus \mathfrak{sl} _{2}$$\mathfrak{so}_ {6} \simeq \mathfrak{sl}_ {4}$We aim to add new tabulated irreps for more groups, including the other classical complex Lie groups $Sp(2n)$, $SO(2n+1)$ and $SO(2n)$ (PR are welcomed).Data TypesThe data are organised in three categories:GenericRep- a generic representation of a Lie groupReducedRep- a reduced representation into irrepsRep- a reducible representations (Sn,so(2n)_adjoint,so(2n+1)_adjoint)TabulatedIrrep- a tabulated irreps (SU2,SU2Real,O3,SO3,SL2C,SO13,SU3,SU4,Z2)Functionschange_basis- change of basis for the representationchange_algebra- change of basis for the algebrainfer_change_of_basis- infer the change of basis matrix between two representationsclebsch_gordan- Clebsch-Gordan coefficientsreduce- creates a reduced representation (ReducedRep)direct_sum- direct sum of two representationstensor_product- tensor product of two representationsreduced_tensor_product_basis- change of basis matrix between the tensor product and the irrepsreduced_symmetric_tensor_product_basis- change of basis matrix between the symmetric tensor product and the irrepsconjugate- conjugate representationmake_explicitly_real- some representations can be made explicitly realgroup_product- representation in the direct product of the groupsExampleimportlie_nnaslielie.clebsch_gordan(lie.irreps.SU3((1,1,0)),lie.irreps.SU3((1,0,0)),lie.irreps.SU3((2,1,0)),)Formatting the codepycln .
black .ReferencesIf you use this code, please cite our papers:@misc{batatia2023general,
      title={A General Framework for Equivariant Neural Networks on Reductive Lie Groups}, 
      author={Ilyes Batatia and Mario Geiger and Jose Munoz and Tess Smidt and Lior Silberman and Christoph Ortner},
      year={2023},
      eprint={2306.00091},
      archivePrefix={arXiv},
      primaryClass={stat.ML}
}