Year: 2021

Abstract:
Equivariance is becoming an increasingly popular design choice to build data efficient neural networks by exploiting prior knowledge about the symmetries of the problem at hand. Euclidean steerable CNNs are one of the most common classes of equivariant networks. While the constraints these architectures need to satisfy are understood, no practical method to parametrize them generally has been described so far, with most existing approaches tailored to specific groups or classes of groups. In this work, we generalize the Wigner-Eckart theorem proposed in Lang & Weiler (2020), which characterizes general G-steerable kernel spaces for compact groups G over their homogeneous spaces, to arbitrary G-spaces. This enables us to directly parameterize filters in terms of a band-limited basis on the base space, but also to easily implement steerable CNNs equivariant to a large number of groups. To demonstrate its generality, we instantiate our method on a large variety of isometry groups acting on the Euclidean space R. Our general framework allows us to build E(3) and SE(3)-steerable CNNs like previous works, but also CNNs with arbitrary G ≤ O(3)-steerable kernels. For example, we build 3D CNNs equivariant to the symmetries of platonic solids or choose G = SO(2) when working with 3D data having only azimuthal symmetries. We compare these models on 3D shapes and molecular datasets, observing improved performance by matching the model’s symmetries to the ones of the data.

heading: 1 INTRODUCTION
text: In machine learning, it is common for tasks to present a number of symmetries. A symmetry in the data occurs, for example, when some property (e.g., the label) does not change if a set of transformations is applied to the data itself, e.g. translations or rotations of images. Symmetries are algebraically described by groups. If prior knowledge about the symmetries of a task is available, it is usually beneficial to encode them in the models used (Shawe-Taylor, 1989; Cohen & Welling, 2016a). The property of such models is referred to as equivariance and is obtained by introducing some equivariance constraints in the architecture (see Eq. 2). A classical example are convolutional neural networks (CNNs), which achieve translation equivariance by constraining linear layers to be convolution operators. A wider class of equivariant models are Euclidean steerable CNNs (Cohen & Welling, 2016b; Weiler et al., 2018a; Weiler & Cesa, 2019; Jenner & Weiler, 2021), which guarantee equivariance to isometries of a Euclidean space Rn, i.e., to translations and a group G of originpreserving transformations, such as rotations and reflections. As proven in Weiler et al. (2018a; 2021); Jenner & Weiler (2021), this requires convolutions with G-steerable (equivariant) kernels.
Our goal is developing a program to implement any semi-direct product group Rn oG equivariant CNN, with compact G, minimizing the requirements to implement new G-steerable kernels. Lang & Weiler (2020) provides a first step in this direction by generalizing the Wigner-Eckart theorem from quantum mechanics to obtain a general technique to parametrize G-steerable kernel spaces over orbits of a compact G. The theorem reduces the task of building steerable kernel bases to that of finding some pure representation theoretic ingredients. Since the equivariance constraint only relates points g.x ∈ Rn in the same orbit G.x ⊂ Rn, a kernel can take independent values on different orbits. Fig. 1 shows examples of orbits in R2 under the action of continuous planar rotations G = SO(2) (orbits are rings of different radii) and of discrete rotations by π2 , G = C4 (orbits are sets of four points). Hence, Lang & Weiler (2020) suggest independently parameterizing orbits of G in Rn (colored regions in Fig.1). While this guarantees a complete parameterization of G-steerable functions,
convolution requires kernels to be integrable, and the numerical discretization of the filters requires them to be sufficiently band-limited1. Indeed, particular care should be taken to avoid aliasing effects while discretizing filters on a grid (e.g., to process voxelized data). Lang & Weiler (2020) naturally support band-limiting along each orbit of G but do not restrict the kernel across different orbits. Intuitively, this means that a filter can be decomposed into a finite number of orbits but these should then be patched together with some smoothness considerations. This introduces an important requirement and a sensitive design choice. First, building a new G-steerable CNNs requires one to identify the orbits of G in Rn. Second, the choice of orbits to consider affect the band-limitation of a filter, but this relation is hard to explicitly quantify in a general setting. This problem is more severe for smaller groups G (particularly, finite ones), as Rn decomposes into a larger number of orbits. For instance, if G = SO(2) in Fig. 1a, band-limiting along rings is controlled by the Wigner-Eckart theorem but is not enforced along the radial component. If G = C4 in Fig. 1b, each ring is partitioned into discrete orbits: because a larger number of orbits increases the maximum angular frequency, aliasing can be sensitive to this design choice.
Contributions and Outline In this work, we solve this issue and propose a general solution strategy to build arbitrary CNNs with G-
steerable kernels, for any compact group G. Theorem 2.1 generalizes the result of Lang & Weiler (2020) from G-homogeneous spaces to more general spaces X carrying a G-action. Our theorem relies on an initial basis for the unconstrained kernel space which is then restricted to a G-steerable subspace. Aliasing effects are thereby controlled by the choice of this initial basis on the general G-space X . In practice, in this work we focus on Euclidean spaces X = Rn, although the theory developed more generally supports semi-direct product groups, i.e. X oG. To support any compact group G with minimal requirements, we propose to choose an initial basis spanning a kernel space closed under the action of any such G, i.e. under G′ = O(n). The benefits are two-fold: 1) it allows direct control on aliasing through the initial band-limited basis and 2) it completely disentangles the discretization issues from the choice of G, minimizing the requirements to implement equivariance to new groups. For example, this enables the parameterization of C4 filters without discretizing rings into a finite number of points as in Fig. 1b. Algorithm 1 summarizes our method and its requirements.
Because of the large variety of symmetries in R3, and since the planar case was extensively studied in Weiler & Cesa (2019), in our experiments, we put particular emphasis on the 3D setting. To illustrate the generality of our method, we instantiate it on many different subgroups of O(3), the group of 3D rotations and reflections, and compare them experimentally. This results in many new 3D convolution networks equivariant, for example, to icosahedral symmetries, axial symmetries, cylindrical symmetries or conical symmetries. Axial symmetries are particularly relevant since natural 3D data generally has vertical orientation; see Sec. G. In Sec.5.1, we discuss many design choices for 3D equivariant networks, and compare them in the experiments in Sec. 5.3. In particular, we find that designs based on different discretizations of the group and pointwise non-linearities to be beneficial when working with volumetric data. Additionally, Sec.5.2 compares the stability of our basis and of one using finite orbits of G and the relative performance of two models using these bases.
In the Appendix, we derive some results for working with representation theoretic objects to reduce the work needed to implement new equivariant CNNs. This includes real-valued representations of compact groups, harmonic bases for induced representations, numerical irreps decomposition and representation theory of direct product groups. Finally, we implement the program described in this work in the form of a general purpose library based on PyTorch which we plan to release publicly.
2 THE THEORY OF STEERABLE CNNS AND G-STEERABLE KERNEL SPACES
In Sec. 2.1, we discuss preliminaries on steerable CNNs and the equivariance constraints on their filters. Sec. 2.2 describes the generalization of Lang & Weiler (2020) we use to parametrize kernels.
1A band-limited signal’s spectrum has bounded support. Nyquist-Shannon sampling theorem states that only sufficiently band-limited signals are faithfully represented by discrete samples. Otherwise, aliasing effects occur.

heading: 2.1 EUCLIDEAN STEERABLE CNNS
text: Equivariant neural networks are characterized by their property to commute with the action of a given symmetry group on their input, intermediate feature spaces, and output. We focus on convolutional networks on Euclidean spaces Rn, acted on by the group (Rn,+)oG, which is a semidirect product of translations in (Rn,+) and origin-preserving transformations G ≤ O(n). A general framework of equivariant convolutional models is that of steerable CNNs, which we briefly recapitulate here. For more details, see Cohen & Welling (2016b); Weiler et al. (2018a; 2021); Weiler & Cesa (2019).
The fundamental design choice underlying steerable CNNs is that they operate on feature vector fields, which are similar to feature maps but differ in that they are associated with a well defined action of (Rn,+)oG. The geometric type of a feature field is prescribed by an orthogonal group representation ρ : G→ Rdρ×dρ which determines the transformation law of dρ-dimensional feature vectors under the action of G. Specifically, a feature field of type ρ is a map f : Rn → Rdρ which transforms under (Rn,+)oG according to the induced representation Ind(R
n,+)oG G ρ:([
Ind (Rn,+)oG G ρ
] (tg) f ) (x) := ρ(g)f ( g−1(x− t) ) g ∈ G, t ∈ (Rn,+) . (1)
Intuitively, the induced representation acts by moving feature vectors spatially from g−1(x− t) to x and by transforming each individual feature according to ρ(g) (see the visualizations in Weiler & Cesa (2019)). Prominent examples are scalar or tangent vector fields, which transform according to the trivial representation ρ(g) = 1 or the standard representation ρ(g) = g, respectively. Groupconvolution networks (Cohen & Welling, 2016a; Weiler et al., 2018b; Kondor & Trivedi, 2018) are covered as a special case with ρ being the regular representation of G. It is common to define the full feature fields of a network as a direct sum (concatenation) f := ⊕ i fi of multiple individual feature
fields fi. The full feature space transforms according to the direct sum representation ρ := ⊕
i ρi of the individual fields, which ensures that they transform independently from each other.
Weiler et al. (2018a); Jenner & Weiler (2021) proved that, under mild assumptions, the most general linear equivariant maps between spaces of feature fields are convolutions with G-steerable kernels. If the input and output fields have types ρin : G→ Rdin×din and ρout : G→ Rdout×dout , G-steerable kernels are convolution kernels K : Rn → Rdout×din satisfying the linear G-steerability constraint
K(g.x) = ρout(g)K(x)ρin(g) −1 ∀ g ∈ G, x ∈ Rn . (2)
Thus, designing steerable CNNs only requires finding a basis of the vector space of G-steerable kernels, then used to parameterize a conventional Euclidean convolution. Note that Eq. 2 relates the kernel values on all points g.x in the orbit G.x, but leaves their values on different orbits unrelated.

heading: 2.2 A WIGNER-ECKART THEOREM FOR SUBGROUP EQUIVARIANT CONVOLUTION KERNELS
text: Since we study equivariance with respect toRnoG, it is necessary to reinterpret a convolution filter in a CNN as the discretization of a continuous function. To build a basis for G-steerable filters, we start from a finite basis B for band-limited filters on Rn, spanning a subspace of L2(Rn) closed under G; then, we find its subspace of filters satisfying the G-steerability constraint in Eq. 2. Before stating our main result, we need to introduce a few concepts and define some notation. Since G is compact, we can assume all finite-dimensional representations to be orthogonal, i.e., ρ(g−1) = ρ(g)−1 = ρ(g)T . To parametrize a kernel κ : Rn → Rdout×din satisfying the steerability constraint in Eq. 2, it is convenient to use the vectorized form K(·) = vec (κ(·)) : Rn → Rdout·din . The constraint2 becomes:
K(g.x) = [ (ρin ⊗ ρout)(g) ] K(x) ∀g ∈ G, x ∈ Rn . (3)
The matrix (ρin ⊗ ρout)(g) is the Kronecker product of the two matrices ρin(g) and ρout(g).
Irrep Decomposition A useful property is that there exists a set 3 Ĝ of special representations of G, called irreducible representations or irreps, such that any representation ρ of G can be decomposed as a direct sum of them: ρ(g) = QT (⊕ i∈I ρi(g) ) Q, where ρi ∈ Ĝ, I is an index set ranging over the elements of Ĝ (possibly, with repetition) andQ is an orthogonal matrix. The direct sum ρ1(g)⊕ρ2(g) of two matrices is a block diagonal matrix containing the two matrices in its blocks. W.l.o.g., we can
2Note that vec (ABC) = (CT ⊗A) vec (B), where vec (·) stacks matrix columns into a vector. 3More precisely, irreps come in equivalence classes and the set Ĝ contains a representative for each class.
assume ρin and ρout in the kernel constraint from Eq. 2 to be irreps. The solutions for arbitrary ρin and ρout can be recovered from their irreps decomposition, as explained in Weiler & Cesa (2019). Hence, from now, we will assume ρin = ρl and ρout = ρJ , where l and J are two indices over Ĝ.
Tensor Product The matrix ρin ⊗ ρout built with the Kronecker product in Eq. 3 is itself a representation of G, namely a tensor product representation. As such, we can decompose it in terms of G irreps: ρl ⊗ ρJ = [CGlJ ]T (⊕ j ⊕[j(lJ)] s ρj ) CGlJ , where [j(lJ)] indicates the multiplicity of the irrep ρj , while CGlJ is the change of basis matrix.4 The block diagonal structure of the direct sum allows one to distinguish blocks of rows in CGlJ , acted on by individual irreps in the direct sum. The block associated with the s-th occurrence of ρj is denoted as CGj(lJ)s ∈ Rdj×dldJ .
Endomorphisms We are interested in the matrices commuting with an irrep ρj ∈ Ĝ, i.e. its endomorphism space. This is a vector space and we assume we know a basis5 {cjr ∈ Rdj×dj}r for it. Steerable Basis To parametrize our kernels, we first need a basis for square-integrable functions on Rn, i.e. for L2(Rn). A G-steerable basis for L2(X) is a collection of orthogonal functions {Y mji : X → R}j∈Ĝ,m≤dj ,i≤mj , with mj a positive (possibly infinite) integer. Denoting by Yji : X → R dj the stack {Y mji } dj m=1, Yji has the defining property that ∀g ∈ G, x ∈ X, Yji(g.x) = ρj(g)Yji(x).
Theorem 2.1 (Basis for G-Steerable Kernels). Let G be a compact group acting on a space X . Let B = {Yj′i′}j′i′ be a G-steerable basis for X . Assume ρin = ρl and ρout = ρJ in Ĝ. A basis for (vectorized) G-steerable kernels over X is given by {Kjisr}jisr, which are defined as:
Kjisr(x) = [CG j(lJ) s ] T · cjr · Yji(x) . (4)
The proof is in Appendix B (including the case of complex valued representations and functions). Note that this relies on a G-steerable basis B for L2(X). Since designing a new G-steerable basis can be laborious, we propose reusing a G′-steerable basis for all G ≤ G′ via group restriction. Group Restriction Given a group G′ and a subgroup G < G′, one can turn a representation ρ′ of G′ into a representation ResG ′
G ρ ′ of G by restricting its domain to G. It decomposes as:
ResG ′ G ρj′ = [ID j′ ]T (⊕ j ⊕[jj′] t ρj ) IDj ′ where [jj′] is the multiplicity of ρj and IDj ′ is the change of basis. As earlier, the block-diagonal structure of the direct sum distinguishes blocks of rows of the matrix IDj ′ . The block associated with the t-th occurrence of ρj is ID jj′
t ∈ Rdj×dj′ . Theorem 2.2 (Basis for G-Steerable Kernels through group Restriction). Let G ≤ G′ be compact groups acting on X . Let B′ = {Yj′i′}j′i′ be a G′-steerable basis for X . Assume ρin = ρl and ρout = ρJ in Ĝ. A basis for (vectorized) G-steerable kernels over X is given by {Kj′i′jtsr}j′i′jtsr, which are defined as:
Kj′i′jtsr(x) = [CG j(lJ) s ] T · cjr · ID jj′ t ·Yj′i′(x) . (5)
See proof in Appendix B.3. To give an intuition for Theorem 2.2, observe that performing convolution with Kj′i′jtsr over a scalar input field is equivalent to a first convolution with Yj′i′ , followed by multiplication with the other matrices. The convolution with Yj′i′ is a projection on the space spanned by {Y mj′i′} dj′ m=1, which transforms with ρj′ under G ′. Through IDjj ′
t , we project to its t-th subspace which transforms as ρj under G. The result can be transformed using any endomorphism of ρj ; hence, we have a different basis kernel for each element of the basis {cjr}r. Finally, we embed the result into a space transforming under the tensor product ρl ⊗ ρJ using [CGj(lJ)s ]T . We now present two examples on the circle X = S1 for simplicity. Example 1: SO(2)-Steerable Kernels In Fig. 2, we show a simple example of the basis for a G = SO(2)-steerable kernel space. In this case, we use G′ = G, so our parameterization is equivalent to Lang & Weiler (2020). We consider steerable kernels with input irrep ρin = ρl=0 and output irrep ρout one of ρJ=0, ρJ=1 or ρJ=2.6 Hence, the kernels have form, respectively,
4CG stands for Clebsh-Gordan since this matrix contains the so-called Clebsh-Gordan coefficients. 5In the complex case, such matrices are multiples of the identity, but this space might be larger in the real case. 6For θ∈ [0, 2π), ρ0 :θ 7→1 is the trivial irrep; if k>0, ρk maps θ to the 2×2 rotation matrix of k · θ radians.
j ′ = 0 r = 1 t = 1
(a) J = 0
j ′ = 1 r = 1 t = 1
j ′ = 1 r = 2 t = 1
(b) J = 1
j ′ = 2 r = 1 t = 1
j ′ = 2 r = 2 t = 1
(c) J = 2
Figure 2: Basis for G = SO(2)-steerable kernels according to Eq. 5. ρin = ρl=0 is 1-dimensional. ρout is either J = 0, 1 or J = 2, which are respectively 1, 2 and 2 dimensional. Each column is an element Kj′i′jtsr of the basis, while each row is an output channel. Since ρ0 ⊗ ρJ = ρJ , j = J . For circular harmonics, i′ = 1; since G = G′, j = j′ and t = 1.
K0 : S1 → R1×1, K1 : S1 → R2×1 and K2 : S1 → R2×1. An SO(2)-steerable basis on X = S1 is given by the circular harmonics: Y 0j′i′(θ) = cos(j
′θ) and Y 1j′i′(θ) = sin(j
′θ), for j′ ∈ N and i′ = 1. ρ0 ⊗ ρJ = ρJ , so we always have j = J and s = 1. Since G = G′, ResG ′
G ρj′ =
ρj′ = ρj , hence t = 1 and ID jj′
t is the identity. Additionally, any 2-dimensional irrep ρj (j > 0) of SO(2) has a 2-dimensional endomorphism space spanned by cjr=0 = [ 1 0 0 1
] and cjr=1 = [ 0 1 −1 0 ] .7 This can be verified visually: in Fig. 2b and 2c, the second column
is obtained by swapping the rows of the first and by changing the sign of the second row.
Example 2: CN -Steerable Kernels In Fig. 3, we show the basis for G = C4 steerable kernels obtained using Theorem 2.2 by choosing G′ = SO(2). We use the trivial irrep l = 0 in the input and J = 0, 1, and 2 in the output. ρj occurs in a restricted representation Res SO(2) C4
ρj′ whenever j′ = |j + 4k|, k ∈ Z. Indeed, the basis prescribed in Theorem 2.2 has infinitely many elements, but each element is associated with a circular harmonic of a specific frequency j′. It is natural to use only a band-limited finite subset of this basis: in Fig. 3, we use only frequencies up to j′ = 4. Because both j = 0 and j = 2 are 1-dimensional irreps of C4 but j′ > 0 is a 2-dimensional representation of SO(2), ResG ′
G ρj′ contains two copies of ρj ; in such cases, t ∈ {1, 2}. This happens for j′ = 4 and j′ = 2 in Fig. 3a. ρj=1 has a 2-dimensional space of endomorphisms, spanned by the same basis described in the SO(2) example above, so r ∈ {1, 2} in this case. Note that the parametrization in Fig. 3 is continuous along the ring and does not suffer from the discretization issue in Fig. 1b.

heading: 3 IMPLEMENTATION DETAILS
text: Given the theoretical results described in the previous sections, we now describe the steps needed to implement G-steerable kernels and the inputs that should be provided when building new Gequivariance. Algorithm 1 summarizes these steps. Theorem 2.2 relies on: a) the irreps Ĝ = {ρj}j , b) a larger group G′ and its irreps Ĝ′ = {ρj′}j′ , c) a G′-steerable basis B′ = {Yj′i′}j′i′ for L2(X), d) the decomposition ρl ⊗ ρJ = [CGlJ ]T (⊕ j∈Ĝ ⊕[j(lJ)] s=1 ρj ) CGlJ , e) the decomposition ResG ′ G ρj′ = [ID j′ ]T (⊕ j∈Ĝ ⊕ t ρj ) IDj ′ and f ) a basis {cjr}r for the endomorphism space of ρj .
The irreps of G in a) are the main requirement: they allow us to build arbitrary representations (by means of the direct sum) and reduce the kernel constraints to the form in Sec. 2.2 by decomposing the input and output representations. A convenient choice for G′ in b) is a group whose irreps Ĝ′,
7One can verify that any linear combination of these two matrices commutes with any 2× 2 rotation matrix.
Algorithm 1 Generate G-Steerable basis along orbit X
Require: ρin = ρl and ρout = ρJ , G′-steerable basis B′ = {Yj′i′}j′i′ , Ĝ = {ρj}j and Ĝ′ = {ρj′}j′ 1: {cjr}r ← basis for endomorphism space of ρj . Appendix C 2: CGlJ , {[j(lJ)]}j ← decompose(ρl ⊗ ρJ) . Appendix E 3: for all Yj′i′ ∈ B′ do 4: IDj ′ , {[jj′]}j ← decompose(ResG ′ G ρj′) . Appendix E
5: for all j ∈ Ĝ : [jj′] > 0, s ≤ [j(lJ)], t ≤ [jj′], cjr ∈ {cjr}r do 6: Kj′i′jtsr(x)← [CGj(lJ)s ]T · cjr · IDjj ′
t ·Yj′i′(x) . Theorem 2.2 7: yield Kj′i′jtsr
together with a steerable bases as in c), are known. G′ = O(n) is always a valid choice ifX = Rn; in such case, a suitable basis is built using a polar decomposition of Rn and combining hyper-spherical harmonics with a (localized) radial basis. Like Worrall et al. (2017); Weiler et al. (2018b;a); Weiler & Cesa (2019), we use Gaussian radial profiles8. In Sec. 5, this choice of G′ allows us to easily experiment with a multitude of subgroups G ≤ O(3), without the overhead of identifying the orbits in R3 of each individual group or designing an ad-hoc G-steerable basis. Note also that band-limiting is achieved by modifying B′ and is independent from the choice of G. The irreps decomposition of ρl ⊗ ρJ in d) provides the multiplicity [j(lJ)] of each irrep ρj and the matrices CGj(lJ)s . Similarly, the irreps decomposition of Res G′
G ρj′ in e) provides the multiplicity of eachG-irrep ρj in eachG′-irrep ρj′ and the projection matrices ID jj′
t . Knowing these decompositions a-priori for any l, J and j′ is generally difficult, but they can be easily computed numerically; see Appendix E. Hence, d) and e) are satisfied given a). Finally, f ) requires a basis {cjr}r for the endomorphism space of each ρj ∈ Ĝ. This can be computed numerically, but is often unnecessary; see Appendix C. Hence, f ) is also satisfied. In summary, if X = Rn and G′ = O(n), implementing new G-steerable CNNs only requires knowing the irreps Ĝ: by knowing the action of G on Rn, one implicitly knows its embedding inside O(n) and, therefore, can apply Theorem 2.2.
Practical Example and Experiments In Sec. 5.3, we implement a variety of subgroups of the isometries of R3 (see Appendix G). To do so, we choose G′ = O(3) and B′ is built by combining spherical harmonics with a Gaussian radial profile. To implement all groups, we have to find the irreps of SO(3), O(2), SO(2), CN , I and O. This is a necessary step since irreps are used to define the types of the feature fields. Direct product groups such as Inv× SO(2) are built as in Appendix F. Finally, since there are generally multiple subgroups G < O(3) isomorphic to the same abstract group (e.g. see O(2) in Tab. 1), for each G, we explicitly define its isomorphism with an abstract group; this enables the automatic restriction of the G′ irreps and the numerical computation of the IDjj ′
t matrices. The matrices CG j(lJ) s are also all computed numerically.
Limitations Our choice of B′ implies we only parameterize filters supported on a compact ball, which is slightly more restrictive than the usual parameterization of filters with support on a cube. For a fixed kernel size, an ad-hoc implementation of G-steerable filters can exploit a larger initial basis, potentially leading to some performance gain (e.g. C4 allows filters supported on a square rather than a disk). However, if an ad-hoc implementation of G′ < O(n) steerable kernels is available, our method can be used to construct G ≤ G′ steerable spaces by using the G′-steerable basis rather than the O(n)-steerable one. Comparing the effect of different B′ on the performance of a G-steerable CNN is beyond the scope of this paper, which instead focuses on building a method suitable for anyG.

