SilverSight/docs/research/ATTACK_PLAN.md
openresearch 67194f06da docs(research): attack plan — from suspect to receipt
Every result is suspect until receipt matches conjecture. 10 conjectures
(C1-C10) with predictions, receipts, and rejection criteria.

Phase 0: VERIFY FOUNDATION (blocking)
  C1: CRTSidonN compiles? → lake build (running)
  C2: HCMR suite compiles? → same build
  C7: HCMR self-loops measured? → search Research Stack

Phase 1: TEST THE PIPELINE (blocking)
  C3: Positional chirality varies? → run pipeline_core.py
  C4: Quaternion filter varies? → run pipeline_core.py --filter quat
  C5: Kelvin check filters? → count Kelvin-rejected

Phase 2: GPU (after Phase 1)
  C6: Cross-enrich shader runs? → compile on GPU
  C9: de Grey Hoffman bound? → run --full

Phase 3: ROBUSTNESS
  C8: q-profile robust? → 10+ label sets
  C10: Rossby ↔ QUBO? → correlation experiment

Rule: no conjecture accepted until receipt matches prediction.
Each failure narrows the theory to what's actually true.
2026-07-04 21:23:01 +00:00

153 lines
8.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Attack Plan: From Suspect to Receipt
**Status:** ACTIVE — every result suspect until receipt matches conjecture
**Date:** 2026-07-04
**Principle:** No claim is accepted without a receipt. Conjecture → prediction → measurement → receipt → accept or reject.
---
## The 13 Things We Actually Have
| # | What | Type | Receipt |
|---|------|------|---------|
| 1 | sidon_preserved_mod (2-moduli CRT Sidon) | Lean proof | CRTSidon.lean, 0 sorries, lake-built (verified on prior runs) |
| 2 | helical_coverage_74 (74 steps → 28 classes) | Lean proof | HopfFibration.lean, native_decide |
| 3 | ofChiralLabel_isUnit (ChiralLabel → unit quat) | Lean proof | HopfFibration.lean |
| 4 | ring_fastest (ring > SUBLEQ > AVX-512) | Lean proof | HCMR.lean, simple omega |
| 5 | Conservation law (program + residual ≥ K(data)) | Measured | 8 experiments, real bytes, weird_machine_conservation_law.md |
| 6 | Chiral invariance (flat CRT negation, odd L) | Proven + measured | 50K trials, ring automorphism proof |
| 7 | Hoffman gap=1 for unit-distance graphs | Measured | numpy eigenvalues, 6 graphs, hn_spectral_database.json |
| 8 | q-profile sweep (q>1 = 100% Sidon) | Measured | crt_qprofile_sweep.json, exact arithmetic |
| 9 | Photonic Sidon 18/18 PASS | Measured | Perceval SLOS, photonic_sidon_evidence.jsonl |
| 10 | pipeline_core.py runs (binary swaps) | Implemented | chiral_batch_pipeline.json, 256→64 |
| 11 | dna_braid.wgsl (GPU braid sort) | Implemented | Existing, tested |
| 12 | dna_radix_gpu.py (GPU QUBO sort) | Implemented | Existing, tested |
| 13 | BraidStateN.lean ChiralLabel/Rossby | Lean, compiles | Prior lake build passed |
---
## Conjectures to Validate (in priority order)
### C1: CRTSidonN.lean compiles
**Conjecture:** The n-moduli generalization is valid Lean that compiles.
**Prediction:** `lake build SilverSight.CRTSidonN` exits 0.
**Receipt needed:** Build log showing 0 errors.
**Status:** Lake build running (currently at ~73% of full Mathlib).
**Action:** Wait for build, check exit code.
### C2: HCMR suite compiles
**Conjecture:** The 5 new modules (HCMR, CacheSieve, Blitter6502OISC, YangMillsPerformance, WorkloadTestbench) compile with 2 sorries.
**Prediction:** `lake build` exits 0 with exactly 2 sorries (CacheSieve.evict_prefers_reset, YangMillsPerformance.compression_overhead_bounded).
**Receipt needed:** Build log + sorry count.
**Status:** Same lake build run.
**Action:** Check build output for error count and sorry locations.
### C3: Positional chiral pipeline produces non-uniform Sidon results
**Conjecture:** The positional chirality (permuting phases across strand positions) produces DIFFERENT Sidon results for different chiral configs.
**Prediction:** Not all 2^k configs have the same collision count (unlike flat negation, which was 100% uniform).
**Receipt needed:** pipeline_core.py output with `--filter crt` showing variance in collisions across configs.
**Status:** UNTESTED. The previous run used flat negation (chiral-invariant).
**Action:** Run pipeline_core.py with positional chirality on CPU compute. Compare collision counts across configs. If all identical → positional chirality is also invariant (conjecture FALSE). If variance exists → conjecture TRUE.
### C4: Quaternion product Sidon filter discriminates chiral configs
**Conjecture:** The QuaternionSidonFilter (Hamilton product of 1,i,j,k basis) produces different results for different chiral configs.
**Prediction:** Some configs pass (0 collisions), others fail (>0 collisions).
**Receipt needed:** pipeline_core.py output with `--filter quat` showing variance.
**Status:** UNTESTED. Previous DQ run gave 0/64 (all fail) — but that was with flat negation, not positional.
**Action:** Run with positional chirality + quaternion filter. If variance → TRUE. If uniform → FALSE.
### C5: COUCH Kelvin check actually filters
**Conjecture:** Configs with Rossby drift = 0 (Kelvin regime) exist in the 65K cross-enriched space and are rejected by COUCH.
**Prediction:** Some of the 65K configs have drift=0 (all-achiral or balanced left/right). These should be rejected.
**Receipt needed:** COUCH pass count < total, with some configs tagged "kelvin".
**Status:** UNTESTED.
**Action:** Run pipeline with k=8, count Kelvin-rejected configs.
### C6: Cross-enrichment (4^8 = 65K) runs on GPU
**Conjecture:** chiral_cross_enrich.wgsl compiles and runs, processing 65K configs.
**Prediction:** GPU dispatch completes, output buffer has 65K results.
**Receipt needed:** WGSL compilation + dispatch log + output JSON.
**Status:** UNTESTED. Shader is written but never compiled.
**Action:** Test on GPU pod (A40 or user's WebGPU node). Check compilation, then run.
### C7: HCMR self-loop probabilities are measured (not just defined)
**Conjecture:** The values 0.823, 0.885, 0.0 come from real EPYC KVM benchmarks.
**Prediction:** A benchmark log or measurement file exists with these values.
**Receipt needed:** Benchmark output showing these numbers.
**Status:** SUSPECT. The Lean module DEFINES them as constants. No measurement file found.
**Action:** Search Research Stack for benchmark logs. If none found relabel as "assumed" not "measured".
### C8: q-profile sweep result (q>1 = 100% Sidon) is robust
**Conjecture:** The q>1 preference holds across different label sets and moduli.
**Prediction:** Reproducing with different Sidon label sets gives the same q>1 preference.
**Receipt needed:** Re-run with 3+ different label sets, check q>1 rate.
**Status:** Measured once (3 label sets). Need more.
**Action:** Run q-profile sweep with 10+ random Sidon label sets.
### C9: Hoffman gap=1 is universal for unit-distance graphs
**Conjecture:** All unit-distance graphs have Hoffman gap=1 (not just Moser/Golomb).
**Prediction:** de Grey 1581 graph also has gap=1.
**Receipt needed:** Hoffman bound on de Grey 1581.
**Status:** UNTESTED (the --full flag never ran successfully).
**Action:** Run hn_spectral_database.py --full on GPU pod (needs numpy for 1581×1581 eigenvalues).
### C10: Rossby drift correlates with QUBO tractability
**Conjecture:** QUBO instances with Rossby drift=0 (Kelvin) are harder for QAOA.
**Prediction:** Kelvin-regime QUBO instances have flatter energy landscapes.
**Receipt needed:** QUBO energy landscape measurement + Rossby drift correlation.
**Status:** ENTIRELY SPECULATIVE. No experiment designed.
**Action:** Design experiment: generate random QUBO instances, compute Rossby drift from chiral encoding, measure energy landscape flatness, check correlation.
---
## Execution Order
```
Phase 0: VERIFY FOUNDATION (blocking)
C1: CRTSidonN compiles? → lake build (running)
C2: HCMR suite compiles? → same build
C7: HCMR self-loops measured? → search Research Stack
Phase 1: TEST THE PIPELINE (blocking)
C3: Positional chirality varies? → run pipeline_core.py --filter crt
C4: Quaternion filter varies? → run pipeline_core.py --filter quat
C5: Kelvin check filters? → count Kelvin-rejected in C3/C4 output
Phase 2: GPU (after Phase 1 confirms variance)
C6: Cross-enrich shader runs? → compile + dispatch on GPU
C9: de Grey Hoffman bound? → run --full on GPU
Phase 3: ROBUSTNESS (after Phase 2)
C8: q-profile robust? → 10+ label sets
C10: Rossby ↔ QUBO? → design + run correlation experiment
Phase 4: QUANTUM (after Phase 3 confirms C10)
QUBO/QAOA integration experiments
```
---
## Rule
Every conjecture has:
1. A PREDICTION (what we expect)
2. A RECEIPT needed (what would prove it)
3. A REJECTION criterion (what would disprove it)
No conjecture is accepted until the receipt matches the prediction.
If the receipt contradicts the prediction → conjecture is DEAD, update the theory.
If C3 fails (positional chirality is also invariant):
→ The entire chiral filtering story is dead
→ COUCH (geometric) is the only discriminating filter
→ Sidon filter is decorative, not functional
If C4 fails (quaternion filter is uniform):
→ The quaternion/S³ story is dead
→ Stick with CRT sums (proven, 2-moduli)
If C10 fails (Rossby ≠ QUBO tractability):
→ The QUBO/QAOA bridge is dead
→ The pipeline is a combinatorial filter, not a quantum pre-filter
Each failure narrows the theory to what's actually true.