Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .claude/board/LATEST_STATE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 2026-10-14 — main after #1550 (merged)

- **On `main` (#1550, merged `5cbb3fd5`):** D-HOLO H1/H5/H6 measured (examples only, no production change): symbolic interval closure cheapest; K-branch evaluation flat in K but orientation-dependent; coordinate-native prefix counting wins only once its build is amortized. Plan `d-holo-address-indexed-algebra-v1.md`; entry `2026-10-14-d-holo-falsifiers.md`.

## 2026-10-14 — main after #1548 (merged)

- **On `main` (#1548, merged `e7c5f790`):** D-NALP-4, exact truth codes for deduction, induction and abduction in `causal_edge::isa::truth::code`, packed by `execute` and `syllogize` (0 of 2³² rows off an independent oracle). Revision and synthesis keep the `f32` path. Board: entries `2026-10-14-isa-truth-exact-codes.md` and `2026-10-14-revision-layer-invariants.md` (Gadamer invariants G1–G7, test-pinned; Rubikon R1–R4, specified, tests open).
Expand Down
7 changes: 7 additions & 0 deletions .claude/board/PR_ARC_INVENTORY.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
## 2026-10-14 — lance-graph PR #1550 (merged `5cbb3fd5`, branch `ccr-9f3b8075-74u47l-holo`, head `91ca4359`, 10 commits) — D-HOLO: falsifiers H1, H5, H6 for the address-indexed algebra

- **Added:** plan `d-holo-address-indexed-algebra-v1.md` (pre-registered before any probe); three examples in `lance-graph-mask-risc`: `holo_k_branch_probe` (H1), `holo_coord_probe` (H5), `holo_interval_probe` (H6), each with row-oracle tests. Board entry `2026-10-14-d-holo-falsifiers.md`; rows D-HOLO-H1/H5/H6 and the pre-registrations H6b/H8/H9. Also the owed #1548 board reconciliation.
- **Locked:** v4 only, tier printed, input construction and lowering charged. H6 HOLDS (the symbolic interval arm cheapest in all 24 cells). H1 MIXED: K-branch evaluation is flat in K but beats gate-once only when coverage is stored as row words and the gate is narrow. H5 Q1 holds at N = 100 (31–37×) and FAILS at N = 1 (1.3–1.4×, the occupancy build dominates); the plane inverse is refuted on Q3b.
- **Deferred / open:** H6b, H8, H9 not run; no production terminal selector; D-HOLO stays separate from D-ORACLE-0 (#1549), cross-referenced only.
- **Confidence:** medium; disable runs red for every oracle test, but run-to-run noise on the VM was about 40 %, so differences under 2× are reported as undecided.

## 2026-10-14 — lance-graph PR #1548 (merged `e7c5f790`, branch `ccr-9f3b8075-74u47l-truth-exact`, head `0e15cff7`, 4 commits) — D-NALP-4: exact truth codes in `causal_edge::isa::truth`; revision-layer invariants

- **Added:** `truth::code::{deduction, induction, abduction}` over `u8` codes (integer arithmetic, one half-up rounding); `Opcode::truth_code` routes the three rules there, and `execute` / `syllogize` pack its result. `tests/ce64_truth_exact.rs` (8 tests) against an oracle written independently of the crate (`tests/common/truth_law.rs`); `examples/truth_exact_probe.rs` checks all 2³² inputs per law. Board entry `2026-10-14-revision-layer-invariants.md`: Gadamer gate invariants G1–G7 and the Rubikon goal-revision specifications R1–R4.
Expand Down
4 changes: 3 additions & 1 deletion .claude/board/STATUS_BOARD.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@ Plan: `.claude/plans/relalg-v1.md`. Crate: `crates/lance-graph-relalg` (own work
| **D-HOLO-H1** | K-branch evaluation of a coordinate-aligned Boolean constraint (plan `d-holo-address-indexed-algebra-v1`) | Measured 2026-10-14: MIXED, C flat in K; beats gate-once only with row-stored coverage and a narrow gate | == row oracle; total cost at K = 64 ≤ 2× K = 1 and ≤ 0.5× best baseline |
| **D-HOLO-H5** | Coordinate-native vs coordinate-crossing: prefix count, perspectives, reverse `memberOf` with inverse build/update cost | Measured 2026-10-14, corrected after review: Q1 CONFIRMED at N = 100 (31–37×), FAILS at N = 1 (1.3–1.4×, the occupancy build dominates); Q2 passes only with row words stored; plane inverse refuted on Q3b (break-even > 1,000) | == row oracle; Range ≥ 5× sweep; break-even N reported; permuted-tile run disagrees |
| **D-HOLO-H6** | Closure of address restrictions as interval sets vs masks vs value sweep | Measured 2026-10-14: HOLDS; symbolic cheapest in all 24 cells | == row oracle; symbolic cost flat in area, linear in interval count |
| **D-HOLO-H6b** | Product normal form vs Morton intervals vs dense mask vs hybrid on the Context × Operation reading of the `u8:u8` tile; construction, normalization, ∩/∪/¬, emptiness, equality, bytes, reuse at N = 1..1,000 | Queued (pre-registered, not run) | == row oracle; structured patterns ≤ 0.5× dense at N = 100; hybrid ≤ 1.25× dense on adversarial patterns |
| **D-HOLO-H6b** | Product normal form vs Morton intervals vs dense mask vs hybrid on the Context × Operation reading of the `u8:u8` tile; construction, normalization, ∩/∪/¬, emptiness, equality, bytes, reuse at N = 1..1,000 | Queued (pre-registered, not run; amended with a connectedness column and a doughnut fixture) | == row oracle; structured patterns ≤ 0.5× dense at N = 100; hybrid ≤ 1.25× dense on adversarial patterns; component count vs density as predictor reported |
| **D-HOLO-H8** | One formula in three domains: logical algebra, physical realization and semantic leakage compared separately | Queued (pre-registered, not run) | no semantic leakage; families grow only with representation and value algebra |
| **D-HOLO-H9** | Relational emptiness decided symbolically (empty operand, disjoint domains, contradictory constraints) vs by fold | Queued (pre-registered, not run) | zero false empties; fraction decided symbolically reported |
| **D-HOLO-H11** | Stacked logic: a chain of NAL polyfill bricks at depth 1–8 composed before one evaluation | Queued (pre-registered, not run; after H6b) | answers no single brick gives, == oracle; cost below d separate runs at d = 4; no confidence inflation, gate disable must inflate |
| **D-HOLO-H12** | Semantic map of inference functions across OpenNARS, ONA, the NAL polyfill (and a MeTTa NAL if pinnable) | Queued (pre-registered, not run) | last system adds zero nodes in both orders; polyfill gaps named; differences classified as distinction or defect |
| **D-RA-1** | `Rel` + `normalize` + `symbolic` + R2IL lowering | Shipped #1546 `c21bd165` (11 tests, 11 disable runs red; four comparisons on one lane 8 → 2 ops; 70/2,000 small descriptions refused as written, all run rewritten) | == row oracle over 400 generated descriptions × 5 measures |
| **D-RA-2** | Rules into the contract set IR (D-CMR-1/-6); relalg keeps only lowering or is deleted | Queued (maintainer decision) | relalg tests pass unchanged against the contract IR |
| **D-RA-3** | Datalog rules as algebra values; names are labels resolved through the label codebook, never strings in a rule | Queued (after D-RA-2) | codebook-built rules == hand-written `Rel`; unknown label refused at resolution |
Expand Down
101 changes: 97 additions & 4 deletions .claude/plans/d-holo-address-indexed-algebra-v1.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# D-HOLO — address-indexed algebra: falsifiers H1, H5, H6 (v1)

**Status:** MEASURED 2026-10-14 (H1, H5, H6); H6b, H8, H9 PRE-REGISTERED, not
run. The pre-registration below is unchanged; results are in § Results
**Status:** MEASURED 2026-10-14 (H1, H5, H6); H6b, H8, H9, H11, H12
PRE-REGISTERED, not run. The pre-registration below is unchanged; results are in § Results
(2026-10-14), the next falsifiers in § Next falsifiers.

## Overview
Expand Down Expand Up @@ -34,6 +34,11 @@ is run.
- [x] D-HOLO-H5: coordinate-native vs coordinate-crossing probe, same
- [x] D-HOLO-H6: closure of address restrictions probe, same
- [x] Results section, board entry, status rows
- [ ] D-HOLO-H6b: normal forms on the Context × Operation tile (with the connectedness column)
- [ ] D-HOLO-H8: semantic diversity does not add instruction families
- [ ] D-HOLO-H9: relational emptiness without a fold
- [ ] D-HOLO-H11: stacked logic (pre-registered after H6b; runs after it)
- [ ] D-HOLO-H12: semantic map of inference functions across NARS systems

## Accounting rules (apply to every falsifier)

Expand Down Expand Up @@ -533,6 +538,21 @@ distinct mask per context).
- Thresholds (group count, interval count, density) where each representation
stops being the cheapest are reported, with every counterexample.

**Amendment before any run (2026-10-14): connectedness as a measured column.**
DECISION (operator, 2026-10-14). BASIS: Haspelmath 2003, "The Geometry of
Grammatical Meaning": a gram covers a connected region of a semantic map; a
1-D map makes every region an interval (Fig. 8.19), an implicational
hierarchy makes it a prefix (Fig. 8.20), and the map can have cycles
(Fig. 8.12) and non-connected "doughnuts" (Turkish present, p. 236).
- For every pattern, also report its 4-connected component count on the
256 × 256 grid and its Morton interval count.
- Add one fixture: a doughnut (a filled rectangle with an interior hole).
- Report whether component count predicts the cheapest representation better
than density does (rank agreement of each predictor with the winner, over
all patterns).
- Connectedness is a selector input to be tested, never a constraint: no
representation may assume it, and the doughnut must still match the oracle.

### H8 — semantic diversity does not add instruction families

- One fixed formula (a restriction ∧ a forward hop ∧ a negation, then count),
Expand Down Expand Up @@ -572,7 +592,80 @@ route.
empty symbolically while the fold finds a row (zero false empties). A
"cannot decide" answer is always allowed; it only costs a fold.

### H11 — stacked logic answers more without inflating confidence

PRE-REGISTERED 2026-10-14, NOT RUN; runs after H6b. DECISION (operator,
2026-10-14). SCOPE: examples only, existing ops; no new opcode, executor or
NARS-specific path (the bet is that stacking needs none). BASIS: the operator's
bet that "thinking becomes smarter through logic stacked", read as reusable,
replayable arithmetic over deterministic addresses.

**Setup.** `$var` composed algebraically (a chain of bricks at depth
d = 1, 2, 4, 8) before one evaluation, `$var.think()`. Bricks are the existing
NAL polyfill methods (D-NALP, `.claude/plans/nal-polyfill-v1.md`) lowered to
mask-risc / Quack; H6b's measured normal-form costs choose the representation
at the terminal.

**Three criteria, each with its own falsifier.**
- **Smarter:** a depth-d chain answers a query set that no single brick
answers, and every answer matches the oracle (row oracle; for truth values,
the pinned OpenNARS for Research / ONA fixtures of D-NAL-AUDIT-0). Fails if
the chain adds no answer a single brick lacks, or any answer differs from the
oracle.
- **Cheap stacking:** total cost (construction of every input charged,
composition, the one terminal) at depth d is below d independent evaluations
of the bricks, and cost per brick falls as d grows. Fails if the composed
form costs at least as much as running the bricks separately at d = 4.
Same accounting rules as H1/H5/H6: v4 only, tier printed, median of 11, ns.
- **No confidence inflation:** stacking adds structure, not evidence. The
confidence of a stacked conclusion never exceeds what the truth functions
give for its premises, and two derivation paths sharing an evidential base
are not revised together (NAL-1 stamp rule, `nal_inventory.tsv`
`NAL1.evidential_base_stamp`). The Gadamer gate (G1–G7) must be
load-bearing: a disable run that removes the gate must produce an inflated
confidence on the fixture, or the test is vacuous.

**Not claimed.** That deeper chains are always better: a depth where the
chain stops adding answers is a result, not a failure.

### H12 — a semantic map of inference functions across NARS systems

PRE-REGISTERED 2026-10-14, NOT RUN. DECISION (operator, 2026-10-14). SCOPE:
external systems run outside the build at pinned commits, as oracles only (the
D-NAL-AUDIT-0 fences: no NARS clone, no CE64 migration, no schema migration).
BASIS: Haspelmath's selection and stability rules, applied to reasoning
systems instead of languages.

**Method.**
- Systems: OpenNARS for Research and ONA (pinned in D-NAL-AUDIT-0), our NAL
polyfill, and a MeTTa NAL implementation if one can be pinned (otherwise the
map is built from three systems and says so).
- Corpus: the D-NAL-AUDIT-0 fixtures plus `nal_inventory.tsv`'s falsifier
column, run on every system.
- Selection rule: an inference function becomes a node if at least two systems
give different results on it (a different truth value beyond the u8
allowance, a different derived term, or one derives and the other does not).
Functions on which all systems agree are recorded but do not split a node.
- Each system's coverage is a region of the map. Report whether each region is
connected.

**Measured.** Nodes added by each additional system, in a fixed order and in
reverse order; the nodes our polyfill does not cover; disconnected regions.

**Decision.**
- Assimilation is complete when the last system added contributes zero new
nodes, in both orders, and our polyfill covers every node or lists the
missing ones as named gaps.
- A difference is classified before it counts as a node: spec-conformant
disagreement (a real distinction), or a defect in one system (reported, not a
node). D-NAL-AUDIT-0 already found the engines disagree with each other and
with Wang's 2009 spec on compound-term confidence; that is the first case to
classify.
- Fails, as a method: if most nodes are introduced by only one system, the map
measures implementation noise, not a shared space of functions.

### Open beyond these

H11, the end-to-end test: `$var` composed algebraically before `$var.think()`,
with H6b's measured normal-form costs as an input. Not registered yet.
H13 (attention-limited expansion vs full expansion, "saccades") and an
inertness test for every proposed meta-awareness level stay unregistered: H13
needs a named focus signal, and the levels need a stated meaning.
Loading