heading: 4 RELATED WORKS
text: Similar in spirit to our work is the library of Weiler & Cesa (2019), although limited to 2D convolutions and G ≤ O(2). We recover the solutions of Weiler & Cesa (2019) for G ≤ O(2), G′ = O(2) and X = R2. Geiger et al. (2020) present a library implementing general 3D steerable CNNs, but it is limited to the choices G′ = G = SO(3) or O(3). In comparison, we currently support both 2D and 3D convolution and any compact group G ≤ O(3) (including discrete and planar subgroups acting on R3). Our library is easily extendable to n ≥ 4 dimensions; see Sec. 3. Finzi et al. (2021) propose
8Other radial profiles are suitable as well without any substantial difference in our theory. The Gaussian profile is chosen mostly for presentation and implementation convenience.
a numerical method to parameterize (finite dimensional) MLPs that are equivariant to arbitrary matrix groups. Their numerical method to compute a basis of equivariant linear maps is similar to the one that we use to decompose irreps; see Appendix E. Bekkers (2020) and Finzi et al. implement group convolution on Lie groups using a finite number of samples from the continuous group. This is similar to our SO(3) or O(3) architectures with pointwise non-linearities, described in Sec. 5.1. However, since our features and filters are explicitly parametrized on a band-limited space, we can adapt the sampling set to control the reconstruction and equivariance error caused by this approximation.
Jenner & Weiler (2021) generalize Euclidean steerable CNNs to partial differential operators. Steerable CNNs can also be defined on homogeneous spaces (Cohen et al., 2018; Kondor & Trivedi, 2018; Bekkers, 2020). Moreover, G-steerable kernels are necessary to implement coordinate independent convolutions on general manifolds via gauge equivariant CNNs (Weiler et al., 2021; Cohen et al., 2019; Kicanaoglu et al., 2019; de Haan et al., 2020). Previously, Mallat (2012); Oyallon & Mallat (2015); Sifre & Mallat (2013) described similar architectures based on scattering.

heading: 5 INSTANTIATION OF THE METHOD AND EXPERIMENTS
text: We demonstrate the generality of our method by instantiating steerable CNNs for different groups G. We will mostly focus on R3 and its isometries; Appendix G briefly summarizes the subgroups used. Sec. 5.1 discusses existing and new design choices for 3D steerable CNNs. We then compare these designs in Sec. 5.3. Sec. 5.2 numerically compares our steerable basis with alternative bases.

heading: 5.1 DESIGN CHOICES OF 3D STEERABLE CNNS
text: AG-steerable CNN design involves a choice of feature field types, i.e. G representations acting on the channels of the features, see Sec. 2.1. The chosen types constrain the non-linear operations permitted.
Many works in the literature focus on designs which achieve perfect SO(3) equivariance (Weiler et al., 2018b; Thomas et al., 2018; Anderson et al., 2019) . To ensure this, a common choice is the use of irreps feature types and gated non-linearities. This operation combines a feature field fρ(x) ∈ Rdρ of type ρ with a gate f0(x) ∈ R as fρ(x) 7→ σ(f0(x))fρ(x), where σ is a sigmoid function and f0 is feature field of trivial type. This non-linearity is equivariant to any G but Weiler & Cesa (2019) found them to perform worse than point-wise non-linearities like those used in GCNNs. Another popular choice is using the tensor product of two feature fields as a non-linear operation (Kondor et al., 2018), i.e. ( fρi(x), fρj (x) ) 7→ fρi(x) ⊗ fρj (x). However, this non-linearity is quadratic and turns the network into a polynomial function of the input, which can lead to training difficulties (Anderson et al., 2019). Additionally, computing the tensor product ⊗ has computational and memory cost O(dρidρj ); it is common to project the output features to a smaller feature field through a learnable linear map. A different approach is used in Worrall & Brostow (2018); Winkels & Cohen (2018), which use the octahedral group O on voxelized data. The finiteness of the group allows for a simple GCNN (Cohen & Welling, 2016a) architecture, corresponding to the choice of the regular representation ρreg as the feature type and standard pointwise non-linearities (e.g. ReLU). The representation ρreg of a group G acts on feature vectors in R|G| by permutations and a vector in this space can be interpreted as a scalar function over G; see Weiler & Cesa (2019) for an intuitive description.
Because SO(3) (and O(3)) has only a limited number of discrete subgroups, we also consider discretizations without group structure. We then interpret a feature vector f(x) ∈ RB as the coefficients which parameterize a band-limited scalar function over G in a Fourier space. To apply a pointwise non-linearity σ : R→ R (e.g. ReLU) on f(x), we can sample the parameterized function on a finite set of elements G ⊂ G and apply σ on those. Then, we perform a Fourier transform to recover the coefficients f ′(x) of a band-limited output signal over G. If σ is smooth, the output signal is still approximatively band-limited but can contain higher frequencies than the input signal f(x). This implies that a larger set G is required to reconstruct f ′(x) than for f(x). If a fixed budget of channels (i.e. number of samples |G|) is available for a non-linear module, the input field f(x) must be strongly bandlimited. While this can reduce the expressiveness of the model’s features, it also implies that linear layers are computationally cheaper as they operate on smaller number of channels. A similar result was leveraged in Cheng et al. (2019) for G = SO(2). See Appendix H for more details. This regular non-linearity was also used in Kicanaoglu et al. (2019) for G = SO(2). The same approach can be generalized to quotient fields, i.e. feature fields which parameterize functions over a quotient space X = G/H (e.g. S2 = SO(3)/ SO(2)). Finally, to generate the sampling set G, one can use the elements of a discrete subgroup of G (e.g. Icosahedral group I < SO(3)) or optimize
the location of |G| points on G by minimizing a potential energy, as done by Bekkers (2020).

heading: 5.2 NUMERICAL COMPARISON OF STEERABLE BASES
text: In this section, we compare our basis with one built according to Lang & Weiler (2020). We consider the example of Icosahedral I steerable 3D convolution. Our basis is composed by a band-limited set of spherical harmonics per spherical shell, combined as in Theorem 2.2. The two baselines use respectively the 20 vertices of the dodecahedron and the 12 vertices of the icosahedron embedded in each
shell as orbits and parameterize the kernel along each orbit directly using (Lang & Weiler, 2020). Fig. 4 shows the histograms of the equivariance errors of the three bases with respect to the Icosahedral group; each point represents an element of the basis and the errors are averaged all transformations; see Appendix H.1. Our basis shows significantly higher stability. Finally, we study the effect of these bases on a model’s performance. In Tab. 1 we compare two I-equivariant models: one using our harmonic basis and one using the 20 vertices of the Icosahedron as orbit. Our anti-aliased basis leads to a significant improvement in accuracy.

heading: 5.3 EXPERIMENTS
text: To emphasize our method is not limited to R3, we include a simple experiment with 2D images. In the rest of the section, we compare different model designs on two volumetric datasets: ModelNet10 (Wu et al., 2015) (and a rotated version of it) and LBA (Townshend et al., 2020). For each model, we run a simple search over hyperparameters and minor variants of the designs described in Sec. 5.1 using validation accuracy, to ensure a fair comparison. Unless specified, within a task, all models approximatively share the same width. In particular, in all tasks, the models which more closely match the symmetries of the data perform the best. See Appendix H for more details on the experiments. The equivariance groups used (column G in the tables) are described in Appendix G.
Rotated MNIST As a simple 2D experiment, we train a conventional CNN and aG = C8 equivariant CNN on rotated MNIST. The steerable kernel bases are similar to those in Weiler & Cesa (2019) and we use regular field types with pointwise ELU. The conventional model achieves 96.3 ± 0.1 test accuracy while the C8 equivariant one 96.7± 0.4. Rotated ModelNet10 We generate a voxelized version of ModelNet10 with resolution 33px by sampling 3 random SO(3) rotations for each object. During training, we use rotations from O for
augmentation. In Tab. 1, we compare different equivariance groups and different equivariant designs. It includes our implementation of some relevant related works; see Sec. 5.1. We first highlight the large margin between all equivariant networks and the conventional CNN. SO(3) and O(3) models achieve better performance than the other continuous subgroups. The best results are achieved by using the discrete groups I and O or the SO(3) model with spherical quotient feature types. Recall also that the models with quotient or regular non-linearities are computationally cheaper; see Sec.5.1.
ModelNet10 To experiment with data with only axial and mirror symmetries, we generate a version of ModelNet10 by sampling the random rotations only around the Z axis. π2 rotations and reflection augmentation in the XY plane is used for training but no rotation averaging is used for testing. The final accuracies are in Tab. 2. The models equivariant to 3D rotations are outperformed by the SO(2) and O(2) models, which better match the data symmetries.
Ligand Binding Affinity (LBA) regression We also evaluate our models on a regression task using the LBA dataset (Townshend et al., 2020), containing protein-ligand complexes from the PDBBind database (Wang et al., 2004; Liu et al., 2014). In Townshend et al. (2020), an SO(3)-equivariant model with tensor product activations performed the best, despite its cost prevented training on the full dataset. We propose a volumetric SO(3) network with a computational cost equivalent to a conventional CNN by leveraging the benefit of regular non-linearities. Tab. 3 reports our results.
Discussion We again emphasize that the purpose of our experiments is mostly demonstrating the generality and flexibility of our program, but we do not necessarily envision applications of all subgroups G < O(3) considered. Still, some subgroups are practically relevant; indeed, models with azimuthal symmetry perform the best in Table 2 where the data lacks full rotational symmetry. Here, enforcing SO(3) equivariance results in over-constrained models which are not sufficiently expressive and are outperformed even by the conventional CNN. Overall, we observe models whose symmetry matches the data tend to perform the best. Some discrete subgroups, e.g. the platonic ones, constitute a special exception: they approximate the full rotational symmetry but are less restrictive than a fully rotation equivariant model, sometimes better matching the approximate symmetry of voxelized data. Finally, we only found minor differences among the various SO(3) models, although regular and quotient non-linearities stood out for their reduced computational cost (see also Appendix H.5).

heading: 6 CONCLUSIONS
text: In this work, we gave a general characterization of G-steerable kernel spaces over an arbitrary space X and proposed a general strategy to automatically parameterize them based only on G’s irreps. This enabled us to implement steerable CNNs equivariant to a variety of new groups G ≤ O(3), which we compare in an exploratory study in our experiments. Finally, we believe that Theorem 2.1 suggests a new theoretical perspective on the construction of equivariant CNNs, reducing the problem to that of devising a suitable starting basis B′, regardless of the choice of feature types in the model.

heading: REPRODUCIBILITY STATEMENT
text: To ensure reproducibility, we include a dedicated section in Appendix H to describe our experiments in more details. Moreover, we implemented all the methods described in this work in a Python library which will be released publicly. We also plan to publish the code used to run our experiments.

heading: POSSIBLE NEGATIVE SOCIETAL IMPACTS
text: Since this work is very foundational, many different negative societal impacts are conceivable. In particular, any misuse which is eased by improved computer vision systems can profit from this and similar work. Of course, we cannot discuss them all.
Nevertheless, we want to highlight one specific misuse which seems likely to occur for the field of equivariant deep learning in the future – namely, the adoption in lethal autonomous weapons systems (LAWS). We can easily think of drones using spherical vision which would profit from equivariant CNNs. In particular, since they have a fixed vertical orientation, but arbitrary horizontal orientation, they could profit from spherical CNNs using azymuthal symmetries.
It is important to realize that the mitigation of such misuses cannot happen at the level of individual research projects. Instead, what is needed is a global effort to mitigate the misuse of AI systems for LAWS in general. Fortunately, the broader AI community agrees that AI should not be used in LAWS, and that international regulations are necessary to prevent their use in the future aut (2015). We hope that efforts in this direction are continued.

heading: APPENDIX

heading: CONTENTS OF THE APPENDIX

heading: A Preliminaries on the Representation Theory of Compact Groups 15
text: A.1 Basics of (Unitary and Irreducible) Representations . . . . . . . . . . . . . . . . . 15
A.2 Homogeneous Spaces, Square-Integrable Functions, and the Peter-Weyl Theorem . 16
A.3 Constructing Unitary Representations from Others and their Relations . . . . . . . 18
A.4 Compact Subgroups and Restricted Representations . . . . . . . . . . . . . . . . . 19

heading: B A Generalized Wigner-Eckart Theorem for Steerable Kernels 20
text: B.1 Basis-Independent Formulation of the Group-Restricted Wigner-Eckart Theorem . 20
B.2 Steerable Kernel Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
B.3 A Wigner-Eckart Theorem for Group-Restricted Steerable Kernels . . . . . . . . . 24

heading: C Real Valued Representations 25
text: C.1 Preliminaries on the Structure of EndG,R(Vψ) . . . . . . . . . . . . . . . . . . . . 25
C.2 Orthogonality and Alignment of Matrix Coefficients . . . . . . . . . . . . . . . . . 28
C.3 A Convenient Choice of Basis for Real Irreps . . . . . . . . . . . . . . . . . . . . 32

heading: D The Computation of the Induced Representation of Compact Groups 34
text: D.1 Useful Definitions, Assumptions and Notations . . . . . . . . . . . . . . . . . . . 35
D.2 Induced Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
D.3 Harmonic Analysis of Induced Representations . . . . . . . . . . . . . . . . . . . 38
D.4 Reconstructing the irrep decomposition: the complex case . . . . . . . . . . . . . 41
D.5 Reconstructing the irrep decomposition: the real case . . . . . . . . . . . . . . . . 41

heading: E Numerical Irreps Decomposition of Real Representations 46

heading: F Real Irreducible Representations of the Direct Product of two Compact Groups 49
text: G 3D symmetries, Azimuthal symmetries and their relevance 51

heading: H Further Details on the Experiments 52
text: H.1 Estimating the Equivariance Error of Steerable Bases . . . . . . . . . . . . . . . . 52
H.2 Architecture Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
H.3 MNIST Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
H.4 ModelNet10 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
H.5 Computational cost and Inference time of the models . . . . . . . . . . . . . . . . 56
H.6 LBA Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
In the Appendix, we provide a more detailed description and the proof of the theoretical results mentioned in the main paper. We first give a brief overview of the representation theory of compact groups and introduce the notation we will use throughout the next chapters in Section A. In Section B, we state more precisely and prove the main result from Sec. 2.2, which we used to parametrize the steerable filters. In particular, in Section B, we state both a complex and a real version of this theorem.
Because the implementation of steerable CNNs is necessarily using real numbers, its design should rely on the real representation theory of the group considered. In Section C, we review the theory of real irreducible representations and derive some useful results to deal with these representations in the implementation. Notably, we show that, for a compact group G, any real irrep of G can always be expressed in a particular basis which allows one to recover a harmonic basis for square-integrable functions over G from the matrix coefficients of the irreps. The results shown in Section C will become useful in Section D, E and F.
The steerable basis defined in Sec. 2.2 relies on a harmonic basis for square integrable functions over the orbits of the group G.9 In Section D, we derive a method to compute the (either real or complex) harmonic basis for any homogeneous space of G from the harmonic basis of functions over G. The method described in Section D turns out to be more general and also supports vectors fields over homogeneous spaces, i.e. general induced representations of G.
Since the kernel parameterization in Sec. 2.2 relies on the irreps decomposition of the input and output representations, of the tensor product of irreps (to compute the Clebsh-Gordan coefficients CG) and of the restricted irreps of G′ (to compute the ID coefficients), the ability to decompose an arbitrary representation is essential to apply our method in a fully general setting. Therefore, in Section E, we describe a numerical method to perform this decomposition for real representations.
As explained in Sec. 3, the main (and, often, only) requirement to apply our method to a new group G is the knowledge of its irreps Ĝ. A simple operation which can be used to generate new groups is the direct product × of two groups. Examples of direct product groups include many subgroups of O(3) that we used in Sec. 5. In Section F, we describe a method to derive the real irrep of a direct product group G = A×B from the real irreps of the two subgroups A and B. Section H includes additional details on the experimental results reported in Sec. 5. In particular, we describe in more details the different equivariant designs, the architectures used, the datasets and the training and testing configurations.

heading: A PRELIMINARIES ON THE REPRESENTATION THEORY OF COMPACT GROUPS
text: In this section, we collect many notions and concepts which we need throughout the appendix for the development of the theory. This section assumes some familiarity with the representation theory of compact groups and is meant as a reminder. For readers with no background in representation theory, we can recommend the appendix of Lang & Weiler (2020).
We will use K to denote any of the two fields R or C, i.e., we develop the theory in such a way that it covers both real and complex representations. Whenever we deviate from this assumption, we will say so explicitly.
Throughout, let furthermore G be any compact group.

heading: A.1 BASICS OF (UNITARY AND IRREDUCIBLE) REPRESENTATIONS
text: Linear representations are (in a certain sense continuous) group homomorphisms ρ : G→ GL(V ) for some topological K-vector space V . In our applications, V always carries a scalar product 〈·|·〉 which induces its topology, and which we always assume to be conjugate linear in the first component, and linear in the second component. The pair (V, 〈·|·〉) is assumed to be a Hilbert space, meaning that the scalar product makes V a complete metric space. Note that, as is typical in a physics context, we freely make use of the Bra-Ket convention, and thus for example view 〈v| as a linear functional which maps |w〉 := w to 〈v | w〉. By the Riesz representation theorem, there are no other continuous linear functionals.
9Actually, G′, but we prefer to call it G in the appendix.
Unitary representations are linear representations ρ : G → U(V ) ⊆ GL(V ), where U(V ) is the unitary group of V . This is the group of unitary transformations on V , i.e., linear functions on V which preserve the scalar product, and thus distances. Whenever we explicitly assume K = R, we will write O(V ) instead of U(V ), which is the group of orthogonal transformations on V , and the representations are then called orthogonal instead of unitary.10
We will denote the set of isomorphism classes of all irreducible unitary representations (irreps) ofG as Ĝ. Thereby, irreducible representations are representations which cannot be decomposed nontrivially into subrepresentations. We usually write indices j, l, J ∈ Ĝ to indicate such isomorphism classes, and then, e.g., ρj : G → U(Vj) to denote a representative of such an isomorphism class. We set dj := dVj as the dimension of the representation space of Vj . Whenever we consider only one irrep, we may also, by abuse of notation, write ρ ∈ Ĝ to indicate (a representative of an isomorphism class) of an irrep of G.
We now collect definitions which we use throughout. Definition A.1 (Homomorphisms/Intertwiners). Let ρV : G→ GL(V ) and ρW : G→ GL(W ) be two linear representations. The space of homomorphisms, also called intertwiners, HomG,K(V,W ), consists of all linear, continuous functions f : V →W which commute with the two representations, i.e., f ◦ρV (g) = ρW (g)◦f for all g ∈ G. We write for this space also HomG,K(ρV , ρW ), depending on whether we want to emphasize the representation spaces or the representations. Definition A.2 (Equivalences and Isomorphisms). Let ρV : G→ GL(V ) and ρW : G→ GL(W ) be two linear representations. An intertwiner f : V → W is called an equivalence if there is an intertwiner g : W → V such that g ◦ f = idV and f ◦ g = idW . ρV and ρW , or also V and W , are then said to be equivalent.
If ρV and ρW are even unitary representations, and f and g additionally are unitary transformations, i.e., preserve the scalar product and thus distances, then V andW or ρV and ρW are called isomorphic, and f and g isomorphisms. We write this as ρV ∼= ρW or V ∼= W , depending on whether we want to emphasize the representations or the representation spaces. Definition A.3 (Endomorphisms, Endomorphism Basis). Let ρ : G→ GL(V ) be a linear representation. The space of endomorphisms EndG,K(V ) consists of all linear, continuous maps c : V → V that commute with ρ, i.e., c ◦ ρ(g) = ρ(g) ◦ c for all g ∈ G. For ρ = ρj being an irrep, this space is finite-dimensional and has a basis (the endomorphism basis) (cjr) Ej r=1 with Ej = d(EndG,K(Vj)).
Note that EndG,K(Vj) = HomG,K(Vj , Vj).
By Schur’s Lemma, the endomorphism spaces of complex irreps are always 1-dimensional, generated by the identity. For real representations, they can be 1, 2, or 4-dimensional, and the irrep is then correspondingly called of real type, complex type, or quaternionic type. See Supplementary C for more details on real representations.

