# Icosahedral Congruence-Robust Strain Sensor ## Implementation `experiment.py` implements: - six normalized icosahedral axis representatives; - Frobenius-isometric symmetric vectorization `(S11,S22,S33,sqrt(2)S12,sqrt(2)S13,sqrt(2)S23)`; - transformed projectors `P_i(F)=(Fv_i)(Fv_i)^T`; - ridge least-squares reconstruction and optional trace-free projection; - comparisons against coordinate directions and a fixed random six-direction frame. Run with: ```bash /home/maxwelhelp/main/bin/python3 experiment.py ``` The run writes `results.json` and prints the same results to stdout. ## Mechanism predictions and observations All results use fixed seed 1468, random trace-free tensors, and determinant-one deformations generated as `F=expm(H)` for trace-free symmetric `H`. 1. **Identity spanning prediction:** the six icosahedral projectors should have rank 6, while coordinate projectors should have rank 3. Observed ranks were 6 and 3. 2. **Congruence rank prediction:** because congruence by invertible `F` is an invertible map on `Sym(3)`, the icosahedral frame should remain rank 6 and the coordinate frame should remain rank 3 for every deformation. Over anisotropy strengths `0, 0.5, 1, 1.5, 2, 2.5, 3`, observed icosahedral ranks were `[6,6,6,6,6,6,6]` and coordinate ranks were `[3,3,3,3,3,3,3]`. 3. **Conditioning/noise prediction:** reconstruction error should increase as the smallest singular value decreases. With measurement noise standard deviation `1e-3`, 100 trials per strength, the icosahedral relative error increased from `0.00127` at strength 0 to `0.01612` at strength 3 (12.68x), while inverse smallest singular value increased from `1.118` to `22.456` (20.09x). Noiseless maximum relative reconstruction error was `1.78e-9` for the icosahedral frame and `8.47e-7` for the random six-direction frame (ridge disabled for this check). ## Baseline comparison The random six-direction frame was a full-rank six-channel comparator. At anisotropy 0, mean noisy relative errors were 0.00127 (icosahedral) versus 0.01004 (random); at anisotropy 3 they were 0.01612 versus 0.16886. The coordinate-direction baseline is structurally non-identifiable for general symmetric tensors and had errors around 0.60--0.75 because its off-diagonal components cannot be reconstructed. Thus the proposed frame shows a clear numerical signal: full identifiability, rank preservation, and substantially better noise robustness than this fixed random-frame baseline in this toy sweep. This validates the mathematical mechanism, not the claimed end-to-end graph-fluid improvement. ## Limitations The planned 3D graph neural fluid predictor, equal-parameter rollout comparison, learned directions, and training/rollout stability were not implemented. Conditioning under arbitrary nonsymmetric SL(3) matrices was not swept separately (the tested deformations were symmetric volume-preserving exponentials), although the rank argument applies to every invertible `F`. The coordinate baseline has only three unique channels, intentionally exposing its identifiability failure rather than matching six channel count with duplicated axes.