|
| 1 | +# 3DGS 4x4 Cognitive-Shader Integration Plan — lance-graph |
| 2 | + |
| 3 | +## Goal |
| 4 | + |
| 5 | +Wire the ndarray-side 4x4 cognitive-shader SoA carrier into `lance-graph` orchestration and `cognitive-shader-driver` style runtime flows. |
| 6 | + |
| 7 | +This plan connects the numeric substrate to graph/query/runtime scheduling. |
| 8 | + |
| 9 | +## Core idea |
| 10 | + |
| 11 | +```text |
| 12 | +3DGS / raw-field kernel block |
| 13 | + -> |
| 14 | +4x4 carrier |
| 15 | + -> |
| 16 | +BindSpace-style SoA columns |
| 17 | + -> |
| 18 | +query / traversal / certification / render decision |
| 19 | +``` |
| 20 | + |
| 21 | +The 4x4 carrier is not only for geospatial rendering. It is the shared shape for cross-domain field blocks. |
| 22 | + |
| 23 | +## Boundary with ndarray |
| 24 | + |
| 25 | +`ndarray` owns: |
| 26 | + |
| 27 | +```text |
| 28 | +Mat4 / Sym4 / Block4 carriers |
| 29 | +3x3-to-4x4 lifts |
| 30 | +4-lane SoA kernels |
| 31 | +HHTL contraction/scoring |
| 32 | +pillar tests for lift invariants |
| 33 | +``` |
| 34 | + |
| 35 | +`lance-graph` owns: |
| 36 | + |
| 37 | +```text |
| 38 | +schema registration |
| 39 | +field source provenance |
| 40 | +graph relationships |
| 41 | +query planning |
| 42 | +runtime decision reports |
| 43 | +service endpoints |
| 44 | +cross-domain dispatch |
| 45 | +``` |
| 46 | + |
| 47 | +## BindSpace mapping |
| 48 | + |
| 49 | +Recommended logical columns: |
| 50 | + |
| 51 | +```text |
| 52 | +bind_source[] |
| 53 | +bind_state[] |
| 54 | +bind_signal[] |
| 55 | +bind_time[] |
| 56 | +bind_cert[] |
| 57 | +``` |
| 58 | + |
| 59 | +Domain interpretation examples: |
| 60 | + |
| 61 | +```text |
| 62 | +geospatial: |
| 63 | + source = tile / feature / local coordinate |
| 64 | + state = covariance / transform |
| 65 | + signal = opacity / color / confidence |
| 66 | + time = capture time / LOD phase / provenance |
| 67 | +
|
| 68 | +ultrasound: |
| 69 | + source = probe frame / local coordinate |
| 70 | + state = PSF covariance / registration state |
| 71 | + signal = amplitude / Doppler / frequency |
| 72 | + time = frame time / IMU pose / confidence |
| 73 | +
|
| 74 | +genetics: |
| 75 | + source = locus / motif coordinate |
| 76 | + state = transition / edit neighborhood |
| 77 | + signal = expression / abundance / confidence |
| 78 | + time = sample / lineage / provenance |
| 79 | +
|
| 80 | +neuronal: |
| 81 | + source = neuron / edge source |
| 82 | + state = synaptic weight / uncertainty |
| 83 | + signal = activation / firing proxy |
| 84 | + time = phase / layer / provenance |
| 85 | +``` |
| 86 | + |
| 87 | +## Schema additions |
| 88 | + |
| 89 | +Create cross-domain tables only after a fixture exists. Candidate tables: |
| 90 | + |
| 91 | +```text |
| 92 | +field_sources |
| 93 | +field_frames |
| 94 | +field_blocks |
| 95 | +field_block_lanes |
| 96 | +field_certificates |
| 97 | +field_relationships |
| 98 | +``` |
| 99 | + |
| 100 | +Do not force every geospatial table to use the generic field model. Use bridges. |
| 101 | + |
| 102 | +## Runtime dispatch |
| 103 | + |
| 104 | +```text |
| 105 | +query or traversal request |
| 106 | + -> identify field kind |
| 107 | + -> load block metadata |
| 108 | + -> construct ndarray Block4 view |
| 109 | + -> call scoring/certification kernel |
| 110 | + -> convert result to decision report |
| 111 | +``` |
| 112 | + |
| 113 | +## Certification aggregation |
| 114 | + |
| 115 | +A 4x4 block certificate should support: |
| 116 | + |
| 117 | +```text |
| 118 | +domain kind |
| 119 | +block id |
| 120 | +input lane summary |
| 121 | +kernel version |
| 122 | +error terms |
| 123 | +confidence |
| 124 | +reason codes |
| 125 | +``` |
| 126 | + |
| 127 | +`lance-graph` aggregates these into domain-specific reports. |
| 128 | + |
| 129 | +## Acceptance criteria |
| 130 | + |
| 131 | +- `lance-graph` can represent a 4x4 field block without knowing renderer internals. |
| 132 | +- `cognitive-shader-driver` style SoA concepts map to durable schema names. |
| 133 | +- Geospatial 3DGS remains compatible with 3D Tiles and does not become dependent on experimental domains. |
| 134 | +- Cross-domain blocks can share reason codes and certificate summaries. |
| 135 | +- The first implementation can be tested with a tiny synthetic fixture. |
0 commit comments