heading: A.2 HOMOGENEOUS SPACES, SQUARE-INTEGRABLE FUNCTIONS, AND THE PETER-WEYL THEOREM
text: Recall that a homogeneous space of the compact group G is a topological (Hausdorff) space X together with a transitive continuous action . : G×X → X , (g, x) 7→ g.x = gx. As is commonly known, G carries an inversion-invariant and left-right invariant so-called Haarmeasure µ, which can furthermore be assumed to be normalized: µ(G) = 1. This Haar measure also induces a corresponding G-action invariant measure ν on X , which we also call Haar-measure and assume to be normalized: ν(X) = 1.
The normalization makes both Haar-measures the unique measures which are defined on the whole Borel Sigma algebras of these spaces and satisfying the mentioned invariance properties. To reduce clutter, we will mostly not mention the used measure in integral-formulas, but we view it as understood that all integrals are with respect to these unique Haar measures.
10But note that in the general case of unspecified field K, we always speak of unitary representations, by which we just mean “orthogonal” in the case K = R
Fix from now on a homogeneous space X of G. Definition A.4 ((The Space of) Square-Integrable Functions). A square-integrable function f : X → K is a measurable function with the property that the square of its absolute value is integrable:∫ X |f(x)|2dx <∞.
We denote the space of all such square-integrable functions by L2K(X). It carries a scalar product given by 〈f | g〉 = ∫ X f(x)g(x)dx, making it a Hilbert space. It also carries a unitary representation of G given by λ : G→ U(L2K(X)), (λ(g)f)(x) := f(g−1x). Definition A.5 (Regular Representation). In the case that X = G is the group itself, we call L2K(G), together with the action [λ(g)f ](g′) := f(g−1g′), the regular representation of G. Theorem A.6 (Peter-Weyl Theorem). There is a decomposition
L2K(X) = ⊕̂ j∈Ĝ mj⊕ i=1 Vji
into irreducible subrepresentations. Thereby, Vji is isomorphic to the representative irreducible representation Vj and generated by orthonormal harmonic basis functions Y mji : X → K. We have mj ≤ dj := dVj . If K = C and X = G, then mj = dj .
Note that the hat (̂·) denotes a topological closure. It is a technicality which the reader can mostly ignore without problems. Proposition A.7 (Peter-Wyel Theorem: An Explicit Basis for Complex-Valued Square-Integrable Functions on a Compact Group). In the complex field K = C, the orthonormal harmonic basis for L2C(G) is given explicitly by:
Y mji (g) = √ dj〈ρj(g)ei|em〉 = √ dj [ρj(g)]mi = √ dj [ρj(g −1)]im
In other words, the matrix coefficients of the complex irreps of G form an orthogonal basis for L2C(G). Definition A.8 (Harmonic Projections). We denote the orthogonal projection from L2K(X) to the i’th copy of Vj by pji : L2K(X)→ Vj . On the harmonic basis, it is given by
pji ( Y m̃ j̃ĩ ) = δjj̃δĩi · |jm̃〉,
which just follows from the fact that the harmonic basis functions form an orthonormal basis of L2K(X), which is then mapped to the corresponding orthonormal basis of Vj , the representation space of the representative irrep ρj : G→ U(Vj).
One commonly known corollary of the Peter-Weyl theorem is the following. We make use of it in the definitions of the Clebsch-Gordan coefficients and irrep-decomposition coefficients which we define in the next two subsections: Corollary 1. Any unitary representation of G, even infinite dimensional, can be decomposed into a (topological closure of a) direct sum of irreps of G with a unitary isomorphism, i.e.: for all unitary representations π : G→ U(V ) of G, there exists a unitary transformation M : V → ⊕̂ i∈IVi, where ρi : G→ U(Vi) are unitary irreducible representations such that for all g ∈ G the following identity holds:
π(g) = M−1 (̂⊕ i∈I ρi(g) ) M .
I is a set indexing irreps in Ĝ, and the same irrep may occur multiple times. If such an M exists, we also write V ∼= ⊕̂ i∈IVi.
That M is a unitary transformation means, as explained earlier, that it preserves the scalar product and thus distances. Consequently, one has M−1 = M†, i.e., the inverse is equal to the adjoint11. In the finite-dimensional case, and working with matrices, one has that M† is given by the conjugate transpose of M , and if we additionally consider real-valued representations, then M† = MT is just the transpose.
11The adjoint of a continuous linear operator f : V → W between Hilbert spaces is defined as the unique continuous linear operator f† :W → V satisfying 〈f(v) | w〉 = 〈v | f†(w)〉 for all v ∈ V and w ∈W .

heading: A.3 CONSTRUCTING UNITARY REPRESENTATIONS FROM OTHERS AND THEIR RELATIONS
text: Now we come to tensor-products and Clebsch-Gordan coefficients. Recall that given two finitedimensional unitary representations ρV : G → U(V ) and ρW : G → U(W ), one can define a unitary representation ρV ⊗ ρW : G→ U(V ⊗W ) called tensor product given by (ρV ⊗ ρW )(g) = ρV (g)⊗ ρW (g) : v⊗w 7→ [ρV (g)] (v)⊗ [ρW (g)] (w). Thereby, V ⊗W is the tensor product of the vector spaces V and W . If V and W have bases {v1, . . . , vn} and {w1, . . . , wm}, respectively, then the tensor product has a basis {vi ⊗ wj | i = 1, . . . , n, j = 1, . . . ,m}. Correspondingly, represented with respect to given bases, the matrix corresponding to ρV (g)⊗ ρW (g) is the Kronecker product of the matrices corresponding to ρV (g) and ρW (g). The scalar product on the tensor product is given by 〈v ⊗ w | v′ ⊗ w′〉 = 〈v | v′〉 · 〈w | w′〉. The tensor product V ⊗W has a universal property which relates bilinear functions on V ×W to linear functions on V ⊗W . Recall that for an irrep ρj : G→ U(Vj), dj denotes the dimension of Vj . Definition A.9 (Clebsch-Gordan Coefficients). Let ρl : G → U(Vl) and ρJ : G → U(VJ) be irreducible unitary representations of G. There is a decomposition
Vl ⊗ VJ ∼= ⊕ j∈Ĝ [j(lJ)]⊕ s=1 Vj
of the tensor product in irreps, where [j(lJ)] is the multiplicity of Vj in Vl ⊗ VJ . This multiplicity is zero for all but finitely many j ∈ Ĝ. We denote the coupling coefficients between basis elements coming from this decomposition by 〈s, jm|ln; JM〉, where m ≤ dj , n ≤ dl, M ≤ dJ and s ≤ [j(lJ)]. They are called the Clebsch-Gordan coefficients. Remark A.10. The main application of the tensor product will be in the Wigner-Eckart theorem which we state in Section B, where ρj will be the irrep corresponding to harmonic basis functions on a homogeneous space, ρl will be the input representation, and ρJ will be the output representation. Compared to the work Lang & Weiler (2020), this means that we will decompose Vl ⊗ VJ instead of Vj ⊗ Vl, which leads to a simpler implementation for real representations, the case we are concerned with, at the cost of the necessity to invoke dual representations in the case that one works with complex representations.
The definition of these coefficients can be made more explicit by invoking the corresponding projections and embeddings, which we will use in the proof of our adapted Wigner-Eckart Theorem. We thereby define |ln〉, n ≤ dl, as the n’th basis vector in Vl, for a fixed basis, and similarly for |jm〉 and |JM〉. Definition A.11 (Clebsch-Gordan Projections and Embeddings). We denote the projection from Vl ⊗ VJ to the s’th copy of Vj by CGj(lJ)s : Vl ⊗ VJ → Vj . It has as matrix elements the ClebschGordan coefficients for fixed s, j, l, J :
〈s, jm | ln; JM〉 = 〈 jm ∣∣∣CGj(lJ)s ( |ln〉 ⊗ |JM〉 )〉. (6)
Dually, we denote the embedding of the s’th copy of Vj into Vl ⊗ VJ by ij(lJ)s : Vj → Vl ⊗ VJ . It relates to the Clebsch-Gordan coefficients as follows:
〈s, jm|ln; JM〉 = 〈 ij(lJ)s (|jm〉) ∣∣ln; JM〉. (7) Note that this definition of Glebsh-Gordan coefficient is compatible with the one in Sec. 2.2, for real representations. Indeed, in Sec. 2.2, CGj(lJ)s denotes the matrix of Clebsch-Gordan coefficients 〈s, jm̃|lm; JM〉 of shape dj × (dl · dJ).
For a Hilbert space V , we set V † as the space of continuous linear functionals on V . As mentioned above, by the Riesz representation theorem these linear functionals are given by all v† := 〈v| for v ∈ V . V † is then also a Hilbert space with the scalar product given by 〈 v†|w† 〉 = 〈w|v〉.12 This definition of a dual can be extended to a dual of unitary representations:
12Notice the change of order.
Definition A.12 (Dual Representation). Let ρ : G→ U(V ) be a finite-dimensional unitary representation. Then we can define the dual representation ρ† : G→ U(V †) as follows:
[ρ†(g)](v†) := v† ◦ ρ(g−1) : V → K. (8) If ρl : G → U(Vl) is a finite-dimensional irreducible representation, then we write Vl† := (Vl)† and (ρl)† := ρl† for a new auxiliary label l†. If |ln〉, n = 1, . . . , dl, are chosen basis elements of Vl, then we choose as the basis of Vl† the vectors |l†n〉 := 〈ln|, which are the functionals defined by the property 〈lñ|ln〉 = δñn.
Similarly to how we defined a tensor product representation above, one can also define Homrepresentations: Let ρV : G → U(V ) and ρW : G → U(W ) be finite-dimensional unitary representations. Let HomK(V,W ) be defined as the vector space of linear, not necessarily equivariant, functions from V to W . Choosing bases of V and W , this space is isomorphic to KdV ·dW and thus carries a Euclidean scalar product which makes it a Hilbert space. The Hom-representation is then given by ρHom : G→ U(HomK(V,W )) with [ρHom(g)](f) := ρW (g) ◦ f ◦ ρV (g)−1. Tensor product representations and Hom-representations are related as follows: Proposition A.13. Let ρV : G → U(V ) and ρW : G → U(W ) be finite-dimensional unitary representations. The function ΨHT : V † ⊗W → HomK(V,W ) given by
ΨHT : v † ⊗ w 7→ ( v† ) w , ( v† ) w
(v′) := v†(v′) · w (9) is an isomorphism of unitary representations. The indices HT stand for “Hom” and “Tensor”.
Note that when working with real representations instead of complex representations, the map v 7→ v† is linear instead of only conjugate linear, and consequently, dual representations are isomorphic to the original representation. In that case, one thus obtains V ⊗W ∼= HomR(V,W ).

heading: A.4 COMPACT SUBGROUPS AND RESTRICTED REPRESENTATIONS
text: Let in this subsection G ⊆ G′ be a compact subgroup of the compact group G′. By restriction, one can view any unitary representation of G′ as one of G, which will become important both in our treatment of the adapted Wigner-Eckart Theorem in Section B and in considerations on the induced representation of a given irrep in Section D: Definition A.14 (Restricted Representation). Let ρ′ : G′ → U(V ′) be a unitary representation of G′. We define ResG ′
G V ′ := V ′ and ResG
′
G ρ ′ by
ResG ′ G ρ ′ : G→ U(ResG ′ G V ′) = U(V ′), g 7→ ρ′(g).
It is called the restricted representation of ρ on G.
Crucially, restrictions of irreps of G′ need not be irreps of G. In analogy to the Clebsch-Gordan coefficients, which emerge when decomposing tensor products, one can define irrep-decomposition coefficients, which emerge when decomposing restrictions of irreps of the group G′ into irreps of G: Definition A.15 (Irrep-Decomposition Coefficients). Let ρj′ : G′ → U(Vj′) be an irrep of G′. Then there is a decomposition
ResG ′ G Vj′ ∼= ⊕ j∈Ĝ [jj′]⊕ t=1 Vj ,
where [jj′] is the multiplicity of irrep Vj of G in ResG ′
G Vj′ . This multiplicity is zero for all but finitely many j ∈ Ĝ. We denote the coupling coefficients between basis elements coming from this decomposition by 〈t, jm|j′m′〉, where m ≤ dj , m′ ≤ dj′ , t ≤ [jj′]. We call them the irrep-decomposition coefficients.
Definition A.16 (Irrep-Decomposition Projections). We denote the projection from ResG ′
G Vj′ to the t’th copy of Vj by ID jj′ t : Res G′
G Vj′ → Vj . Is has as matrix coefficients the irrep-decomposition coefficients for fixed t, j, j′:
〈t, jm | j′m′〉 = 〈 jm ∣∣ IDjj′t ∣∣j′m′〉. (10)
Here, ID stands for “irrep” and “decomposition”.

heading: B A GENERALIZED WIGNER-ECKART THEOREM FOR STEERABLE KERNELS
text: The kernel space solution from this work will be based on the Wigner-Eckart theorem for steerable kernels from Lang & Weiler (2020). We thereby adapt that theorem in two practically relevant ways, and thus have to reprove the theorem: First, rather than working on a homogeneous space X of G, we work with an arbitrary space X equipped with an action of G. The special case where X is a homogeneous space of G then recovers the result in Lang & Weiler (2020). Second, by decomposing a certain Hom-representation instead of a tensor product representation, we make the computational process easier which finds the harmonic basis functions that build the equivariant kernels.
Finally, in Appendix B.3, we extend the previous result by reusing aG′-steerable basis to parameterize a G-steerable kernel space.
In this whole section, we freely make use of the concepts and notation defined in Section A.

heading: B.1 BASIS-INDEPENDENT FORMULATION OF THE GROUP-RESTRICTED WIGNER-ECKART THEOREM
text: We explain the kernel space solution for the following general setting. We assume G is a compact group. Also, K is one of the two fields R or C (with our applications focused on the case R). Let X be a topological Hausdorff space equipped with the Borel σ-algebra, making it a measurable space. We assume X is equipped with a measure µ and a continuous action of G on X . Since we want L2K(X) to be a unitary representation over G, we assume the action of G on X to preserve the measure µ. All these assumptions are, for example, satisfied if X is any homogeneous space of G, or if G is a subgroup of O(n) and X ⊆ Rn any subset of the Euclidean space that is preserved under the action of G.
Finally, ρl : G→ U(Vl) and ρJ : G→ U(VJ) are irreducible unitary input and output representations of G. Their dimension is denoted dl and dJ , respectively.
In this setting, our goal is to determine a basis for the space of G-steerable kernels K : X → HomK(Vl, VJ), which we define as any square-integrable function such that the steerability constraint is satisfied, i.e.: for all g ∈ G and x ∈ X , the following holds:
K(gx) = ρout(g) ◦K(x) ◦ ρin(g)−1.
Note that, compared to Lang & Weiler (2020), the space X is in general not a homogeneous space of the group G. We denote the space of all these G-steerable kernels by HomG(X,HomK(Vl, VJ)). More details and intuitions on this “abstract” definition of steerable kernels (however, only for the special case whereX is a homogeneous space ofG) can be found in Lang & Weiler (2020), Appendix C.1.
First, note that the space L2K(X) of square-integrable functions on X carries an action of G as well. Similarly as in Lang & Weiler (2020), the main ingredient of the Wigner-Eckart Theorem is a correspondence between G-steerable kernels on X and kernel operators, i.e., intertwiners, on L2K(X). For this, recall that both HomK(Vl, VJ) and L2K(X) carry a G-representation. Definition B.1 (The Kernel-Operator Correspondence). For any intertwiner K : L2K(X) → HomK(Vl, VJ), we define its restriction to X by
K|X(x) := K(δx),
where δx is the Dirac delta function at x ∈ X .13 K|X is then a G-steerable kernel. In the other direction, for any G-steerable kernel K : X → HomK(Vl, VJ), we define the extension to L2K(X) by
K̂(f) := ∫ X f(x)K(x)dµx.
This is then an intertwiner.
Theorem B.2. Those two operations are inverse to each other, i.e., K̂|X = K and K̂|X = K. 13Since the Dirac delta function is not actually square-integrable, formally, this is defined by performing a limit over square-integrable functions that more and more resemble the Dirac delta, see Lang & Weiler (2020).
Proof. This follows from the well-known fact that L2K(X) is isomorphic to its own dual space . First, note that an intertwiner K : L2K(X) → HomK(Vl, VJ) belongs to ⊕dl·dJ L2K(X)∗, i.e. to
dl · dJ copies of the dual space of L2K(X). Conversely, a kernel K : X → HomK(Vl, VJ) belongs to⊕dl·dJ L2K(X), i.e. to dl · dJ copies of L2K(X). For 1 < p <∞ and q = pp−1 , there is a natural isomorphism between the spaces L
p(X)∗ and Lq(X) given by the map:
Φ : Lq(X)→ Lp(X)∗, f 7→ f̂ , f̂(g) = ∫ X f(x)g(x)dµ(x)
Φ−1 : Lp(X)∗ → Lq(X), f̂ 7→ f, f(x) = f̂(δx)
By choosing p = q = 2 we obtain the isomorphism between L2K(X) and L 2 K(X) ∗. Then, note that the operations (̂·) and (·)|X are respectively equivalent to Φ and Φ−1 applied independently to each of the dl · dJ subspaces isomorphic to L2K(X) or L2K(X)∗. And finally, note that this isomorphism is still well-defined when restricted to the equivariant kernels and kernel operators, respectively.
Note now that, since G is acting as an isometry on X , its action on L2K(X) is unitary. By Corollary 1, it follows that this actions decomposes into a direct sum of irreps of G. It follows that L2K(X) also decomposes into a direct sum of invariant subspaces L2K(X) ∼= ⊕̂ j∈Ĝ ⊕̂mj i V i j , where mj is the multiplicity of the irrep ρj ∈ Ĝ and each V ij ∼= Vj is acted on by G through ρj ∈ Ĝ. We denote a basis for V ij with {Y mji : X → K} dj m . Note that mj may be infinite, even uncountably large, since we do not assume X to be a homogeneous space of G.
Definition B.3 (Steerable Basis). The union of {Y mji : X → K | j ∈ Ĝ, i ≤ mj ,m ≤ dj} forms a basis for L2K(X). We call this basis steerable since the action of G on a function L 2 K(X) is realized just by recombination of the linear coefficients used to expand this basis (via its action on each invariant subspace through its irreps).
Note that this definition is compatible with the one in Freeman & Adelson (1991).
Similar to the harmonic projection in Def. A.8, we define an orthogonal projection on the invariant subspaces of L2K(X): Definition B.4 (Steerable Basis Projections). We denote the orthogonal projection from L2K(X) to the i’th copy of Vj by pji : L2K(X)→ Vj . On the steerable basis, it is given by
pji ( Y m̃ j̃ĩ ) = δjj̃δĩi · |jm̃〉,
which just follows from the fact that the steerable basis forms an orthonormal basis of L2K(X), which is then mapped to the corresponding orthonormal basis of Vj , the representation space of ρj ∈ Ĝ.
With all this in mind, we can formulate our basis-independent Wigner-Eckart Theorem forG-steerable kernels: Theorem B.5 (Wigner-Eckart Theorem for Steerable Kernels). The basis-independent version of the Wigner-Eckart theorem consists of two parts:
1. There is an isomorphism of vector spaces
GKer : ⊕̂ j∈Ĝ mj⊕ i=1 [j(l†J)]⊕ s=1 EndG,K(Vj)→ HomG(X,HomK(Vl, VJ)),
where the hat (̂·) denotes a topological closure and can be ignored by the reader.
2. Explicitly, GKer is given by
GKer((cjis)jis) = ∑ j∈Ĝ mj∑ i=1 [j(l†J)]∑ s=1 ΨHT ◦ij(l †J) s ◦ cjis ◦ pji|X .
Proof. For the first statement, we observe:
HomG(X,HomK(Vl, VJ)) (1)∼=HomG,K ( L2K(X),HomK(Vl, VJ) ) (2)∼= ⊕̂ j∈Ĝ mj⊕ i=1 HomG,K(Vj , Vl† ⊗ VJ)
(3)∼= ⊕̂ j∈Ĝ mj⊕ i=1 [j(l†J)]⊕ s=1 EndG,K(Vj)
In (1), we perform the linear extension to the space of square integrable functions from Definition B.1, using Theorem B.2. In (2), we use the Peter-Weyl Theorem A.6, and the isomorphism ΨHT which we defined in Proposition A.13. Note that the decomposition from the Peter-Weyl Theorem is G-equivariant, so this step is valid. In (3), we use the Clebsch-Gordan decomposition from Definition A.9, and Schur’s Lemma which shows that Vj can only have a nontrivial homomorphism to Vj , and not to any other irrep. From right to left, we call the isomorphism GKer. This proves the first statement.
For the second statement, we go through the sequence of isomorphisms from bottom to top and trace back where an arbitrary endomorphism tuple “comes from”:
GKer : (cjis)jis (3)7→ [j(l†J)]∑ s=1 ij(l †J) s ◦ cjis  ji
(2)7→ ∑ j∈Ĝ mj∑ i=1 [j(l†J)]∑ s=1 ΨHT ◦ij(l †J) s ◦ cjis ◦ pji (1)7→ ∑ j∈Ĝ mj∑ i=1 [j(l†J)]∑ s=1 ΨHT ◦ij(l †J) s ◦ cjis ◦ pji|X .
This finishes the proof of the second statement, and thus of the theorem.

