openresearch
|
e61ee5cfdc
|
fix: COUCH gate — Kelvin wave regime check
The COUCH gate now has TWO stages (matching BraidStateN.lean):
Stage A — Rossby/Kelvin regime:
- Rossby drift ≠ 0 → Rossby regime (dispersive, active mixing) → PASS
- Rossby drift = 0 → Kelvin regime (boundary-trapped, NO mixing) → FAIL
The Kelvin regime is the degenerate case: perfectly balanced chiral
distribution. Energy dissipation rate is ZERO (proven in
rossby_energy_dissipation_rate: requires isActive=true).
kelvinLabels8 (all achiral_stable) → drift=0 → Kelvin → FAIL
rossbyLabels8 (alternating left/right) → drift≠0 → Rossby → PASS
This is the 'q=1 degenerate' / 'rational surface' / 'stuck' case.
Stage B — scarred contention:
- scarred_count → self_loop → threshold (unchanged)
A config passes COUCH iff BOTH stages pass.
Updated both pipeline_core.py (Python) and chiral_cross_enrich.wgsl
(GPU shader) with the Kelvin check.
|
2026-07-04 21:09:03 +00:00 |
|
openresearch
|
3cbf5a2560
|
feat(gpu): cross-enriched chiral Sidon filter — 4^8=65K configs on GPU
Cross-enrichment: each strand can have MULTIPLE chiral types
contributing simultaneously. With 4 ChiralLabel types × 8 strands
= 4^8 = 65,536 configurations (vs 2^8=256 from binary swaps).
This is why GPU is needed: 65K configs × pairwise quaternion product
checks = millions of operations.
WGSL shader uses:
- ChiralLabel types from BraidStateN.lean (achiral/scarred/left/right)
- Rossby drift weights (left=+65536, right=-65536, scarred=+32768, achiral=0)
- Quaternion basis from HopfFibration.lean (1,i,j,k)
- Golden angle winding mod 28 (HopfFibration.lean)
- COUCH gate as cheap pre-filter (scarred count → self-loop → threshold)
Pipeline: COUCH filter (cheap, O(1)) → Quaternion Sidon filter
(expensive, O(n²)) — only COUCH-passing configs reach the Sidon check.
256 threads/workgroup × 256 workgroups = 65,536 threads = all configs
checked in ONE dispatch. Zero-copy via existing dna_radix_gpu.py
infrastructure.
|
2026-07-04 21:04:21 +00:00 |
|