@hviana/sema 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/package.json +1 -1
  2. package/src/geometry.ts +52 -3
  3. package/src/mind/attention.ts +1469 -120
  4. package/src/mind/index.ts +16 -0
  5. package/src/mind/junction.ts +125 -16
  6. package/src/mind/mind.ts +15 -0
  7. package/src/mind/rationale.ts +12 -4
  8. package/src/mind/traverse.ts +75 -7
  9. package/src/mind/types.ts +25 -0
  10. package/test/51-structural-resonance-ladder.test.mjs +552 -0
  11. package/test/52-climb-consensus-instrumentation.test.mjs +324 -0
  12. package/test/53-cross-region-probe-instrumentation.test.mjs +356 -0
  13. package/dist/example/demo.d.ts +0 -1
  14. package/dist/example/demo.js +0 -39
  15. package/dist/example/train_base.d.ts +0 -87
  16. package/dist/example/train_base.js +0 -2252
  17. package/dist/src/alphabet.d.ts +0 -7
  18. package/dist/src/alphabet.js +0 -33
  19. package/dist/src/alu/src/alu.d.ts +0 -185
  20. package/dist/src/alu/src/alu.js +0 -440
  21. package/dist/src/alu/src/expr.d.ts +0 -61
  22. package/dist/src/alu/src/expr.js +0 -318
  23. package/dist/src/alu/src/index.d.ts +0 -11
  24. package/dist/src/alu/src/index.js +0 -19
  25. package/dist/src/alu/src/kernel-arith.d.ts +0 -16
  26. package/dist/src/alu/src/kernel-arith.js +0 -264
  27. package/dist/src/alu/src/kernel-bits.d.ts +0 -19
  28. package/dist/src/alu/src/kernel-bits.js +0 -152
  29. package/dist/src/alu/src/kernel-logic.d.ts +0 -4
  30. package/dist/src/alu/src/kernel-logic.js +0 -60
  31. package/dist/src/alu/src/kernel-nd.d.ts +0 -3
  32. package/dist/src/alu/src/kernel-nd.js +0 -208
  33. package/dist/src/alu/src/kernel-numeric.d.ts +0 -54
  34. package/dist/src/alu/src/kernel-numeric.js +0 -366
  35. package/dist/src/alu/src/operation.d.ts +0 -168
  36. package/dist/src/alu/src/operation.js +0 -189
  37. package/dist/src/alu/src/parser.d.ts +0 -221
  38. package/dist/src/alu/src/parser.js +0 -577
  39. package/dist/src/alu/src/resonance.d.ts +0 -55
  40. package/dist/src/alu/src/resonance.js +0 -126
  41. package/dist/src/alu/src/text.d.ts +0 -31
  42. package/dist/src/alu/src/text.js +0 -73
  43. package/dist/src/alu/src/value.d.ts +0 -109
  44. package/dist/src/alu/src/value.js +0 -300
  45. package/dist/src/alu/test/alu.test.d.ts +0 -1
  46. package/dist/src/alu/test/alu.test.js +0 -764
  47. package/dist/src/bytes.d.ts +0 -14
  48. package/dist/src/bytes.js +0 -59
  49. package/dist/src/canon.d.ts +0 -26
  50. package/dist/src/canon.js +0 -57
  51. package/dist/src/config.d.ts +0 -111
  52. package/dist/src/config.js +0 -91
  53. package/dist/src/derive/src/deduction.d.ts +0 -125
  54. package/dist/src/derive/src/deduction.js +0 -155
  55. package/dist/src/derive/src/index.d.ts +0 -7
  56. package/dist/src/derive/src/index.js +0 -11
  57. package/dist/src/derive/src/priority-queue.d.ts +0 -20
  58. package/dist/src/derive/src/priority-queue.js +0 -73
  59. package/dist/src/derive/src/rewrite.d.ts +0 -56
  60. package/dist/src/derive/src/rewrite.js +0 -100
  61. package/dist/src/derive/src/trie.d.ts +0 -90
  62. package/dist/src/derive/src/trie.js +0 -217
  63. package/dist/src/derive/test/derive.test.d.ts +0 -1
  64. package/dist/src/derive/test/derive.test.js +0 -122
  65. package/dist/src/extension.d.ts +0 -37
  66. package/dist/src/extension.js +0 -7
  67. package/dist/src/geometry.d.ts +0 -176
  68. package/dist/src/geometry.js +0 -546
  69. package/dist/src/index.d.ts +0 -16
  70. package/dist/src/index.js +0 -18
  71. package/dist/src/ingest-cache.d.ts +0 -41
  72. package/dist/src/ingest-cache.js +0 -161
  73. package/dist/src/mind/articulation.d.ts +0 -6
  74. package/dist/src/mind/articulation.js +0 -99
  75. package/dist/src/mind/attention.d.ts +0 -88
  76. package/dist/src/mind/attention.js +0 -997
  77. package/dist/src/mind/bridge.d.ts +0 -30
  78. package/dist/src/mind/bridge.js +0 -569
  79. package/dist/src/mind/canonical.d.ts +0 -29
  80. package/dist/src/mind/canonical.js +0 -88
  81. package/dist/src/mind/graph-search.d.ts +0 -285
  82. package/dist/src/mind/graph-search.js +0 -956
  83. package/dist/src/mind/index.d.ts +0 -5
  84. package/dist/src/mind/index.js +0 -5
  85. package/dist/src/mind/junction.d.ts +0 -95
  86. package/dist/src/mind/junction.js +0 -262
  87. package/dist/src/mind/learning.d.ts +0 -47
  88. package/dist/src/mind/learning.js +0 -248
  89. package/dist/src/mind/match.d.ts +0 -126
  90. package/dist/src/mind/match.js +0 -441
  91. package/dist/src/mind/mechanisms/alu.d.ts +0 -4
  92. package/dist/src/mind/mechanisms/alu.js +0 -36
  93. package/dist/src/mind/mechanisms/cast.d.ts +0 -89
  94. package/dist/src/mind/mechanisms/cast.js +0 -716
  95. package/dist/src/mind/mechanisms/confluence.d.ts +0 -24
  96. package/dist/src/mind/mechanisms/confluence.js +0 -225
  97. package/dist/src/mind/mechanisms/cover.d.ts +0 -6
  98. package/dist/src/mind/mechanisms/cover.js +0 -203
  99. package/dist/src/mind/mechanisms/extraction.d.ts +0 -67
  100. package/dist/src/mind/mechanisms/extraction.js +0 -387
  101. package/dist/src/mind/mechanisms/recall.d.ts +0 -13
  102. package/dist/src/mind/mechanisms/recall.js +0 -325
  103. package/dist/src/mind/mind.d.ts +0 -274
  104. package/dist/src/mind/mind.js +0 -572
  105. package/dist/src/mind/pipeline-mechanism.d.ts +0 -142
  106. package/dist/src/mind/pipeline-mechanism.js +0 -213
  107. package/dist/src/mind/pipeline.d.ts +0 -20
  108. package/dist/src/mind/pipeline.js +0 -217
  109. package/dist/src/mind/primitives.d.ts +0 -70
  110. package/dist/src/mind/primitives.js +0 -287
  111. package/dist/src/mind/rationale.d.ts +0 -134
  112. package/dist/src/mind/rationale.js +0 -162
  113. package/dist/src/mind/reasoning.d.ts +0 -34
  114. package/dist/src/mind/reasoning.js +0 -240
  115. package/dist/src/mind/recognition.d.ts +0 -20
  116. package/dist/src/mind/recognition.js +0 -390
  117. package/dist/src/mind/resonance.d.ts +0 -23
  118. package/dist/src/mind/resonance.js +0 -0
  119. package/dist/src/mind/trace.d.ts +0 -15
  120. package/dist/src/mind/trace.js +0 -73
  121. package/dist/src/mind/traverse.d.ts +0 -113
  122. package/dist/src/mind/traverse.js +0 -504
  123. package/dist/src/mind/types.d.ts +0 -271
  124. package/dist/src/mind/types.js +0 -130
  125. package/dist/src/rabitq-ivf/src/database.d.ts +0 -113
  126. package/dist/src/rabitq-ivf/src/database.js +0 -201
  127. package/dist/src/rabitq-ivf/src/index.d.ts +0 -7
  128. package/dist/src/rabitq-ivf/src/index.js +0 -4
  129. package/dist/src/rabitq-ivf/src/ivf.d.ts +0 -200
  130. package/dist/src/rabitq-ivf/src/ivf.js +0 -1165
  131. package/dist/src/rabitq-ivf/src/prng.d.ts +0 -19
  132. package/dist/src/rabitq-ivf/src/prng.js +0 -36
  133. package/dist/src/rabitq-ivf/src/rabitq.d.ts +0 -95
  134. package/dist/src/rabitq-ivf/src/rabitq.js +0 -283
  135. package/dist/src/sema.d.ts +0 -31
  136. package/dist/src/sema.js +0 -63
  137. package/dist/src/store-sqlite.d.ts +0 -184
  138. package/dist/src/store-sqlite.js +0 -942
  139. package/dist/src/store.d.ts +0 -663
  140. package/dist/src/store.js +0 -1618
  141. package/dist/src/vec.d.ts +0 -31
  142. package/dist/src/vec.js +0 -109