heading: B.2 STEERABLE KERNEL BASES
text: After the basis-independent version of the theorem, we now state how a basis for the space of steerable kernels can be constructed.
The basis elements of the representation space Vl, VJ and Vj are denoted |ln〉, |JM〉 and |jm〉, respectively, where the indices range in 0 ≤ n ≤ dl, 0 ≤ M ≤ dJ , and 0 ≤ m ≤ dj . Sometimes, we write also YMJ instead of |JM〉, etc., in order to remind to the connection with harmonic basis functions. Theorem B.6 (Steerable Basis Kernels). A basis of the space of G-steerable kernels HomG(X,HomK(Vl, VJ)) is given by basis kernels { Kjisr
∣∣j ∈ Ĝ, i ≤ mj , s ≤ [j(l†J)], r ≤ Ej}, which are given as follows: Kjisr = GKer(cjisr), where cjisr is zero at every entry except at position jis, where it takes on value cjr. 14
Furthermore, the matrix-elements of such a basis kernel with respect to orthonormal bases |ln〉 of Vl and |JM〉 of VJ , where M ≤ dJ and n ≤ dl, are given by:
〈JM |Kjisr(x)|ln〉
= dj∑ m̃=1 〈s, jm̃|l†n; JM〉 dj∑ m=1 〈 jm̃ ∣∣cjr∣∣jm〉 〈i, jm|x〉 (11)
where the overline denotes complex conjugation, and with 〈i, jm|x〉 := Y mji (x) for steerable basis functions Y mji : X → K.
14Remember that cjr is the r’th basis endomorphism of ρj .
Proof. That these kernels form a basis follows from the fact that the cjisr obviously form a basis of endomorphism tuples, and that GKer is an isomorphism by Theorem B.5. Concretely, this theorem then shows that
Kjisr = ΨHT ◦ij(l †J) s ◦ cjr ◦ pji|X .
We write K̂jisr for the extension from Definition B.1, which is just given by K̂jisr = ΨHT ◦ij(l †J)
s ◦ cjr ◦ pji. Furthermore, we expand the Dirac delta function δx for x ∈ X in the steerable basis of L2K(X) as
δx = ∑ j̃∈Ĝ mj̃∑ ĩ=1 dj̃∑ m̃=1 〈 Y m̃ j̃ĩ ∣∣∣δx〉 · Y m̃j̃ĩ . This expansion can be justified with a similar approximation procedure as in the proof of Lang
& Weiler (2020), Theorem D.13. Thereby, we will in the following write the coefficients as〈̃ i, j̃m̃ ∣∣∣x〉 := 〈Y m̃ j̃ĩ ∣∣∣δx〉, which is also equal to Y m̃j̃ĩ (x). With these tricks, we obtain: 〈JM |Kjisr(x)|ln〉
(1) = 〈 JM ∣∣∣K̂jisr(δx)∣∣∣ln〉 (2) = ∑ j̃∈Ĝ mj̃∑ ĩ=1 dj̃∑ m̃=1 〈̃ i, j̃m̃
∣∣∣x〉〈JM ∣∣∣(ΨHT ◦ij(l†J)s ◦ cjr ◦ pji) (Y m̃j̃ĩ )∣∣∣ln〉 (3) =
dj∑ m=1 〈i, jm|x〉 〈 JM ∣∣∣(ΨHT ◦ij(l†J)s ◦ cjr) (Y mj )∣∣∣ln〉 (4) =
dj∑ m=1 〈i, jm|x〉 dj∑ m̃=1 〈 jm̃ ∣∣cjr∣∣jm〉 〈JM ∣∣∣(ΨHT ◦ij(l†J)s ) (Y m̃j )∣∣∣ln〉
(5) = dj∑ m̃=1 〈 JM ∣∣∣(ΨHT ◦ij(l†J)s ) (Y m̃j )∣∣∣ln〉 dj∑ m=1 〈 jm̃ ∣∣cjr∣∣jm〉 〈i, jm|x〉
We first explain the steps so far and will then deal with the last term. Step (1) uses the extension of K from X to L2K(X). Step (2) uses the expansion of δx explained before. Step (3) uses the property of the projection discussed in Definition B.4 and a renaming of m̃ to m. Step (4) expands cjr(Y m j ) in terms of the basis vectors Y m̃j , with the expansion coefficients being the matrix elements of c j r. Step (5) is then just a reordering of the terms. Now we deal with the first factor in the last term:〈 JM
∣∣∣(ΨHT ◦ij(l†J)s ) (Y m̃j )∣∣∣ln〉 (a) = ∑ M̃ ∑ ñ 〈 l†ñ; JM̃
∣∣∣ij(l†J)s ∣∣∣jm̃〉〈JM ∣∣∣ΨHT (∣∣l†ñ; JM̃〉)∣∣∣ln〉 (b) = ∑ M̃ ∑ ñ 〈 s, jm̃
∣∣∣l†ñ; JM̃〉 · 〈JM ∣∣∣ (〈lñ|)|JM̃〉 ∣∣∣ln〉 (c) = ∑ M̃ ∑ ñ 〈 s, jm̃
∣∣∣l†ñ; JM̃〉〈JM ∣∣〈lñ|ln〉∣∣JM̃〉 (d) = ∑ M̃ ∑ ñ 〈 s, jm̃
∣∣∣l†ñ; JM̃〉δnñδMM̃ (e) = 〈s, jm̃|l†n; JM〉.
In step (a), we expand ij(l †J)
s (Y m̃j ) in the basis of Vl† ⊗ VJ . In step (b), we use the definition of the Clebsch-Gordan coefficients using the embedding ij(l †J) s and of ΨHT given in Proposition A.13.
Also, the definition of the dual basis given after Definition A.12 is used as the equality |l†ñ〉 = 〈lñ|. In step (c), we use eq. 9. Step (d) and (e) are clear. Plugging this intermediate result into our earlier computation finishes the proof.
We now formulate a matrix-version of this result that is more suitable to implementation. We thereby identify Kjisr(x) as a matrix in KdJ×dl , for chosen bases |JM〉 in VJ and |ln〉 in Vl. I.e., Kjisr(x) is viewed as the matrix with coefficients 〈JM |Kjisr(x)|ln〉. Furthermore, we identify cjr with the matrix in Kdj×dj with coefficients 〈 jm̃ ∣∣cjr∣∣jm〉. Additionally, with Yji(x) we mean the column vector in Kdj with entries 〈i, jm|x〉. Finally, with CGj(l †J)
s we mean the matrix of Clebsch-Gordan coefficients 〈 s, jm̃ ∣∣l†m; JM〉 of shape dj × (dl × dJ). Its conjugate transpose is denoted as [ CGj(l †J) s ]† , which is of shape (dJ × dl)× dj . When using it in matrix multiplications, it is interpreted as having dJ · dl “rows” and dj columns. This is compatible with the vectorization of steerable kernels which was discussed in the main paper.
Theorem B.7 (Matrix-Version of Steerable Basis Kernels). The basis kernel evaluated at x,Kjisr(x), is given by the matrix
Kjisr(x) = [ CGj(l †J) s ]† · cjr · Yji(x) (12)
where each dot means conventional matrix multiplication.
Proof. We do the sanity check, i.e., we test whether the resulting matrix is well-defined and of shape dJ × dl. This can be verified by observing that the shape of the right-hand-side of eq. 12 is:
[(dJ × dl)× dj ] · [dj × dj ] · [dj ] = [dJ × dl].
The full proof of eq. 12 follows directly from eq. 11.
Remark B.8. Note that if X is a homogeneous space for G, then the steerable basis {Y mji }jim is the harmonic basis in Theorem A.6. Additionally, if all endomorphism spaces are 1-dimensional, which is for example always the case for complex representations, then cjr can be chosen to be the identity matrix and thus completely omitted from the formula.
Additionally, if one is concerned with real representations, then l† = l and the complex conjugation in the Clebsch-Gordan coefficients can be omitted, which leads to the following formula which we implement in this work:
Kjisr(x) = [ CGj(lJ)s ]T · cjr · Yji(x). (13)
For the special case that G = SO(3), X = S2 and K = R, one obtains the basis kernels
Kj(x) = [ CGj(lJ) ]T · Yj(x),
where for |l− J | ≤ j ≤ l+ J , the Yj : S2 → R are the spherical harmonics. This result was derived in Weiler et al. (2018a). Many other examples for X homogeneous space of G, with a tensor-product decomposition instead of a Hom-space decomposition, can be found in Lang & Weiler (2020).

heading: B.3 A WIGNER-ECKART THEOREM FOR GROUP-RESTRICTED STEERABLE KERNELS
text: In this section, we consider a special case of the previous theorem where X carries an action of a compact group G′, with G ≤ G′. We assume this action to extend the action of G on X . This result is useful to reuse G′-steerable kernels to parameterize new G-steerable spaces without designing a new basis for L2K(Rn).
First of all, we denote by Ĝ′ a set of representatives of the irreps of G′ and by {Y m′j′i′ |j′ ∈ Ĝ′, i′ ≤ mj′ ,m
′ ≤ dj′} a G′-steerable basis for X . Recall also the definition of group restriction and irrep decomposition coefficients from Definition A.15. In particular, [jj′] is the multiplicity of ρj ∈ Ĝ inside ResGG′ ρj′ , with j ′ ∈ Ĝ′, and IDjj ′ t is the projection from Res G′
G Vj′ to the t’th copy of Vj (Definition A.16).
Because the space X carries an action of G′, we can find the action of G on L2K(X) via group restriction:
ResGG′ L 2 K(X) = Res G G′ ⊕̂ j′∈Ĝ′ ⊕̂mj′ i′=1 Vj′
= ⊕̂
j′∈Ĝ′ ⊕̂mj′ i′=1 ResGG′ Vj′
= ⊕̂
j′∈Ĝ′ ⊕̂mj′ i′=1 ⊕̂ j∈Ĝ ⊕̂[jj′] t=1 Vj
Therefore, the G′-steerable basis for X given by {Y m′j′i′ |j′ ∈ Ĝ′, i′ ≤ mj′ ,m′ ≤ dj′} can be turned into a G-steerable basis defined as:{[
ID [jj′] t Yj′i′ ]m |j′ ∈ Ĝ′, i′ ≤ mj′ , j ∈ Ĝ, t ≤ [jj′],m ≤ dj } We can plug this basis in Theorem B.7 to obtain the following result: Theorem B.9 (Matrix-Version of Group-Restricted Steerable Basis Kernels). The basis kernel evaluated at x, Kj′i′jtsr(x′), is given by the matrix
Kj′i′jtsr(x) = [ CGj(l †J) s ]† · cjr · ID jj′ t ·Yj′i′(x) (14)
where each dot means conventional matrix multiplication.

heading: C REAL VALUED REPRESENTATIONS
text: In this section, we discuss the representation theory of compact groups on the real field R.
Usually in representation theory, one assumes complex-valued signals in L2C(G) and complex representations of G. However, in this work, we implement equivariant CNNs using real representations, and therefore must discuss general issues arising in this case.
When using real representations, the theory becomes more difficult: while the matrix coefficients of the irreducible representation span the space of real square-integrable functions L2R(G), they are not necessarily orthogonal to each other anymore. More precisely, the matrix coefficients belonging to the same irrep might be linearly dependent, while different irreps still contain orthogonal coefficients. This is a consequence of the fact that the strong version of Schur’s Lemma stating that the endomorphism space of irreps are one dimensional does not hold for representations over R.
As before, we freely make use of the preliminaries from Section A. In particular, recall that for real representations, we talk about orthogonal representations instead of unitary representations, and such representations take values in the orthogonal group O(V ) of some real Hilbert-space V .
In Section C.1, we introduce some properties of real irreducible representations and characterize their endomorphism space. In Section C.2, we show that any real irrep can always be expressed with respect to a convenient basis such that a set of linearly independent matrix coefficients are contained in a subset of the columns of the irrep. This is particularly useful to construct real harmonic bases. Additionally, we describe a method to find such a basis for an arbitrary real irrep. Finally, in Section C.3, we show an example of such basis, which makes the result more intuitive. Additionally, we use this specific basis to simplify computations in Section F.
C.1 PRELIMINARIES ON THE STRUCTURE OF EndG,R(Vψ)
Fix an orthogonal irreducible real representation ψ : G → O(Vψ) of the compact group G. Let EndG,R(Vψ) be its endomorphism algebra. It is well-known that this endomorphism algebra is isomorphic (in a sense which will be made precise in the following proposition) to one of the division algebras R, C, and H, i.e., the real numbers, complex numbers, or quaternions, see Bröcker & Dieck (2003), Theorem 6.7. Let K ∼= EndG,R(Vψ) be this division algebra. Let Eψ = dEndG,R(Vψ) its dimension. Let i1 = 1, i2 = i, i3 = j and i4 = k with 1, i, j, k ∈ H the usual basis. It has the characterizing properties i2 = j2 = k2 = −1, that 1 is a multiplicative identity, and that
ij = k = −ji, jk = i = −kj, and ki = j = −ik. Then K has as an orthonormal basis {il} Eψ l=1. We now make the properties of the isomorphism precise: Proposition C.1. There is K ∈ {R,C,H} such that there is a function Φ : K→ EndG,R(Vψ) with the following properties:
1. Φ(x+ y) = Φ(x) + Φ(y) for all x, y ∈ K.
2. Φ(λx) = λΦ(x) for all λ ∈ R and x ∈ K.
3. Φ(xy) = Φ(x) ◦ Φ(y) for all x, y ∈ K.
4. Φ(1) = idVψ .
5. Φ is bijective.
6. Φ(ik) ∈ O(Vψ) for all k ∈ {1, . . . , Eψ}.
Proof. Properties 1 to 5 are the properties of an R-algebra isomorphism. Such an R-algebra isomorphism Φ exists by Bröcker & Dieck (2003), Theorem 6.7.
We now show that this automatically already implies property 6 as well: Φ(il) ∈ EndG,R(Vψ) is a non-zero endomorphism, and thus, by Schur’s Lemma for orthogonal representations (see Lang & Weiler (2020), Lemma B.29), there exists a coefficient µl ∈ R such that µlΦ(il) ∈ O(Vψ). We deduce:
µlΦ(il) ◦ µlΦ(il) = µ2lΦ(il · il) = ±µ2lΦ(1) = ±µ2l idVψ .
Together with µlΦ(il) ◦ µlΦ(il) ∈ O(Vψ) we necessarily have µ2l ∈ {±1}, and thus µl = ±1. Thus, Φ(il) = ±µlΦ(il) ∈ O(Vl), which shows 6.
Definition C.2. Let ψ be a real irrep. Depending on its endomorphism algebra EndG(ψ), ψ is classified in one of the following three categories:
• real type: if EndG(Vψ) ∼= R
• complex type: if EndG(Vψ) ∼= C
• quaternionic type: if EndG(Vψ) ∼= H
From now on, fix the isomorphism Φ : K→ EndG,R(Vψ) and denote Il := Φ(il). For simplifying the notation, we set dψ := dψ := dVψ. From now on, we assume for simplicity that Vψ = Rdψ , which holds up to isomorphism. The scalar product on Vψ is then just given by 〈v | w〉 = vTw, and Vψ has the standard basis {e1, . . . , edψ} with ei having a 1 at position i and being zero elsewhere.
For any A ∈ EndG,R(Vψ), we define AT ∈ EndG,R(Vψ) as the transpose, which is also the unique matrix and linear function AT : Vψ → Vψ such that 〈Av | w〉 = 〈v | ATw〉 for all v, w ∈ Vψ. That AT is also an endomorphism is for the fact that ψ is an orthogonal representation.
We define the following inner product on EndG,R(Vψ):
〈A | B〉 = 1 dψ Tr(ABT ), (15)
where Tr is the trace of a matrix, given by the sum of diagonal elements. The trace is linear and continuous and has the property Tr(AB) = Tr(BA), which results in the trace of a matrix being independent of the basis in which it is expressed. Lemma C.3. We have the following:
1. Il = −I−1l for l > 1.
2. [Il]ii = 0 for l > 1 and i ∈ {1, . . . , dψ}.
3. 〈Il | Il′〉 = δll′ for all l.
Proof. 1. This follows from Il ◦ Il = Φ(i2l ) = −Φ(1) = − idVψ for all l > 1.
2. From Proposition C.1 we know that Il ∈ O(Vψ) for all l. So, I−1l = ITl . For l > 1, we deduce Il = −ITl from 1, i.e., Il + ITl = 0. It follows [Il]ii = 12 [Il + I T l ]ii = 0.
3. Note that there is some l′′ ∈ {1, . . . , Eψ} such that the following holds:
〈Il | Il′〉 = 1 dψ Tr ( IlI T l′ )
= 1 dψ Tr ( Φ(il) · Φ(il′)−1 ) = 1
dψ Tr ( Φ(il · i−1l′ ) ) = 1
dψ Tr ( Φ(±il′′) ) = 1
dψ Tr ( ± Il′′ ) Thereby, we made use of Il′ ∈ O(Vψ) in step 2, and used the multiplication properties of the quaternions in the second to last step. Note that il′′ = 1 if and only if l = l′, and that in this case, we have Il′′ = Φ(il′′) = idVψ , leading to 〈Il|Il′〉 = 1. If, however, l′′ > 1 (i.e., l 6= l′), then we have [Il′′ ]ii = 0 for all i by part 2, and thus we get a zero trace, proving the result.
Corollary 2. The function Φ : K → EndG,R(Vψ) is a unitary isomorphism, meaning: When considering K as an R-vector space with standard inner product 〈· | ·〉 and considering EndG,R(Vψ) as an R-vector space with inner product given by eq. 15, then we have for all x, y ∈ K
〈Φ(x) | Φ(y)〉 = 〈x | y〉.
Furthermore, {I1, . . . , IEψ} forms an orthonormal basis of EndG,R(Vψ).
Proof. First, note that eq. 15 clearly defines a positive-definite inner product on EndG,R(Vψ). Write x = ∑Eψ l=1 xlil and y = ∑Eψ l′=1 yl′il′ . Using Lemma C.3, part 3, we obtain:
〈Φ(x) | Φ(y)〉 = Eψ∑ l=1 Eψ∑ l′=1 xlyl′〈Il | Il′〉
= Eψ∑ l=1 xlyl
= 〈x | y〉
The last statement that the Il form an orthonormal basis of EndG,R(Vψ) follows from Lemma C.3 part 3 as well, together with the fact that Φ(il) = Il and that Φ is an isomorphism. For x = ∑Eψ l=1 xlil ∈ K, the conjugation x is defined by
x = x1 − Eψ∑ l=2 xlil.
Furthermore, we define the norm ‖W‖ := √ 〈W |W 〉 for W ∈ EndG,R(Vψ).
Proposition C.4. We have the following:
1. For x ∈ K, we have Φ(x) = Φ(x)T .
2. For any W ∈ EndG,R(Vψ), we have WWT = ‖W‖2 · idVψ .
Proof. 1. We have
Φ(x) = Φ ( x1i1 −
Eψ∑ l=2 xlil
)
= x1I1 − Eψ∑ l=2 xlIl
= x1I T 1 + Eψ∑ l=2 xlI T l
= ( Eψ∑ l=1 xlIl )T
= ( Φ ( Eψ∑ l=1 xlil ))T = Φ(x)T .
In the third step, we used I1 = idVψ and I T l = −Il, which was shown in Lemma C.3 together with Il ∈ O(Vl).
2. This follows from the well-known fact that xx = ‖x‖2 for x ∈ K and part 1.

heading: C.2 ORTHOGONALITY AND ALIGNMENT OF MATRIX COEFFICIENTS
text: The investigations here on the orthogonality relations of matrix coefficients of irreducible real representations generalize what’s presented in Knapp (2002) for complex representations to real representations. The results thereby become a bit more involved.
Remember that Vψ = Rdψ has the standard basis {e1, . . . , edψ}. Define Eij := eieTj ∈ Rdψ×dψ . Furthermore, define
Oij := ∫ G ψ(g)Eijψ(g) −1dg = ∫ G ψ(g)Eijψ(g) Tdg.
Remember that ψ : G → O(Vψ) = O(Rdψ ) ⊆ Rdψ×dψ takes values in dψ × dψ-matrices. For k, j ∈ {1, . . . , dψ}, define ψkj : G→ R as the function ψkj ∈ L2R(G) given by ψkj(g) := ψ(g)kj . Remember that we have a scalar product on L2R(G) given by 〈f | h〉 := ∫ G f(g)h(g)dg, which means we can evaluate also scalar products of different matrix coefficients. Lemma C.5. We have the following:
1. Oij ∈ EndG,R(Vψ).
2. Oij = 1dψ ∑Eψ l=1[Il]ij · Il .
3. Oij = ( 〈ψk1i | ψk2j〉 )dψ k1,k2=1 .
Proof. We prove the three statements as follows:
1. From the integration-measure on G being a Haar measure, i.e., left-invariant, it can easily be checked that Oijψ(g′) = ψ(g′)Oij for all g′ ∈ G.
2. From Oij ∈ EndG,R(Vψ) and the fact that the Il form an orthonormal basis of the space EndG,R(Vψ) by Corollary 2, we obtain Oij = ∑Eψ l=1〈Il | Oij〉Il. We now determine the
coefficients:
〈Il | Oij〉 = 〈Oij | Il〉
= 1 dψ Tr ( OijI T l ) = 1
dψ Tr (∫ G ψ(g)Eijψ(g) −1ITl dg ) (1) = 1
dψ ∫ G Tr ( ψ(g)EijI T l ψ(g) −1 ) dg
(2) =
1
dψ ∫ G Tr ( EijI T l ) dg
= 1 dψ Tr ( EijI T l ) = 1
dψ [Il]ij
In (1), we use that Il is an endomorphism, i.e., commutes with ψ(g). Additionally, we use that Tr is linear and continuous, and thus commutes with integrals. Step (2) uses that the trace satisfies Tr(AB) = Tr(BA). In the last step, we make use of Eij = eieTj .
3. We have
Oij = ∫ G ψ(g)Eijψ(g) −1dg
= ∫ G ψ(g)eie T j ψ(g) Tdg
= ∫ G  ψ1i(g)... ψdψi(g)  · (ψ1j(g) . . . ψdψj(g)) dg =
∫ G ( ψk1i(g)ψk2j(g) )dψ k1,k2=1 dg
= ( 〈ψk1i | ψk2j〉 )dψ k1,k2=1 .
Corollary 3. We have 〈ψk1j | ψk2j〉 = δk1k2 dψ for all k1, k2, j ∈ {1, . . . , dψ}. In other words, the matrix coefficients in the same column are orthogonal to each other, and they are normalized up to a constant factor: ‖ √ dψ · ψkj‖ = 1.
Proof. Remember that in Lemma C.3 we showed [Il]jj = 0 for l > 1 and that I1 = idVψ . Together with Lemma C.5, we obtain:
〈ψk1j | ψk2j〉 = [ Ojj ] k1k2
=
[ 1
dψ Eψ∑ l=1 [Il]jj · Il ] k1k2
= 1
dψ [I1]jj · [I1]k1k2
= δk1k2 dψ .
The statement about the normalization is clear.
Lemma C.6. For any p, q ∈ {1, . . . , Eψ} and for any v ∈ Vψ , 〈Ipv|Iqv〉 = δpq〈v|v〉.
Proof. Note that there is a l such that ITp Iq = ±Il. If p = q, ITp Ip = I1 = idVψ is the identity matrix, hence vT ITp Iqv = v
Tv. Otherwise, l > 1 and Il = −ITl is a skew symmetric matrix, hence vT Ilv = 0. Indeed, note that, for any matrix A, it holds that vTAv = vTATv. If A is a skew symmetric matrix (AT = −A), it follows that vTAv = 0.
Lemma C.7. For each column j, the set of matrices {Oij}i spans the space EndG(Vψ), which is an Eψ dimensional space.
Proof. To prove this, it is sufficient to look at the set of coefficient vectors of each of these matrices when expressed with respect to the basis {Il}l of EndG(Vψ). If this set of coefficient vectors spans an Eψ dimensional space, the proof is complete. Because Oij = 1dψ ∑ l[Il]ijIl, let’s consider the set of vectors {([Il]ij)l} dψ i=1 and stack them in the rows of a matrix M ∈ Rdψ×Eψ . The set of vectors spans an Eψ dimensional space if and only if M has row rank or, equivalently, column rank Eψ. Because M has Eψ nonzero columns (namely, the l’th column of M is the j’th column of Il, which is non-zero since Il is invertible), then it has column rank equal to Eψ if and only if all its columns are pairwise orthogonal.
The orthogonality of the columns ofM follows from Lemma C.6. Indeed, note that the l-th column of M contains the j-th column of Il. By choosing v = ej in Lemma C.6, it follows that the column j of two different basis elements Il1 and Il2 are orthogonal. Thus, the columns of M are orthogonal.
From Lemma C.7, and since EndG(Vψ) contains only the zero-map and isomorphisms, it follows that, for any j, the set of vectors {Oijej} dψ i=1 spans an Eψ dimensional vector space. We will show that this means that there is a change of basis B ∈ Rdψ×dψ and a corresponding irrep ψ̃ = BTψB isomorphic to ψ such that, for any j, {Õijej} dψ i=1 contains only Eψ non-zero vectors,
where Õij := ∫ G ψ̃(g)Eijψ̃(g) Tdg.
We give a constructive proof now. First, we build one such matrix B starting from the basis elements {Il} Eψ l=1. Then, we show that for ψ̃ = B
TψB, for each j, the matrix Õij is non-zero precisely for Eψ different values of i.
Lemma C.8. For any vectors v,w ∈ Rdψ , if 〈Ipv|w〉 = 0 for all p, then 〈Ipv|Iqw〉 = 0 for any p and q.
Proof. For any p and q, there exists l such that IpITq = ±Il. Then 〈Ipv|Iqw〉 = vT ITp Iqw = ±vT ITl w = ±〈Ilv|w〉 which is zero by assumption.
To construct the matrix B, we use the following algorithm. Let B = ∅ ⊆ Rdψ the empty set. Repeat the following process dψ/Eψ times:15
Take a normalized vector v ∈ Rdψ which is orthogonal to all vectors in B. Add the vectors {Ilv} Eψ l=1 to B. Note that all vectors {Ilv} Eψ l=1 are orthogonal to each other because of Lemma C.6. Note that if B contains the vectors {Ilw}l and we choose a vector v such that it is orthogonal to all {Ilw}l, then, due to Lemma C.8, the updated set B still contains only pairwise orthogonal vectors. The matrix B is built by stacking horizontally the vectors in B. Note that since all v in the process are normalized, and the Ilv are normalized as well by Lemma C.6, the matrix is orthogonal, i.e. BTB = BBT = id.
By construction, for any l, the left multiplication of B by Il only results in a permutation of the columns of B (and, potentially, flipping their sign). In particular, Il only permutes the vectors in B belonging to the same group {Ilv}l. Hence, there exists a permutation matrix Pl (with, potentially, negative entries) such that IlB = BPl.
15The process itself will reveal that dψ/Eψ is a whole number.
Let, as mentioned before, ψ̃(g) := BTψ(g)B, i.e., ψ̃ is isomorphic to ψ via B. Also, let Õij =∫ G ψ̃(g)Eijψ̃(g) Tdg. Lemma C.9. Let ψ be a real irrep and B a matrix computed as above. Fix j ∈ {1, . . . , dψ}. Then, the following holds:
1. Fix also i ∈ {1, . . . , dψ}. Then Õij 6= 0 if and only if there is a unique l ∈ {1, . . . , Eψ} such that [Pl]ij 6= 0. In that case, Õij = 1dψ [Pl]ijPl.
2. The matrix Õij is non-zero for precisely Eψ different values of i.
Proof. 1. Let Bi and Bj , respectively, the i-th and the j-th columns of B.
Õij = ∫ G BTψ(g)BEijB Tψ(g)TBdg
= BT (∫
G
ψ(g)BiB T j ψ(g) Tdg
) B
= BT (∫ G ψ(g) (∑ ab BaiBbjEab ) ψ(g)Tdg ) B
= ∑ a,b BaiBbjB TOabB
= 1
dψ ∑ l (∑ a,b BaiBbj [Il]ab ) BT IlB
= 1
dψ ∑ l [BT IlB]ijB T IlB
= 1
dψ ∑ l [Pl]ijPl,
where in the last step we used that B has the property BT IlB = BTBPl = Pl, where Pl has the structure of a signed permutation matrix. Thus, if Õij 6= 0, then there exists l such that [Pl]ij 6= 0. For the other direction, assume that there is such an l. We want to show that there cannot be another k with [Pk]ij 6= 0. If we can do that, then it follows Õij = 1dψ [Pl]ijPl 6= 0 and we are done.
To do so, first observe that 〈Plej |Pkej〉 = δlk. Indeed,
〈Plej |Pkej〉 = eTj PTl Pkej = eTj B T ITl BB T IkBej
= eTj B T ITl IkBej .
Now, note that there exists a m such that ITl Ik = ±Im. In particular, if l = k, ITl Il = I1 = id and, therefore, eTj B T ITl IkBej = e T j ej = 1. Otherwise, e T j B T ITl IkBej = ±eTj BT ImBej = 0, thanks to Lemma C.6.
Now, assume we have [Pl]ij 6= 0 6= [Pk]ij . Then, since Pl and Pk are signed permutation matrices, all other entries in column j are zero, meaning that
0 6= [Pl]ij · [Pk]ij = ∑ i [Pl]ij · [Pk]ij = 〈Plej | Pkej〉 = δkl,
meaning that k = l.
2. For l = 1, . . . , Eψ , let il ∈ {1, . . . , dψ} be the unique index such that [Pl]ilj 6= 0. It follows Õilj 6= 0 from part 1. We also know from part 1 that all il are pairwise different, so we
found Eψ such indices. Now, assume i is such that Õij 6= 0. Then, from part 1 again, we get that there exists l such that [Pl]ij 6= 0, and thus i = il. That finishes the proof.
As a last classical result, we will use the Cauchy-Schwartz inequality, which is well-known and therefore without a proof: Lemma C.10. Let V be any Hilbert space with scalar product 〈· | ·〉. Let v, w ∈ V . Then one has
|〈v | w〉| ≤ ‖v‖ · ‖w‖,
with equality if and only if v and w are linearly dependent.
Theorem C.11. Let ψ be a real irrep. Then, there exists a real irrep ψ̃, isomorphic to ψ, such that the following holds. Fix j ∈ {1, . . . , dψ}:
1. The matrix coefficients in column j of ψ̃ are orthogonal to all matrix coefficients of ψ̃ in all but precisely Eψ columns i.
2. If i is one of the remaining Eψ columns, then ψ̃ei is a signed permutation of ψ̃ej .
Proof. Let B and ψ̃ = BTψB as before. We know from Lemma C.9 that there are precisely Eψ values for i such that Õij 6= 0.
1. Assume Õij = 0. Then, since by Lemma C.5 we have Õij = (〈 ψ̃k1i ∣∣ψ̃k2j〉)dψ k1,k2=1 , it
follows that columns i and j of ψ̃ are fully orthogonal to each other.
2. Assume Õij 6= 0. Then, by Lemma C.9, there is l such that [Pl]ij 6= 0 and Õij = 1 dψ · [Pl]ij · Pl, where Pl is a signed permutation matrix. We have [Pl]ij = ±1, i.e., we can
wlog. assume [Pl]ij = 1, i.e., Õij = 1dψPl.
Now, let k1 ∈ {1, . . . , dψ} be arbitrary and look at the matrix coefficient ψ̃ik1 . Then, since 1 dψ Pl = (〈 ψ̃k1i ∣∣ψ̃k2j〉)dψ k1,k2=1 by Lemma C.5 again, and due to the structure of Pl, there is precisely one k2 ∈ {1, . . . , dψ} such that 〈ψ̃k1i | ψ̃k2j〉 = ± 1dψ . By the Cauchy-Schwartz inequality Lemma C.10 it follows:
1 dψ = ∣∣〈ψ̃k1i∣∣ψ̃k2j〉∣∣ ≤ ∥∥ψ̃k1i∥∥ · ∥∥ψ̃k2j∥∥ = 1√ dψ · 1√ dψ = 1 dψ .
In the second to last step, we thereby made use of Corollary 3. We obtain ∣∣〈ψ̃k1i∣∣ψ̃k2j〉∣∣ =∥∥ψ̃k1i∥∥ · ∥∥ψ̃k2j∥∥ and thus, by the last statement in Lemma C.10, that ψ̃k1i and ψ̃k2j are linearly dependent. Since they have the same norm, it follows ψ̃k1i = ±ψ̃k2j . Since for different k1, the value of k2 needs to differ as well due to Pl being a signed permutation matrix, the result follows.
This result is convenient to define a real harmonic basis {Y mij } for L2R(G), which we then use in Corollary 5.

heading: C.3 A CONVENIENT CHOICE OF BASIS FOR REAL IRREPS
text: At the end of the previous section, we described a method that, given a real irrep ψ and a basis for EndG(Vψ), generates an isomorphic irrep ψ̃ which satisfies the convenient properties in Theorem C.11. To provide an intuition of what structure these real irreps have and to simplify some
computations in Section F, in this section we describe a choice of basis to express each real irreducible representation, satisfying the properties in Theorem C.11. Note that this particular choice of basis is not necessary in most of our results, since we rely only on a generic orthonormal basis for EndG(Vψ), but is useful to simplify Section F.
The content of this section is mostly based on https://math.jhu.edu/~jmb/note/ rschur.pdf and Bröcker & Dieck (2003). Recall first the classification of real irreps in real, complex or quaternionic type according to Definition C.2. We will rely on the following useful results: Lemma C.12. For any real type real irrep ψ, its complexification is isomorphic to a complex irrep σ, with σ ∼= σ. The complexification of ψ is a representation like ψ which acts on Cdψ rather than Rdψ .
and Lemma C.13. Any complex or quaternionic type real irrep ψ is isomorphic to the realification of a complex irrep σ. In other words, for any complex or quaternionic type real irrep ψ, there exists a complex irrep σ such that:
ψ ∼= [ Re (σ) − Im (σ) Im (σ) Re (σ) ] ∼= σ ⊕ σ
Additionally, if it has quaternionic type, it also holds that σ ∼= σ.
Indeed, using Re (x) = 12 (x+ x) and Im (x) = − 1 2 i(x− x), one can verify that:[
Re (σ) − Im (σ) Im (σ) Re (σ)
] = D [ σ(g) 0
0 σ(g)
] D†
where
D = 1√ 2 [ i iddσ −i iddσ iddσ iddσ ] Using these results, we define a convenient choice of basis for ψ for each possible irrep type. For each case, we also define an associated basis for EndG(Vψ).
Real type irrep Since ψ ∼= σ (as complex irreps), we do not need further assumptions on the basis of ψ. Note also that EndG(Vψ) contains only scalar multiples of the identity; hence, regardless of the choice of basis for ψ, a basis for EndG(Vψ) is given by the identity matrix.
Complex type irrep If ψ has complex type, we assume that ψ is expressed in a basis such that
ψ = [ Re (σ) − Im (σ) Im (σ) Re (σ) ] for some complex irrep σ. Note that this is a natural choice, for example,
for G = SO(2). It follows that a basis for EndG(Vψ) is given by the following homomorphism Φ : C→ EndG(Vψ):
Φ(1) = [ idn 0 0 idn ] Φ(i) = [ 0 − idn
idn 0 ] where n = dψ/2 and idn is the identity matrix of size n.
Quaternionic type irrep Similarly, if ψ has quaternionic type, we assume that ψ is expressed in a basis such that ψ = [ Re (σ) − Im (σ) Im (σ) Re (σ) ] for some complex irrep σ. One can show that if σ has
quaternionic type, it can always be expressed in a basis such that it has the following block structure:
σ(g) = [ σ1(g) −σ2(g) σ2(g) σ1(g) ] (16)
and, therefore:
ψ(g) = Re ([ σ1(g) −σ2(g) σ2(g) σ1(g) ]) − Im ([ σ1(g) −σ2(g) σ2(g) σ1(g) ]) Im
([ σ1(g) −σ2(g) σ2(g) σ1(g) ]) Re ([ σ1(g) −σ2(g) σ2(g) σ1(g)
]) 
A basis for EndG(Vψ) is given by the following homomorphism Φ : H→ EndG(Vψ):
Φ(1) = idn 0 0 00 idn 0 00 0 idn 0 0 0 0 idn 
Φ(i) =  0 0 − idn 00 0 0 − idnidn 0 0 0 0 idn 0 0 
Φ(j) =  0 − idn 0 0idn 0 0 00 0 0 idn 0 0 − idn 0 
Φ(k) =  0 0 0 − idn0 0 idn 00 − idn 0 0 idn 0 0 0 
where n = dψ/4.

heading: D THE COMPUTATION OF THE INDUCED REPRESENTATION OF COMPACT GROUPS
text: Quotient and induced feature fields, i.e. features fields where the feature type ρ is an quotient or induced representation (see Sec 2.1), were studied in Weiler & Cesa (2019) for the planar groups. These feature types encode scalar or vector functions over a homogeneous space of G. For example, in Sec.5.3, we employed models with quotient features over the sphere S2 ∼= SO(3)/ SO(2) or the space Inv×S2 ∼= O(3)/ SO(2). Recall also that a G-orbit is isomorphic to an homogeneous space for G and, therefore, to a quotient space G/H = {g.H|g ∈ G}, where H < G is a stabilizer subgroup of the space; e.g. SO(3).x ∼= S2 ∼= SO(3)/SO(2) for x ∈ R3 non-zero. The Wigner-Eckart theorem from Lang & Weiler (2020) relies on an harmonic basis over an orbit G.x of the equivariance group G inside the base-space X . While our Theorem B.7 relies on a G-steerable basis for X , a simple way (although, generally more complicated to band-limit and discretize) to generate such basis is by embedding G-orbits inside X and use the harmonic bases of such orbits. This is visualized for G = C4 in Fig. 1b and used for the G = I baselines in Sec. 5.2
In all these settings, an harmonic basis for functions on an homogeneous space is required. In this section, we describe how to compute the harmonic basis for scalar and vector fields over a compact homogeneous spaceX ∼= G/H , directly from the matrix coefficients of the irreps ofG. A vector field over X = G/H is a function f : X → Rdψ (or Cdψ ) and transforms under the action of G according to an induced representation IndGH ψ, where ψ is an irrep of H . We give a precise definition of induced representation acting on such vector fields in Def. D.3. Note that scalar fields are considered a special case of vector fields. In particular, scalar fields on G/H transform according to IndGH ψ0, where ψ0 : H → {1} is the trivial representation of H . We occasionally call this representation acting on scalar fields a quotient representation.
Similar investigations are well-documented for complex representations: for the case X = G, a complex harmonic basis is given by the matrix coefficients of its irreps, as described by the Peter-
Weyl theorem A.6. A similar result for complex-valued representations and scalar functions on homogeneous spaces was also described in Kondor & Trivedi (2018).
Outline and goal After some definitions and assumptions in Supplementary D.1, we provide different equivalent definitions of the induced representation in Supplementary D.2. Then, we construct the harmonic basis of induced representations in Supplementary D.3.
We freely make use of the concepts defined in Supplementary A in this whole section.

heading: D.1 USEFUL DEFINITIONS, ASSUMPTIONS AND NOTATIONS
text: In this section, we will always assume a compact group G and a compact subgroup H ⊆ G. The neutral elements of these groups are just denoted e ∈ H , which is the same for both groups. As before, for generality, we allow K to be any of the two fields R or C before we will later separately consider complex and real representations. Ĥ is the set of all isomorphism classes of unitary irreps of H and ψ ∈ Ĥ is, by abuse of notation, meant to refer to a representative of such an isomorphism class. For the rest of the section, we fix such an irrep ψ : G→ U(Vψ). In order to generate a harmonic basis for the functions in the induced representation, we only rely on an harmonic basis for L2K(G), a basis for the endomorphism space of each irrep ρ ∈ Ĝ and the irrep decomposition of the irreps of G when restricted to H < G. Assuming these are known, in the rest of this section we will use them to explicitly build a harmonic basis for functions transforming according to an induced representation.
D.2 INDUCED REPRESENTATIONS
We can now introduce the induced representation. In this section, we will limit to the case where ψ : H → U(Vψ) is an irreducible representation of H . This is fixed in this whole section. Induction from non-irreducible representations of H can be built by combining the induced representations of the H irreps composing the reducible H-representation.
We now define the induced representation as a space of Mackey Functions, and then alternatively as a space of vector fields over a quotient space. The constructions are well-known and can for example be found in Taylor & Kaniutrh (2013). This book also contains more theoretical justifications, including the definition of the scalar product making the induced representation a Hilbert space and proofs that both versions of the representation are actually unitary. Definition D.1 (Mackey Functions). A Mackey function is a ψ-vector field f : G→ Vψ which has square-integrable component-functions, i.e., in L2K(G), and with the following equivariance-property: for all h ∈ H and g ∈ G one has
f(gh−1) = ψ(h)f(g). (17)
We denote the space of Mackey functions by HomH(G,Vψ).16 This becomes a unitary Grepresentation with the action [g.f ](g′) := f(g−1g′) . (18) Remark D.2. One can verify that g.f still belongs to the space of Mackey functions. Indeed, for g, g′ ∈ G, h ∈ H and f ∈ HomH(G,Vψ) one has
[g.f ](g′h−1) = f(g−1(g′h−1))
= f((g−1g′)h−1)
= ψ(h)f(g−1g′)
= ψ(h)[g.f ](g′).
Before we come to the definition as quotient vector fields, recall that for the pair of compact groups H ⊆ G, one can build the space of cosets
G/H := {gH | g ∈ G} . (19) 16These functions can be viewed as left-H-equivariant when using the left action h ? g := gh−1 of H on G,
which explains the notation.
There is a projection π : G→ G/H given by g 7→ gH which induces a topology on G/H , making it a compact topological Hausdorff space. Together with the action g.(g′H) := (gg′)H , G/H becomes a homogeneous space of G, and thus carries a Haar measure.
Now, pick an arbitrary measurable section r : G/H → G associating a representative element to each coset gH ∈ G/H .17 In other words, the section r satisfies π ◦ r = idG/H , with the projection as defined above. This can also be written as
r(gH)H = gH, for all g ∈ G. (20) Since r(gH)H = gH , we automatically have that
h(g) := r(gH)−1g ∈ H, for all g ∈ G. (21) Since g = r(gH) · h(g), it follows that every g ∈ G is fully characterized by the pair (gH,h(g)) ∈ (G/H) × H . We fix from now on the definitions of the section r : G/H → G and the map h : G→ H , with the latter implicitly depending on r. Definition D.3 (ψ-Vector Fields over the Quotient Space). A ψ-vector field over the quotient space G/H is defined to be any function of the form f ′ : G/H → Vψ that has square-integrable component-functions with respect to the Haar measure on G/H , i.e., the component-functions are in L2K(G/H). The space of these ψ-vector fields is denoted by Hom(G/H, Vψ). This becomes a unitary G-representation with the action
[g.f ′](g′H) := ψ ( h ( g r(g−1g′H) )) f ′ ( g−1g′H ) . (22)
Note that the action ofG on Hom(G/H, Vψ) depends on the choice of the (not necessarily continuous) section r : G/H → G of the quotient space. We now show that these two definitions are equivalent: Proposition D.4. There is an isomorphism of unitary representations
HomH(G,Vψ) Hom(G/H, Vψ)
(̃·)
(·)
between the space of Mackey functions on the left and the space of quotient vector fields on the right, given as follows:
1. For f : G→ Vψ a Mackey function, we define f̃(gH) := f(r(gH))
using the section defined in eq. 20.
2. For a quotient vector field f ′ : G/H → Vψ , we define f ′(g) := ψ(h(g)−1)f ′(gH)
using the function h : G→ H defined in eq. 21.
Proof. In this proof, we freely make use of eq. 20 and eq. 21. First, we show the equivariance of (̃·): Let f : G→ Vψ satisfy eq. 17. First, note that
h ( g r ( g−1g′H )) = r ( g r ( g−1g′H ) H )−1 g r ( g−1g′H ) = r ( gg−1g′H )−1 g r ( g−1g′H
) = r(g′H)−1g r ( g−1g′H
) = ( r ( g−1g′H )−1 g−1 r(g′H)
)−1 = h ( g−1 r(g′H) )−1 .
(23)
17This section can usually not be chosen to be continuous, but being measurable is enough for our purposes.
From this, we deduce: g̃.f(g′H) = [g.f ] ( r(g′H) )
= f ( g−1 r(g′H) ) = f ( r ( g−1 r(g′H)H ) h ( g−1 r(g′H)
)) = f ( r ( g−1g′H ) h ( g−1 r(g′H)
)) = ψ ( h ( g−1 r(g′H) )−1) f ( r(g−1g′H) )
= ψ ( h ( g r(g−1g′H) )) f̃ ( g−1g′H ) = [g.f̃ ](g′H),
i.e., the desired equivariance g̃.f = g.f̃ .
Given f ′ : G/H → Vψ, we first verify that f ′ satisfies eq. 17, i.e. that is lives in HomH(G,Vψ). First, note that
h ( gh−1 ) = r ( gh−1H )−1 gh−1
= r ( gH )−1 gh−1
= h(g)h−1.
(24)
From this, we deduce: f ′ ( gh−1 ) = ψ ( h(gh−1)−1 ) f ′(gH)
= ψ ( hh(g)−1 ) f ′(gH)
= ψ(h)ψ(h(g))f ′(gH)
= ψ(h)f ′(g).
We now show the equivariance of (·). We first note, using the result of eq. 23 and eq. 24: h(g′)−1 h ( g r ( g−1g′H )) = h(g′)−1 h ( g−1 r ( g′H ))−1 = [ h ( g−1 r ( g′H )) h(g′)
]−1 = h ( g−1 r ( g′H ) h(g′)
)−1 = h ( g−1g′ )−1 .
We deduce: g.f ′(g′) = ψ ( h(g′)−1 ) [g.f ′](g′H)
= ψ ( h(g′)−1 ) ψ ( h ( g r(g−1g′H) )) f ′ ( g−1g′H ) = ψ ( h(g−1g′)−1 ) f ′ ( g−1g′H
) = f ′(g−1g′)
= [g.f ′](g′),
i.e., the desired equivariance g.f ′ = g.f ′.
Finally, we need to show that f̃ = f and f̃ ′ = f ′, i.e., that the maps (̃·) and (·) are inverse to each other. We have
f̃ (g) = ψ ( h(g)−1 ) f̃(gH)
= ψ ( h(g)−1 ) f ( r(gH) )
= f ( r(gH) h(g) )
= f(g)
and
f̃ ′(gH) = f ′ ( r(gH) )
= ψ ( h(r(gH))−1 ) f ′ ( r(gH)H )
= f ′ ( gH ) ,
where we used r(gH)H = gH , h ( r(gH) )
= e, and ψ(e) = idVψ in the last step. More technical details, especially on the unitarity of the isomorphism, can be found in Taylor & Kaniutrh (2013). This finishes the proof.
Proposition D.4 justifies the following definition: Definition D.5 (Induced Representation). For any irrep ψ of H ⊆ G, we define the induced representation IndGH ψ as the unitary G-representation acting on Ind G H Vψ := HomH(G,Vψ)
∼= Hom(G/H, Vψ) as in eq. 18 or eq. 22, depending on which representation space is chosen. We will always make the representation space (Mackey functions or quotient vector fields) explicit in the following.

heading: D.3 HARMONIC ANALYSIS OF INDUCED REPRESENTATIONS
text: Before we come to finding harmonic bases of induced representations, we must deal with a small technicality: in the induced representation given by Mackey functions, the equivariance property f(gh−1) = ψ(h)f(g) is used, which suggests that we look at the following left-action of G on itself: g ? g′ := g′g−1, compared to the usual left action g.g′ := gg′. Similarly to how we solved for a basis of the space of steerable kernels K : X ′ → HomG(Vl, VJ) with our Wigner-Eckart theorem, Theorem B.5, by studying L2K(X
′), we want to find a basis of the space of Mackey functions f : G → Vψ by studying L2K(G) – however, due to the adapted left-action on G, we also need to consider a different action on L2K(G).
Thus, define L2K(G)2 := L 2 K(G) together with the action (g ? f)(g ′) := f(g′g), which can be shown to be a well-defined left-action on L2K(G)2. This is then a unitary representation. Fortunately, it turns out to be isomorphism to the standard regular representation: Lemma D.6. There is an isomorphism of unitary representations
L2K(G) L 2 K(G)2
Φ
Φ
given in both directions by the same function:[ Φ(f) ] (g) := f(g−1).
Proof. Since in L2K(G), we integrate over an inversion-invariant Haar measure, Φ is a unitary transformation. It is also clear that Φ is its own inverse. Thus, we are only left with checking the equivariance in one of the two directions:[
Φ(g.f) ] (g′) = [g.f ] ( g′−1 ) = f ( g−1g′−1
) = f ( (g′g)−1
) = [ Φ(f) ] (g′g)
= [ g ? Φ(f) ] (g′).
It follows Φ(g.f) = g ? Φ(f), i.e., the desired equivariance.
We remind the reader of the following notation introduced in Section A, which we use in the harmonic analysis of the induced representation: Ĝ is the set of isomorphism classes of unitary irreps of G. mj is the multiplicity of the irrep ρj : G → U(Vj) in the regular representation L2K(G). For j ≤ mj , pji : L 2 K(G) → Vj is the corresponding harmonic projection. [ψj] is the multiplicity of the irrep
ψ : H → U(Vψ) in ResGH Vj . Eψ = dEndH,K(Vψ) is the dimension of the endomorphism space of Vψ. The cψr : Vψ → Vψ, r ≤ Eψ, form a basis of endomorphisms of Vψ. ID ψj t : Res G H Vj → Vψ is an irrep decomposition projection. The Y mji : G → K form a harmonic basis of the regular representation L2K(G). Yji : G→ Kdj ∼= Vj is the column-vector of all the Y mji . Yji is its complex conjugation.
Finally, note that after choosing bases, by abuse of notation we also refer with cψr and ID ψj t to the matrices corresponding to the linear maps.
Theorem D.7. A basis of the induced representation of Mackey functions IndGH Vψ = HomH(G,Vψ) is given by { fjitr : G→ Vψ ∼= Kdψ | j ∈ Ĝ, i ≤ mj , t ≤ [ψj], r ≤ Eψ } .
Thereby, we have fjitr(g) = c ψ r · ID ψj t ·Yji ( g−1 ) Consequently, a basis of the induced representation of ψ-vector fields over the quotient space, IndGH Vψ = Hom(G/H, Vψ), is given by{
f̃jitr : G/H → Vψ ∼= Kdψ | j ∈ Ĝ, i ≤ mj , t ≤ [ψj], r ≤ Eψ }
with f̃jitr(gH) := fjitr(r(gH)), where r : G/H → G is a measurable section.
Proof. We have
HomH(G,Vψ) (1)∼= HomH,K ( ResGH L 2 K(G)2, Vψ ) (2)∼= HomH,K ( ResGH L 2 K(G), Vψ
) (3)∼= ⊕̂ j∈Ĝ mj⊕ i=1 HomH,K ( ResGH Vj , Vψ ) (4)∼= ⊕̂ j∈Ĝ mj⊕ i=1 [ψj]⊕ t=1 EndH,K(Vψ).
Step (1) follows from Theorem B.2 with G replaced by H , G′ replaced by G, X ′ replaced by G together with the left-action g ? g′ := g′g−1, and HomK(Vl, VJ) replaced by Vψ .18 Step (2) follows from Lemma D.6. Step (3) is the Peter-Weyl Theorem A.6. And finally, step (4) uses the irrep decompositions IDψjt : Res G H Vj → Vψ .
Explicitly, from right to left the isomorphism is given by:
( cjit ) jit (4)7→ ( [ψj]∑ t=1 cjit ◦ IDψjt ) ji
(3)7→ ∑ j∈Ĝ mj∑ i=1 [ψj]∑ t=1 cjit ◦ IDψjt ◦pji (2)7→ ∑ j∈Ĝ mj∑ i=1 [ψj]∑ t=1 cjit ◦ IDψjt ◦pji ◦ Φ (1)7→ ∑ j∈Ĝ mj∑ i=1 [ψj]∑ t=1 cjit ◦ IDψjt ◦pji ◦ Φ|G.
18Note that in the original theorem, the structure of the Hom-representation is not actually used, so we can just replace it by any finite-dimensional representation; in this case, Vψ
Thus, a basis is given by all fjitr := cψr ◦ ID ψj t ◦pji ◦ Φ|G. The result now follows by expanding the dirac delta function δg in the harmonic basis:
pji ◦ Φ|G(g) = pji ( Φ(δg) ) = pji ( δg−1
) =
dj∑ m=1 〈Y mji | δg−1〉 · pji ( Y mji )
= dj∑ m=1 Y mji ( g−1 ) · |jm〉
= Yji ( g−1 ) .
In the last step, we identified Vj ∼= Kdj , and thus |jm〉 with a standard basis vector em. Note that, to be precise, one would need to approximate the Dirac delta function with square-integrable functions. The details of such arguments can be found in the proof of Theorem D.13 of Lang & Weiler (2020).
The last statement about a basis of Hom(G/H, Vψ), finally, follows from Proposition D.4.
Corollary 4. An harmonic basis for complex Mackey functions is given by:{ fjit : G→ Vψ ∼= Cdψ | j ∈ Ĝ, i ≤ dj , t ≤ [ψj] } .
where fjit(g) = ID ψj t · √ djρj(g −1)ei Proof. Using Proposition A.7, we find that Yji(g−1) = √ djρj(g
−1)ei. Because we assume complex representations, EndG,C(ψ) only contains scalar multiples of the identity, due to Schur’s Lemma. In other words, cψr is always the identity matrix.
Corollary 5. Assume that all real irreps are defined over a basis as in Theorem C.11. An harmonic basis for real Mackey functions is given by:{
fjitr : G→ Vψ ∼= Rdψ | j ∈ Ĝ, i ≤ mj = dj/Ej , t ≤ [ψj], r ≤ Eψ } .
where fjitr(g) = c ψ r · ID ψj t · √ djρj(g
−1)eIji
Ij is an index set containing the indexes of the mj = dj/Ej columns of ρj with linearly independent matrix coefficients.
Proof. Using Proposition A.7, If ρj is expressed in a basis as in Theorem C.11, the matrix coefficients of ρj in a column i are linearly dependent with those in Ej columns of ρj . Therefore, it is sufficient to consider a subset of mj = dj/Ej columns of ρj which contain linearly independents matrix coefficients. Additionally, if ρj is expressed in the basis described in Supplementary C.3, Ij = {1, 2, . . . , dj/Ej} so Iji = i.
This result can be used to parametrize steerable filters in Theorem B.7 but also to generate different field types. For example, regular field types and quotient field types represent square integrable functions over X = G or a quotient space X = G/H , respectively, and induced field types represent ψ-vector fields over X = G/H . If X is not finite, one can parameterize bandlimited functions by using a finite harmonic basis obtained by considering only those j in a subset G̃ ⊂ Ĝ. The coefficients vector used for such parametrization transforms according to ρ̃X = ⊕ j∈G̃
⊕Mj ρj , where Mj is the multiplicity of the irrep ρj . Given one such vector, the function it parametrizes can be sampled at any point of x ∈ X by evaluating the harmonic basis on x.

heading: D.4 RECONSTRUCTING THE IRREP DECOMPOSITION: THE COMPLEX CASE
text: The goal of this and the next section is to use write the action of G on the bases found above explicitly as a direct sum of irreps of G. We first consider the simpler case of complex valued irreps.
Recall Corollary 4. Consider the set of all basis elements for a fixed value of j, i.e. {fjit}it where: fjit(g) = ID ψj t · √ djρj(g
−1)ei Let f be a Mackey function in the span of these basis elements, i.e. there exists {wit ∈ C}it such that:
f(g) = ∑ it witfjit(g)
= ∑ it wit ID ψt t √ djρj(g −1)ei
= ∑ t IDψtt √ djρj(g −1) ∑ i witei
= ∑ t IDψtt √ djρj(g −1)wt
where [wt]i = wit and wt ∈ Cdj . Now, the action of G on these functions is the usual action on L2(G), i.e. ∀k, g ∈ G:
[k.f ](g) = f(k−1g) = ∑ it witfjit(k −1g) = ∑ t IDψtt √ djρj(g −1) (ρj(k)wt)
In other words, the space of functions spanned by {fjit}it is isomorphic to ⊕[ψj]
t Vj , and each wt lives in one such Vj space. We call the vectors wt the Fourier Transform coefficients of the function f . More generally, let f be a generic Mackey function in IndGH Vψ . The matrix f̂(ρj) of shape dj × [ψj] contains in its columns the vectors wt ∈ Cdj for each t. We call the collection {f̂(ρj)}j the Fourier Transform of the function f . Note that if ψ is the trivial representation, this definition recovers the classical definition of Fourier transform of functions over compact groups or homogeneous spaces. Finally, it follows that IndGH ψ ∼= ⊕ j ⊕[ψj] t ρj .

heading: D.5 RECONSTRUCTING THE IRREP DECOMPOSITION: THE REAL CASE
text: In the real case, this decomposition is less straightforward.
Recall Corollary 5. Consider the set of all basis elements for a fixed value of j, i.e. {fjitr}itr where: fjitr(g) = c ψ r · ID ψj t · √ djρj(g
−1)ei with i ≤ mj = dj/Ej . Let f be a Mackey function in the span of these basis elements, i.e. there exists {witr ∈ R}itr such that:
f(g) = ∑ itr witrfjitr(g)
= ∑ itr witrc ψ r ID ψt t √ djρj(g −1)ei
= ∑ tr cψr ID ψt t √ djρj(g −1) ∑ i≤mj witrei
= ∑ tr cψr ID ψt t √ djρj(g −1)wrt
where [wrt]i = witr if i ≤ mj and [wrt]i = 0 otherwise. Unfortunately, this basis is not harmonic since it does not have an explicit action of G through ρj on the coefficients vectors. To see this, consider the function above transformed by an element k ∈ G:
[k.f ](g) = ∑ itr witr[k.fjitr](g) = ∑ itr witrfjitr(k −1g)
= ∑ tr cψr ID ψj t √ djρj(g −1)ρj(k)wrt
The vector ρj(k)wrt does not generally belong to the span of {ei|i ≤ mj}, i.e. the function k.f as written above is not expressed directly in terms of the basis in Corollary 5. This means that the basis we found is not an harmonic basis yet.
Nevertheless, we know that the space of Mackey function has a compact action of G and therefore must be decomposable in a direct sum of irreps of G. Therefore, there exists a change of basis from the current one to an harmonic one. In the rest of this section, we will derive a variation of the Gram–Schmidt process to compute such change of basis.
First of all, we want to identify the invariant subspaces spanned by the basis. To do so, we re-project each basis element after an action of G on the basis itself, i.e. we project the function g.fjitr, with g ∈ G on each other basis element fjksq . First, note that:
[g.fjitr](k) = c ψ r ID ψj t √ djρj(k −1)ρj(g)ei
= ∑ i′≤dj cψr ID ψj t √ djρj(k −1)ei′ [ρj(g)]i′,i
i.e. g.fjitr belongs to the span of the set of functions {fjitr | i ≤ dj} (note that i ≤ dj rather than i ≤ mj = dj/Ej). Despite the functions {fjitr | mj < i ≤ dj} do not belong to the basis in Corollary 5, one can easily verify that they are actually Mackey functions and, therefore, must belong to the space spanned by the basis in Corollary 5. Additionally, we will see that {fjitr | i ≤ dj} contains functions which are orthogonal to each other; before showing this, we should define an inner product of Mackey functions:
〈f1, f2〉G = ∫ G 〈f1(g), f2(g)〉ψdg = ∫ G f1(g) T f2(g)dg
Note that we assumed real functions and real representations.
We can now compute the projection of any two functions: 〈fjitr, fjksq〉 = ∫ g∈G eTi ρj(g) √ dj [ID ψj t ] T [cψr ] T cψq ID ψj s √ djρj(g) Tekdg
= eTi (∫ g∈G ρj(h) √ dj [ID ψj t ] T [cψr ] T cψq ID ψj s √ djρj(g) Tdg ) ︸ ︷︷ ︸
=:Otr,sq
ek
Lemma D.8. the following statements are true:
1. Otr,sq ∈ EndG(ρj)
2. Otr,sq = ∑ l〈Otr,sq, Il〉Il = ∑ l Tr([ID ψj t ] T [cψr ] T cψq ID ψj s I T l )Il
Proof. 1) By definition, Otr,sq is the invariant projection of a matrix with respect to a left and right action of G through ρ. It follows that Otr,sq commutes with ρ(g) for any g ∈ G; hence, Otr,sq ∈ EndG(ρj). 2) Let {Il | 1 ≤ l ≤ Ej} be an orthonormal basis for EndG(ρj) as in Sec. C. Then, we can project Otr,sq on this basis:
〈Otr,sq, Il〉 = 1
dj Tr(Otr,sqI
T l )
= 1
dj Tr( ∫ h∈G ρj(h) √ dj [ID ψj t ] T [cψr ] T cψq ID ψj s √ djρj(h) TdhITl )
= 1
dj Tr( ∫ h∈G ρj(h) √ dj [ID ψj t ] T [cψr ] T cψq ID ψj s √ djI T l ρj(h) Tdh)
= Tr([IDψjt ] T [cψr ] T cψq ID ψj s I T l )
Hence: Otr,sq = ∑ l 〈Otr,sq, Il〉Il = ∑ l Tr([IDψjt ] T [cψr ] T cψq ID ψj s I T l )Il
Note that the coefficients 〈Otr,sq, Il〉 can be easily computed numerically since all the matrices involved are known. Corollary 6. The following statements are true:
1. 〈Otr,sq, I1〉 = δstδrq
2. Otr,tr is the identity matrix
3. 〈fjitr, fjktr〉 = δik
Proof. 1) By considering l = 1, i.e. Il = id the identity, in Lemma D.8, we find
〈Otr,sq, I1〉 = Tr([IDψjt ]T [cψr ]T cψq ID ψj s )
= Tr(IDψjs [ID ψj t ] T [cψr ] T cψq )
Leveraging the orthogonality of IDψj and the fact that IDψjt and ID ψj s contain the rows of ID ψj :
= Tr(δst id[c ψ r ] T cψq )
There exists a unique r′ such that cψr′ = [c ψ r ] T cψq and c ψ r′ is not skew-symmetric iff r ′ = 0, i.e. r = q:
= δstδrq
2) Note that the matrix Otr,tr is symmetric; since Il for l 6= 1 is antisymmetric, 〈Otr,tr, Il〉 = 0 if l 6= 1. Using the result in 1), it follows that Otr,tr = id is the identity matrix.
3) An immediate consequence of this is that 〈fjitr, fjktr〉 = eTi Otr,trek = δik.
Note that the last proposition in Corollary 6 holds also for the functions in {fjitr | i > mj = dj/Ej} which don’t belong to the basis in Corollary 5. Intuitively, for a fixed value of (t, r), the basis in Corollary 5 ignores these orthogonal elements since they are linearly dependent with the basis elements associated with some other value of (t, r). This explains why the form of the basis in Corollary 5 is not convenient for us. Using the projection coefficients Otr,sq, we can compute the necessary change of basis.
To do so, we start with the over-complete basis given by:
{fjitr | i ≤ dj , r ≤ Eψ, t ≤ [ψj]}
Recall that, for a fixed value of r and t, all basis elements Btr = {fjitr}i are orthogonal. We can therefore build a basis by iteratively picking a set Btr and project it to the space orthogonal to the one spanned by the basis elements already chosen.
Before making this more precise, we need to introduce a few more handful results. Lemma D.9. For any r ≤ Eψ , t ≤ [ψj] and l ≤ Ej:
1. cψr ID ψj t Il ∈ HomH(ResGH ρj , ψ)
2. there is a set of real numbers (wtr,sq,l)s,q s.t.
cψr ID ψj t Il = ∑ q≤Eψ ∑ s≤[ψj] cψq ID ψj s wtr,sq,l
3. wtr,sq,l = 〈Otr,sq, Il〉
Proof. 1) Note that cψr ID ψj t ∈ HomH(ResGH ρj , ψ) and Il ∈ EndG(ρ). It follows that, for any h ∈ H < G:
cψr ID ψj t Ilρ(h) = c ψ r ID ψj t ρ(h)Il = c ψ r ψ(h) ID ψj t Il = ψ(h)c ψ r ID ψj t Il
i.e. cψr ID ψj t Il commutes with the action of H; hence, it belongs to HomH(Res G H ρj , ψ).
2) This result is an immediate consequence of 1) by using the following decomposition
HomH(Res G H ρj , ψ) ∼= [ψj]⊕ s EndH(ψ)
and the basis {cψq }q for EndH(ψ).
3) Since {cψq ID ψj s }q,s is an orthonormal basis for HomH(Res G H ρj , ψ), the coefficients (wsq,tr,l)s,q are found just by projecting the matrix on each basis element using a (scaled) standard inner product, i.e.:
wtr,sq,l = 〈cψq ID ψj s , c ψ r ID ψj t Il〉
= 1 dj Tr ( cψq ID ψj s I T l [ID ψj t ] T [cψr ] T )
= 1 dj Tr ( [IDψjt ] T [cψr ] T cψq ID ψj s I T l ) = 〈Otr,sq, Il〉
Lemma D.10. Let {bi} dj i=1 a set of Mackey functions defined as:
bi(g) := ∑ r,t cψr ID ψj t √ djρj(g) Teibr,t
parameterized by the vector b = (br,t)r,t. Let b(g) = (b1(g)| . . . |bi(g)| . . . ) ∈ Rdψ×dj the matrix obtained by stacking horizontally the vectors {bi(g)}i, i.e.
b(g) = ∑ r,t cψr ID ψj t √ djρj(g) T br,t
The set of functions {bi} dj i=1 is an harmonic family, i.e. if f(g) = b(g)f for a coefficients vector f ∈ Rdj , then [k.f ](g) = f(k−1g) = b(g)ρj(k)f . In other words, the function k.f is the function parameterized by the coefficients ρj(k)f .
Proof.
f(k−1g) = b(k−1g)f = ∑ r,t br,tc ψ r ID ψj t √ djρj(k −1g)Tf
= ∑ r,t br,tc ψ r ID ψj t √ djρj(g) T ρj(k)f
= b(g)ρj(k)f
Finally, we define a few operations which we will need to combine and project harmonic functions in our final algorithm.
Lemma D.11. Let a and b be two set of harmonic functions as in Lemma D.10, respectively parameterized by the vectors a and b. Let α ∈ R and M ∈ EndG(ρj); then, the following sets of functions are all harmonic families as in Lemma D.10:
1. the set f defined as f(g) = αa(g)
2. the set f defined as f(g) = b(g)− a(g)
3. the set f defined as f(g) = a(g)M
Proof. 1) This is a simple consequence of the linearity of the harmonic property.
2)
f(g) = ∑ r,t cψr ID ψj t √ djρj(g) T br,t − ∑ r,t cψr ID ψj t √ djρj(g) Tar,t
= ∑ r,t cψr ID ψj t √ djρj(g) T ︷ ︸︸ ︷ (br,t − ar,t) =:fr,t
3) Let M = ∑ lmlIl. Then:
a(g)M = ∑ r,t cψr ID ψj t √ djρj(g) Tar,tM
= ∑ r,t cψr ID ψj t √ djρj(g) Tar,t ∑ l mlIl
= ∑ l,r,t ar,tml ( cψr ID ψj t Il )√ djρj(g) T
= ∑ l,r,t ar,tml (∑ q,s cψq ID ψj s wtr,sq,l )√ djρj(g) T = ∑ q,s ∑ l,r,t wtr,sq,lar,tml  ︸ ︷︷ ︸
∈R
cψq ID ψj s √ djρj(g) T
where we used Lemma D.9. Corollary 7. Given two harmonic families a and b, let Oa,b = ∫ G a(g)T b(g)dg be the matrix containing the inner product between each pair of functions in a and b. Then, Oa,b ∈ EndG(ρj) and Oa,b = ∑ l wa,b,lIl, where wa,b,l = ∑ sq,tr as,qbt,rwsq,tr,l.
Moreover, let f be a set of functions defined as f(g) = b− aOa,b. Then, Oa,f is the zero matrix.
Proof. The first result follows from:
Oa,b = ∫ G a(g)T b(g)dg
= ∫ G ∑ s,q √ djas,qρj(g)[ID ψj s ] T [cψq ] T ∑ r,t cψr ID ψj t √ djρj(g) T br,tdg
= ∑ s,q ∑ r,t as,qbr,t ∫ G √ djρj(g)[ID ψj s ] T [cψq ] T cψr ID ψj t √ djρj(g) Tdg
= ∑ s,q ∑ r,t as,qbr,tOsq,tr
The second result follows from
Oa,f = ∫ G a(g)T f(g)dg = ∫ G a(g)T b(g)dg − ∫ G a(g)Ta(g)dgOa,b = Oa,b − idOa,b = 0 .
Additionally, note that all functions within the same harmonic family b have the same norm, i.e. Ob,b = ∑ t,r b2t,r id = ‖b‖ id
where we used the fact Ob,b is a symmetric matrix and, therefore, wsq,tr,l = δstδqrδl,1. ‖b‖ is the (squared) norm of each function in b.
We now have all the ingredients to describe the final algorithm. Let B = {} the (initially empty) set of harmonic families chosen so far. In other words, an element bi of B is an harmonic family of dj functions as in Lemma D.10 and is represented by a vector bi = (bi,t,r)t,r. Our goal now is to find Mj = Eψ[ψj]/Ej vectors {bi}i such that Obi,bk = δi,k id. To do so, we can repeat the following steps until the set B contains Mj elements:
1. pick a vector b = (bt,r)t,r , which defines the set of harmonics b
2. define b′ = b− ∑ bi∈B biOb,b′ , represented by the coefficients vector b
′ = (b′t,r)t,r, where the coefficients can be computed using Lemma D.11 and Corollary 7.
3. normalize b′ as b̃ = b′/ √ ‖b′‖
4. add b̃ to B
Note that, at each iteration, we add dj orthogonal functions to the new basis and that the original basis in Corollary 5 is Mj · dj dimensional. Therefore, the algorithm terminates in Mj iterations.

