Groups¶

class
emlp.groups.
Group
(*args, **kwargs)[source]¶ Abstract Group Object which new groups should inherit from.

d
= NotImplemented¶ The dimension of the base representation

lie_algebra
= NotImplemented¶ The continuous generators

discrete_generators
= NotImplemented¶ The discrete generators


class
emlp.groups.
Trivial
(n)[source]¶ The trivial group G={I} in n dimensions. If you want to see how the inductive biases of EMLP perform without any symmetry, use Trivial(n)

class
emlp.groups.
SO13p
(*args, **kwargs)[source]¶ The component of Lorentz group connected to identity

class
emlp.groups.
O13
(*args, **kwargs)[source]¶ The full lorentz group (including Parity and Time reversal)

class
emlp.groups.
SO11p
(*args, **kwargs)[source]¶ The identity component of O(1,1) (Lorentz group in 1+1 dimensions)

class
emlp.groups.
Sp
(m)[source]¶ Symplectic group Sp(m) in 2m dimensions (sometimes referred to instead as Sp(2m) )

class
emlp.groups.
Z
(n)[source]¶ The cyclic group Z_n (discrete translation group) of order n. Features a regular base representation.

class
emlp.groups.
S
(n)[source]¶ The permutation group S_n with an n dimensional regular representation.

class
emlp.groups.
Cube
[source]¶ A discrete version of SO(3) including all 90 degree rotations in 3d space Implements a 6 dimensional representation on the faces of a cube

class
emlp.groups.
RubiksCube
[source]¶ The Rubiks cube group G<S_48 consisting of all valid 3x3 Rubik’s cube transformations. Generated by the a quarter turn about each of the faces.

class
emlp.groups.
ZksZnxZn
(k, n)[source]¶ One of the original GCNN groups ℤₖ⋉(ℤₙ×ℤₙ) for translation in x,y and rotation with the discrete 90 degree rotations (k=4) or 180 degree (k=2)