  Symmetries and equivariance are fundamental to the generalization of neural
networks on domains such as images, graphs, and point clouds. Existing work has
primarily focused on a small number of groups, such as the translation,
rotation, and permutation groups. In this work we provide a completely general
algorithm for solving for the equivariant layers of matrix groups. In addition
to recovering solutions from other works as special cases, we construct
multilayer perceptrons equivariant to multiple groups that have never been
tackled before, including $\mathrm{O}(1,3)$, $\mathrm{O}(5)$, $\mathrm{Sp}(n)$,
and the Rubik's cube group. Our approach outperforms non-equivariant baselines,
with applications to particle physics and dynamical systems. We release our
software library to enable researchers to construct equivariant layers for
arbitrary matrix groups.