heading: E NUMERICAL IRREPS DECOMPOSITION OF REAL REPRESENTATIONS
text: Assume a compact group G and a set of (representatives of the isomorphism classes of) orthogonal real irreps Ĝ = {ρj}j . In this section, we only engage with real valued representations. In particular, recall that, for a real-valued irrep ρ, its endomorphism space EndG(ρ) is not necessarily 1-dimensional, see Section C.
As stated in Corollary 1, any orthogonal real representation π of G can be decomposed as a direct sum of irreps of G.19 The goal of this section is that of explicitly computing this decomposition for an arbitrary finite-dimensional orthogonal real representation π of G. In other words, given an input finite-dimensional (real, orthogonal) representation π, we want to find the orthogonal transformation/matrix M and the multiplicities {[jπ] ∈ N}j such that:
π(g) = M ⊕ j∈Ĝ [jπ]⊕ i=1 ρj(g) MT Thereby, being orthogonal means that the scalar product is preserved, which for matrices means that the matrix is orthogonal in the classical sense – i.e., its columns build an orthonormal basis.
Warning: note that, with respect to Corollary 1 and the notation used in the main paper, in this section M is transposed on the right-side rather than the left-side of the direct sum of irreps. To obtain the decomposition used in the other sections, one just need to transpose our final result. The reason why we consider this notation is simply that this is the convention we used in our implementation and we wanted to keep the following algorithm consistent with our code.
In this whole section, we assume that π and all ρj are matrix representations, and correspondingly, that M is given by a matrix.
To simplify the notation, define P = ⊕
j ⊕ i ρj , such that π = MPM
T . Since M is orthogonal, we can write πM = MP , i.e. M needs to commute with π and P . It follows that M ∈ HomG,R(P, π).
19That corollary speaks of unitary representations. But recall that by our convention, “unitary” means “orthogonal” when the field is the real numbers.
Recall that the block-diagonal structure of P induces a block-structure in the columns of M , visually:
π(g) = [ . . . |Mj1| . . . |Mji| . . . |Mj[jπ]| . . . ] ·  . . . ρ(g) . . . ρj(g) . . . ρj(g)
. . .
 ·  ... MTj1 ... MTji ... MTj[jπ]
...  i.e., we split M in a number of vertical blocks, one for each occurrence i of each irrep ρj in P . From the equation πM = MP we obtain the following: each such block Mji satisfies πMji = Mjiρj , i.e. Mji ∈ HomG(ρj , π). We restrict our attention to this case. Thus, from now on, assume that ρ is a real orthogonal irrep of G, and our goal is to find an orthogonal embedding in HomG(ρ, π), where π is not necessarily irreducible.
Note that HomG(ρ, π) ∼= ⊕[jπ]
i=1 EndG(ρ). We can easily find a basis for HomG(ρ, π) by solving a linear system. Let dj be the dimension of the representation space of ρj , and similarly, dπ be the dimension of the representation space of π. Let Ij the dj × dj identity matrix and Iπ the dπ × dπ identity matrix; then, the matrix Mji should satisfy:
∀g ∈ G, π(g)Mji = Mjiρj(g) ∀g ∈ G, π(g)MjiIj = IπMjiρj(g)
vectorizing both sides of the equation and using vec (ABC) = ( CT ⊗A ) vec (B):
∀g ∈ G, (Ij ⊗ π(g)) vec (Mji) = (ρj(g)T ⊗ Iπ) vec (Mji) ∀g ∈ G, (Ij ⊗ π(g)− ρj(g)T ⊗ Iπ) vec (Mji) = 0
Note that Ij ⊗ π(g)− ρj(g)T ⊗ Iπ = −ρj(g)T ⊕ π(g), where ⊕ indicates the Kronecker sum here (not to be confused with the direct sum). Note that the last line above describes a linear constraint on Mji for each group element g ∈ G. One can solve for the space of suitable Mji by stacking vertically the matrices (Ij ⊗ π(g)− ρj(g)T ⊗ Iπ) for each g ∈ G and then solving for its null space (e.g. through SVD). While this approach is feasible if G is a finite group and |G| is sufficiently small, this can not be used for infinite groups (or large finite groups). If G is a finite group, one can easily verify that it is sufficient to consider the matrices (Ij⊗π(g)−ρj(g)T ⊗ Iπ) associated with the set of generators of G. Indeed, note that if Mji satisfies the constraint above for two group elements a and b ∈ G, then it satisfies it also for ab and ba ∈ G. Finzi et al. (2021) follows precisely this approach to compute a basis for a general space HomG(π1, π2), when G is finite. When G is an infinite Lie group, Finzi et al. (2021) shows that it is sufficient to consider the Lie algebra generators of G to solve this constraint. In our work, however, we do not want to rely on the Lie algebra of G, since it would introduce additional – non-trivial – requirements when implementing a new equivariance group G. Instead, we note that it is generally sufficient to consider a few random samples G ⊂ G to generate enough constraint matrices {Ij ⊗ π(g)− ρj(g)T ⊗ Iπ|g ∈ G} such that the null space of their vertical stack is precisely HomG(ρj , π).
A similar method was used already in Weiler et al. (2018a) to compute the Clebsh-Gordan coefficients in the decomposition of the tensor product of the irreps of SO(3). These coefficients appear in their kernel basis precisely as in our vectorized kernel constraint in Sec. 2.2. In Weiler & Cesa (2019) (Appendix G), the authors discuss the cost of this approach when applied on generic input and output representation pairs, and highlight the benefits of, instead, restricting the consideration to only pairs of input and output irreducible representations, as done here.
Therefore, by following the method just described, we can generate an orthonormal basis for the space of vectorized matrices satisfying the constraint above. By un-vectorization, any element in the space spanned by this basis generates a matrix Mji such that πMji = Mjiρj . This is not sufficient yet for us, since we require the whole matrix M to be orthogonal.
From now, we assume the previous method generated an orthonormal basis Bj = {Bj,i}di for HomG(ρj , π), i.e. a collection of d = [jπ] ·Ej matrices of shape dπ × dj which are orthogonal with respect to a (scaled) standard inner product 〈A,B〉 = 1dj Tr(AB T ) = 1dj vec (A) T
vec (B). Recall that Ej is the dimensionality of EndG,R(ρj).
In order to build a matrix M which is orthogonal, for each j, we need to choose [jπ] orthogonal matrices {Mji}[jπ]i in HomG(ρj , π), such that all columns of all matrices Mji are also orthogonal to each other. Lemma E.1. Any matrix A1 ∈ HomG(ρj1 , π) has columns which are orthogonal to the columns of any matrix A2 ∈ HomG(ρj2 , π), for j1 6= j2.
Proof. This is a direct consequence of the fact that any homomorphism in A1 ∈ HomG(ρj1 , π) maps to a subspace V1 ⊂ Vπ which is orthogonal to the image V2 of A2 ∈ HomG(ρj2 , π). This can be seen by realizing that the projection from V1 to V2 is an intertwiner, and thus needs to be zero by Schur’s Lemma since V1 and V2 are not isomorphic.
Lemma E.2. Any orthonormal basis for HomG(ρj , π) contains matrices which are orthogonal, i.e., such that the columns are orthogonal and normalized.
Proof. Let {Ek} Eρ k be an orthonormal basis for EndG(ρ). We know that there exists a matrix M such that 1) M is orthogonal and 2) π = M (⊕
j ρ ⊕[jπ] j
) MT .20 Therefore, there exists a collection
{Mji}[jπ]i=1 of orthogonal matrices in HomG(ρj , π), where Mji are the blocks of the matrix M before. It follows that there exists a basis for HomG(ρ, π) defined as H = {IkMji | 1 ≤ k ≤ Ej , 1 ≤ i ≤ [jπ]}. This basis is made of orthogonal matrices, since both Ik and Mji are orthogonal. Note that we don’t know M and H, but we only know they exist. AssumeH = {Hj}j is a basis for HomG(ρ, π) made of orthogonal matrices, i.e. for each i, HTi Hi = I . More generally H T i Hl = δilI . Then any orthonormal basis for this space is made of orthogonal matrices. Indeed, assumeB = {Bl}l is a basis such that 〈Bl, Bl〉 = 1. An element Bl can be written as Bl = ∑ i bliHi. It follows that for any element Bl:
BTl Bl = (∑ i bl,iHi )T · (∑ i bl,iHi ) = ∑ i1,i2 bl,i1bl,i2H T i1Hi2
= ∑ i bl,ibl,iI
= 〈B,B〉I = I
i.e. any element of an orthonormal basis for HomG,R(ρj , π) must contains matrices which are themselves orthogonal.
It follows that we only need to focus on finding a collection {Mji}[jπ]i=1 of matrices whose columns are orthogonal; the orthogonality of columns within the same matrix Mji and between different matrices Mj1,i1 and Mj2,i2 with j1 6= j2 is already guaranteed.
Recall that Bj = {Bj,i}di is the orthonormal basis for HomG(ρj , π) generated by the numerical method (e.g. SVD). To find suitable {Mji}i, it is sufficient to set Mj0 = Bj0. LetMj the subset of all matrices {Mji}i already set (initially containing only Mj0). Let {Ik} Ej k=1 be an orthonormal basis for EndG,R(ρj). Let Bi=0 = Bj . Then we build the setMj through the following iterative method:
1. create B′ = {MjiIk|Mi ∈Mj , k ∈ {1, . . . , Ej}} 2. project the elements in Bi on the space space of matrices which is orthogonal to the span of B′ and remove all zero elements (i.e. all elements which already belong to the span of B′)
20This is a direct consequence of Lemma B.29 in Lang & Weiler (2020).
3. pick the first non-zero element of Bi, set Mji to that and add it inMj 4. repeat until the set Bi is empty
Up to a scalar factor (of √ dj), the matrices inMj are all orthogonal. Additionally, this set contains precisely [jπ] matrices.
By stacking all matrices together, one builds the matrix M .
Note also that this method can be used to find the multiplicities [jπ], too. Indeed, because each column of ρj is related through an endomorphism precisely with Ej other columns (see Theorem C.11), once a basis Bj with d elements is found, it is sufficient to compute [jπ] = d/Ej , since we assume the type of ρj (and therefore Ej) is known.

heading: F REAL IRREDUCIBLE REPRESENTATIONS OF THE DIRECT PRODUCT OF TWO COMPACT GROUPS
text: A useful operation to generate new groups is the direct product. Given two groups A and B, their direct product G = A×B is a group defined as:
• the Cartesian product of the element of A and B, i.e. {(a, b) | a ∈ A, b ∈ B} • with the group law · : G×G→ G defined as (a1, b1) · (a2, b2) = (a1a2, b2b2).
Many groups can be written as a direct product of two smaller groups. In particular, O(3) = Inv×SO(3), or more generally O(n) = Inv×SO(n) when n > 1 is odd, where Inv = {±1} is the group generated by the reflection x 7→ −x. In our work, we are interested in the direct product to easily build many subgroups of O(n) (in particular, of O(3)) which have form G = Inv×H , where H < SO(n). This is the case for the cylindrical symmetries (H = SO(2), O(2) or their discrete subgroups) or the full isometries of the solids (H = T , O or I); see Sec. G.
In order to use these groups, it is sufficient for us to build their set of irreducible representations. In this section, we describe a method to generate the set of real irreducible representations of a direct product of two compact groups from the irreps of the two groups.
Given two compact groups A and B and their respective set of (representatives of) complex unitary irreducible representations Â = {αi}i and B̂ = {βj}j , it is well known that any complex unitary irrep of G = A × B is isomorphic to a unique γij = αi ⊗ βj for a particular choice of i and j. Thereby, (αi ⊗ βj)(a, b) := αi(a)⊗ βj(b) is the Kronecker product of the two matrices αi(a) and βj(b). Thus, a set of representatives of isomorphism classes of unitary irreps Ĝ can be constructed as
Ĝ = {γij = αi ⊗ βj | αi ∈ Â, βj ∈ B̂}. (25)
However, this results does not hold in the real field. In the rest of this section, we will derive a variation of this theorem using real irreducible representations, which is more useful to describe the representations of the groups we used.
In Appendix C.3, we have already shown that any real irrep ψ of G can be classified in one of the following three categories:
• real-type: ψ ∼= σ ∼= σ • complex-type: ψ = σR ∼= σ ⊕ σ, with σ σ • quaternionic-type: ψ = σR ∼= σ ⊕ σ ∼= σ ⊕ σ, as σ ∼= σ
where σ is a complex irrep of G. Moreover, for each complex irrep σ, there exists only one real irrep ψ which contains it.
We can use this classification starting from the complex irreps of G which we have already defined in Eq. 25. First, we clarify some notation. We use Greek letters like α, β, γ to indicate complex irreps and Roman letters to indicate the corresponding real irreps a, b, c. For each complex irrep γij , there can be only one real irrep cij containing it. It follows that αi ⊗ βj only appears in cij . Moreover, if αi αi, i.e. ai is of complex-type, we index the complex irrep αi with i, i.e. αi ∼= αi.
We can now introduce a useful result for real irreps:
Definition F.1 (Frobenious-Schur Indicator). Let G be a compact group and ρ a complex irreducible representation of G. Let χ be the character of ρ, i.e. χ : G→ C, g 7→ Tr(ρ(g)). The FrobeniousSchur indicator ιρ of ρ is defined as:
ιρ := ∫ G χ(g2)dg
This indicator can only take the following values:
ιρ =  −1 if ρ is contained in real type irrep
0 if ρ is contained in complex type irrep 1 if ρ is contained in quaternionic type irrep
This allows us to analytically determine the type of the real irrep associated with a complex one.
We can combine this result with the definition of complex irreps of G = A×B in Eq. 25 to find the type of the real irreps of G. Let γij = αi ⊗ βj a complex irrep of G; then:
ιγij = ∫ G Tr((αi ⊗ βj)(g2))dg
= ∫ A ∫ B Tr(αi(a 2)⊗ βj(g))da db
Using the property of the trace and the Kronecker product:
= ∫ A ∫ B Tr(αi(a 2)) · Tr(βj(g))da db
= ∫ A Tr(αi(a 2))da ∫ B Tr(βj(g))db
= ιαiιβj
Hence, the types of the irreps αi and βj of A and B fully determine the type of the irrep γij of G. This can be visualized in the following table:
αi βj real ιβj = 1 complex ιβj = 0 quaternionic ιβj = −1 real ιαi = 1 ιγij = 1 ιγij = 0 ιγij = −1 complex ιαi = 0 ιγij = 0 ιγij = 0 ιγij = 0
quaternionic ιαi = −1 ιγij = −1 ιγij = 0 ιγij = 1
In the rest of this section, we will use the following two useful facts:
Re (γij) = Re (αi ⊗ βj) = Re (αi)⊗ Re (βj)− Im (αi)⊗ Im (βj) Im (γij) = Im (αi ⊗ βj) = Re (αi)⊗ Im (βj) + Im (αi)⊗ Re (βj)
We will also assume the irreps to be expressed on the bases described in Section C.3. In particular, if αi (or βj) are real type irreps, we assume they are expressed with respect to a basis such that they have real entries, i.e. αi = ai (and βj = bj). In such case, Re (αi) = ai and Im (αi) = 0. If αi (or βj) is a complex or quaternionic type irrep, we assume ai (and bj) is expressed as the realification:
ai = [ Re (αi) − Im (αi) Im (αi) Re (αi) ] This enables us to extract Re (αi) and Im (αi) directly from the matrix coefficients of ai (or bj).
Therefore, to build the real irreps of G = A×B we distinguish three cases, depending on the type of the irrep.
Real type irrep Assume γij has real type. This implies that either both αi and βj have real type or both have quaternionic type. In the first case, gij is simply computed as gij = ai ⊗ bj . In the second case, assume αi and βj have the structure in Eq. 16. Then, one can verify that the change of basis
Q = 1√ 2  0 iI iI 0−iI 0 0 iI0 −I I 0 I 0 0 I  turns γij = αi ⊗ βj into a matrix with only real entries, i.e. gij = QγijQ†, where I is the identity matrix of size dγij/4.
Complex type irrep Whenever γij has complex type, we can easily implement gij as the realification:
gij := [ Re (γij) − Im (γij) Im (γij) Re (γij) ] By using the identities above, we can easily compute this matrix from entries of the matrices of ai and bj . Note that, if both αi and βj have complex type, the irrep γij = αi ⊗ βj and γij = αi ⊗ βj generate two different real irreps gij and gij . Since bj and bj are isomorphic real irreps, only one of the two belongs to the set of representatives in Ĝ chosen. However, Re (βj) = Re ( βj )
and Im (βj) = − Im ( βj ) , so gij can still be computed easily from the coefficients of ai and bj .
Quaternionic type irrep Like for the complex types, whenever γij has quaternionic type, we can easily implement gij as the realification:
gij := [ Re (γij) − Im (γij) Im (γij) Re (γij) ] Additionally, note that this is the case only if either αi or βj is of real type, while the other is of quaternionic type. Hence, the formula can be simplified by noting that either Im (αi) or Im (βj) is zero.
G 3D SYMMETRIES, AZIMUTHAL SYMMETRIES AND THEIR RELEVANCE
E(3) is the group of isometries in R3 and includes translations (R3,+), rotations SO(3) and inversions21 through the origin Inv. The group O(3) = SO(3) × Inv is the compact group of origin-preserving isometries. While continuous rotational symmetry SO(3) occurs commonly in molecular data, smaller symmetry groups are sometimes more relevant to describe scenes or objects in natural environments. For instance, when the vertical orientation of a the scene is obvious, the symmetry group of the data is reduced to axial symmetries. There is only a limited number of topologically closed infinite subgroups of O(3) (up to conjugation). The building blocks are rotations along an axis (SO(2)), inversions (Inv), mirroring with respect to a plane (M) and an out-of-plane rotation by π (F). Together, they generate 5 continuous symmetry groups:
• axial symmetry (SO(2) < SO(3)), • dihedral symmetry (O(2) = SO(2)o F < SO(3)), • conical symmetry (O(2) ∼= SO(2)oM < O(3)), • cylindrical symmetry (Inv×SO(2) < O(3)) and • full cylindrical symmetry (Inv×(SO(2)o F) < O(3)).
In the planar case, Weiler & Cesa (2019) observed benefits from using discrete groups rather than continuous ones when the data is discretized on a grid and, therefore, the continuous symmetry of the data is lost. The only discrete subgroups of SO(3) with more than 2 rotation axes are the symmetry groups of the Platonic solids: the tetrahedral (T), the octahedral (O) and the icosahedral (I) groups which have, respectively, 12, 24, and 60 elements. T and O are perfect symmetries of a voxel grid and were previously used in Worrall & Brostow (2018); Winkels & Cohen (2018). Also, note that T < I but O I; hence, an I-equivariant CNN is not equivariant to all symmetries of the voxel grid.
21Inv ∼= C2 is a group containing the identity element and the inversion x 7→ −x in R3.

heading: H FURTHER DETAILS ON THE EXPERIMENTS

