@aleph-ai/tinyaleph 1.0.0
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.
- package/LICENSE +21 -0
- package/README.md +278 -0
- package/backends/cryptographic/index.js +196 -0
- package/backends/index.js +15 -0
- package/backends/interface.js +89 -0
- package/backends/scientific/index.js +272 -0
- package/backends/semantic/index.js +527 -0
- package/backends/semantic/surface.js +393 -0
- package/backends/semantic/two-layer.js +375 -0
- package/core/fano.js +127 -0
- package/core/hilbert.js +564 -0
- package/core/hypercomplex.js +141 -0
- package/core/index.js +133 -0
- package/core/llm.js +132 -0
- package/core/prime.js +184 -0
- package/core/resonance.js +695 -0
- package/core/rformer-tf.js +1086 -0
- package/core/rformer.js +806 -0
- package/core/sieve.js +350 -0
- package/data.json +8163 -0
- package/docs/EXAMPLES_PLAN.md +293 -0
- package/docs/README.md +159 -0
- package/docs/design/ALEPH_CHAT_ARCHITECTURE.md +499 -0
- package/docs/guide/01-quickstart.md +298 -0
- package/docs/guide/02-semantic-computing.md +409 -0
- package/docs/guide/03-cryptographic.md +420 -0
- package/docs/guide/04-scientific.md +494 -0
- package/docs/guide/05-llm-integration.md +568 -0
- package/docs/guide/06-advanced.md +996 -0
- package/docs/guide/README.md +188 -0
- package/docs/reference/01-core.md +695 -0
- package/docs/reference/02-physics.md +601 -0
- package/docs/reference/03-backends.md +892 -0
- package/docs/reference/04-engine.md +632 -0
- package/docs/reference/README.md +252 -0
- package/docs/theory/01-prime-semantics.md +327 -0
- package/docs/theory/02-hypercomplex-algebra.md +421 -0
- package/docs/theory/03-phase-synchronization.md +364 -0
- package/docs/theory/04-entropy-reasoning.md +348 -0
- package/docs/theory/05-non-commutativity.md +402 -0
- package/docs/theory/06-two-layer-meaning.md +414 -0
- package/docs/theory/07-resonant-field-interface.md +419 -0
- package/docs/theory/08-semantic-sieve.md +520 -0
- package/docs/theory/09-temporal-emergence.md +298 -0
- package/docs/theory/10-quaternionic-memory.md +415 -0
- package/docs/theory/README.md +162 -0
- package/engine/aleph.js +418 -0
- package/engine/index.js +7 -0
- package/index.js +23 -0
- package/modular.js +254 -0
- package/package.json +99 -0
- package/physics/collapse.js +95 -0
- package/physics/entropy.js +88 -0
- package/physics/index.js +65 -0
- package/physics/kuramoto.js +91 -0
- package/physics/lyapunov.js +80 -0
- package/physics/oscillator.js +95 -0
- package/types/index.d.ts +575 -0
package/types/index.d.ts
ADDED
|
@@ -0,0 +1,575 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for @aleph-ai/tinyaleph
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
declare module '@aleph-ai/tinyaleph' {
|
|
6
|
+
// ============================================
|
|
7
|
+
// Core Types
|
|
8
|
+
// ============================================
|
|
9
|
+
|
|
10
|
+
export interface HypercomplexState {
|
|
11
|
+
dimension: number;
|
|
12
|
+
components: number[];
|
|
13
|
+
|
|
14
|
+
add(other: HypercomplexState): HypercomplexState;
|
|
15
|
+
subtract(other: HypercomplexState): HypercomplexState;
|
|
16
|
+
multiply(other: HypercomplexState): HypercomplexState;
|
|
17
|
+
scale(scalar: number): HypercomplexState;
|
|
18
|
+
|
|
19
|
+
norm(): number;
|
|
20
|
+
normalize(): HypercomplexState;
|
|
21
|
+
conjugate(): HypercomplexState;
|
|
22
|
+
inverse(): HypercomplexState;
|
|
23
|
+
entropy(): number;
|
|
24
|
+
coherence(other: HypercomplexState): number;
|
|
25
|
+
isZeroDivisorWith(other: HypercomplexState): boolean;
|
|
26
|
+
clone(): HypercomplexState;
|
|
27
|
+
toString(): string;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export class Hypercomplex implements HypercomplexState {
|
|
31
|
+
constructor(dimension?: number);
|
|
32
|
+
dimension: number;
|
|
33
|
+
components: number[];
|
|
34
|
+
|
|
35
|
+
add(other: HypercomplexState): Hypercomplex;
|
|
36
|
+
subtract(other: HypercomplexState): Hypercomplex;
|
|
37
|
+
multiply(other: HypercomplexState): Hypercomplex;
|
|
38
|
+
scale(scalar: number): Hypercomplex;
|
|
39
|
+
|
|
40
|
+
norm(): number;
|
|
41
|
+
normalize(): Hypercomplex;
|
|
42
|
+
conjugate(): Hypercomplex;
|
|
43
|
+
inverse(): Hypercomplex;
|
|
44
|
+
entropy(): number;
|
|
45
|
+
coherence(other: HypercomplexState): number;
|
|
46
|
+
isZeroDivisorWith(other: HypercomplexState): boolean;
|
|
47
|
+
clone(): Hypercomplex;
|
|
48
|
+
toString(): string;
|
|
49
|
+
|
|
50
|
+
excite(primes: number[]): void;
|
|
51
|
+
getState(): number[];
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// ============================================
|
|
55
|
+
// Prime Utilities
|
|
56
|
+
// ============================================
|
|
57
|
+
|
|
58
|
+
export function primeGenerator(): Generator<number>;
|
|
59
|
+
export function nthPrime(n: number): number;
|
|
60
|
+
export function primesUpTo(max: number): number[];
|
|
61
|
+
export function isPrime(n: number): boolean;
|
|
62
|
+
export function factorize(n: number): number[];
|
|
63
|
+
export function primeSignature(n: number): Map<number, number>;
|
|
64
|
+
export function firstNPrimes(n: number): number[];
|
|
65
|
+
export function primeToFrequency(p: number): number;
|
|
66
|
+
export function primeToAngle(p: number): number;
|
|
67
|
+
export function sumOfTwoSquares(p: number): [number, number] | null;
|
|
68
|
+
|
|
69
|
+
export class GaussianInteger {
|
|
70
|
+
constructor(real: number, imag: number);
|
|
71
|
+
real: number;
|
|
72
|
+
imag: number;
|
|
73
|
+
norm(): number;
|
|
74
|
+
conjugate(): GaussianInteger;
|
|
75
|
+
multiply(other: GaussianInteger): GaussianInteger;
|
|
76
|
+
add(other: GaussianInteger): GaussianInteger;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export class EisensteinInteger {
|
|
80
|
+
constructor(a: number, b: number);
|
|
81
|
+
a: number;
|
|
82
|
+
b: number;
|
|
83
|
+
norm(): number;
|
|
84
|
+
conjugate(): EisensteinInteger;
|
|
85
|
+
multiply(other: EisensteinInteger): EisensteinInteger;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export const DEFAULT_PRIMES: number[];
|
|
89
|
+
|
|
90
|
+
// ============================================
|
|
91
|
+
// Fano Plane
|
|
92
|
+
// ============================================
|
|
93
|
+
|
|
94
|
+
export const FANO_LINES: number[][];
|
|
95
|
+
export function octonionMultiplyIndex(i: number, j: number): { index: number; sign: number };
|
|
96
|
+
export function sedenionMultiplyIndex(i: number, j: number): { index: number; sign: number };
|
|
97
|
+
export function multiplyIndices(i: number, j: number, dim: number): { index: number; sign: number };
|
|
98
|
+
export function buildMultiplicationTable(dim: number): number[][];
|
|
99
|
+
|
|
100
|
+
// ============================================
|
|
101
|
+
// Physics: Oscillators
|
|
102
|
+
// ============================================
|
|
103
|
+
|
|
104
|
+
export interface OscillatorOptions {
|
|
105
|
+
frequency?: number;
|
|
106
|
+
phase?: number;
|
|
107
|
+
amplitude?: number;
|
|
108
|
+
damping?: number;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export class Oscillator {
|
|
112
|
+
constructor(options?: OscillatorOptions);
|
|
113
|
+
frequency: number;
|
|
114
|
+
phase: number;
|
|
115
|
+
amplitude: number;
|
|
116
|
+
damping: number;
|
|
117
|
+
|
|
118
|
+
step(dt: number): void;
|
|
119
|
+
getValue(): number;
|
|
120
|
+
getComplexValue(): { real: number; imag: number };
|
|
121
|
+
excite(energy: number): void;
|
|
122
|
+
damp(factor: number): void;
|
|
123
|
+
synchronizeTo(targetPhase: number, coupling: number): void;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export class OscillatorBank {
|
|
127
|
+
constructor(size: number);
|
|
128
|
+
oscillators: Oscillator[];
|
|
129
|
+
|
|
130
|
+
excite(primes: number[]): void;
|
|
131
|
+
step(dt: number): void;
|
|
132
|
+
getPhases(): number[];
|
|
133
|
+
getAmplitudes(): number[];
|
|
134
|
+
orderParameter(): number;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// ============================================
|
|
138
|
+
// Physics: Kuramoto
|
|
139
|
+
// ============================================
|
|
140
|
+
|
|
141
|
+
export interface KuramotoOptions {
|
|
142
|
+
coupling?: number;
|
|
143
|
+
dt?: number;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
export class KuramotoModel {
|
|
147
|
+
constructor(bank: OscillatorBank, options?: KuramotoOptions);
|
|
148
|
+
bank: OscillatorBank;
|
|
149
|
+
coupling: number;
|
|
150
|
+
|
|
151
|
+
step(dt?: number): void;
|
|
152
|
+
orderParameter(): number;
|
|
153
|
+
meanPhase(): number;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// ============================================
|
|
157
|
+
// Physics: Entropy
|
|
158
|
+
// ============================================
|
|
159
|
+
|
|
160
|
+
export function shannonEntropy(probabilities: number[]): number;
|
|
161
|
+
export function stateEntropy(state: HypercomplexState): number;
|
|
162
|
+
export function coherence(state1: HypercomplexState, state2: HypercomplexState): number;
|
|
163
|
+
export function mutualInformation(joint: number[][], marginal1: number[], marginal2: number[]): number;
|
|
164
|
+
export function relativeEntropy(p: number[], q: number[]): number;
|
|
165
|
+
export function jointEntropy(joint: number[][]): number;
|
|
166
|
+
export function oscillatorEntropy(bank: OscillatorBank): number;
|
|
167
|
+
|
|
168
|
+
// ============================================
|
|
169
|
+
// Physics: Lyapunov
|
|
170
|
+
// ============================================
|
|
171
|
+
|
|
172
|
+
export function estimateLyapunov(timeSeries: number[]): number;
|
|
173
|
+
export function classifyStability(lambda: number): 'stable' | 'marginal' | 'chaotic';
|
|
174
|
+
export function adaptiveCoupling(lambda: number, currentCoupling: number): number;
|
|
175
|
+
export function localLyapunov(timeSeries: number[], windowSize: number): number[];
|
|
176
|
+
export function delayEmbedding(timeSeries: number[], dim: number, delay: number): number[][];
|
|
177
|
+
export function stabilityMargin(lambda: number): number;
|
|
178
|
+
|
|
179
|
+
// ============================================
|
|
180
|
+
// Physics: Collapse
|
|
181
|
+
// ============================================
|
|
182
|
+
|
|
183
|
+
export function collapseProbability(state: HypercomplexState, threshold?: number): number;
|
|
184
|
+
export function shouldCollapse(state: HypercomplexState, threshold?: number): boolean;
|
|
185
|
+
export function measureState(state: HypercomplexState): number;
|
|
186
|
+
export function collapseToIndex(state: HypercomplexState, index: number): HypercomplexState;
|
|
187
|
+
export function bornMeasurement(state: HypercomplexState): { index: number; probability: number };
|
|
188
|
+
export function partialCollapse(state: HypercomplexState, target: HypercomplexState, strength: number): HypercomplexState;
|
|
189
|
+
export function applyDecoherence(state: HypercomplexState, rate: number): HypercomplexState;
|
|
190
|
+
|
|
191
|
+
// ============================================
|
|
192
|
+
// Backend Interface
|
|
193
|
+
// ============================================
|
|
194
|
+
|
|
195
|
+
export interface BackendConfig {
|
|
196
|
+
dimension?: number;
|
|
197
|
+
vocabulary?: Record<string, number[]>;
|
|
198
|
+
ontology?: Record<number, string>;
|
|
199
|
+
stopWords?: string[];
|
|
200
|
+
transforms?: Transform[];
|
|
201
|
+
[key: string]: any;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export interface Token {
|
|
205
|
+
word: string;
|
|
206
|
+
primes: number[];
|
|
207
|
+
known: boolean;
|
|
208
|
+
isStop: boolean;
|
|
209
|
+
position: number;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export interface Transform {
|
|
213
|
+
n: string;
|
|
214
|
+
q: number[];
|
|
215
|
+
r: number[];
|
|
216
|
+
priority?: number;
|
|
217
|
+
condition?: (state: HypercomplexState) => boolean;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export interface TransformStep {
|
|
221
|
+
step: number;
|
|
222
|
+
transform: string;
|
|
223
|
+
primesBefore: number[];
|
|
224
|
+
primesAfter: number[];
|
|
225
|
+
entropyBefore: number;
|
|
226
|
+
entropyAfter: number;
|
|
227
|
+
entropyDrop: number;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
export interface ProcessResult {
|
|
231
|
+
input: any;
|
|
232
|
+
output: any;
|
|
233
|
+
primes: number[];
|
|
234
|
+
state: HypercomplexState;
|
|
235
|
+
entropy: number;
|
|
236
|
+
steps: TransformStep[];
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
export abstract class Backend {
|
|
240
|
+
constructor(config: BackendConfig);
|
|
241
|
+
config: BackendConfig;
|
|
242
|
+
|
|
243
|
+
abstract encode(input: any): number[];
|
|
244
|
+
abstract decode(primes: number[]): any;
|
|
245
|
+
abstract process(input: any): ProcessResult;
|
|
246
|
+
|
|
247
|
+
primesToState(primes: number[]): HypercomplexState;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
// ============================================
|
|
251
|
+
// Semantic Backend
|
|
252
|
+
// ============================================
|
|
253
|
+
|
|
254
|
+
/** Codon: a group of tokens processed as a unit (like DNA triplets) */
|
|
255
|
+
export interface Codon {
|
|
256
|
+
tokens: Token[];
|
|
257
|
+
primes: number[];
|
|
258
|
+
position: number;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
/** Reading frame: a specific offset and direction for sequence reading */
|
|
262
|
+
export interface ReadingFrame {
|
|
263
|
+
direction: 'forward' | 'reverse';
|
|
264
|
+
offset: number;
|
|
265
|
+
state: HypercomplexState;
|
|
266
|
+
tokens: Token[];
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/** Dual representation: sense and antisense like DNA double helix */
|
|
270
|
+
export interface DualRepresentation {
|
|
271
|
+
sense: HypercomplexState;
|
|
272
|
+
antisense: HypercomplexState;
|
|
273
|
+
magnitude: number;
|
|
274
|
+
coherence: number;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
/** Complete DNA-inspired encoding result */
|
|
278
|
+
export interface DNAEncoding {
|
|
279
|
+
tokens: Token[];
|
|
280
|
+
codons: Codon[];
|
|
281
|
+
frames: ReadingFrame[];
|
|
282
|
+
bidirectional: HypercomplexState;
|
|
283
|
+
sixFrame: HypercomplexState;
|
|
284
|
+
sense: HypercomplexState;
|
|
285
|
+
antisense: HypercomplexState;
|
|
286
|
+
magnitude: number;
|
|
287
|
+
coherence: number;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/** DNA comparison result */
|
|
291
|
+
export interface DNAComparisonResult {
|
|
292
|
+
senseCoherence: number;
|
|
293
|
+
crossCoherence: number;
|
|
294
|
+
combinedScore: number;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
export class SemanticBackend extends Backend {
|
|
298
|
+
constructor(config: BackendConfig);
|
|
299
|
+
|
|
300
|
+
tokenize(text: string, filterStopWords?: boolean): Token[];
|
|
301
|
+
encode(text: string): number[];
|
|
302
|
+
encodeAll(text: string): number[];
|
|
303
|
+
encodeOrdered(text: string): Token[];
|
|
304
|
+
decode(primes: number[]): string;
|
|
305
|
+
|
|
306
|
+
primesToState(primes: number[]): HypercomplexState;
|
|
307
|
+
orderedPrimesToState(tokens: Token[]): HypercomplexState;
|
|
308
|
+
textToOrderedState(text: string): HypercomplexState;
|
|
309
|
+
|
|
310
|
+
hasWord(word: string): boolean;
|
|
311
|
+
getWordPrimes(word: string): number[] | null;
|
|
312
|
+
learn(word: string, primes: number[]): void;
|
|
313
|
+
getVocabularySize(): number;
|
|
314
|
+
|
|
315
|
+
getOntologyMeaning(prime: number): string | null;
|
|
316
|
+
getAxisPrimes(axis: number): number[];
|
|
317
|
+
getOntologyTerms(): string[];
|
|
318
|
+
|
|
319
|
+
applyTransform(primes: number[], transform: Transform): number[];
|
|
320
|
+
process(text: string): ProcessResult;
|
|
321
|
+
|
|
322
|
+
// ============================================
|
|
323
|
+
// DNA-Inspired Processing Methods
|
|
324
|
+
// ============================================
|
|
325
|
+
|
|
326
|
+
/**
|
|
327
|
+
* Bidirectional processing (Enochian boustrophedon)
|
|
328
|
+
* Computes both forward and backward states, combines via conjugate multiplication
|
|
329
|
+
*/
|
|
330
|
+
bidirectionalState(tokens: Token[]): HypercomplexState;
|
|
331
|
+
|
|
332
|
+
/**
|
|
333
|
+
* Group tokens into codons (triplets by default)
|
|
334
|
+
* Like DNA triplets that encode amino acids
|
|
335
|
+
*/
|
|
336
|
+
tokensToCodons(tokens: Token[], codonSize?: number): Codon[];
|
|
337
|
+
|
|
338
|
+
/**
|
|
339
|
+
* Process text using codon chunking
|
|
340
|
+
*/
|
|
341
|
+
codonState(text: string, codonSize?: number): HypercomplexState;
|
|
342
|
+
|
|
343
|
+
/**
|
|
344
|
+
* Generate reading frame states (6 frames: 3 forward + 3 reverse)
|
|
345
|
+
* Like DNA's 6 reading frames
|
|
346
|
+
*/
|
|
347
|
+
readingFrameStates(tokens: Token[], numFrames?: number): ReadingFrame[];
|
|
348
|
+
|
|
349
|
+
/**
|
|
350
|
+
* Combine all 6 reading frames into unified state
|
|
351
|
+
*/
|
|
352
|
+
sixFrameState(text: string): HypercomplexState;
|
|
353
|
+
|
|
354
|
+
/**
|
|
355
|
+
* Get sense/antisense dual representation (like DNA double helix)
|
|
356
|
+
*/
|
|
357
|
+
dualRepresentation(tokens: Token[]): DualRepresentation;
|
|
358
|
+
|
|
359
|
+
/**
|
|
360
|
+
* Full DNA-inspired encoding combining all methods:
|
|
361
|
+
* 1. Codon chunking (triplets)
|
|
362
|
+
* 2. 6-frame processing
|
|
363
|
+
* 3. Bidirectional (boustrophedon)
|
|
364
|
+
* 4. Sense/Antisense duality
|
|
365
|
+
*/
|
|
366
|
+
dnaEncode(text: string): DNAEncoding;
|
|
367
|
+
|
|
368
|
+
/**
|
|
369
|
+
* Compare two texts using their DNA encodings
|
|
370
|
+
*/
|
|
371
|
+
dnaCompare(text1: string, text2: string): DNAComparisonResult;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
// ============================================
|
|
375
|
+
// Cryptographic Backend
|
|
376
|
+
// ============================================
|
|
377
|
+
|
|
378
|
+
export class CryptographicBackend extends Backend {
|
|
379
|
+
constructor(config: BackendConfig);
|
|
380
|
+
|
|
381
|
+
encode(text: string): number[];
|
|
382
|
+
decode(primes: number[]): string;
|
|
383
|
+
|
|
384
|
+
hash(input: string, length?: number): string;
|
|
385
|
+
hashToState(input: string): HypercomplexState;
|
|
386
|
+
deriveKey(password: string, salt: string, length?: number, iterations?: number): HypercomplexState;
|
|
387
|
+
|
|
388
|
+
process(input: string): ProcessResult;
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
// ============================================
|
|
392
|
+
// Scientific Backend
|
|
393
|
+
// ============================================
|
|
394
|
+
|
|
395
|
+
export class ScientificBackend extends Backend {
|
|
396
|
+
constructor(config: BackendConfig);
|
|
397
|
+
|
|
398
|
+
encode(input: number[]): number[];
|
|
399
|
+
decode(primes: number[]): number[];
|
|
400
|
+
|
|
401
|
+
createState(components: number[]): HypercomplexState;
|
|
402
|
+
createRandomState(): HypercomplexState;
|
|
403
|
+
createBasisState(index: number): HypercomplexState;
|
|
404
|
+
|
|
405
|
+
superpose(state1: HypercomplexState, weight1: number, state2: HypercomplexState, weight2: number): HypercomplexState;
|
|
406
|
+
evolve(state: HypercomplexState, hamiltonian: HypercomplexState, dt: number): HypercomplexState;
|
|
407
|
+
collapse(state: HypercomplexState, target: HypercomplexState, strength: number): HypercomplexState;
|
|
408
|
+
|
|
409
|
+
measureProbability(state: HypercomplexState, projector: HypercomplexState): number;
|
|
410
|
+
measure(state: HypercomplexState, basis: HypercomplexState[]): { outcome: number; probability: number; finalState: HypercomplexState };
|
|
411
|
+
|
|
412
|
+
process(input: any): ProcessResult;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
// ============================================
|
|
416
|
+
// Aleph Engine
|
|
417
|
+
// ============================================
|
|
418
|
+
|
|
419
|
+
export interface EngineOptions {
|
|
420
|
+
oscillatorCount?: number;
|
|
421
|
+
coupling?: number;
|
|
422
|
+
entropyThreshold?: number;
|
|
423
|
+
maxIterations?: number;
|
|
424
|
+
collapseStrength?: number;
|
|
425
|
+
dt?: number;
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
export interface EngineResult extends ProcessResult {
|
|
429
|
+
oscillators: {
|
|
430
|
+
orderParameter: number;
|
|
431
|
+
phases: number[];
|
|
432
|
+
};
|
|
433
|
+
metrics: {
|
|
434
|
+
totalTime: number;
|
|
435
|
+
encodeTime: number;
|
|
436
|
+
transformTime: number;
|
|
437
|
+
decodeTime: number;
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
export class AlephEngine {
|
|
442
|
+
constructor(backend: Backend, options?: EngineOptions);
|
|
443
|
+
backend: Backend;
|
|
444
|
+
oscillators: Oscillator[];
|
|
445
|
+
field: HypercomplexState;
|
|
446
|
+
config: EngineOptions;
|
|
447
|
+
|
|
448
|
+
run(input: any): EngineResult;
|
|
449
|
+
runBatch(inputs: any[]): EngineResult[];
|
|
450
|
+
step(state: HypercomplexState): { state: HypercomplexState; entropy: number; transform: Transform | null };
|
|
451
|
+
|
|
452
|
+
initializeField(primes: number[]): void;
|
|
453
|
+
exciteField(primes: number[]): void;
|
|
454
|
+
collapseField(target: HypercomplexState): HypercomplexState;
|
|
455
|
+
getFieldState(): HypercomplexState;
|
|
456
|
+
getFieldEntropy(): number;
|
|
457
|
+
|
|
458
|
+
stepOscillators(): void;
|
|
459
|
+
synchronizeOscillators(target: number): void;
|
|
460
|
+
getOrderParameter(): number;
|
|
461
|
+
exciteOscillator(index: number, energy: number): void;
|
|
462
|
+
|
|
463
|
+
selectTransform(primes: number[], state: HypercomplexState): Transform | null;
|
|
464
|
+
applyTransform(primes: number[], transform: Transform): number[];
|
|
465
|
+
addTransform(transform: Transform): void;
|
|
466
|
+
removeTransform(name: string): boolean;
|
|
467
|
+
|
|
468
|
+
getMetrics(): {
|
|
469
|
+
runs: number;
|
|
470
|
+
totalTime: number;
|
|
471
|
+
avgTime: number;
|
|
472
|
+
avgEntropy: number;
|
|
473
|
+
avgSteps: number;
|
|
474
|
+
transformCounts: Record<string, number>;
|
|
475
|
+
cacheHits: number;
|
|
476
|
+
cacheMisses: number;
|
|
477
|
+
};
|
|
478
|
+
resetMetrics(): void;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
// ============================================
|
|
482
|
+
// Factory Functions
|
|
483
|
+
// ============================================
|
|
484
|
+
|
|
485
|
+
export function createEngine(backendType: 'semantic' | 'cryptographic' | 'crypto' | 'scientific' | 'science' | 'quantum', config?: BackendConfig & { engineOptions?: EngineOptions }): AlephEngine;
|
|
486
|
+
|
|
487
|
+
// ============================================
|
|
488
|
+
// Convenience Functions
|
|
489
|
+
// ============================================
|
|
490
|
+
|
|
491
|
+
export function hash(input: string, length?: number): string;
|
|
492
|
+
export function deriveKey(password: string, salt: string, length?: number, iterations?: number): HypercomplexState;
|
|
493
|
+
|
|
494
|
+
// ============================================
|
|
495
|
+
// LLM Client
|
|
496
|
+
// ============================================
|
|
497
|
+
|
|
498
|
+
export interface LLMOptions {
|
|
499
|
+
endpoint?: string;
|
|
500
|
+
model?: string;
|
|
501
|
+
temperature?: number;
|
|
502
|
+
maxTokens?: number;
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
export class LLM {
|
|
506
|
+
constructor(options?: LLMOptions);
|
|
507
|
+
|
|
508
|
+
query(prompt: string): Promise<string>;
|
|
509
|
+
embed(text: string): Promise<number[]>;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
// ============================================
|
|
513
|
+
// Sub-modules
|
|
514
|
+
// ============================================
|
|
515
|
+
|
|
516
|
+
export const core: {
|
|
517
|
+
Hypercomplex: typeof Hypercomplex;
|
|
518
|
+
FANO_LINES: number[][];
|
|
519
|
+
octonionMultiplyIndex: typeof octonionMultiplyIndex;
|
|
520
|
+
sedenionMultiplyIndex: typeof sedenionMultiplyIndex;
|
|
521
|
+
multiplyIndices: typeof multiplyIndices;
|
|
522
|
+
buildMultiplicationTable: typeof buildMultiplicationTable;
|
|
523
|
+
primeGenerator: typeof primeGenerator;
|
|
524
|
+
nthPrime: typeof nthPrime;
|
|
525
|
+
primesUpTo: typeof primesUpTo;
|
|
526
|
+
isPrime: typeof isPrime;
|
|
527
|
+
factorize: typeof factorize;
|
|
528
|
+
primeSignature: typeof primeSignature;
|
|
529
|
+
firstNPrimes: typeof firstNPrimes;
|
|
530
|
+
GaussianInteger: typeof GaussianInteger;
|
|
531
|
+
EisensteinInteger: typeof EisensteinInteger;
|
|
532
|
+
primeToFrequency: typeof primeToFrequency;
|
|
533
|
+
primeToAngle: typeof primeToAngle;
|
|
534
|
+
sumOfTwoSquares: typeof sumOfTwoSquares;
|
|
535
|
+
DEFAULT_PRIMES: number[];
|
|
536
|
+
LLM: typeof LLM;
|
|
537
|
+
};
|
|
538
|
+
|
|
539
|
+
export const physics: {
|
|
540
|
+
Oscillator: typeof Oscillator;
|
|
541
|
+
OscillatorBank: typeof OscillatorBank;
|
|
542
|
+
KuramotoModel: typeof KuramotoModel;
|
|
543
|
+
shannonEntropy: typeof shannonEntropy;
|
|
544
|
+
stateEntropy: typeof stateEntropy;
|
|
545
|
+
coherence: typeof coherence;
|
|
546
|
+
mutualInformation: typeof mutualInformation;
|
|
547
|
+
relativeEntropy: typeof relativeEntropy;
|
|
548
|
+
jointEntropy: typeof jointEntropy;
|
|
549
|
+
oscillatorEntropy: typeof oscillatorEntropy;
|
|
550
|
+
estimateLyapunov: typeof estimateLyapunov;
|
|
551
|
+
classifyStability: typeof classifyStability;
|
|
552
|
+
adaptiveCoupling: typeof adaptiveCoupling;
|
|
553
|
+
localLyapunov: typeof localLyapunov;
|
|
554
|
+
delayEmbedding: typeof delayEmbedding;
|
|
555
|
+
stabilityMargin: typeof stabilityMargin;
|
|
556
|
+
collapseProbability: typeof collapseProbability;
|
|
557
|
+
shouldCollapse: typeof shouldCollapse;
|
|
558
|
+
measureState: typeof measureState;
|
|
559
|
+
collapseToIndex: typeof collapseToIndex;
|
|
560
|
+
bornMeasurement: typeof bornMeasurement;
|
|
561
|
+
partialCollapse: typeof partialCollapse;
|
|
562
|
+
applyDecoherence: typeof applyDecoherence;
|
|
563
|
+
};
|
|
564
|
+
|
|
565
|
+
export const backends: {
|
|
566
|
+
Backend: typeof Backend;
|
|
567
|
+
SemanticBackend: typeof SemanticBackend;
|
|
568
|
+
CryptographicBackend: typeof CryptographicBackend;
|
|
569
|
+
ScientificBackend: typeof ScientificBackend;
|
|
570
|
+
};
|
|
571
|
+
|
|
572
|
+
export const engine: {
|
|
573
|
+
AlephEngine: typeof AlephEngine;
|
|
574
|
+
};
|
|
575
|
+
}
|