Skip to content

plans: scratch mindmap for NaN exclusion in masked statistics - #379

Merged
AdaWorldAPI merged 2 commits into
masterfrom
ccr-45a41fb4-0j3i0l
Oct 27, 2026
Merged

AdaWorldAPI merged 2 commits into
masterfrom
ccr-45a41fb4-0j3i0l

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

One scratch document, for later examination: .claude/plans/nan-exclusion-mindmap-scratch.md. No code; nothing in it is built, measured or decided.

It is a follow-up to #378. A masked statistic (n, mean, variance) can meet a NaN, and the failure to avoid is dilution: the sums and the sample count stop describing the same rows, with no signal that it happened.

The document contains:

  • Mindmap (Mermaid): purposes, NaN policies, carriers, the determinism requirements, and the players involved.
  • Purposes:
    • P1 missing value: skip it;
    • P2 computation error: surface it;
    • P3 replay: same bits on every realization;
    • P4 audit: report what was excluded;
    • P5 cost: stay a mask fold.
  • Payoff table, NaN policy by purpose:
    • Skip and Propagate are each best for one NaN meaning, and both are honest.
    • The two "keep n" policies (replace with 0, or drop from the sum but keep n) are never best on any purpose. They are only cheaper to write.
  • Game-theory reading: the dilution policy is the locally cheapest strategy, and its cost lands silently on whoever reads the variance later. Four design moves change those payoffs:
    • a policy-free kernel;
    • making the honest options the cheapest to write;
    • reporting n_excluded;
    • deriving n from the same mask that selects the sums, so dilution cannot be expressed through the API.
  • Carrier comparison: raw power sums, against mergeable (n, mean, M2), against compensated sums.
  • Determinism ladder: single-rounding mul_add is done (simd: mul_add rounds once on every backend (wasm emulation, exact scalar FMA, no libm) #374/simd(wasm): certify the F64x8::mul_add domain, keep exact-product lanes in the vector #378); a fixed summation order and a fixed merge tree are still open.
  • Candidate steps S1–S4, and open questions for the operator.

Generated by Claude Code

Purposes (missing value, computation error, replay, audit, cost) against the
payoffs of each NaN policy and float carrier, read as a small game: the
dilution policies are locally cheapest and never best on any purpose. Design
moves that change the payoffs, a determinism ladder, candidate steps and open
questions. Nothing is built or decided.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMPh2Seh2WLccCksAdY
@coderabbitai

coderabbitai Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: fa106b29-af72-487f-bbb6-bba069224344
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review October 27, 2026 11:50
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-27T11:51:37.945077Z f0f9f32 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

The /5plus3 premise gate found that 'NaN' names two concepts (missing value,
whose home is lance-graph Quack's binder-owned validity plane, and a
computation error), and 'determinism' names two properties (D-WFL-DET's mask
determinism vs float-fold determinism). Dilution is already impossible in
power_sums_fold: n and sum are incremented in one closure per selected row.
Council halted before Phase 1; three re-asked questions recorded with owners.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMPh2Seh2WLccCksAdY
@AdaWorldAPI
AdaWorldAPI merged commit f063bd4 into master Oct 27, 2026
21 checks passed
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