heading: H.1 ESTIMATING THE EQUIVARIANCE ERROR OF STEERABLE BASES
text: In this section we provide more details on Fig. 4. In this experiment, we considered equivariance to the Icosahedral group G = I. We employ 5 × 5 × 5 filters, parameterized by two spherical shells (one at radius 1 and one at radius 2) and the origin. In the two baselines, we use the orbits containing the vertices of either the icosahedron or the dodecahedron in the two spherical shells and the orbit containing only the origin. The kernel is parameterized independently along each orbit by directly using the Wigner-Eckart theorem from Lang & Weiler (2020) and, then, the kernels are embedded in R3 by means of a small Gaussian smoothing. In our basis, we parameterize each shell with spherical harmonics band-limited to frequency 2 (the origin contains only frequency 0); each shell is diffused along the radial direction with a small Gaussian kernel.
Each histogram in Fig. 4 shows the relative equivariance error of each element of one of the bases. An histogram contains a point for each filter k in the basis associated with each pair of input and output irreps (ρin, ρout) of G = I. The error of a basis filter k is computed as the average over all 60 rotations g ∈ I of the following error:
gx← downsample(g.X) x← downsample(X) fgx← conv3d(gx, k) fx← conv3d(x, k) gfx← ρout(g)fx return compare(fgx,gfx)
where x (and gx) have the same resolution of the filter k, such that the outputs fx and fgx do not have spatial resolutions. In this way, g acts on fx only by transforming its channels but not spatial interpolation is necessary. To reduce the interpolation artifacts when rotating X 7→ g.X , we perform the rotation at a higher resolution and then downsample the inputs.

heading: H.2 ARCHITECTURE DETAILS
text: All models used in our experiments consist of a sequence of a basic inverted-bottleneck residual block, or small variations of it (see each experiment’s section). The basic block for a conventional network consists of a sequence Conv3D - BatchNorm - ELU -Conv3D, whose input and output are connected with a skip connection. The block has Cin input channels and the first convolution maps to N > Cin channels. To downsample, we used stride 2 in the second Conv3D and average pooling in the skip connection. We use kernel_size = 3 for both Conv3D. If the block has a different number of channels Cout in output, the skip connection also contains a convolution with kernel_size = 1. We refer to the linear path in the architecture, i.e. the sequence of skip connections, as the backbone of the model. If Cj is the number of input channels of the j-th residual block, we refer to [C1, C2, . . .] as the number of channels in the backbone features of the model. If Nj is the number of channels used by the non-linearity of the j-th residual block, we refer to [N1, N2, . . .] as the number of channels in the residual blocks of the model.
In an equivariant model, we associate a stack of field types {ρi}i on the input Cin channels, such that ∑ i dρi ≈ Cin. Similarly, we associate a stack of field types to the N channels produced by the first Conv3D. The particular choice here depends on the kind of equivariant non-linearity used here instead of ELU. In general, we try to ensure that the channels used in the non-linearity are approximatively equal to N , for a fair comparison. We now list a number of non-linearities considered. Gated Non-Linearities The input consists of a number of feature fields f(x) = ⊕
i fi(x) of type⊕ i ρi. Recall that fi(x) ∈ Rdρi . For each feature field i, the input should also contain a gate gi(x) ∈ R of trivial type. Then, each input feature field fi(x) is mapped to f ′(x) = σ(gi(x))fi(x), where σ is a non-linearity like Sigmoid. Note that a gated non-linearity inherently loses some of its input channels, i.e. the input gates {gi}i. In our models, we try to ensure that ∑ i (dρi + 1) ≈ N (the +1 corresponds to the size of the gate gi(x) for each input feature field fi). Note that a field type
ρi can be any representation. In particular, we experiment with different choices of ρi; we consider {ρi}i containing:
• each irrep of SO(3) of frequencies 1 to 2, in equal proportions • each irrep of SO(3) of frequencies 1 to 3, in equal proportions • each irrep of SO(3) of frequencies 1 to 2, with multiplicities proportional to their multiplici-
ties in the regular representation of SO(3), i.e. for each trivial ρ0, we include 3 copies of the frequency 1 ρ1 and 5 copies of ρ2 • copies of the quotient representation ρS2 = ρ0 ⊕ ρ1 ⊕ ρ2, band-limited up to frequency 2 • copies of the quotient representation ρS2 = ρ0⊕ρ1⊕ρ2⊕ρ3, band-limited up to frequency
3
• copies of the regular representation ρreg = ρ0 ⊕ ρ⊕31 ⊕ ρ ⊕5 2 , band-limited up to frequency 2
To match the N channels, we also add trivial feature fields (ρi = ρ0) and operate on them with a simple ELU non-linearity. Note that in all cases, the first Conv3D has Cin input channels and N output channels, maintaining approximatively the same computational cost of the conventional CNN. Tensor-Product Non-Linearity Let f(x) = ⊕
i fi(x) be the input features field, with type ρ =⊕ i ρi. In our experiments, we always chose all {ρi}i equal to a unique type, i.e. ρi = ρj for all i, j. The tensor-product non-linearity maps fi(x) ∈ Rdρi to f ′i(x) = fi(x) ⊗ fi(x) ∈ R d2ρi . Note the quadratic growth in the number of channels. In the experiments, we keep the output size approximatively equal to N , i.e. ∑ i d 2 ρi ≈ N . It is common in the literature to learn a linear projection of f ′i(x) to a lower-dimensional feature field f ′′ i (x) of type ρ ′ i, with dρ′i d 2 ρi . The
second Conv3D originally maps ∑ i d 2 ρi ≈ N channels to the output Cout channels, while this
projection would reduce the input channels to ∑ i dρ′i N , thereby reducing the computational cost of the layer proportionally. This, however, results also in a potential loss in expressiveness, since a Conv3D layer taking N channels in input can learn a larger space of operations. Since we do not expect this linear projection to improve the performance of this architecture, we do not include it in our experiments. Finally, in our experiments we consider the following choices of ρi:
• the quotient representation ρS2 = ρ0 ⊕ ρ1 ⊕ ρ2, band-limited up to frequency 2 • the quotient representation ρS2 = ρ0 ⊕ ρ1 ⊕ ρ2 ⊕ ρ3, band-limited up to frequency 3 • the regular representation ρreg = ρ0 ⊕ ρ⊕31 ⊕ ρ ⊕5 2 , band-limited up to frequency 2
Note that a larger feature type ρi (i.e. larger dρi) results in a smaller number of independent copies of it, since we constrain ∑ i d 2 ρi ≈ N . On the other hand, a larger ρi makes the tensor-product fi(x)⊗fi(x) more expressive, since it combines more different input channels. Therefore, the choice of the size of ρi should be a trade-off between expressiveness and computational and memory cost.
(Pointwise) Regular non-Linearities Again, we consider all input feature fields of the same type, i.e. ρi = ρj for all i, j. Here, fi(x) ∈ Rdρi is interpreted as the coefficients vectors parameterizing a band-limited function in L2(G). We consider band-limiting up to frequency 2 or 3, i.e. the three following choices of ρi:
• ρi = ρ0 ⊕ ρ⊕31 • ρi = ρ0 ⊕ ρ⊕31 ⊕ ρ ⊕5 2 • ρi = ρ0 ⊕ ρ⊕31 ⊕ ρ ⊕5 2 ⊕ ρ ⊕7 3
Let G ⊂ G a finite number of samples from the group G. Then, this non-linearity maps an input feature field fi(x) to f ′i(x) = [FT ◦σ ◦ IFT](fi(x)), where FT is a Fourier Transform, which recovers the coefficients of a band-limited function from a number of samples, σ is a pointwise non-linearity like ELU and IFT is an Inverse Fourier Transform, which just samples the function parametrized by the coefficients fi(x) on the elements in G. Note that IFT can be implemented as a simple multiplication with a matrix of shape |G| × dρi and, similarly, FT can be implemented as a multiplication with a matrix of shape dρi × |G|, hence f ′i(x) = FTσ(IFT fi(x)), where FT and
IFT are interpreted as matrices. This operation is only approximatively equivariant and the degree of equivariance strongly depends on the number of samples |G| as well as their distribution. In particular, it is important that the samples in G uniformly cover the space G and are, therefore, as far away from each other as possible. We experiment with different sampling sets G:
• the 24 elements of the Octahedral group O < SO(3) • the 60 elements of the Icosahedral group I < SO(3) • P points over G with maximal relative distance, obtained by optimizing a potential energy • P = 24 ·Q points over G with maximal relative distance, obtained by optimizing a potential
energy, with the constraint that G = ⋃ o∈O{o.gq}Qq , i.e. that the set G has Octahedral symmetry: for any o ∈ O, o.G = G.
In particular, the last sampling set guarantees that the resulting neural network is at least perfectly equivariant to O, i.e. the symmetries of the voxel grid. In general, we observe that at least |G| ≈ 2dρi samples are necessary for achieving an equivariance error below 10%. For G = O(3), we use a similar design and just augment the sampling set with inversions, i.e. we use G′ = Inv×G, where G is a sampling set used for SO(3). In this case, in the model design, we ensure that ∑ i |G| ≈ N . Let
α = |G|/dρi ; this implies that the first Conv3D only has ∑ i dρi ≈ N/α output channels (and the second Conv3D has this many input channels). AssumeCin = Cout = C; let k be the cost of a single convolution with 1 input and output channels and m is the number of pixels in the input grid. The cost of the non-linearity applied to a single feature field is O(dρi |G|) and there are N/|G| such input fields. Then, the cost of this layer is only O(kmCN/α + m(N/|G|)|G|dρi) = O(kmCN/α + mNdρi) which is equal to O(kmCN/α), since mC dρi . For comparison, the same block in a conventional network has cost O(kmCN + mN) = O(kmCN), hence this layer is approximatively α times cheaper.
For discrete groups such as O and I, we also use regular non-linearities. In this case, however, the first Conv3D in the residual block directly use a regular feature types as output types and is immediately followed by the pointwise non-linearity, with no need to perform sampling. Hence, the computational and memory cost of these models is equivalent to that of a conventional network, i.e. they have no additional computational gain.
(Pointwise) Quotient non-Linearities Similarly, we can define quotient non-linearities, with the only difference that fi(x) parameterizes a band-limited function over a homogeneous space X = G/H , for some H < G. Here, we consider a sampling set X ⊂ X . For G = SO(3), we consider the following quotient representations ρi:
• ρS2 = ρ0 ⊕ ρ1 ⊕ ρ2 • ρS2 = ρ0 ⊕ ρ1 ⊕ ρ2 ⊕ ρ3
and the following sampling sets
• the (center of the) 30 edges of the icosahedron; note that this set has Icosahedral symmetry • P points over X with maximal relative distance, obtained by optimizing a potential energy • P = 24 ·Q points over X with maximal relative distance, obtained by optimizing a potential
energy, with the constraint that X = ⋃ o∈O{o.xq}Qq , i.e. that the set X has Octahedral symmetry: for any o ∈ O, o.X = X .
In particular, the last sampling set guarantees that the resulting neural network is at least perfectly equivariant to O, i.e. the symmetries of the voxel grid. Additionally, note that forX = S2, the second sampling set corresponds to the well known Thomson problem. When G = O(3), we consider X = O(3)/O(2) ∼= S2 and X = O(3)/ SO(2) ∼= Inv×S2. In the first case, we can reuse the same sampling sets defined above for X = SO(3)/ SO(2) ∼= S2. In the second one, we augment the sampling set with inversions. The same considerations about the computational cost discussed in the previous paragraph apply also here.
Invariant Maps Because we consider invariant tasks, an equivariant architecture should map to invariant features before the final classification layer. To do so, it is common to use some invariant
map at the end of the convolutional feature extractor and then feed the invariant features in a few final fully-connected layers. Here, we consider a few different invariant maps. Norm-pooling: given an input field fi(x) ∈ Rdρi , we compute its norm, i.e. fi(x) 7→ f ′i(x) = ||fi(x)||2 ∈ R; note that this is indeed an invariant quantity. We use this kind of map for models which should be perfectly G equivariant, if G is a continuous group; for instance, we use it for models which use gated non-linearities or tensor-product non-linearities. We experiment with different choices of ρi:
• the quotient representation ρS2 = ρ0 ⊕ ρ1 ⊕ ρ2, band-limited up to frequency 2 • the regular representation ρreg = ρ0 ⊕ ρ⊕31 , band-limited up to frequency 1 • the regular representation ρreg = ρ0 ⊕ ρ⊕31 ⊕ ρ ⊕5 2 , band-limited up to frequency 2 • {ρi}i contains copies of the irrep ρ0, ρ1 and ρ2 in equal proportion
Group Pooling: if G is a finite group, we can choose ρi = ρreg and, therefore, fi(x) ∈ R|G|. In this case, we can compute the max fi(x) 7→ maxj [fi(x)]j . Something similar can be done if G is continuous and ρi is a band-limited regular representation by using a sampling set G. However, this operation is often more unstable. To devise a more stable alternative for continuous groups, we consider Average Pooling. This operation is identical to the regular non-linearity explained above (i.e., f ′i(x) = [FT ◦σ ◦ IFT](fi(x))), with the difference that the final Fourier Transform FT only recovers the invariant frequency 0 component. This is equivalent to averaging the output of [σ ◦ IFT](fi(x)) over the samples G. In our architectures, we keep the number of invariant features fed into the final fully-connected layers constant. Note that, to generate N invariant outputs, the invariant maps require Ndρi inputs. This can be quite expensive if ρi is a regular representation (e.g., a regular representation of G = SO(3) band-limited to 2 has size 35). To alleviate this, we introduce a Quotient Average Pooling. This operation is similar to Average Pooling but relies on quotient representations (and samples X from a quotient space X), which have smaller size.

heading: H.3 MNIST EXPERIMENTS
text: As a proof of concept, we train a conventional and a C8 equivariant model on rotated MNIST. A model includes a sequence of 6 residual blocks similar to the ones described in Appendix H.2. With respect to that design, here we use Conv2D and use stride 2 in the second convolution. We downsample (with stride 2 convolution), every two blocks. In the first layer of the first block, we use kernel_size = 7. The number of channels in the features of the backbone, connected through the skip connections, is C = [1, 21, 54, 72, 108, 168]. The number of channels in each residual block is N = [96, 192, 288, 288, 576, 576]. Both models map to 128 final invariant features. The conventional model uses a final 3 × 3 max pooling over the spatial dimension. In the equivariant model, we do not pad the convolution in the last residual block such that its output already has 1× 1 resolution. However, the last block maps to 128 copies of the regular representation of G = C8; we then apply group pooling over them to generate 128 invariant features. Finally, both models use 2 fully connected layers to perform classification.
We train both models using Adam. We performed simple tuning of batch size, learning rate and weight decay of each model independently by evaluating them on the validation set. The same number of hyper-parameter combinations was evaluated for both models. Once the best set of hyper-parameters was chosen, we re-trained a model using this configuration 5 more times using different random seeds. We report the means and the standard deviations of the test performance over these runs.

heading: H.4 MODELNET10 EXPERIMENTS
text: To generate the two ModelNet10 datasets, we use the original mesh data. Each mesh is centered and scaled to fit in the [−1, 1]3 cube. Then, for each mesh we apply 3 random rotations. In the normal ModelNet10 experiments, we only sample SO(2) rotations around the Z axis. In the rotated ModelNet10 experiments, we sample arbitrary SO(3) rotations. A mesh is then rendered by computing the signed distance function of each point in the voxel grid from the mesh. This distance is then used into a Gaussian kernel to generate a smooth 3D occupancy grid of resolution 33 pixels.
The architecture used consists of a first Conv3D with kernel_size = 5, followed by 4 residual blocks and final Conv3D layer. The second convolution layer of the 4 residual blocks uses stride 2. All models map to 128 final invariant features. The last convolution layer has kernel_size = 3 In
the conventional networks, the last convolution layer has 128 output channels and uses padding = 1, so its output has resolution 3px; we apply max pooling with a window of size 3 to generate 128 translation invariant features of resolution 1 pixel. In the equivariant networks, the last convolution uses padding = 0 such that the output resolution is already 1 pixel; however, the last block maps to a larger number of channels 128 · P , depending on the invariant map chosen. We choose this design to maintain the computational and memory cost of the equivariant and the conventional models comparable; indeed, the final features of the conventional network have shape 128× 33 while the features of the equivariant one have shape 128 ·P × 13, before applying, respectively, max pooling or an invariant map. We try to keep P ≈ 33 = 27. In the architectures, we useN = [240, 480, 480, 960] channels in the residual blocks and C = [39, 78, 240, 480, 312] channels in the backbone. Finally, three fully connected layers, alternated with dropout, batchnorm and ELU non-linearity, use these invariant features to perform classification.
For the SO(2) model, we used regular non-linearities with regular representations band-limited up to frequency 3 and |G| = 12 samples on a regular grid. Similarly, for the O(2), Inv×SO(2) and Inv×O(2) models, we used regular representations band-limited up to frequency 3 and G was built by extending a grid of 12 points on their SO(2) subgroup with reflections and flips. In all cases, as invariant map, we used quotient average pooling, with X ∼= S1 ∼= SO(2) and maximum frequency 3. In the SO(3) models using regular non-linearities, we used features band-limited to frequency 2 when |G| = 60 and to frequency 3 when |G| = 120. For the O(3) model, we used regular features band-limited up to frequency 2. In both SO(3) and O(3) models using quotient features, we used features band-limited up to frequency 2.
For each equivariant model, the choice of feature types in the backbone (the input and output types of each residual block) is independent of the non-linearities used. Moreover, since no non-linearities are applied on these features, w.l.o.g. we can consider only irreps feature types. We consider the multiplicity of the irreps a hyperparameter which we tune during hyper-parameter tuning.
We train all models using Adam. For each model, we independently performed simple tuning of batch size, learning rate and weight decay by evaluating them on the validation set. This hyper-parameter search also includes a search over the variants of each architecture design (see the variants of each non-linear operation described in Appendix H.2). The same number of hyper-parameter combinations was evaluated for both models. Once the best set of hyper-parameters was chosen, we re-trained a model using this configuration 5 more times using different random seeds. We report the means and the standard deviations of the test performance over these runs.

heading: H.5 COMPUTATIONAL COST AND INFERENCE TIME OF THE MODELS
text: We have argued that point-wise non-linearities based on discrete Fourier Transform and inverse Fourier Transform benefit from a lower computational cost due to the factorized linear layers. In this section, we verify this by comparing the inference time measured for different architectures. We measure inference time by feeding 100 batches of 8 random 33× 33× 33 inputs (we first feed 10 more batches for warm-up). We report mean and standard-deviation over these runs in Tab. 4. The architectures used are the ones described in Appendix H.2 and H.4. For reference, we also report the number of parameters of each model. Note also that the equivariant models include a small overhead due to the less optimized implementation of certain operations. While the I model has approximatively the same running time of a conventional CNN, the gated non-linearity model and the scaled-up regular model (marked with ∗) are slower that the first two. Despite this overhead, the normal regular SO(3) model (without ∗) is much faster than all other models.

heading: H.6 LBA EXPERIMENTS
text: To perform the LBA experiments, we use the atom3d library from Townshend et al. (2020). In particular, we adapted the 3DCNN example from their repository. In the example code, each test molecule is randomly rotated at every run of the test. To make the testing procedure deterministic, we generate a test set by rotating each test molecule with 5 random SO(3) rotations. The occupancy grid of a molecule is generated by setting to 1 the voxel cell which is closest to each atom. This results in a coarser rendering of the data, with respect to the ModelNet10 datasets. To mitigate the discretization noise, we use voxels with a higher resolution of 65 pixels. Note that Townshend et al. (2020) used voxel grids with resolution 40 pixels. However, the larger resolution of the input data can drastically increase the memory cost of the models. To prevent this, all models include a first Conv3D layer with kernel_size = 7 and stride = 2 which immediately downsamples the input. This first convolution layer is then followed by 4 residual blocks. In each residual block, the stride = 2 convolution is performed in the first Conv3D rather than the second. In the conventional network, the output resolution is 3px and we use max pooling to reduce it to 1 pixel. In the equivariant models, the last residual block does not use padding such that the output resolution is already 1 pixel. However, this last equivariant block has more output channels than the conventional network since this block is followed from an invariant map layer. See Appendix H.4 for more details about this design choice. In the architectures, we use N = [120, 120, 240, 480] channels in the residual blocks and C = [26, 32, 64, 128] channels in the backbone. Finally, all models produce 256 invariant features and terminate with two fully-connected layers, alternated with dropout, batchnorm and ELU, which perform regression.
In the SO(3) architecture, we use regular non-linearities with regular features band-limited up to frequency 2. Because of the lower computational cost of this architecture, we scale up the number of channels in the residual block such that the computational cost is comparable with that of a conventional CNN. This results approximatively in twice the number of channels of the original model; see the paragraph regular non-linearities in Appendix H.2 for more details about the computational cost of these operations.
To make our results comparable with Townshend et al. (2020), we use the same train, validation and test split. Moreover, during training, we augment each molecule with a random SO(3) rotation, as done in Townshend et al. (2020).
The training details and hyper-parameter tuning procedures are similar to those described in Appendix H.4.

Review summaries:
The authors present a general algorithm for constructing steerable equivariant neural networks. The main idea is that by constructing a steerable basis for a large symmetry group such as O(3), using the ideas in the paper, we can readily construct equivariant networks which are equivariants to smaller subgroups, such as SO(2). Experimental results on subgroups of isometries of $\mathbb{R}^3$ show the usefulness of the method for 3D shape recognition for voxelized data and a regression task related to molecular binding affinity.

The paper suggests an approach to design arbitrary steerable kernels. As the kernel steerable constraint only relates to the orbits, previous approaches have not yet taken into consideration that kernels should vary smoothly among close orbits. The idea is to parametrize kernels using a steerable basis. Then, it is also possible to restrict it to subgroups, alleviating the need to redesign a new subgroup equivariant. The method is evaluated on three invariant tasks.

This paper introduces a general framework for constructing equivariant steerable CNNs over arbitrary subgroups of E(3). The central idea of their approach is to use the well-known basis for steerable kernels over E(3) and then restrict them to a given subgroup. In addition to a thorough supplementary material developing the theory, the authors also provide pseudo-code for generating novel kernels. This theory is then put into practice by generating steerable CNNs for an impressively wide array of groups and evaluating their performance on rotated MNIST and ModelNet10.