package/dist/src/vec.d.ts DELETED
@@ -1,31 +0,0 @@
1
- export type Vec = Float32Array;
2
- /** Deterministic PRNG (32-bit mixer). */
3
- export declare function rng(seed: number): () => number;
4
- export declare const zeros: (D: number) => Vec;
5
- export declare const copy: (v: Vec) => Vec;
6
- /** Random point on the unit sphere. */
7
- export declare function randomUnit(D: number, rand: () => number): Vec;
8
- /** target += src * scale (in place). */
9
- export declare function addInto(target: Vec, src: Vec, scale?: number): Vec;
10
- export declare function dot(a: Vec, b: Vec): number;
11
- /** In-place normalization. */
12
- export declare function normalize(v: Vec): Vec;
13
- /** Resonance: 1 = same, 0 = unrelated. */
14
- export declare function cosine(a: Vec, b: Vec): number;
15
- /** Set vector epsilon thresholds. Called once by Mind at construction. */
16
- export declare function setVecConfig(cfg: {
17
- normalizeEpsilon?: number;
18
- cosineEpsilon?: number;
19
- }): void;
20
- export interface Permutation {
21
- fwd: Uint32Array;
22
- inv: Uint32Array;
23
- }
24
- /** The keyring: one independent permutation per seat.
25
- * Independent keys do not commute, so an address in a tree is the
26
- * path itself — "seat 2 inside seat 1" ≠ "seat 1 inside seat 2". */
27
- export declare function makeKeyring(D: number, seats: number, rand: () => number): Permutation[];
28
- /** Apply permutation: out[i] = v[table[i]]. */
29
- export declare function permute(v: Vec, table: Uint32Array): Vec;
30
- /** Permute into existing buffer — zero allocation. */
31
- export declare function permuteInto(out: Vec, v: Vec, table: Uint32Array): Vec;
package/dist/src/vec.js DELETED
@@ -1,109 +0,0 @@
1
- // vec.ts — vector primitives.
2
- // Superposition (add), normalization (stay on the sphere),
3
- // resonance (cosine), and seat binding (a keyring of fixed permutations).
4
- // No weights. No gradients.
5
- /** Deterministic PRNG (32-bit mixer). */
6
- export function rng(seed) {
7
- let s = seed >>> 0;
8
- return () => {
9
- s = (s + 0x6d2b79f5) >>> 0;
10
- let t = s;
11
- t = Math.imul(t ^ (t >>> 15), t | 1);
12
- t ^= t + Math.imul(t ^ (t >>> 7), t | 61);
13
- return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
14
- };
15
- }
16
- /** Standard normal sample (Box–Muller). */
17
- function gaussian(rand) {
18
- let u = 0, v = 0;
19
- while (u === 0)
20
- u = rand();
21
- while (v === 0)
22
- v = rand();
23
- return Math.sqrt(-2 * Math.log(u)) * Math.cos(2 * Math.PI * v);
24
- }
25
- export const zeros = (D) => new Float32Array(D);
26
- export const copy = (v) => new Float32Array(v);
27
- /** Random point on the unit sphere. */
28
- export function randomUnit(D, rand) {
29
- const v = zeros(D);
30
- for (let i = 0; i < D; i++)
31
- v[i] = gaussian(rand);
32
- return normalize(v);
33
- }
34
- /** target += src * scale (in place). */
35
- export function addInto(target, src, scale = 1) {
36
- for (let i = 0; i < target.length; i++)
37
- target[i] += src[i] * scale;
38
- return target;
39
- }
40
- export function dot(a, b) {
41
- let s = 0;
42
- for (let i = 0; i < a.length; i++)
43
- s += a[i] * b[i];
44
- return s;
45
- }
46
- const norm = (v) => Math.sqrt(dot(v, v));
47
- // Epsilon thresholds (settable once via setVecConfig).
48
- let _normalizeEpsilon = 1e-12;
49
- let _cosineEpsilon = 1e-12;
50
- /** In-place normalization. */
51
- export function normalize(v) {
52
- const n = norm(v);
53
- if (n > _normalizeEpsilon) {
54
- for (let i = 0; i < v.length; i++)
55
- v[i] /= n;
56
- }
57
- return v;
58
- }
59
- /** Resonance: 1 = same, 0 = unrelated. */
60
- export function cosine(a, b) {
61
- const na = norm(a), nb = norm(b);
62
- return na > _cosineEpsilon && nb > _cosineEpsilon ? dot(a, b) / (na * nb) : 0;
63
- }
64
- /** Set vector epsilon thresholds. Called once by Mind at construction. */
65
- export function setVecConfig(cfg) {
66
- if (cfg.normalizeEpsilon !== undefined) {
67
- _normalizeEpsilon = cfg.normalizeEpsilon;
68
- }
69
- if (cfg.cosineEpsilon !== undefined)
70
- _cosineEpsilon = cfg.cosineEpsilon;
71
- }
72
- /** One fixed random permutation (Fisher–Yates). */
73
- function makePermutation(D, rand) {
74
- const fwd = new Uint32Array(D);
75
- for (let i = 0; i < D; i++)
76
- fwd[i] = i;
77
- for (let i = D - 1; i > 0; i--) {
78
- const j = Math.floor(rand() * (i + 1));
79
- const t = fwd[i];
80
- fwd[i] = fwd[j];
81
- fwd[j] = t;
82
- }
83
- const inv = new Uint32Array(D);
84
- for (let i = 0; i < D; i++)
85
- inv[fwd[i]] = i;
86
- return { fwd, inv };
87
- }
88
- /** The keyring: one independent permutation per seat.
89
- * Independent keys do not commute, so an address in a tree is the
90
- * path itself — "seat 2 inside seat 1" ≠ "seat 1 inside seat 2". */
91
- export function makeKeyring(D, seats, rand) {
92
- const ring = [];
93
- for (let s = 0; s < seats; s++)
94
- ring.push(makePermutation(D, rand));
95
- return ring;
96
- }
97
- /** Apply permutation: out[i] = v[table[i]]. */
98
- export function permute(v, table) {
99
- const out = new Float32Array(v.length);
100
- for (let i = 0; i < v.length; i++)
101
- out[i] = v[table[i]];
102
- return out;
103
- }
104
- /** Permute into existing buffer — zero allocation. */
105
- export function permuteInto(out, v, table) {
106
- for (let i = 0; i < v.length; i++)
107
- out[i] = v[table[i]];
108
- return out;
109
- }