Use when you have implemented an equivariant model and need to verify it correctly respects the intended symmetries. Invoke when user mentions testing model equivariance, debugging symmetry bugs, verifying implementation correctness, checking if model is actually equivariant, or diagnosing why equivariant model isn't working. Provides verification tests and debugging guidance.
View on GitHublyndonkl/claude
thinking-frameworks-skills
January 24, 2026
Select agents to install to:
npx add-skill https://github.com/lyndonkl/claude/blob/main/skills/model-equivariance-auditor/SKILL.md -a claude-code --skill model-equivariance-auditorInstallation paths:
.claude/skills/model-equivariance-auditor/# Model Equivariance Auditor ## What Is It? This skill helps you **verify that your implemented model correctly respects its intended symmetries**. Even with equivariant libraries, implementation bugs can break equivariance. This skill provides systematic verification tests and debugging strategies. **Why audit?** A model that claims equivariance but isn't will train poorly and give inconsistent predictions. Catching these bugs early saves debugging time. ## Workflow Copy this checklist and track your progress: ``` Equivariance Audit Progress: - [ ] Step 1: Gather model and symmetry specification - [ ] Step 2: Run numerical equivariance tests - [ ] Step 3: Test individual layers - [ ] Step 4: Check gradient equivariance - [ ] Step 5: Identify and diagnose failures - [ ] Step 6: Document audit results ``` **Step 1: Gather model and symmetry specification** Collect: the implemented model, the intended symmetry group, whether each output should be invariant or equivariant, the transformation functions for input and output spaces. Review the architecture specification from design phase. Clarify ambiguities with user before testing. **Step 2: Run numerical equivariance tests** Execute end-to-end equivariance tests using [Test Implementation](#test-implementation). For invariance: verify ||f(T(x)) - f(x)|| < ε. For equivariance: verify ||f(T(x)) - T'(f(x))|| < ε. Use multiple random inputs and transformations. Record error statistics. See [Error Interpretation](#error-interpretation) for thresholds. For ready-to-use test code, see [Test Code Templates](./resources/test-templates.md). **Step 3: Test individual layers** If end-to-end test fails, isolate the problem by testing layers individually. For each layer: freeze other layers, test equivariance of that layer alone. This identifies which layer breaks equivariance. Use [Layer-wise Testing](#layer-wise-testing) protocol. Check nonlinearities, normalizations, and custom operations especially carefully. **Step