{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/arxiv-2607-01408","title":"Spin-Weighted Spherical Harmonics Enable Complete and Scalable $\\mathrm{E}(3)$-Equivariant Networks","arxiv_id":"2607.01408","date":"2026-07-01","proceeding":null,"authors":["Chenxing Liang","Yuchao Lin","Andrii Kryvenko","Wendi Yu","Chuan Li","Jianwen Xie","Xiaofeng Qian","Shuiwang Ji"],"abstract":"$\\mathrm{E}(3)$-equivariant networks are promising for 3D atomistic system modeling, yet their scalability is limited by the $O(L^6)$ complexity of the Clebsch-Gordan Tensor Product (CGTP). The recently proposed Gaunt Tensor Product (GTP) reduces the complexity but is unable to capture the antisymmetric paths, resulting in incomplete expressivity. In this work, we present SpinGTP, an approach to overcome the GTP incompleteness by generalizing from scalar functions to Spin-Weighted Spherical Harmonics (SWSH). By relying on the algebraic properties of SWSH, SpinGTP recovers the missing antisymmetric interactions while maintaining the asymptotic efficiency of GTP. It also allows for a more expressive equivariant basis that naturally accounts for the parity-odd components of tensor products. We evaluate SpinGTP across diverse benchmarks, including Tetris, 3BPA, SPICE-MACE-OFF, and OC20. Our results show that SpinGTP achieves accuracies comparable to full CGTP. Notably, by explicitly capturing antisymmetric paths, SpinGTP exhibits superior performance in tasks involving chiral materials and non-centrosymmetric geometries. This work provides a complete, scalable, and mathematically rigorous path toward high-order equivariance in large-scale 3D atomistic system simulations.","url_abs":"https://arxiv.org/abs/2607.01408","url_pdf":"https://arxiv.org/pdf/2607.01408","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2607.01408","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2607.01408"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/divelab/SpinGTP","reach":null}],"summary":{"ran":8,"unverified":2},"by_repo_kind":{"found_in_text":{"samples":10,"ran":8,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"ca82bd4ded61acb5","entry":"FFT_batch_channel","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/efficient_utils.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/efficient_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ca82bd4ded61acb5"}},{"code_sha256_prefix":"72eaeb235460632c","entry":"cart_to_l1_swsh","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh_spin_head.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh_spin_head.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"72eaeb235460632c"}},{"code_sha256_prefix":"822b72a8e99b7a55","entry":"compute_per_edge_frame","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh_reference.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh_reference.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"822b72a8e99b7a55"}},{"code_sha256_prefix":"5e2f7932895ca997","entry":"edge_frame_from_graph_frame","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5e2f7932895ca997"}},{"code_sha256_prefix":"1fb9d5972ac903f4","entry":"edge_frame_from_node_frame","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1fb9d5972ac903f4"}},{"code_sha256_prefix":"b18892cd97bcbe1e","entry":"evaluate_in_frame_for_mode","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh_reference.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh_reference.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b18892cd97bcbe1e"}},{"code_sha256_prefix":"2f6ba43cdb7d8232","entry":"l1_swsh_to_cart","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh_spin_head.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh_spin_head.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2f6ba43cdb7d8232"}},{"code_sha256_prefix":"ef4b3563a85b0412","entry":"safe_normalize","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/swsh.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/swsh.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ef4b3563a85b0412"}},{"code_sha256_prefix":"400e038d70d314e2","entry":"f2sh_batch_channel","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/efficient_utils.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/efficient_utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"400e038d70d314e2"}},{"code_sha256_prefix":"f631159ecaae3519","entry":"sh2f_batch_channel","repo":"divelab/SpinGTP","repo_kind":"found_in_text","path":"spingtp/spingtp/modules/efficient_utils.py","file_url":"https://github.com/divelab/SpinGTP/blob/HEAD/spingtp/spingtp/modules/efficient_utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f631159ecaae3519"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}