Skip to content

validate: f32 engine on real tables — attractor collapse persists F32 tables don't fix collapse. Root cause: ReLU kills inhibition. Qwen3-VL: 40% diversity, entropy +1.0% (diffuses) Jina-v5: 20% diversity, entropy +3.3% (diffuses) Reranker: 40% diversity, entropy +2.1% (diffuses) Even with f32 precision, the MatVec cycle converges to dominant eigenvector because ReLU(negative) = 0 removes all inhibition. Next: remove ReLU, use softmax normalization instead, or use signed accumulation without clamping negatives to zero. https://claude.ai/code/session_019RzHP8tpJu55ESTxhfUy1A#141

Merged
AdaWorldAPI merged 4 commits into
mainfrom
claude/risc-thought-engine-TCZw7
Apr 6, 2026

Conversation

@AdaWorldAPI
Copy link
Copy Markdown
Owner

No description provided.

claude added 4 commits April 6, 2026 17:37
FINDINGS (BF16 tables, 256 centroids, 20 queries × 3 models):
  - Thinking INCREASES entropy (diffuses, doesn't focus)
  - Top-5 overlap with plain cosine: 6-24% (nearly uncorrelated)
  - Kendall tau: 0.01-0.14 (no rank agreement)
  - 60x slower than one-shot cosine lookup

ROOT CAUSE: MatVec with positive-only cosines = power iteration
→ converges to dominant eigenvector regardless of input
→ same attractor wins for every query = attractor collapse

The iterative cycle needs real inhibition (signed tables with
negative values) or it's just expensive diffusion.

Lane calibration test also included:
  BF16: Spearman ρ=0.9999, Pearson r=0.9999 (PERFECT)
  i8 direct: ρ=0.997, r=0.999 (EXCELLENT)
  u8 CDF: ρ=0.999, r=0.80 (RANK ok, VALUES destroyed)
  γ+φ: ρ=1.000 vs CDF (IDENTICAL ordering, γ+φ is a no-op)

https://claude.ai/code/session_019RzHP8tpJu55ESTxhfUy1A
Stage 0: Foundations (DONE) — empirical results, what works/doesn't
Stage 1: Fix table (f32 primary, signed i8 from real cosines)
Stage 2: Contrastive table learning (forward pass → table update)
Stage 3: SPO 2³ causal certificates (8 octants × 28 layers)
Stage 4: L1-L27 gate reward shaping (epiphany detection)
Stage 5: L4 holographic memory (bundle fingerprint + replay)
Stage 6: NARS reasoning (truth values + gap detection)
Stage 7: OSINT pipeline (spider-rs + Reader-LM + embedding)
Stage 8: 4096×16 branch graph (sparse, 250× faster than dense)

Critical path: Stage 1→2→3→4 (10-15 days)
4 parallel tracks: Core Engine, Causal Reasoning, Memory, OSINT
Risk register + metrics for each stage.

https://claude.ai/code/session_019RzHP8tpJu55ESTxhfUy1A
…sts pass)

Stage 1A: F32ThinkingEngine (f32_engine.rs)
  - Full-precision distance table, NO floor heuristic
  - Signed MatVec: accumulate → abs-normalize → ReLU → re-normalize
  - Temperature scaling: 1/T before normalization
  - from_codebook_f32(): compute pairwise cosine directly
  - 7 tests: roundtrip, convergence, diverse peaks, reset, top-k, temperature

Stage 1B: Signed engine wiring fix (signed_engine.rs, builder.rs)
  - from_unsigned() marked DEPRECATED (CDF rank shift = fake sign)
  - builder.raw_cosines() → from_f32_cosines() (real cosine signs)
  - BuiltEngine::F32 variant in builder enum

Stage 2A: ContrastiveLearner (contrastive_learner.rs)
  - Online table learning: table[i][j] += α × (real_cos - table[i][j])
  - Fan-out: 1 forward pass → K neighbor updates
  - Symmetry maintained (both [i][j] and [j][i])
  - LearnerStats tracking (update_count, MAE, alpha)
  - 4 tests: pair update, monotonic MAE decrease, symmetry, fan-out

Also fixed pre-existing test compilation errors:
  - sensor.rs: CODEBOOK_SIZE import in test module
  - role_tables.rs: StackedN + f32_to_bf16 import in test helper

310 tests pass, 0 failures.

https://claude.ai/code/session_019RzHP8tpJu55ESTxhfUy1A
F32 tables don't fix collapse. Root cause: ReLU kills inhibition.
  Qwen3-VL: 40% diversity, entropy +1.0% (diffuses)
  Jina-v5:  20% diversity, entropy +3.3% (diffuses)
  Reranker:  40% diversity, entropy +2.1% (diffuses)

Even with f32 precision, the MatVec cycle converges to dominant
eigenvector because ReLU(negative) = 0 removes all inhibition.

Next: remove ReLU, use softmax normalization instead, or use
signed accumulation without clamping negatives to zero.

https://claude.ai/code/session_019RzHP8tpJu55ESTxhfUy1A
@AdaWorldAPI AdaWorldAPI merged commit 01f97b0 into main Apr 6, 2026
AdaWorldAPI pushed a commit that referenced this pull request May 13, 2026
…ed in

ndarray master moved blake3 behind the hpc-extras feature gate as part
of the i686/no_std unblock work (AdaWorldAPI/ndarray PR #141). lance-graph
specifies default-features = false on its ndarray dep and previously only
opted into 'std', which left blake3 unresolved at workspace build time
even though src/hpc/{plane,seal,merkle_tree,vsa}.rs use it unconditionally.

Adding 'hpc-extras' to the feature list restores the hash dep. lance-graph
already uses every other HPC module from the fork (Fingerprint, CAM-PQ,
CLAM, BLAS, ZeckF64), so opting into hpc-extras is the intended posture
for this consumer.

Fixes the linux-build, test, and test-with-coverage failures on PR #364.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants