You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tracking / epic. Consolidates the framework requirements the full synaptic neural net (RBS-SNN) — and its human-language render/interface (RBS-LM) — must satisfy. These accreted across the F167→F340 arc; this issue gathers them in one place so the build can be checked against the spec. Per project discipline this is framework-reading + understanding-not-curing, defensive scope; open/closed + label state is the maintainer's call (recorded, not driven).
The two-branch identity (the frame everything below serves)
RBS-SNN = the agnostic substrate (synaptic-first, F311) — the storage / environment-communication / memory substrate for all organisms; language is not its defining feature.
These are two modes of one instrument, not two codebases (see R1/R2).
R1 — Klein-4-native instrument (the load-bearing one)
The RBS-HDC instrument was designed early as a bipolar bundle (one Z₂ / γ₅ axis). Everything since says the substrate is Klein-4 = Z₂×Z₂, four sectors (γ₅ × iω₇). The full SNN must be Klein-4-native, not a one-axis shadow.
Instrument carries the full 4-quad (γ₅±, iω₇±) structure natively (so klein4_bind/klein4_* act without a lift).
Grounded by the corpus, not assumed: F200 (the RBS-NN store already tags into Klein-4's 4 deterministically-orthogonal sectors — 12/12 off-diagonal pairs at sim 0.0 — and Klein-4 beats triality on retrieval contrast 1.93 vs 1.50); F158/F154 (bi-axial touches all 4 sector-projections at once → 4× capacity at matched D); F130/F132/F135 (substrate-native = all 4 coexist).
Precision (F200 null): the store wants the order-2 Klein-4 specifically — not triality/order-3 (decorative-to-degenerate for storage; no order-3 element in Z₂×Z₂). 28D/triality stays load-bearing for the algebra (F192/F196/F197), not the store.
R2 — "keep both" is the (4+3) fiber bundle, not a fork
Bipolar and Klein-4 are one instrument: bipolar = the base-projectionπ(E); Klein-4-native = the total spaceE; the fiber is the spatially-absent chirality.
The split is the quaternionic Hopf fibration S³↪S⁷→S⁴, 7 = 4 (base) + 3 (fiber) (F124; same decomposition as F123 14=4+3+7 and the 28 = 14⊕7⊕7 so(8) read-out). Re-reads F135 as total-space-vs-base-projection.
Mode = which axes are lit: gen-1 LLM loading → bipolar projection (the source is a single-sector shadow; can't recover quadrants it never had); native (RBS-SNN) → full 4-quad. Keep-both is automatic because a bundle holds base+fiber together.
Verify before lodging (prime-first, no-leaning): the rung-to-rung projection chain 28 → 7=(4+3) → Klein-4(4) → bipolar(γ₅) against F124/F128/F196/F200 — these are different rungs of the nesting (F196 "chirality is nested"); do not assert a bijection unchecked.
So RBS-LM kernels-from-catalogs — and anyone's catalog of other texts — show up as DSL entries. srmech already ships ~80% (encode_loe_content, srmech.rbs_lm.encode_{word_k4,bigram_l1,skeleton_l2,sentence_l3}, RBSHDCInstrument, amsc.catalog.{list,run}_catalog_chain, use_local_kernel); the gap is unification + 2 precursors (the DSL op-registry and the AMSC catalog-chain registry are currently disjoint — verified rc21).
U2 (cheapest, highest leverage) — register the working encode_loe_content + the rbs_lm.encode_* stack as DSL cascade-ops (one catalog-TOML descriptor each) → one-line per-catalog kernel chains.
U1 — ship tokenize(text,…) + cooccurrence_edges(tokens, window=,…) (Class-L precursor) so the K1 presence-kernel is a pure-TOML composite end-to-end (and retires the hand-rolled Counter() co-occurrence the STOP-list flags).
Byte-level graphemic robustness for typos/dyslexia — byte-HDC graded similarity puts errors near truth (vs BPE's cliff); K1 bag is perfect on transpositions, K3 degrades gracefully (extends R-RBS-LM-25, a fresh lens).
Class-C glyph-chirality binding for b/d, p/q mirror confusions (a γ₅ flip — byte-identity can't see the mirror; needs the chirality axis from R1). Note: this is the same realization as R1 — you can't catch a chirality error if the chirality axis doesn't exist in the representation.
Phonetic errors (enuff/enough) are out of scope for byte-level — flag as a separate sound-level render.
R6 — multi-render corpus base (the truth-filter's independence)
Currently HOLDING on the srmech-dev cycle in progress; this issue is the spec to build against when it returns. Recorded per [[feedback_create_upstream_issues_never_close_them]] / [[feedback_upstream_srmech_fixes_as_research_notes]] — maintainer owns open/closed + labels.
Tracking / epic. Consolidates the framework requirements the full synaptic neural net (RBS-SNN) — and its human-language render/interface (RBS-LM) — must satisfy. These accreted across the F167→F340 arc; this issue gathers them in one place so the build can be checked against the spec. Per project discipline this is framework-reading + understanding-not-curing, defensive scope; open/closed + label state is the maintainer's call (recorded, not driven).
The two-branch identity (the frame everything below serves)
R1 — Klein-4-native instrument (the load-bearing one)
The RBS-HDC instrument was designed early as a bipolar bundle (one Z₂ / γ₅ axis). Everything since says the substrate is Klein-4 = Z₂×Z₂, four sectors (γ₅ × iω₇). The full SNN must be Klein-4-native, not a one-axis shadow.
(γ₅±, iω₇±)structure natively (soklein4_bind/klein4_*act without a lift).R2 — "keep both" is the (4+3) fiber bundle, not a fork
π(E); Klein-4-native = the total spaceE; the fiber is the spatially-absent chirality.7 = 4 (base) + 3 (fiber)(F124; same decomposition as F12314=4+3+7and the28 = 14⊕7⊕7so(8) read-out). Re-reads F135 as total-space-vs-base-projection.28 → 7=(4+3) → Klein-4(4) → bipolar(γ₅)against F124/F128/F196/F200 — these are different rungs of the nesting (F196 "chirality is nested"); do not assert a bijection unchecked.R3 — srmech tooling: catalog → kernel → DSL entry (UPSTREAM_NOTES §17)
So RBS-LM kernels-from-catalogs — and anyone's catalog of other texts — show up as DSL entries. srmech already ships ~80% (
encode_loe_content,srmech.rbs_lm.encode_{word_k4,bigram_l1,skeleton_l2,sentence_l3},RBSHDCInstrument,amsc.catalog.{list,run}_catalog_chain,use_local_kernel); the gap is unification + 2 precursors (the DSL op-registry and the AMSC catalog-chain registry are currently disjoint — verified rc21).encode_loe_content+ therbs_lm.encode_*stack as DSL cascade-ops (one catalog-TOML descriptor each) → one-line per-catalog kernel chains.tokenize(text,…)+cooccurrence_edges(tokens, window=,…)(Class-L precursor) so the K1 presence-kernel is a pure-TOML composite end-to-end (and retires the hand-rolledCounter()co-occurrence the STOP-list flags).kind+provenance(srmech/user:<sha>/catalog:<source_key>).list_catalog_chains+SRMECH_CASCADE_PATH+use_local_kernel).encode_loe_content/rbs_lm.encode_*surface where parity holds.R4 — honesty-store / truth-filter (the differentiator)
R5 — input robustness (accessibility; ADA-aligned)
R6 — multi-render corpus base (the truth-filter's independence)
Dependency gates (open srmech items the SNN build rides on)
cascade.reorient(orientation, value)— data-arg-second; un-invokable as a bare DSLop=/parallel_body=stage.cascade.magnitude(x: float)— real-only; leaks an internal>on complex (+ our CLAUDE.md over-describes it).Related / sub-tickets
#843 (RBS-NN→RBS-SNN rename) · #844 (notebook-native-language pipeline TARGET) · #846 (antiquity corpora) · #847 (native-language peer-review) · #849 (many-to-many holonomy fiber) · #850 (adversarial triality on the F335/F337 ceiling) · #851 (encode/decode epicycle-local k=1/k=3) · #852 (how a language develops sentence structure) · #812/#813/#814 (srmech loop-bind / compose engine) · #797 (gated MFO inversion). Canonical detail:
docs/srmech/rbs_lm_research/findings F311/F312/F317/F324/F334–F340 +UPSTREAM_NOTES.md§15/§16/§17.Currently HOLDING on the srmech-dev cycle in progress; this issue is the spec to build against when it returns. Recorded per
[[feedback_create_upstream_issues_never_close_them]]/[[feedback_upstream_srmech_fixes_as_research_notes]]— maintainer owns open/closed + labels.