@justinelliottcobb/amari-wasm 0.10.0 → 0.12.2

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/amari_wasm.d.ts CHANGED
@@ -28,6 +28,10 @@ export function validate_relativistic_module(): boolean;
28
28
  * Initialize the fusion module
29
29
  */
30
30
  export function initFusion(): void;
31
+ /**
32
+ * Initialize the holographic memory module
33
+ */
34
+ export function initHolographic(): void;
31
35
  /**
32
36
  * Integrate a JavaScript function over an interval
33
37
  *
@@ -100,7 +104,6 @@ export enum WasmIntegrationMethod {
100
104
  export class AutoDiff {
101
105
  private constructor();
102
106
  free(): void;
103
- [Symbol.dispose](): void;
104
107
  /**
105
108
  * Linear layer forward pass (y = Wx + b) with automatic gradients
106
109
  */
@@ -124,7 +127,6 @@ export class AutoDiff {
124
127
  export class AutomataBatchOperations {
125
128
  private constructor();
126
129
  free(): void;
127
- [Symbol.dispose](): void;
128
130
  /**
129
131
  * Evolve multiple CA systems in parallel
130
132
  */
@@ -144,7 +146,6 @@ export class AutomataBatchOperations {
144
146
  export class AutomataUtils {
145
147
  private constructor();
146
148
  free(): void;
147
- [Symbol.dispose](): void;
148
149
  /**
149
150
  * Validate grid dimensions and format
150
151
  */
@@ -168,7 +169,6 @@ export class AutomataUtils {
168
169
  export class BatchOperations {
169
170
  private constructor();
170
171
  free(): void;
171
- [Symbol.dispose](): void;
172
172
  /**
173
173
  * Batch geometric product: compute a[i] * b[i] for all i
174
174
  * Optimized for WebAssembly performance with reduced allocations
@@ -185,7 +185,6 @@ export class BatchOperations {
185
185
  export class BatchOps {
186
186
  private constructor();
187
187
  free(): void;
188
- [Symbol.dispose](): void;
189
188
  /**
190
189
  * Matrix multiplication with automatic gradients
191
190
  */
@@ -205,7 +204,6 @@ export class BatchOps {
205
204
  export class EnumerativeBatch {
206
205
  private constructor();
207
206
  free(): void;
208
- [Symbol.dispose](): void;
209
207
  /**
210
208
  * Compute multiple Bézout intersections in batch
211
209
  */
@@ -225,7 +223,6 @@ export class EnumerativeBatch {
225
223
  export class EnumerativeUtils {
226
224
  private constructor();
227
225
  free(): void;
228
- [Symbol.dispose](): void;
229
226
  /**
230
227
  * Validate partition for Schubert calculus
231
228
  */
@@ -257,7 +254,6 @@ export class EnumerativeUtils {
257
254
  export class FusionBatchOperations {
258
255
  private constructor();
259
256
  free(): void;
260
- [Symbol.dispose](): void;
261
257
  /**
262
258
  * Optimize TDC parameters using gradient information
263
259
  */
@@ -272,6 +268,8 @@ export class FusionBatchOperations {
272
268
  static batchEvaluate(tdc_a_batch: Float64Array, tdc_b_batch: Float64Array, batch_size: number): Float64Array;
273
269
  /**
274
270
  * Batch sensitivity analysis for gradient-based optimization
271
+ *
272
+ * Note: Using simplified implementation based on gradient norms
275
273
  */
276
274
  static batchSensitivity(tdc_batch: Float64Array, batch_size: number): Float64Array;
277
275
  /**
@@ -289,7 +287,6 @@ export class FusionBatchOperations {
289
287
  export class FusionUtils {
290
288
  private constructor();
291
289
  free(): void;
292
- [Symbol.dispose](): void;
293
290
  /**
294
291
  * Validate logits for numerical stability
295
292
  */
@@ -300,10 +297,14 @@ export class FusionUtils {
300
297
  static normalizeLogits(logits: Float64Array): Float64Array;
301
298
  /**
302
299
  * Convert softmax probabilities to tropical representation
300
+ *
301
+ * Note: Direct conversion helpers are not in v0.12.0, using manual implementation
303
302
  */
304
303
  static softmaxToTropical(probs: Float64Array): Float64Array;
305
304
  /**
306
305
  * Convert tropical numbers back to softmax probabilities
306
+ *
307
+ * Note: Direct conversion helpers are not in v0.12.0, using manual implementation
307
308
  */
308
309
  static tropicalToSoftmax(tropical_values: Float64Array): Float64Array;
309
310
  }
@@ -313,7 +314,6 @@ export class FusionUtils {
313
314
  export class InfoGeomUtils {
314
315
  private constructor();
315
316
  free(): void;
316
- [Symbol.dispose](): void;
317
317
  /**
318
318
  * Compute cross-entropy between two distributions
319
319
  */
@@ -340,13 +340,63 @@ export class InfoGeomUtils {
340
340
  */
341
341
  static normalize(values: Float64Array): Float64Array;
342
342
  }
343
+ /**
344
+ * Numerical integration operations
345
+ *
346
+ * Provides definite integrals, line integrals, and surface integrals
347
+ * using adaptive quadrature.
348
+ */
349
+ export class Integration {
350
+ private constructor();
351
+ free(): void;
352
+ /**
353
+ * Compute 1D definite integral using Simpson's rule
354
+ *
355
+ * ∫[a,b] f(x) dx
356
+ *
357
+ * # Arguments
358
+ *
359
+ * * `func` - JavaScript function to integrate
360
+ * * `a` - Lower bound
361
+ * * `b` - Upper bound
362
+ * * `n` - Number of subdivisions (must be even)
363
+ *
364
+ * # Returns
365
+ *
366
+ * Integral value
367
+ *
368
+ * # JavaScript Example
369
+ *
370
+ * ```javascript
371
+ * // Integrate x^2 from 0 to 1
372
+ * const result = Integration.integrate1D(x => x*x, 0, 1, 100);
373
+ * // Returns approximately 0.333...
374
+ * ```
375
+ */
376
+ static integrate1D(func: Function, a: number, b: number, n: number): number;
377
+ /**
378
+ * Compute 2D integral over a rectangle using Simpson's rule
379
+ *
380
+ * ∫∫[a,b]×[c,d] f(x,y) dx dy
381
+ *
382
+ * # Arguments
383
+ *
384
+ * * `func` - JavaScript function (x, y) => f(x, y)
385
+ * * `ax` - Lower x bound
386
+ * * `bx` - Upper x bound
387
+ * * `ay` - Lower y bound
388
+ * * `by` - Upper y bound
389
+ * * `nx` - Number of x subdivisions (must be even)
390
+ * * `ny` - Number of y subdivisions (must be even)
391
+ */
392
+ static integrate2D(func: Function, ax: number, bx: number, ay: number, by: number, nx: number, ny: number): number;
393
+ }
343
394
  /**
344
395
  * Advanced machine learning operations using dual numbers
345
396
  */
346
397
  export class MLOps {
347
398
  private constructor();
348
399
  free(): void;
349
- [Symbol.dispose](): void;
350
400
  /**
351
401
  * Batch apply activation function with gradients
352
402
  */
@@ -370,7 +420,6 @@ export class MLOps {
370
420
  export class NetworkUtils {
371
421
  private constructor();
372
422
  free(): void;
373
- [Symbol.dispose](): void;
374
423
  /**
375
424
  * Create a random geometric network for testing
376
425
  */
@@ -384,13 +433,97 @@ export class NetworkUtils {
384
433
  */
385
434
  static createSmallWorldNetwork(num_nodes: number, k: number, beta: number): WasmGeometricNetwork;
386
435
  }
436
+ /**
437
+ * Numerical derivative operations
438
+ *
439
+ * Provides gradient, divergence, curl, and Laplacian computations
440
+ * using centered finite differences.
441
+ */
442
+ export class NumericalDerivative {
443
+ free(): void;
444
+ /**
445
+ * Compute divergence of a vector field at a point
446
+ *
447
+ * ∇·F = ∂Fx/∂x + ∂Fy/∂y + ∂Fz/∂z
448
+ *
449
+ * # Arguments
450
+ *
451
+ * * `field` - Vector field
452
+ * * `point` - Evaluation point
453
+ *
454
+ * # Returns
455
+ *
456
+ * Divergence (scalar)
457
+ */
458
+ divergence(field: VectorField, point: Float64Array): number;
459
+ /**
460
+ * Create a new numerical derivative computer
461
+ *
462
+ * # Arguments
463
+ *
464
+ * * `step_size` - Optional step size for finite differences (default: 1e-5)
465
+ */
466
+ constructor(step_size?: number | null);
467
+ /**
468
+ * Compute curl of a 3D vector field at a point
469
+ *
470
+ * ∇×F = [∂Fz/∂y - ∂Fy/∂z, ∂Fx/∂z - ∂Fz/∂x, ∂Fy/∂x - ∂Fx/∂y]
471
+ *
472
+ * # Arguments
473
+ *
474
+ * * `field` - 3D vector field
475
+ * * `point` - Evaluation point [x, y, z]
476
+ *
477
+ * # Returns
478
+ *
479
+ * Curl vector [cx, cy, cz]
480
+ */
481
+ curl(field: VectorField, point: Float64Array): Float64Array;
482
+ /**
483
+ * Compute gradient of a scalar field at a point
484
+ *
485
+ * ∇f = [∂f/∂x, ∂f/∂y, ∂f/∂z]
486
+ *
487
+ * # Arguments
488
+ *
489
+ * * `field` - Scalar field
490
+ * * `point` - Evaluation point
491
+ *
492
+ * # Returns
493
+ *
494
+ * Gradient vector
495
+ *
496
+ * # JavaScript Example
497
+ *
498
+ * ```javascript
499
+ * const field = ScalarField.fromFunction2D((x, y) => x*x + y*y);
500
+ * const derivative = new NumericalDerivative();
501
+ * const grad = derivative.gradient(field, [1.0, 2.0]); // Returns [2.0, 4.0]
502
+ * ```
503
+ */
504
+ gradient(field: ScalarField, point: Float64Array): Float64Array;
505
+ /**
506
+ * Compute Laplacian of a scalar field at a point
507
+ *
508
+ * ∇²f = ∂²f/∂x² + ∂²f/∂y² + ∂²f/∂z²
509
+ *
510
+ * # Arguments
511
+ *
512
+ * * `field` - Scalar field
513
+ * * `point` - Evaluation point
514
+ *
515
+ * # Returns
516
+ *
517
+ * Laplacian (scalar)
518
+ */
519
+ laplacian(field: ScalarField, point: Float64Array): number;
520
+ }
387
521
  /**
388
522
  * High-performance WASM operations with memory pooling
389
523
  */
390
524
  export class PerformanceOperations {
391
525
  private constructor();
392
526
  free(): void;
393
- [Symbol.dispose](): void;
394
527
  /**
395
528
  * Batch normalize vectors for efficiency
396
529
  */
@@ -408,13 +541,188 @@ export class PerformanceOperations {
408
541
  */
409
542
  static fastGeometricProduct(lhs: Float64Array, rhs: Float64Array): Float64Array;
410
543
  }
544
+ /**
545
+ * Riemannian manifold with metric tensor
546
+ *
547
+ * Represents a curved space with a metric that defines distances and angles.
548
+ *
549
+ * # JavaScript Example
550
+ *
551
+ * ```javascript
552
+ * // Create a 2D sphere of radius 1
553
+ * const sphere = RiemannianManifold.sphere(1.0);
554
+ *
555
+ * // Compute scalar curvature at the north pole
556
+ * const R = sphere.scalarCurvature([0.0, 0.0]); // Returns 2.0 for unit sphere
557
+ * ```
558
+ */
559
+ export class RiemannianManifold {
560
+ private constructor();
561
+ free(): void;
562
+ /**
563
+ * Create a 2D hyperbolic plane (Poincaré half-plane model)
564
+ *
565
+ * Metric: ds² = (dx² + dy²) / y²
566
+ */
567
+ static hyperbolic(): RiemannianManifold;
568
+ /**
569
+ * Compute Christoffel symbol Γ^k_ij at a point
570
+ *
571
+ * # Arguments
572
+ *
573
+ * * `k` - Upper index
574
+ * * `i` - First lower index
575
+ * * `j` - Second lower index
576
+ * * `coords` - Coordinates
577
+ */
578
+ christoffel(k: number, i: number, j: number, coords: Float64Array): number;
579
+ /**
580
+ * Compute Ricci tensor component R_ij
581
+ *
582
+ * # Arguments
583
+ *
584
+ * * `i` - First index
585
+ * * `j` - Second index
586
+ * * `coords` - Coordinates
587
+ */
588
+ ricciTensor(i: number, j: number, coords: Float64Array): number;
589
+ /**
590
+ * Compute Riemann curvature tensor component R^i_jkl
591
+ *
592
+ * # Arguments
593
+ *
594
+ * * `i` - Upper index
595
+ * * `j` - First lower index
596
+ * * `k` - Second lower index
597
+ * * `l` - Third lower index
598
+ * * `coords` - Coordinates
599
+ */
600
+ riemannTensor(i: number, j: number, k: number, l: number, coords: Float64Array): number;
601
+ /**
602
+ * Compute scalar curvature R
603
+ *
604
+ * # Arguments
605
+ *
606
+ * * `coords` - Coordinates
607
+ *
608
+ * # Returns
609
+ *
610
+ * Scalar curvature value
611
+ */
612
+ scalarCurvature(coords: Float64Array): number;
613
+ /**
614
+ * Create a 2D sphere of given radius
615
+ *
616
+ * Metric: ds² = dθ² + sin²θ dφ²
617
+ *
618
+ * # Arguments
619
+ *
620
+ * * `radius` - Sphere radius
621
+ */
622
+ static sphere(radius: number): RiemannianManifold;
623
+ /**
624
+ * Compute geodesic trajectory
625
+ *
626
+ * Solves the geodesic equations using RK4 integration.
627
+ *
628
+ * # Arguments
629
+ *
630
+ * * `initial_pos` - Initial position
631
+ * * `initial_vel` - Initial velocity
632
+ * * `t_max` - Maximum time
633
+ * * `dt` - Time step
634
+ *
635
+ * # Returns
636
+ *
637
+ * Flat array of trajectory points and velocities:
638
+ * [x0, y0, vx0, vy0, x1, y1, vx1, vy1, ...]
639
+ */
640
+ geodesic(initial_pos: Float64Array, initial_vel: Float64Array, t_max: number, dt: number): Float64Array;
641
+ /**
642
+ * Create a Euclidean (flat) manifold
643
+ *
644
+ * # Arguments
645
+ *
646
+ * * `dimension` - Dimension (2 or 3)
647
+ */
648
+ static euclidean(dimension: number): RiemannianManifold;
649
+ /**
650
+ * Get the dimension of the manifold
651
+ */
652
+ readonly dimension: number;
653
+ }
654
+ /**
655
+ * Scalar field f: ℝⁿ → ℝ
656
+ *
657
+ * Represents a function that maps points in n-dimensional space to real numbers.
658
+ *
659
+ * # JavaScript Example
660
+ *
661
+ * ```javascript
662
+ * // Create a scalar field f(x, y) = x² + y²
663
+ * const field = WasmScalarField.fromFunction2D((x, y) => x*x + y*y);
664
+ *
665
+ * // Evaluate at a point
666
+ * const value = field.evaluate([1.0, 2.0]); // Returns 5.0
667
+ * ```
668
+ */
669
+ export class ScalarField {
670
+ free(): void;
671
+ /**
672
+ * Batch evaluate the field at multiple points
673
+ *
674
+ * # Arguments
675
+ *
676
+ * * `points` - Array of points as flat array [x1, y1, x2, y2, ...]
677
+ *
678
+ * # Returns
679
+ *
680
+ * Array of field values
681
+ */
682
+ batchEvaluate(points: Float64Array): Float64Array;
683
+ /**
684
+ * Create a 2D scalar field from a JavaScript function
685
+ *
686
+ * # Arguments
687
+ *
688
+ * * `func` - JavaScript function (x, y) => f(x, y)
689
+ */
690
+ static fromFunction2D(func: Function): ScalarField;
691
+ /**
692
+ * Create a 3D scalar field from a JavaScript function
693
+ *
694
+ * # Arguments
695
+ *
696
+ * * `func` - JavaScript function (x, y, z) => f(x, y, z)
697
+ */
698
+ static fromFunction3D(func: Function): ScalarField;
699
+ /**
700
+ * Create a 2D scalar field from a JavaScript function
701
+ *
702
+ * # Arguments
703
+ *
704
+ * * `func` - JavaScript function (x, y) => f(x, y)
705
+ */
706
+ constructor(func: Function, dimension: number);
707
+ /**
708
+ * Evaluate the scalar field at a point
709
+ *
710
+ * # Arguments
711
+ *
712
+ * * `point` - Coordinates [x, y] or [x, y, z]
713
+ *
714
+ * # Returns
715
+ *
716
+ * Field value at the point
717
+ */
718
+ evaluate(point: Float64Array): number;
719
+ }
411
720
  /**
412
721
  * Batch operations for tropical numbers
413
722
  */
414
723
  export class TropicalBatch {
415
724
  private constructor();
416
725
  free(): void;
417
- [Symbol.dispose](): void;
418
726
  /**
419
727
  * Convert array of log probabilities to tropical numbers and find maximum
420
728
  */
@@ -438,7 +746,6 @@ export class TropicalBatch {
438
746
  export class TropicalMLOps {
439
747
  private constructor();
440
748
  free(): void;
441
- [Symbol.dispose](): void;
442
749
  /**
443
750
  * Compute shortest paths using tropical algebra (Floyd-Warshall)
444
751
  */
@@ -452,12 +759,61 @@ export class TropicalMLOps {
452
759
  */
453
760
  static convexCombination(values: Float64Array, weights: Float64Array): number;
454
761
  }
762
+ /**
763
+ * Vector field F: ℝⁿ → ℝⁿ
764
+ *
765
+ * Represents a function that maps points to vectors.
766
+ *
767
+ * # JavaScript Example
768
+ *
769
+ * ```javascript
770
+ * // Create a 2D vector field F(x, y) = [y, -x] (rotation)
771
+ * const field = WasmVectorField.fromFunction2D((x, y) => [y, -x]);
772
+ *
773
+ * // Evaluate at a point
774
+ * const vector = field.evaluate([1.0, 2.0]); // Returns [2.0, -1.0]
775
+ * ```
776
+ */
777
+ export class VectorField {
778
+ free(): void;
779
+ /**
780
+ * Create a 2D vector field from a JavaScript function
781
+ *
782
+ * # Arguments
783
+ *
784
+ * * `func` - JavaScript function (x, y) => [fx, fy]
785
+ */
786
+ static fromFunction2D(func: Function): VectorField;
787
+ /**
788
+ * Create a 3D vector field from a JavaScript function
789
+ *
790
+ * # Arguments
791
+ *
792
+ * * `func` - JavaScript function (x, y, z) => [fx, fy, fz]
793
+ */
794
+ static fromFunction3D(func: Function): VectorField;
795
+ /**
796
+ * Create a vector field from a JavaScript function
797
+ */
798
+ constructor(func: Function, dimension: number);
799
+ /**
800
+ * Evaluate the vector field at a point
801
+ *
802
+ * # Arguments
803
+ *
804
+ * * `point` - Coordinates [x, y] or [x, y, z]
805
+ *
806
+ * # Returns
807
+ *
808
+ * Vector at the point
809
+ */
810
+ evaluate(point: Float64Array): Float64Array;
811
+ }
455
812
  /**
456
813
  * WASM wrapper for AlphaConnection
457
814
  */
458
815
  export class WasmAlphaConnection {
459
816
  free(): void;
460
- [Symbol.dispose](): void;
461
817
  /**
462
818
  * Check if this is the mixture connection (α = -1)
463
819
  */
@@ -484,7 +840,6 @@ export class WasmAlphaConnection {
484
840
  */
485
841
  export class WasmChowClass {
486
842
  free(): void;
487
- [Symbol.dispose](): void;
488
843
  /**
489
844
  * Get the degree of this Chow class
490
845
  */
@@ -522,13 +877,35 @@ export class WasmChowClass {
522
877
  */
523
878
  multiply(other: WasmChowClass): WasmChowClass;
524
879
  }
880
+ /**
881
+ * WASM wrapper for cleanup results
882
+ */
883
+ export class WasmCleanupResult {
884
+ private constructor();
885
+ free(): void;
886
+ /**
887
+ * Get the cleaned (denoised) value
888
+ */
889
+ getCleaned(): WasmTropicalDualClifford;
890
+ /**
891
+ * Check if the cleanup converged
892
+ */
893
+ didConverge(): boolean;
894
+ /**
895
+ * Get the number of iterations used
896
+ */
897
+ getIterations(): number;
898
+ /**
899
+ * Get the index of the best matching codebook item
900
+ */
901
+ getBestMatchIndex(): number;
902
+ }
525
903
  /**
526
904
  * WASM wrapper for community detection results
527
905
  */
528
906
  export class WasmCommunity {
529
907
  private constructor();
530
908
  free(): void;
531
- [Symbol.dispose](): void;
532
909
  /**
533
910
  * Get cohesion score
534
911
  */
@@ -549,7 +926,6 @@ export class WasmCommunity {
549
926
  */
550
927
  export class WasmCountingMeasure {
551
928
  free(): void;
552
- [Symbol.dispose](): void;
553
929
  /**
554
930
  * Check if a set is measurable under counting measure
555
931
  * (all sets are measurable under counting measure)
@@ -572,7 +948,6 @@ export class WasmCountingMeasure {
572
948
  */
573
949
  export class WasmDualNumber {
574
950
  free(): void;
575
- [Symbol.dispose](): void;
576
951
  /**
577
952
  * Natural logarithm
578
953
  */
@@ -639,6 +1014,8 @@ export class WasmDualNumber {
639
1014
  powi(n: number): WasmDualNumber;
640
1015
  /**
641
1016
  * ReLU activation function
1017
+ *
1018
+ * Note: Manual implementation as relu() is not in v0.12.0 DualNumber API
642
1019
  */
643
1020
  relu(): WasmDualNumber;
644
1021
  /**
@@ -671,6 +1048,9 @@ export class WasmDualNumber {
671
1048
  getReal(): number;
672
1049
  /**
673
1050
  * Softplus activation function
1051
+ *
1052
+ * Note: Manual implementation as softplus() is not in v0.12.0 DualNumber API
1053
+ * softplus(x) = ln(1 + exp(x))
674
1054
  */
675
1055
  softplus(): WasmDualNumber;
676
1056
  /**
@@ -683,7 +1063,6 @@ export class WasmDualNumber {
683
1063
  */
684
1064
  export class WasmDuallyFlatManifold {
685
1065
  free(): void;
686
- [Symbol.dispose](): void;
687
1066
  /**
688
1067
  * Compute JS divergence (symmetric version of KL divergence)
689
1068
  */
@@ -715,7 +1094,6 @@ export class WasmDuallyFlatManifold {
715
1094
  export class WasmEvaluationResult {
716
1095
  private constructor();
717
1096
  free(): void;
718
- [Symbol.dispose](): void;
719
1097
  /**
720
1098
  * Get gradient norm from dual numbers
721
1099
  */
@@ -743,7 +1121,6 @@ export class WasmEvaluationResult {
743
1121
  export class WasmFisherInformationMatrix {
744
1122
  private constructor();
745
1123
  free(): void;
746
- [Symbol.dispose](): void;
747
1124
  /**
748
1125
  * Get eigenvalues of the Fisher matrix
749
1126
  */
@@ -763,7 +1140,6 @@ export class WasmFisherInformationMatrix {
763
1140
  export class WasmFisherMeasure {
764
1141
  private constructor();
765
1142
  free(): void;
766
- [Symbol.dispose](): void;
767
1143
  /**
768
1144
  * Create Fisher measure from a parametric density
769
1145
  */
@@ -783,7 +1159,6 @@ export class WasmFisherMeasure {
783
1159
  export class WasmFourVelocity {
784
1160
  private constructor();
785
1161
  free(): void;
786
- [Symbol.dispose](): void;
787
1162
  /**
788
1163
  * Create four-velocity from 3-velocity components
789
1164
  */
@@ -819,7 +1194,6 @@ export class WasmFourVelocity {
819
1194
  export class WasmGeodesicIntegrator {
820
1195
  private constructor();
821
1196
  free(): void;
822
- [Symbol.dispose](): void;
823
1197
  /**
824
1198
  * Propagate particle through spacetime
825
1199
  */
@@ -834,7 +1208,6 @@ export class WasmGeodesicIntegrator {
834
1208
  */
835
1209
  export class WasmGeometricCA {
836
1210
  free(): void;
837
- [Symbol.dispose](): void;
838
1211
  /**
839
1212
  * Add a glider pattern (if supported by the rule)
840
1213
  */
@@ -901,7 +1274,6 @@ export class WasmGeometricCA {
901
1274
  */
902
1275
  export class WasmGeometricEdge {
903
1276
  free(): void;
904
- [Symbol.dispose](): void;
905
1277
  /**
906
1278
  * Create a new geometric edge
907
1279
  */
@@ -924,7 +1296,6 @@ export class WasmGeometricEdge {
924
1296
  */
925
1297
  export class WasmGeometricNetwork {
926
1298
  free(): void;
927
- [Symbol.dispose](): void;
928
1299
  /**
929
1300
  * Get the degree of a node
930
1301
  */
@@ -1011,7 +1382,6 @@ export class WasmGeometricNetwork {
1011
1382
  */
1012
1383
  export class WasmGpuOptimizer {
1013
1384
  free(): void;
1014
- [Symbol.dispose](): void;
1015
1385
  /**
1016
1386
  * Initialize GPU context for optimization
1017
1387
  */
@@ -1038,7 +1408,6 @@ export class WasmGpuOptimizer {
1038
1408
  */
1039
1409
  export class WasmGrassmannian {
1040
1410
  free(): void;
1041
- [Symbol.dispose](): void;
1042
1411
  /**
1043
1412
  * Get the dimension of this Grassmannian
1044
1413
  */
@@ -1052,12 +1421,73 @@ export class WasmGrassmannian {
1052
1421
  */
1053
1422
  constructor(k: number, n: number);
1054
1423
  }
1424
+ /**
1425
+ * WASM wrapper for HolographicMemory
1426
+ */
1427
+ export class WasmHolographicMemory {
1428
+ free(): void;
1429
+ /**
1430
+ * Get the number of stored items
1431
+ */
1432
+ itemCount(): number;
1433
+ /**
1434
+ * Batch store multiple key-value pairs
1435
+ */
1436
+ storeBatch(keys: Float64Array, values: Float64Array): void;
1437
+ /**
1438
+ * Get the estimated SNR (signal-to-noise ratio)
1439
+ */
1440
+ estimatedSnr(): number;
1441
+ /**
1442
+ * Check if memory is near capacity
1443
+ */
1444
+ isNearCapacity(): boolean;
1445
+ /**
1446
+ * Check if memory probably contains a key
1447
+ */
1448
+ probablyContains(key: WasmTropicalDualClifford): boolean;
1449
+ /**
1450
+ * Create with key tracking enabled (for attribution)
1451
+ */
1452
+ static withKeyTracking(): WasmHolographicMemory;
1453
+ /**
1454
+ * Get the theoretical capacity
1455
+ */
1456
+ theoreticalCapacity(): number;
1457
+ /**
1458
+ * Retrieve with custom temperature
1459
+ */
1460
+ retrieveAtTemperature(key: WasmTropicalDualClifford, beta: number): WasmRetrievalResult;
1461
+ /**
1462
+ * Create with custom bundle temperature
1463
+ */
1464
+ static withBundleTemperature(beta: number): WasmHolographicMemory;
1465
+ /**
1466
+ * Create a new holographic memory with default settings
1467
+ */
1468
+ constructor();
1469
+ /**
1470
+ * Clear all stored items
1471
+ */
1472
+ clear(): void;
1473
+ /**
1474
+ * Merge another memory into this one
1475
+ */
1476
+ merge(other: WasmHolographicMemory): void;
1477
+ /**
1478
+ * Store a key-value pair in memory
1479
+ */
1480
+ store(key: WasmTropicalDualClifford, value: WasmTropicalDualClifford): void;
1481
+ /**
1482
+ * Retrieve a value by key
1483
+ */
1484
+ retrieve(key: WasmTropicalDualClifford): WasmRetrievalResult;
1485
+ }
1055
1486
  /**
1056
1487
  * WASM wrapper for Inverse CA Designer (simplified)
1057
1488
  */
1058
1489
  export class WasmInverseCADesigner {
1059
1490
  free(): void;
1060
- [Symbol.dispose](): void;
1061
1491
  /**
1062
1492
  * Set the target pattern that we want to achieve
1063
1493
  */
@@ -1083,7 +1513,6 @@ export class WasmInverseCADesigner {
1083
1513
  */
1084
1514
  export class WasmLebesgueMeasure {
1085
1515
  free(): void;
1086
- [Symbol.dispose](): void;
1087
1516
  /**
1088
1517
  * Compute the measure of a box (hyper-rectangle) with given side lengths
1089
1518
  */
@@ -1113,7 +1542,6 @@ export class WasmLebesgueMeasure {
1113
1542
  export class WasmModuliSpace {
1114
1543
  private constructor();
1115
1544
  free(): void;
1116
- [Symbol.dispose](): void;
1117
1545
  /**
1118
1546
  * Create moduli space of stable curves
1119
1547
  */
@@ -1144,7 +1572,6 @@ export class WasmModuliSpace {
1144
1572
  */
1145
1573
  export class WasmMultiDualNumber {
1146
1574
  free(): void;
1147
- [Symbol.dispose](): void;
1148
1575
  /**
1149
1576
  * Get a specific partial derivative
1150
1577
  */
@@ -1191,7 +1618,6 @@ export class WasmMultiDualNumber {
1191
1618
  */
1192
1619
  export class WasmMultiObjectiveOptimizer {
1193
1620
  free(): void;
1194
- [Symbol.dispose](): void;
1195
1621
  /**
1196
1622
  * Optimize a simple bi-objective problem
1197
1623
  * f1 = sum(x_i^2), f2 = sum((x_i - 1)^2)
@@ -1208,7 +1634,6 @@ export class WasmMultiObjectiveOptimizer {
1208
1634
  export class WasmMultiObjectiveResult {
1209
1635
  private constructor();
1210
1636
  free(): void;
1211
- [Symbol.dispose](): void;
1212
1637
  /**
1213
1638
  * Get number of generations
1214
1639
  */
@@ -1227,7 +1652,6 @@ export class WasmMultiObjectiveResult {
1227
1652
  */
1228
1653
  export class WasmMultivector {
1229
1654
  free(): void;
1230
- [Symbol.dispose](): void;
1231
1655
  /**
1232
1656
  * Create a basis vector (0-indexed)
1233
1657
  */
@@ -1318,7 +1742,6 @@ export class WasmMultivector {
1318
1742
  */
1319
1743
  export class WasmNodeMetadata {
1320
1744
  free(): void;
1321
- [Symbol.dispose](): void;
1322
1745
  /**
1323
1746
  * Create metadata with label
1324
1747
  */
@@ -1350,7 +1773,6 @@ export class WasmNodeMetadata {
1350
1773
  export class WasmOptimizationResult {
1351
1774
  private constructor();
1352
1775
  free(): void;
1353
- [Symbol.dispose](): void;
1354
1776
  /**
1355
1777
  * Get number of iterations
1356
1778
  */
@@ -1374,7 +1796,6 @@ export class WasmOptimizationResult {
1374
1796
  export class WasmOptimizationUtils {
1375
1797
  private constructor();
1376
1798
  free(): void;
1377
- [Symbol.dispose](): void;
1378
1799
  /**
1379
1800
  * Compute numerical gradient
1380
1801
  */
@@ -1390,7 +1811,6 @@ export class WasmOptimizationUtils {
1390
1811
  export class WasmParametricDensity {
1391
1812
  private constructor();
1392
1813
  free(): void;
1393
- [Symbol.dispose](): void;
1394
1814
  /**
1395
1815
  * Create an Exponential density Exp(λ)
1396
1816
  */
@@ -1435,7 +1855,6 @@ export class WasmParametricDensity {
1435
1855
  */
1436
1856
  export class WasmProbabilityMeasure {
1437
1857
  free(): void;
1438
- [Symbol.dispose](): void;
1439
1858
  /**
1440
1859
  * Get a description of this probability measure
1441
1860
  */
@@ -1458,7 +1877,6 @@ export class WasmProbabilityMeasure {
1458
1877
  */
1459
1878
  export class WasmProjectiveSpace {
1460
1879
  free(): void;
1461
- [Symbol.dispose](): void;
1462
1880
  /**
1463
1881
  * Get the dimension of this projective space
1464
1882
  */
@@ -1482,7 +1900,6 @@ export class WasmProjectiveSpace {
1482
1900
  export class WasmPropagationAnalysis {
1483
1901
  private constructor();
1484
1902
  free(): void;
1485
- [Symbol.dispose](): void;
1486
1903
  /**
1487
1904
  * Get convergence time
1488
1905
  */
@@ -1502,7 +1919,6 @@ export class WasmPropagationAnalysis {
1502
1919
  export class WasmRelativisticConstants {
1503
1920
  private constructor();
1504
1921
  free(): void;
1505
- [Symbol.dispose](): void;
1506
1922
  /**
1507
1923
  * Earth mass (kg)
1508
1924
  */
@@ -1525,7 +1941,6 @@ export class WasmRelativisticConstants {
1525
1941
  */
1526
1942
  export class WasmRelativisticParticle {
1527
1943
  free(): void;
1528
- [Symbol.dispose](): void;
1529
1944
  /**
1530
1945
  * Get 3D position components
1531
1946
  */
@@ -1571,13 +1986,53 @@ export class WasmRelativisticParticle {
1571
1986
  */
1572
1987
  to_string(): string;
1573
1988
  }
1989
+ /**
1990
+ * WASM wrapper for Resonator (iterative cleanup)
1991
+ */
1992
+ export class WasmResonator {
1993
+ free(): void;
1994
+ /**
1995
+ * Create with custom configuration
1996
+ */
1997
+ static withConfig(codebook_flat: Float64Array, max_iterations: number, convergence_threshold: number): WasmResonator;
1998
+ /**
1999
+ * Get the codebook size
2000
+ */
2001
+ codebookSize(): number;
2002
+ /**
2003
+ * Create a resonator from a codebook of TDC vectors
2004
+ */
2005
+ constructor(codebook_flat: Float64Array);
2006
+ /**
2007
+ * Clean up a noisy input to find the closest codebook item
2008
+ */
2009
+ cleanup(input: WasmTropicalDualClifford): WasmCleanupResult;
2010
+ }
2011
+ /**
2012
+ * WASM wrapper for retrieval results
2013
+ */
2014
+ export class WasmRetrievalResult {
2015
+ private constructor();
2016
+ free(): void;
2017
+ /**
2018
+ * Get the retrieval confidence (0 to 1)
2019
+ */
2020
+ getConfidence(): number;
2021
+ /**
2022
+ * Get attribution as arrays of [index, weight] pairs
2023
+ */
2024
+ getAttribution(): any;
2025
+ /**
2026
+ * Get the retrieved value
2027
+ */
2028
+ getValue(): WasmTropicalDualClifford;
2029
+ }
1574
2030
  /**
1575
2031
  * Rotor operations for WASM
1576
2032
  */
1577
2033
  export class WasmRotor {
1578
2034
  private constructor();
1579
2035
  free(): void;
1580
- [Symbol.dispose](): void;
1581
2036
  /**
1582
2037
  * Create a rotor from a bivector and angle
1583
2038
  */
@@ -1601,7 +2056,6 @@ export class WasmRotor {
1601
2056
  export class WasmSchwarzschildMetric {
1602
2057
  private constructor();
1603
2058
  free(): void;
1604
- [Symbol.dispose](): void;
1605
2059
  /**
1606
2060
  * Check for singularity at given position
1607
2061
  */
@@ -1636,7 +2090,6 @@ export class WasmSchwarzschildMetric {
1636
2090
  */
1637
2091
  export class WasmSelfAssembler {
1638
2092
  free(): void;
1639
- [Symbol.dispose](): void;
1640
2093
  /**
1641
2094
  * Add a component to the system
1642
2095
  */
@@ -1660,7 +2113,6 @@ export class WasmSelfAssembler {
1660
2113
  export class WasmSensitivityMap {
1661
2114
  private constructor();
1662
2115
  free(): void;
1663
- [Symbol.dispose](): void;
1664
2116
  /**
1665
2117
  * Get components with highest sensitivity (for optimization)
1666
2118
  */
@@ -1679,7 +2131,6 @@ export class WasmSensitivityMap {
1679
2131
  */
1680
2132
  export class WasmSimpleOptimizer {
1681
2133
  free(): void;
1682
- [Symbol.dispose](): void;
1683
2134
  /**
1684
2135
  * Optimize a simple quadratic function: minimize sum(c_i * x_i^2)
1685
2136
  */
@@ -1694,7 +2145,6 @@ export class WasmSimpleOptimizer {
1694
2145
  */
1695
2146
  export class WasmSpacetimeVector {
1696
2147
  free(): void;
1697
- [Symbol.dispose](): void;
1698
2148
  /**
1699
2149
  * Check if vector is timelike (massive particle)
1700
2150
  */
@@ -1754,7 +2204,6 @@ export class WasmSpacetimeVector {
1754
2204
  export class WasmTrajectoryPoint {
1755
2205
  private constructor();
1756
2206
  free(): void;
1757
- [Symbol.dispose](): void;
1758
2207
  /**
1759
2208
  * Time coordinate
1760
2209
  */
@@ -1769,7 +2218,6 @@ export class WasmTrajectoryPoint {
1769
2218
  */
1770
2219
  export class WasmTropicalCurve {
1771
2220
  free(): void;
1772
- [Symbol.dispose](): void;
1773
2221
  /**
1774
2222
  * Get the degree of this tropical curve
1775
2223
  */
@@ -1792,7 +2240,61 @@ export class WasmTropicalCurve {
1792
2240
  */
1793
2241
  export class WasmTropicalDualClifford {
1794
2242
  free(): void;
1795
- [Symbol.dispose](): void;
2243
+ /**
2244
+ * Compute similarity between two TDC objects
2245
+ *
2246
+ * Uses the proper Clifford inner product with reverse: <A B̃>₀ / (|A| |B|)
2247
+ * Returns a value in [-1, 1].
2248
+ */
2249
+ similarity(other: WasmTropicalDualClifford): number;
2250
+ /**
2251
+ * Create a random unit vector TDC (grade 1 only)
2252
+ *
2253
+ * Unit vectors are guaranteed invertible and useful for
2254
+ * proper VSA (Vector Symbolic Architecture) operations.
2255
+ */
2256
+ static randomVector(): WasmTropicalDualClifford;
2257
+ /**
2258
+ * Compute binding inverse
2259
+ *
2260
+ * If successful, `x.bind(x.bindingInverse()) ≈ identity`
2261
+ */
2262
+ bindingInverse(): WasmTropicalDualClifford;
2263
+ /**
2264
+ * Get the binding identity element
2265
+ *
2266
+ * `x.bind(identity) = x` for any x
2267
+ */
2268
+ static bindingIdentity(): WasmTropicalDualClifford;
2269
+ /**
2270
+ * Normalize the TDC to unit norm
2271
+ */
2272
+ normalizeToUnit(): WasmTropicalDualClifford;
2273
+ /**
2274
+ * Compute Clifford similarity (proper inner product with reverse)
2275
+ */
2276
+ cliffordSimilarity(other: WasmTropicalDualClifford): number;
2277
+ /**
2278
+ * Bind two TDC objects using geometric product (creates associations)
2279
+ *
2280
+ * The result is dissimilar to both inputs - useful for creating
2281
+ * key-value associations in holographic memory.
2282
+ */
2283
+ bind(other: WasmTropicalDualClifford): WasmTropicalDualClifford;
2284
+ /**
2285
+ * Bundle two TDC objects (superposition/aggregation)
2286
+ *
2287
+ * The result is similar to both inputs - useful for storing
2288
+ * multiple associations in the same memory trace.
2289
+ * `beta` controls soft (1.0) vs hard (∞) bundling.
2290
+ */
2291
+ bundle(other: WasmTropicalDualClifford, beta: number): WasmTropicalDualClifford;
2292
+ /**
2293
+ * Unbind: retrieve associated value
2294
+ *
2295
+ * If `bound = key.bind(value)`, then `key.unbind(bound) ≈ value`
2296
+ */
2297
+ unbind(other: WasmTropicalDualClifford): WasmTropicalDualClifford;
1796
2298
  /**
1797
2299
  * Create from logits (array of log-probabilities)
1798
2300
  */
@@ -1815,6 +2317,8 @@ export class WasmTropicalDualClifford {
1815
2317
  static randomWithScale(scale: number): WasmTropicalDualClifford;
1816
2318
  /**
1817
2319
  * Create from probability distribution
2320
+ *
2321
+ * Note: Converts probabilities to log space for tropical representation
1818
2322
  */
1819
2323
  static fromProbabilities(probs: Float64Array): WasmTropicalDualClifford;
1820
2324
  /**
@@ -1827,6 +2331,9 @@ export class WasmTropicalDualClifford {
1827
2331
  getDualDerivatives(): Float64Array;
1828
2332
  /**
1829
2333
  * Perform sensitivity analysis for gradient-based optimization
2334
+ *
2335
+ * Note: This feature is not yet available in v0.12.0
2336
+ * TODO: Re-enable when sensitivity_analysis is added to TropicalDualClifford
1830
2337
  */
1831
2338
  sensitivityAnalysis(): WasmSensitivityMap;
1832
2339
  /**
@@ -1874,43 +2381,11 @@ export class WasmTropicalDualClifford {
1874
2381
  */
1875
2382
  transform(transformation: WasmTropicalDualClifford): WasmTropicalDualClifford;
1876
2383
  }
1877
- /**
1878
- * WASM wrapper for LLM token distributions
1879
- */
1880
- export class WasmTropicalDualDistribution {
1881
- free(): void;
1882
- [Symbol.dispose](): void;
1883
- /**
1884
- * Compute KL divergence with automatic gradients
1885
- */
1886
- klDivergence(other: WasmTropicalDualDistribution): any;
1887
- /**
1888
- * Get vocabulary size
1889
- */
1890
- getVocabSize(): number;
1891
- /**
1892
- * Get attention pattern as tropical polytope vertices
1893
- */
1894
- attentionPolytope(): Float64Array;
1895
- /**
1896
- * Compute geometric alignment with reference distribution
1897
- */
1898
- geometricAlignment(reference: WasmTropicalDualDistribution): number;
1899
- /**
1900
- * Generate most likely sequence using tropical algebra (Viterbi-like)
1901
- */
1902
- mostLikelySequence(length: number): Uint32Array;
1903
- /**
1904
- * Create from logit vector (typical LLM output)
1905
- */
1906
- constructor(logits: Float64Array);
1907
- }
1908
2384
  /**
1909
2385
  * Tropical (max-plus) algebra operations for optimization
1910
2386
  */
1911
2387
  export class WasmTropicalMeasure {
1912
2388
  free(): void;
1913
- [Symbol.dispose](): void;
1914
2389
  /**
1915
2390
  * Tropical integration (supremum over region)
1916
2391
  */
@@ -1937,7 +2412,6 @@ export class WasmTropicalMeasure {
1937
2412
  */
1938
2413
  export class WasmTropicalNetwork {
1939
2414
  free(): void;
1940
- [Symbol.dispose](): void;
1941
2415
  /**
1942
2416
  * Create tropical network from weight matrix
1943
2417
  */
@@ -1968,9 +2442,10 @@ export class WasmTropicalNetwork {
1968
2442
  */
1969
2443
  export class WasmTropicalNumber {
1970
2444
  free(): void;
1971
- [Symbol.dispose](): void;
1972
2445
  /**
1973
2446
  * Check if this is infinite
2447
+ *
2448
+ * Note: Manual implementation as is_infinity() not in v0.12.0 API
1974
2449
  */
1975
2450
  isInfinity(): boolean;
1976
2451
  /**
@@ -1987,6 +2462,8 @@ export class WasmTropicalNumber {
1987
2462
  tropicalPow(n: number): WasmTropicalNumber;
1988
2463
  /**
1989
2464
  * Create from log probability
2465
+ *
2466
+ * Note: Manual implementation as from_log_prob() not in v0.12.0 API
1990
2467
  */
1991
2468
  static fromLogProb(log_p: number): WasmTropicalNumber;
1992
2469
  /**
@@ -1999,6 +2476,8 @@ export class WasmTropicalNumber {
1999
2476
  mul(other: WasmTropicalNumber): WasmTropicalNumber;
2000
2477
  /**
2001
2478
  * Negation
2479
+ *
2480
+ * Note: Manual implementation as Neg trait not implemented in v0.12.0 API
2002
2481
  */
2003
2482
  neg(): WasmTropicalNumber;
2004
2483
  /**
@@ -2023,6 +2502,8 @@ export class WasmTropicalNumber {
2023
2502
  isZero(): boolean;
2024
2503
  /**
2025
2504
  * Convert to probability (via exp)
2505
+ *
2506
+ * Note: Manual implementation as to_prob() not in v0.12.0 API
2026
2507
  */
2027
2508
  toProb(): number;
2028
2509
  /**
@@ -2035,7 +2516,6 @@ export class WasmTropicalNumber {
2035
2516
  */
2036
2517
  export class WasmTropicalPolynomial {
2037
2518
  free(): void;
2038
- [Symbol.dispose](): void;
2039
2519
  /**
2040
2520
  * Find tropical roots of the polynomial
2041
2521
  */
@@ -2058,7 +2538,6 @@ export class WasmTropicalPolynomial {
2058
2538
  */
2059
2539
  export class WasmTropicalViterbi {
2060
2540
  free(): void;
2061
- [Symbol.dispose](): void;
2062
2541
  /**
2063
2542
  * Compute forward probabilities for all states
2064
2543
  */
@@ -2085,9 +2564,12 @@ export interface InitOutput {
2085
2564
  readonly memory: WebAssembly.Memory;
2086
2565
  readonly __wbg_autodiff_free: (a: number, b: number) => void;
2087
2566
  readonly __wbg_get_wasmtrajectorypoint_time: (a: number) => number;
2567
+ readonly __wbg_numericalderivative_free: (a: number, b: number) => void;
2568
+ readonly __wbg_riemannianmanifold_free: (a: number, b: number) => void;
2569
+ readonly __wbg_scalarfield_free: (a: number, b: number) => void;
2088
2570
  readonly __wbg_set_wasmtrajectorypoint_time: (a: number, b: number) => void;
2089
- readonly __wbg_wasmalphaconnection_free: (a: number, b: number) => void;
2090
2571
  readonly __wbg_wasmchowclass_free: (a: number, b: number) => void;
2572
+ readonly __wbg_wasmcleanupresult_free: (a: number, b: number) => void;
2091
2573
  readonly __wbg_wasmcommunity_free: (a: number, b: number) => void;
2092
2574
  readonly __wbg_wasmduallyflatmanifold_free: (a: number, b: number) => void;
2093
2575
  readonly __wbg_wasmevaluationresult_free: (a: number, b: number) => void;
@@ -2097,6 +2579,7 @@ export interface InitOutput {
2097
2579
  readonly __wbg_wasmgeometricca_free: (a: number, b: number) => void;
2098
2580
  readonly __wbg_wasmgeometricnetwork_free: (a: number, b: number) => void;
2099
2581
  readonly __wbg_wasmgrassmannian_free: (a: number, b: number) => void;
2582
+ readonly __wbg_wasmholographicmemory_free: (a: number, b: number) => void;
2100
2583
  readonly __wbg_wasminversecadesigner_free: (a: number, b: number) => void;
2101
2584
  readonly __wbg_wasmlebesguemeasure_free: (a: number, b: number) => void;
2102
2585
  readonly __wbg_wasmmodulispace_free: (a: number, b: number) => void;
@@ -2106,12 +2589,13 @@ export interface InitOutput {
2106
2589
  readonly __wbg_wasmoptimizationresult_free: (a: number, b: number) => void;
2107
2590
  readonly __wbg_wasmpropagationanalysis_free: (a: number, b: number) => void;
2108
2591
  readonly __wbg_wasmrelativisticparticle_free: (a: number, b: number) => void;
2592
+ readonly __wbg_wasmresonator_free: (a: number, b: number) => void;
2593
+ readonly __wbg_wasmretrievalresult_free: (a: number, b: number) => void;
2109
2594
  readonly __wbg_wasmschwarzschildmetric_free: (a: number, b: number) => void;
2110
2595
  readonly __wbg_wasmselfassembler_free: (a: number, b: number) => void;
2111
2596
  readonly __wbg_wasmsensitivitymap_free: (a: number, b: number) => void;
2112
2597
  readonly __wbg_wasmtrajectorypoint_free: (a: number, b: number) => void;
2113
2598
  readonly __wbg_wasmtropicaldualclifford_free: (a: number, b: number) => void;
2114
- readonly __wbg_wasmtropicaldualdistribution_free: (a: number, b: number) => void;
2115
2599
  readonly __wbg_wasmtropicalnetwork_free: (a: number, b: number) => void;
2116
2600
  readonly __wbg_wasmtropicalpolynomial_free: (a: number, b: number) => void;
2117
2601
  readonly __wbg_wasmtropicalviterbi_free: (a: number, b: number) => void;
@@ -2157,12 +2641,14 @@ export interface InitOutput {
2157
2641
  readonly infogeomutils_mutualInformation: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
2158
2642
  readonly infogeomutils_normalize: (a: number, b: number) => [number, number, number, number];
2159
2643
  readonly infogeomutils_randomSimplex: (a: number) => [number, number];
2160
- readonly infogeomutils_softmax: (a: number, b: number) => [number, number];
2161
2644
  readonly init: () => void;
2162
2645
  readonly initAutomata: () => void;
2163
2646
  readonly initEnumerative: () => void;
2164
2647
  readonly initFusion: () => void;
2648
+ readonly initHolographic: () => void;
2165
2649
  readonly integrate: (a: any, b: number, c: number, d: number, e: number) => [number, number, number];
2650
+ readonly integration_integrate1D: (a: any, b: number, c: number, d: number) => [number, number, number];
2651
+ readonly integration_integrate2D: (a: any, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
2166
2652
  readonly klDivergence: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number];
2167
2653
  readonly light_deflection_angle: (a: number, b: number) => number;
2168
2654
  readonly mlops_batchActivation: (a: number, b: number, c: number, d: number) => [number, number, number, number];
@@ -2172,10 +2658,29 @@ export interface InitOutput {
2172
2658
  readonly networkutils_clusteringCoefficient: (a: number) => number;
2173
2659
  readonly networkutils_createRandomNetwork: (a: number, b: number) => [number, number, number];
2174
2660
  readonly networkutils_createSmallWorldNetwork: (a: number, b: number, c: number) => [number, number, number];
2661
+ readonly numericalderivative_curl: (a: number, b: number, c: number, d: number) => [number, number, number, number];
2662
+ readonly numericalderivative_divergence: (a: number, b: number, c: number, d: number) => [number, number, number];
2663
+ readonly numericalderivative_gradient: (a: number, b: number, c: number, d: number) => [number, number, number, number];
2664
+ readonly numericalderivative_laplacian: (a: number, b: number, c: number, d: number) => [number, number, number];
2665
+ readonly numericalderivative_new: (a: number, b: number) => number;
2175
2666
  readonly performanceoperations_batchNormalize: (a: number, b: number, c: number) => [number, number];
2176
2667
  readonly performanceoperations_fastGeometricProduct: (a: number, b: number, c: number, d: number) => [number, number];
2177
2668
  readonly performanceoperations_vectorCrossProduct: (a: number, b: number, c: number, d: number) => [number, number];
2178
2669
  readonly performanceoperations_vectorDotProduct: (a: number, b: number, c: number, d: number) => number;
2670
+ readonly riemannianmanifold_christoffel: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
2671
+ readonly riemannianmanifold_dimension: (a: number) => number;
2672
+ readonly riemannianmanifold_euclidean: (a: number) => [number, number, number];
2673
+ readonly riemannianmanifold_geodesic: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
2674
+ readonly riemannianmanifold_hyperbolic: () => number;
2675
+ readonly riemannianmanifold_ricciTensor: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
2676
+ readonly riemannianmanifold_riemannTensor: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
2677
+ readonly riemannianmanifold_scalarCurvature: (a: number, b: number, c: number) => [number, number, number];
2678
+ readonly riemannianmanifold_sphere: (a: number) => [number, number, number];
2679
+ readonly scalarfield_batchEvaluate: (a: number, b: number, c: number) => [number, number, number, number];
2680
+ readonly scalarfield_evaluate: (a: number, b: number, c: number) => [number, number, number];
2681
+ readonly scalarfield_fromFunction2D: (a: any) => number;
2682
+ readonly scalarfield_fromFunction3D: (a: any) => number;
2683
+ readonly scalarfield_new: (a: any, b: number) => number;
2179
2684
  readonly tropicalbatch_batchTropicalAdd: (a: number, b: number) => number;
2180
2685
  readonly tropicalbatch_batchTropicalMul: (a: number, b: number) => number;
2181
2686
  readonly tropicalbatch_maxLogProb: (a: number, b: number) => number;
@@ -2184,6 +2689,7 @@ export interface InitOutput {
2184
2689
  readonly tropicalmlops_matrixMultiply: (a: any, b: any) => [number, number, number];
2185
2690
  readonly tropicalmlops_shortestPaths: (a: any) => [number, number, number];
2186
2691
  readonly validate_relativistic_module: () => number;
2692
+ readonly vectorfield_evaluate: (a: number, b: number, c: number) => [number, number, number, number];
2187
2693
  readonly velocity_to_gamma: (a: number) => [number, number, number];
2188
2694
  readonly wasmalphaconnection_getAlpha: (a: number) => number;
2189
2695
  readonly wasmalphaconnection_isExponential: (a: number) => number;
@@ -2199,6 +2705,10 @@ export interface InitOutput {
2199
2705
  readonly wasmchowclass_new: (a: number, b: number) => number;
2200
2706
  readonly wasmchowclass_point: () => number;
2201
2707
  readonly wasmchowclass_power: (a: number, b: number) => number;
2708
+ readonly wasmcleanupresult_didConverge: (a: number) => number;
2709
+ readonly wasmcleanupresult_getBestMatchIndex: (a: number) => number;
2710
+ readonly wasmcleanupresult_getCleaned: (a: number) => number;
2711
+ readonly wasmcleanupresult_getIterations: (a: number) => number;
2202
2712
  readonly wasmcommunity_centroid_coefficients: (a: number) => [number, number];
2203
2713
  readonly wasmcommunity_nodes: (a: number) => [number, number];
2204
2714
  readonly wasmcountingmeasure_isMeasurable: (a: number) => number;
@@ -2298,6 +2808,20 @@ export interface InitOutput {
2298
2808
  readonly wasmgrassmannian_getDimension: (a: number) => number;
2299
2809
  readonly wasmgrassmannian_getParameters: (a: number) => [number, number];
2300
2810
  readonly wasmgrassmannian_new: (a: number, b: number) => [number, number, number];
2811
+ readonly wasmholographicmemory_clear: (a: number) => void;
2812
+ readonly wasmholographicmemory_estimatedSnr: (a: number) => number;
2813
+ readonly wasmholographicmemory_isNearCapacity: (a: number) => number;
2814
+ readonly wasmholographicmemory_itemCount: (a: number) => number;
2815
+ readonly wasmholographicmemory_merge: (a: number, b: number) => void;
2816
+ readonly wasmholographicmemory_new: () => number;
2817
+ readonly wasmholographicmemory_probablyContains: (a: number, b: number) => number;
2818
+ readonly wasmholographicmemory_retrieve: (a: number, b: number) => number;
2819
+ readonly wasmholographicmemory_retrieveAtTemperature: (a: number, b: number, c: number) => number;
2820
+ readonly wasmholographicmemory_store: (a: number, b: number, c: number) => void;
2821
+ readonly wasmholographicmemory_storeBatch: (a: number, b: number, c: number, d: number, e: number) => [number, number];
2822
+ readonly wasmholographicmemory_theoreticalCapacity: (a: number) => number;
2823
+ readonly wasmholographicmemory_withBundleTemperature: (a: number) => number;
2824
+ readonly wasmholographicmemory_withKeyTracking: () => number;
2301
2825
  readonly wasminversecadesigner_evaluateFitness: (a: number, b: number, c: number) => [number, number, number];
2302
2826
  readonly wasminversecadesigner_findSeed: (a: number, b: number, c: number) => [number, number, number, number];
2303
2827
  readonly wasminversecadesigner_new: (a: number, b: number) => number;
@@ -2351,7 +2875,6 @@ export interface InitOutput {
2351
2875
  readonly wasmnodemetadata_set_label: (a: number, b: number, c: number) => void;
2352
2876
  readonly wasmnodemetadata_withLabel: (a: number, b: number) => number;
2353
2877
  readonly wasmoptimizationresult_converged: (a: number) => number;
2354
- readonly wasmoptimizationresult_iterations: (a: number) => number;
2355
2878
  readonly wasmoptimizationresult_solution: (a: number) => [number, number];
2356
2879
  readonly wasmoptimizationutils_dominates: (a: number, b: number, c: number, d: number) => number;
2357
2880
  readonly wasmoptimizationutils_numericalGradient: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
@@ -2387,6 +2910,13 @@ export interface InitOutput {
2387
2910
  readonly wasmrelativisticparticle_to_string: (a: number) => [number, number];
2388
2911
  readonly wasmrelativisticparticle_total_energy: (a: number) => number;
2389
2912
  readonly wasmrelativisticparticle_with_energy: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number];
2913
+ readonly wasmresonator_cleanup: (a: number, b: number) => number;
2914
+ readonly wasmresonator_codebookSize: (a: number) => number;
2915
+ readonly wasmresonator_new: (a: number, b: number) => [number, number, number];
2916
+ readonly wasmresonator_withConfig: (a: number, b: number, c: number, d: number) => [number, number, number];
2917
+ readonly wasmretrievalresult_getAttribution: (a: number) => [number, number, number];
2918
+ readonly wasmretrievalresult_getConfidence: (a: number) => number;
2919
+ readonly wasmretrievalresult_getValue: (a: number) => number;
2390
2920
  readonly wasmrotor_apply: (a: number, b: number) => number;
2391
2921
  readonly wasmrotor_compose: (a: number, b: number) => number;
2392
2922
  readonly wasmrotor_fromBivector: (a: number, b: number) => number;
@@ -2417,6 +2947,11 @@ export interface InitOutput {
2417
2947
  readonly wasmtropicalcurve_getDegree: (a: number) => number;
2418
2948
  readonly wasmtropicalcurve_new: (a: number, b: number) => number;
2419
2949
  readonly wasmtropicaldualclifford_add: (a: number, b: number) => number;
2950
+ readonly wasmtropicaldualclifford_bind: (a: number, b: number) => number;
2951
+ readonly wasmtropicaldualclifford_bindingIdentity: () => number;
2952
+ readonly wasmtropicaldualclifford_bindingInverse: (a: number) => [number, number, number];
2953
+ readonly wasmtropicaldualclifford_bundle: (a: number, b: number, c: number) => number;
2954
+ readonly wasmtropicaldualclifford_cliffordSimilarity: (a: number, b: number) => number;
2420
2955
  readonly wasmtropicaldualclifford_distance: (a: number, b: number) => number;
2421
2956
  readonly wasmtropicaldualclifford_evaluate: (a: number, b: number) => number;
2422
2957
  readonly wasmtropicaldualclifford_extractGeometricFeatures: (a: number) => [number, number];
@@ -2430,18 +2965,16 @@ export interface InitOutput {
2430
2965
  readonly wasmtropicaldualclifford_interpolate: (a: number, b: number, c: number) => number;
2431
2966
  readonly wasmtropicaldualclifford_isZero: (a: number) => number;
2432
2967
  readonly wasmtropicaldualclifford_new: () => number;
2968
+ readonly wasmtropicaldualclifford_normalizeToUnit: (a: number) => number;
2433
2969
  readonly wasmtropicaldualclifford_random: () => number;
2970
+ readonly wasmtropicaldualclifford_randomVector: () => number;
2434
2971
  readonly wasmtropicaldualclifford_randomWithScale: (a: number) => number;
2435
2972
  readonly wasmtropicaldualclifford_scale: (a: number, b: number) => number;
2436
2973
  readonly wasmtropicaldualclifford_sensitivityAnalysis: (a: number) => number;
2974
+ readonly wasmtropicaldualclifford_similarity: (a: number, b: number) => number;
2437
2975
  readonly wasmtropicaldualclifford_transform: (a: number, b: number) => number;
2438
2976
  readonly wasmtropicaldualclifford_tropicalAttention: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
2439
- readonly wasmtropicaldualdistribution_attentionPolytope: (a: number) => [number, number];
2440
- readonly wasmtropicaldualdistribution_geometricAlignment: (a: number, b: number) => number;
2441
- readonly wasmtropicaldualdistribution_getVocabSize: (a: number) => number;
2442
- readonly wasmtropicaldualdistribution_klDivergence: (a: number, b: number) => [number, number, number];
2443
- readonly wasmtropicaldualdistribution_mostLikelySequence: (a: number, b: number) => [number, number];
2444
- readonly wasmtropicaldualdistribution_new: (a: number, b: number) => number;
2977
+ readonly wasmtropicaldualclifford_unbind: (a: number, b: number) => number;
2445
2978
  readonly wasmtropicalmeasure_infimum: (a: number, b: any, c: number, d: number) => [number, number, number, number];
2446
2979
  readonly wasmtropicalmeasure_supremum: (a: number, b: any, c: number, d: number) => [number, number, number, number];
2447
2980
  readonly wasmtropicalmeasure_tropicalIntegrate: (a: number, b: any, c: number, d: number, e: number) => [number, number, number];
@@ -2454,13 +2987,11 @@ export interface InitOutput {
2454
2987
  readonly wasmtropicalnumber_fromLogProb: (a: number) => number;
2455
2988
  readonly wasmtropicalnumber_isInfinity: (a: number) => number;
2456
2989
  readonly wasmtropicalnumber_isOne: (a: number) => number;
2457
- readonly wasmtropicalnumber_isZero: (a: number) => number;
2458
2990
  readonly wasmtropicalnumber_mul: (a: number, b: number) => number;
2459
2991
  readonly wasmtropicalnumber_neg: (a: number) => number;
2460
2992
  readonly wasmtropicalnumber_one: () => number;
2461
2993
  readonly wasmtropicalnumber_toProb: (a: number) => number;
2462
2994
  readonly wasmtropicalnumber_tropicalPow: (a: number, b: number) => number;
2463
- readonly wasmtropicalnumber_zero: () => number;
2464
2995
  readonly wasmtropicalpolynomial_evaluate: (a: number, b: number) => number;
2465
2996
  readonly wasmtropicalpolynomial_new: (a: number, b: number) => number;
2466
2997
  readonly wasmtropicalpolynomial_tropical_roots: (a: number) => any;
@@ -2468,13 +2999,20 @@ export interface InitOutput {
2468
2999
  readonly wasmtropicalviterbi_forward_probabilities: (a: number, b: number, c: number) => [number, number, number];
2469
3000
  readonly wasmtropicalviterbi_new: (a: any, b: any) => [number, number, number];
2470
3001
  readonly wasmtropicalnumber_new: (a: number) => number;
3002
+ readonly vectorfield_fromFunction2D: (a: any) => number;
3003
+ readonly vectorfield_fromFunction3D: (a: any) => number;
2471
3004
  readonly wasmmultivector_norm: (a: number) => number;
2472
3005
  readonly wasmspacetimevector_t: (a: number) => number;
3006
+ readonly wasmtropicalnumber_zero: () => number;
2473
3007
  readonly wasmtropicalnumber_tropicalMul: (a: number, b: number) => number;
2474
3008
  readonly wasmtrajectorypoint_position: (a: number) => number;
2475
3009
  readonly wasmtropicalpolynomial_coefficients_count: (a: number) => number;
3010
+ readonly infogeomutils_softmax: (a: number, b: number) => [number, number];
2476
3011
  readonly __wbg_wasmparametricdensity_free: (a: number, b: number) => void;
2477
3012
  readonly __wbg_wasmprobabilitymeasure_free: (a: number, b: number) => void;
3013
+ readonly __wbg_vectorfield_free: (a: number, b: number) => void;
3014
+ readonly vectorfield_new: (a: any, b: number) => number;
3015
+ readonly wasmtropicalnumber_isZero: (a: number) => number;
2478
3016
  readonly wasmtropicalnumber_tropicalAdd: (a: number, b: number) => number;
2479
3017
  readonly wasmcommunity_cohesion_score: (a: number) => number;
2480
3018
  readonly wasmdualnumber_getReal: (a: number) => number;
@@ -2483,6 +3021,7 @@ export interface InitOutput {
2483
3021
  readonly wasmgeometricedge_weight: (a: number) => number;
2484
3022
  readonly wasmmodulispace_getGenus: (a: number) => number;
2485
3023
  readonly wasmmultidualnumber_getReal: (a: number) => number;
3024
+ readonly wasmoptimizationresult_iterations: (a: number) => number;
2486
3025
  readonly wasmoptimizationresult_objective_value: (a: number) => number;
2487
3026
  readonly wasmprojectivespace_getDimension: (a: number) => number;
2488
3027
  readonly wasmpropagationanalysis_convergence_time: (a: number) => number;
@@ -2502,11 +3041,13 @@ export interface InitOutput {
2502
3041
  readonly __wbg_fusionbatchoperations_free: (a: number, b: number) => void;
2503
3042
  readonly __wbg_fusionutils_free: (a: number, b: number) => void;
2504
3043
  readonly __wbg_infogeomutils_free: (a: number, b: number) => void;
3044
+ readonly __wbg_integration_free: (a: number, b: number) => void;
2505
3045
  readonly __wbg_mlops_free: (a: number, b: number) => void;
2506
3046
  readonly __wbg_networkutils_free: (a: number, b: number) => void;
2507
3047
  readonly __wbg_performanceoperations_free: (a: number, b: number) => void;
2508
3048
  readonly __wbg_tropicalbatch_free: (a: number, b: number) => void;
2509
3049
  readonly __wbg_tropicalmlops_free: (a: number, b: number) => void;
3050
+ readonly __wbg_wasmalphaconnection_free: (a: number, b: number) => void;
2510
3051
  readonly __wbg_wasmcountingmeasure_free: (a: number, b: number) => void;
2511
3052
  readonly __wbg_wasmdualnumber_free: (a: number, b: number) => void;
2512
3053
  readonly __wbg_wasmfourvelocity_free: (a: number, b: number) => void;
@@ -2528,16 +3069,16 @@ export interface InitOutput {
2528
3069
  readonly wasmmultiobjectiveoptimizer_new: () => number;
2529
3070
  readonly wasmsimpleoptimizer_new: () => number;
2530
3071
  readonly wasmtropicalmeasure_new: () => number;
2531
- readonly wasm_bindgen_83f782f110bf2942___convert__closures_____invoke___wasm_bindgen_83f782f110bf2942___JsValue_____: (a: number, b: number, c: any) => void;
2532
- readonly wasm_bindgen_83f782f110bf2942___closure__destroy___dyn_core_f622c628fd7f704e___ops__function__FnMut__wasm_bindgen_83f782f110bf2942___JsValue____Output_______: (a: number, b: number) => void;
2533
- readonly wasm_bindgen_83f782f110bf2942___convert__closures_____invoke___wasm_bindgen_83f782f110bf2942___JsValue__wasm_bindgen_83f782f110bf2942___JsValue_____: (a: number, b: number, c: any, d: any) => void;
2534
- readonly __wbindgen_malloc: (a: number, b: number) => number;
2535
- readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
2536
3072
  readonly __wbindgen_exn_store: (a: number) => void;
2537
3073
  readonly __externref_table_alloc: () => number;
2538
- readonly __wbindgen_externrefs: WebAssembly.Table;
3074
+ readonly __wbindgen_export_2: WebAssembly.Table;
2539
3075
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
3076
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
3077
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
3078
+ readonly __wbindgen_export_6: WebAssembly.Table;
2540
3079
  readonly __externref_table_dealloc: (a: number) => void;
3080
+ readonly closure58_externref_shim: (a: number, b: number, c: any) => void;
3081
+ readonly closure49_externref_shim: (a: number, b: number, c: any, d: any) => void;
2541
3082
  readonly __wbindgen_start: () => void;
2542
3083
  }
2543
3084