Pysymmetry: A Sage/Python framework for the symmetry reduction of linear G-equivariant systems
Description
Linear systems with finite-group symmetry, from geometric invariances to repetitive structural patterns, are ubiquitous in science and engineering, and standard computational software rarely exploits that structure. This paper introduces PySymmetry, an open-source Sage/Python framework that applies the constructive algorithms of classical representation theory to the symmetry reduction of G-equivariant linear systems. Projection operators built from the characters of the irreducible representations of a finite group generate a symmetry-adapted basis, which carries an equivariant operator into block-diagonal form and decouples one large problem into several small independent ones. A single character-theoretic construction serves two paths inside one open environment: an exact symbolic path over an exact ring, and a numerical path interoperable with NumPy, SciPy, and sparse matrix formats. Three case studies exercise both. The GF method of molecular vibrations illustrates the workflow. A non-Hermitian Schrödinger eigenvalue benchmark shows the reduced path to be nearly 17 times faster than a general-purpose dense eigensolver on the largest grid tested. A symbolic investigation produced the first complete analytical classification of the nested cube central configuration in celestial mechanics. Source code, documentation, and the notebooks that reproduce the results are publicly available.