@justinelliottcobb/amari-wasm 0.9.7 → 0.9.9

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/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @justinelliottcobb/amari-wasm v0.9.0
1
+ # @justinelliottcobb/amari-wasm v0.9.8
2
2
 
3
3
  **Unified Mathematical Computing Library with High-Precision WebAssembly Support**
4
4
 
@@ -6,42 +6,45 @@
6
6
  [![CI](https://github.com/justinelliottcobb/Amari/actions/workflows/ci.yml/badge.svg)](https://github.com/justinelliottcobb/Amari/actions/workflows/ci.yml)
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
8
 
9
- Amari is a comprehensive mathematical computing library that brings advanced algebraic systems to JavaScript/TypeScript through WebAssembly, now with full high-precision arithmetic support for spacecraft orbital mechanics and relativistic physics calculations. Features pure Rust implementation with no native dependencies for universal deployment.
9
+ Amari is a comprehensive mathematical computing library that brings advanced algebraic systems to JavaScript/TypeScript through WebAssembly. Features high-precision arithmetic for spacecraft orbital mechanics and relativistic physics calculations with pure Rust implementation and no native dependencies for universal deployment.
10
10
 
11
11
  ## Features
12
12
 
13
- ### New in v0.9.0: High-Precision WebAssembly
14
- - **Spacecraft Orbital Mechanics**: Full-precision trajectory calculations now available in browsers
15
- - **Relativistic Physics**: Spacetime algebra (Cl(1,3)) with WebAssembly-compatible precision
16
- - **Pure Rust Backend**: dashu-powered arithmetic with no native dependencies
17
- - **Universal Deployment**: Same precision guarantees across desktop, web, and edge environments
18
- - **WebAssembly 3.0 Ready**: Leverages latest WASM features for enhanced mathematical computing
19
-
20
13
  ### Core Mathematical Systems
14
+
21
15
  - **Geometric Algebra (Clifford Algebra)**: Multivectors, rotors, and geometric products for 3D rotations and spatial transformations
22
16
  - **Tropical Algebra**: Max-plus semiring operations for optimization and neural network applications
23
17
  - **Automatic Differentiation**: Forward-mode AD with dual numbers for exact derivatives
18
+ - **Relativistic Physics**: Spacetime algebra (Cl(1,3)) with WebAssembly-compatible precision
19
+ - **Spacecraft Orbital Mechanics**: Full-precision trajectory calculations in browsers
24
20
  - **Cellular Automata**: Geometric cellular automata with multivector states
25
21
  - **WebGPU Acceleration**: Optional GPU acceleration for large-scale operations
26
22
  - **Pure Rust Implementation**: Memory-safe, high-performance core with WASM bindings
27
23
  - **TypeScript Support**: Full TypeScript definitions included
28
24
 
25
+ ### High-Precision Arithmetic
26
+
27
+ - **Pure Rust Backend**: dashu-powered arithmetic with no native dependencies
28
+ - **Universal Deployment**: Same precision guarantees across desktop, web, and edge environments
29
+ - **Orbital-Grade Tolerance**: Configurable precision for critical trajectory calculations
30
+ - **WebAssembly 3.0 Ready**: Leverages latest WASM features for enhanced mathematical computing
31
+
29
32
  ## Installation
30
33
 
31
34
  ```bash
32
- npm install @amari/core
35
+ npm install @justinelliottcobb/amari-wasm
33
36
  ```
34
37
 
35
38
  Or with yarn:
36
39
 
37
40
  ```bash
38
- yarn add @amari/core
41
+ yarn add @justinelliottcobb/amari-wasm
39
42
  ```
40
43
 
41
44
  ## Quick Start
42
45
 
43
46
  ```typescript
44
- import init, { WasmMultivector, WasmRotor } from '@amari/core';
47
+ import init, { WasmMultivector, WasmRotor } from '@justinelliottcobb/amari-wasm';
45
48
 
46
49
  async function main() {
47
50
  // Initialize the WASM module
@@ -79,7 +82,7 @@ async function main() {
79
82
  main();
80
83
  ```
81
84
 
82
- ## High-Precision Orbital Mechanics (New in v0.9.0)
85
+ ## High-Precision Orbital Mechanics
83
86
 
84
87
  ```typescript
85
88
  import init, {
@@ -87,7 +90,7 @@ import init, {
87
90
  WasmFourVelocity,
88
91
  WasmRelativisticParticle,
89
92
  WasmSchwarzschildMetric
90
- } from '@amari/core';
93
+ } from '@justinelliottcobb/amari-wasm';
91
94
 
92
95
  async function spacecraftSimulation() {
93
96
  await init();
@@ -124,7 +127,7 @@ async function spacecraftSimulation() {
124
127
  console.log(`Orbital trajectory computed with ${trajectory.length} points`);
125
128
  console.log(`Final position deviation: ${spacecraft.position_error()} meters`);
126
129
 
127
- // WebAssembly precision matches native accuracy!
130
+ // WebAssembly precision matches native accuracy
128
131
 
129
132
  // Clean up WASM memory
130
133
  earth.free();
@@ -157,7 +160,7 @@ const inner = v1.inner_product(v2);
157
160
  Tropical algebra replaces addition with max and multiplication with addition, useful for optimization:
158
161
 
159
162
  ```typescript
160
- import { tropical_add, tropical_multiply } from '@amari/core';
163
+ import { tropical_add, tropical_multiply } from '@justinelliottcobb/amari-wasm';
161
164
 
162
165
  // Tropical operations: add = max, multiply = add
163
166
  const a = 5.0, b = 3.0;
@@ -185,12 +188,13 @@ console.log(`Generation: ${ca.generation()}`);
185
188
 
186
189
  ## Use Cases
187
190
 
188
- - **Computer Graphics**: 3D rotations and transformations using rotors
189
- - **Physics Simulations**: Geometric algebra for electromagnetic fields
190
- - **Machine Learning**: Tropical neural networks and automatic differentiation
191
- - **Optimization**: Tropical algebra for shortest path and scheduling problems
192
- - **Scientific Computing**: High-performance mathematical operations
193
- - **Game Development**: Efficient spatial transformations and physics
191
+ - Computer Graphics: 3D rotations and transformations using rotors
192
+ - Physics Simulations: Geometric algebra for electromagnetic fields and relativistic calculations
193
+ - Machine Learning: Tropical neural networks and automatic differentiation
194
+ - Optimization: Tropical algebra for shortest path and scheduling problems
195
+ - Scientific Computing: High-performance mathematical operations with orbital-grade precision
196
+ - Game Development: Efficient spatial transformations and physics
197
+ - Spacecraft Trajectory Planning: High-precision orbital mechanics in web applications
194
198
 
195
199
  ## API Reference
196
200
 
@@ -216,7 +220,7 @@ console.log(`Generation: ${ca.generation()}`);
216
220
  - `tropical_multiply(a, b)`: Tropical multiplication (addition)
217
221
  - `tropical_power(base, exp)`: Tropical exponentiation
218
222
 
219
- ## 🔍 Examples
223
+ ## Examples
220
224
 
221
225
  Check out the [examples directory](https://github.com/justinelliottcobb/Amari/tree/master/examples) for more detailed usage:
222
226
 
@@ -225,7 +229,7 @@ Check out the [examples directory](https://github.com/justinelliottcobb/Amari/tr
225
229
  - [Tropical Neural Networks](https://github.com/justinelliottcobb/Amari/blob/master/examples/typescript/tropical.ts)
226
230
  - [Cellular Automata](https://github.com/justinelliottcobb/Amari/blob/master/examples/typescript/cellular.ts)
227
231
 
228
- ## 🏗️ Building from Source
232
+ ## Building from Source
229
233
 
230
234
  ```bash
231
235
  # Clone the repository
@@ -242,25 +246,25 @@ npm run build
242
246
  npm test
243
247
  ```
244
248
 
245
- ## 🤝 Contributing
249
+ ## Contributing
246
250
 
247
- Contributions are welcome! Please feel free to submit a Pull Request. See [CONTRIBUTING.md](https://github.com/justinelliottcobb/Amari/blob/master/CONTRIBUTING.md) for details.
251
+ Contributions are welcome. Please see [CONTRIBUTING.md](https://github.com/justinelliottcobb/Amari/blob/master/CONTRIBUTING.md) for details.
248
252
 
249
- ## 📄 License
253
+ ## License
250
254
 
251
255
  MIT License - see [LICENSE](https://github.com/justinelliottcobb/Amari/blob/master/LICENSE) for details.
252
256
 
253
- ## 🙏 Acknowledgments
257
+ ## Acknowledgments
254
258
 
255
259
  - Built with Rust and wasm-bindgen
256
260
  - Inspired by geometric algebra libraries like GAViewer and Ganja.js
257
261
  - Tropical algebra concepts from discrete mathematics
258
262
 
259
- ## 📬 Contact
263
+ ## Contact
260
264
 
261
265
  - GitHub: [@justinelliottcobb](https://github.com/justinelliottcobb)
262
- - NPM: [@amari/core](https://www.npmjs.com/package/@amari/core)
266
+ - NPM: [@justinelliottcobb/amari-wasm](https://www.npmjs.com/package/@justinelliottcobb/amari-wasm)
263
267
 
264
268
  ---
265
269
 
266
- **Made with Rust by the Amari team**
270
+ Made with Rust by the Amari team
package/amari_wasm.d.ts CHANGED
@@ -8,14 +8,14 @@ export function initEnumerative(): void;
8
8
  * Validate that this module loaded correctly
9
9
  */
10
10
  export function validate_relativistic_module(): boolean;
11
- /**
12
- * Calculate light deflection angle for photon grazing massive object
13
- */
14
- export function light_deflection_angle(impact_parameter: number, mass: number): number;
15
11
  /**
16
12
  * Convert velocity to Lorentz factor
17
13
  */
18
14
  export function velocity_to_gamma(velocity_magnitude: number): number;
15
+ /**
16
+ * Calculate light deflection angle for photon grazing massive object
17
+ */
18
+ export function light_deflection_angle(impact_parameter: number, mass: number): number;
19
19
  /**
20
20
  * Convert Lorentz factor to velocity
21
21
  */
@@ -899,6 +899,33 @@ export class WasmGeometricNetwork {
899
899
  */
900
900
  numNodes(): number;
901
901
  }
902
+ /**
903
+ * GPU-accelerated optimization wrapper for WASM
904
+ */
905
+ export class WasmGpuOptimizer {
906
+ free(): void;
907
+ [Symbol.dispose](): void;
908
+ /**
909
+ * Initialize GPU context for optimization
910
+ */
911
+ initializeGpu(): Promise<boolean>;
912
+ /**
913
+ * Batch optimization with parallel processing simulation
914
+ */
915
+ optimizeBatch(problems_data: Float64Array, problem_size: number, num_problems: number, max_iterations: number, tolerance: number): Promise<Float64Array>;
916
+ /**
917
+ * Check if GPU acceleration is available
918
+ */
919
+ isGpuAvailable(): boolean;
920
+ /**
921
+ * Optimize a quadratic function with GPU acceleration
922
+ */
923
+ optimizeQuadraticGpu(coefficients: Float64Array, initial_point: Float64Array, max_iterations: number, tolerance: number): Promise<WasmOptimizationResult>;
924
+ /**
925
+ * Create a new GPU optimizer
926
+ */
927
+ constructor();
928
+ }
902
929
  /**
903
930
  * WASM wrapper for Grassmannian varieties
904
931
  */
@@ -1020,6 +1047,42 @@ export class WasmMultiDualNumber {
1020
1047
  */
1021
1048
  static variable(value: number, num_vars: number, var_index: number): WasmMultiDualNumber;
1022
1049
  }
1050
+ /**
1051
+ * Simple multi-objective optimizer for WASM
1052
+ */
1053
+ export class WasmMultiObjectiveOptimizer {
1054
+ free(): void;
1055
+ [Symbol.dispose](): void;
1056
+ /**
1057
+ * Optimize a simple bi-objective problem
1058
+ * f1 = sum(x_i^2), f2 = sum((x_i - 1)^2)
1059
+ */
1060
+ optimizeBiObjective(dimension: number, population_size: number, generations: number): WasmMultiObjectiveResult;
1061
+ /**
1062
+ * Create a new multi-objective optimizer
1063
+ */
1064
+ constructor();
1065
+ }
1066
+ /**
1067
+ * Multi-objective optimization result
1068
+ */
1069
+ export class WasmMultiObjectiveResult {
1070
+ private constructor();
1071
+ free(): void;
1072
+ [Symbol.dispose](): void;
1073
+ /**
1074
+ * Get number of generations
1075
+ */
1076
+ readonly generations: number;
1077
+ /**
1078
+ * Get Pareto front as flattened array
1079
+ */
1080
+ readonly pareto_front: Float64Array;
1081
+ /**
1082
+ * Check if optimization converged
1083
+ */
1084
+ readonly converged: boolean;
1085
+ }
1023
1086
  /**
1024
1087
  * WASM wrapper for Multivector with TypedArray support
1025
1088
  */
@@ -1142,6 +1205,46 @@ export class WasmNodeMetadata {
1142
1205
  */
1143
1206
  set label(value: string | null | undefined);
1144
1207
  }
1208
+ /**
1209
+ * WASM wrapper for optimization results
1210
+ */
1211
+ export class WasmOptimizationResult {
1212
+ private constructor();
1213
+ free(): void;
1214
+ [Symbol.dispose](): void;
1215
+ /**
1216
+ * Get number of iterations
1217
+ */
1218
+ readonly iterations: number;
1219
+ /**
1220
+ * Get final objective value
1221
+ */
1222
+ readonly objective_value: number;
1223
+ /**
1224
+ * Get solution vector
1225
+ */
1226
+ readonly solution: Float64Array;
1227
+ /**
1228
+ * Check if optimization converged
1229
+ */
1230
+ readonly converged: boolean;
1231
+ }
1232
+ /**
1233
+ * Utility functions for optimization
1234
+ */
1235
+ export class WasmOptimizationUtils {
1236
+ private constructor();
1237
+ free(): void;
1238
+ [Symbol.dispose](): void;
1239
+ /**
1240
+ * Compute numerical gradient
1241
+ */
1242
+ static numericalGradient(coefficients: Float64Array, point: Float64Array, epsilon: number): Float64Array;
1243
+ /**
1244
+ * Check if a point dominates another in multi-objective optimization
1245
+ */
1246
+ static dominates(objectives1: Float64Array, objectives2: Float64Array): boolean;
1247
+ }
1145
1248
  /**
1146
1249
  * WASM wrapper for projective spaces
1147
1250
  */
@@ -1363,6 +1466,21 @@ export class WasmSensitivityMap {
1363
1466
  */
1364
1467
  getTotalSensitivity(): number;
1365
1468
  }
1469
+ /**
1470
+ * Simple quadratic optimization problem for WASM demonstration
1471
+ */
1472
+ export class WasmSimpleOptimizer {
1473
+ free(): void;
1474
+ [Symbol.dispose](): void;
1475
+ /**
1476
+ * Optimize a simple quadratic function: minimize sum(c_i * x_i^2)
1477
+ */
1478
+ optimizeQuadratic(coefficients: Float64Array, initial_point: Float64Array): WasmOptimizationResult;
1479
+ /**
1480
+ * Create a new simple optimizer
1481
+ */
1482
+ constructor();
1483
+ }
1366
1484
  /**
1367
1485
  * WASM wrapper for spacetime vectors
1368
1486
  */
@@ -1748,6 +1866,7 @@ export interface InitOutput {
1748
1866
  readonly __wbg_wasmmultidualnumber_free: (a: number, b: number) => void;
1749
1867
  readonly __wbg_wasmmultivector_free: (a: number, b: number) => void;
1750
1868
  readonly __wbg_wasmnodemetadata_free: (a: number, b: number) => void;
1869
+ readonly __wbg_wasmoptimizationresult_free: (a: number, b: number) => void;
1751
1870
  readonly __wbg_wasmprojectivespace_free: (a: number, b: number) => void;
1752
1871
  readonly __wbg_wasmpropagationanalysis_free: (a: number, b: number) => void;
1753
1872
  readonly __wbg_wasmrelativisticparticle_free: (a: number, b: number) => void;
@@ -1927,6 +2046,11 @@ export interface InitOutput {
1927
2046
  readonly wasmgeometricnetwork_spectralClustering: (a: number, b: number) => [number, number, number];
1928
2047
  readonly wasmgeometricnetwork_toTropicalNetwork: (a: number) => [number, number, number];
1929
2048
  readonly wasmgeometricnetwork_withCapacity: (a: number, b: number) => number;
2049
+ readonly wasmgpuoptimizer_initializeGpu: (a: number) => any;
2050
+ readonly wasmgpuoptimizer_isGpuAvailable: (a: number) => number;
2051
+ readonly wasmgpuoptimizer_new: () => number;
2052
+ readonly wasmgpuoptimizer_optimizeBatch: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => any;
2053
+ readonly wasmgpuoptimizer_optimizeQuadraticGpu: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => any;
1930
2054
  readonly wasmgrassmannian_getDimension: (a: number) => number;
1931
2055
  readonly wasmgrassmannian_getParameters: (a: number) => [number, number];
1932
2056
  readonly wasmgrassmannian_new: (a: number, b: number) => [number, number, number];
@@ -1949,6 +2073,10 @@ export interface InitOutput {
1949
2073
  readonly wasmmultidualnumber_new: (a: number, b: number, c: number) => number;
1950
2074
  readonly wasmmultidualnumber_sqrt: (a: number) => [number, number, number];
1951
2075
  readonly wasmmultidualnumber_variable: (a: number, b: number, c: number) => number;
2076
+ readonly wasmmultiobjectiveoptimizer_optimizeBiObjective: (a: number, b: number, c: number, d: number) => [number, number, number];
2077
+ readonly wasmmultiobjectiveresult_converged: (a: number) => number;
2078
+ readonly wasmmultiobjectiveresult_generations: (a: number) => number;
2079
+ readonly wasmmultiobjectiveresult_pareto_front: (a: number) => [number, number];
1952
2080
  readonly wasmmultivector_add: (a: number, b: number) => number;
1953
2081
  readonly wasmmultivector_basisVector: (a: number) => [number, number, number];
1954
2082
  readonly wasmmultivector_exp: (a: number) => number;
@@ -1975,10 +2103,14 @@ export interface InitOutput {
1975
2103
  readonly wasmnodemetadata_setProperty: (a: number, b: number, c: number, d: number) => void;
1976
2104
  readonly wasmnodemetadata_set_label: (a: number, b: number, c: number) => void;
1977
2105
  readonly wasmnodemetadata_withLabel: (a: number, b: number) => number;
2106
+ readonly wasmoptimizationresult_converged: (a: number) => number;
2107
+ readonly wasmoptimizationresult_iterations: (a: number) => number;
2108
+ readonly wasmoptimizationresult_solution: (a: number) => [number, number];
2109
+ readonly wasmoptimizationutils_dominates: (a: number, b: number, c: number, d: number) => number;
2110
+ readonly wasmoptimizationutils_numericalGradient: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
1978
2111
  readonly wasmprojectivespace_bezoutIntersection: (a: number, b: number, c: number) => number;
1979
2112
  readonly wasmprojectivespace_hasDimension: (a: number, b: number) => number;
1980
2113
  readonly wasmprojectivespace_new: (a: number) => number;
1981
- readonly wasmpropagationanalysis_convergence_time: (a: number) => number;
1982
2114
  readonly wasmpropagationanalysis_coverage: (a: number) => [number, number];
1983
2115
  readonly wasmpropagationanalysis_influence_scores: (a: number) => [number, number];
1984
2116
  readonly wasmrelativisticconstants_earth_mass: () => number;
@@ -2012,6 +2144,7 @@ export interface InitOutput {
2012
2144
  readonly wasmsensitivitymap_getAllSensitivities: (a: number) => [number, number, number];
2013
2145
  readonly wasmsensitivitymap_getMostSensitive: (a: number, b: number) => [number, number];
2014
2146
  readonly wasmsensitivitymap_getTotalSensitivity: (a: number) => number;
2147
+ readonly wasmsimpleoptimizer_optimizeQuadratic: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
2015
2148
  readonly wasmspacetimevector_is_null: (a: number) => number;
2016
2149
  readonly wasmspacetimevector_is_spacelike: (a: number) => number;
2017
2150
  readonly wasmspacetimevector_is_timelike: (a: number) => number;
@@ -2051,7 +2184,6 @@ export interface InitOutput {
2051
2184
  readonly wasmtropicaldualdistribution_mostLikelySequence: (a: number, b: number) => [number, number];
2052
2185
  readonly wasmtropicaldualdistribution_new: (a: number, b: number) => number;
2053
2186
  readonly wasmtropicalnetwork_fromWeights: (a: number, b: number, c: number) => [number, number, number];
2054
- readonly wasmtropicalnetwork_getSize: (a: number) => number;
2055
2187
  readonly wasmtropicalnetwork_new: (a: number) => number;
2056
2188
  readonly wasmtropicalnetwork_setEdge: (a: number, b: number, c: number, d: number) => [number, number];
2057
2189
  readonly wasmtropicalnetwork_shortestPathTropical: (a: number, b: number, c: number) => [number, number, number];
@@ -2067,7 +2199,6 @@ export interface InitOutput {
2067
2199
  readonly wasmtropicalnumber_toProb: (a: number) => number;
2068
2200
  readonly wasmtropicalnumber_tropicalPow: (a: number, b: number) => number;
2069
2201
  readonly wasmtropicalnumber_zero: () => number;
2070
- readonly wasmtropicalpolynomial_coefficients_count: (a: number) => number;
2071
2202
  readonly wasmtropicalpolynomial_evaluate: (a: number, b: number) => number;
2072
2203
  readonly wasmtropicalpolynomial_new: (a: number, b: number) => number;
2073
2204
  readonly wasmtropicalpolynomial_tropical_roots: (a: number) => any;
@@ -2079,6 +2210,7 @@ export interface InitOutput {
2079
2210
  readonly wasmspacetimevector_t: (a: number) => number;
2080
2211
  readonly wasmtropicalnumber_tropicalMul: (a: number, b: number) => number;
2081
2212
  readonly wasmtrajectorypoint_position: (a: number) => number;
2213
+ readonly wasmtropicalpolynomial_coefficients_count: (a: number) => number;
2082
2214
  readonly wasmtropicalnumber_tropicalAdd: (a: number, b: number) => number;
2083
2215
  readonly wasmcommunity_cohesion_score: (a: number) => number;
2084
2216
  readonly wasmdualnumber_getReal: (a: number) => number;
@@ -2086,12 +2218,15 @@ export interface InitOutput {
2086
2218
  readonly wasmevaluationresult_getGradientNorm: (a: number) => number;
2087
2219
  readonly wasmgeometricedge_weight: (a: number) => number;
2088
2220
  readonly wasmmultidualnumber_getReal: (a: number) => number;
2221
+ readonly wasmoptimizationresult_objective_value: (a: number) => number;
2089
2222
  readonly wasmprojectivespace_getDimension: (a: number) => number;
2223
+ readonly wasmpropagationanalysis_convergence_time: (a: number) => number;
2090
2224
  readonly wasmschwarzschildmetric_mass: (a: number) => number;
2091
2225
  readonly wasmspacetimevector_x: (a: number) => number;
2092
2226
  readonly wasmspacetimevector_y: (a: number) => number;
2093
2227
  readonly wasmspacetimevector_z: (a: number) => number;
2094
2228
  readonly wasmtropicalcurve_getGenus: (a: number) => number;
2229
+ readonly wasmtropicalnetwork_getSize: (a: number) => number;
2095
2230
  readonly wasmtropicalnumber_getValue: (a: number) => number;
2096
2231
  readonly __wbg_automatabatchoperations_free: (a: number, b: number) => void;
2097
2232
  readonly __wbg_automatautils_free: (a: number, b: number) => void;
@@ -2110,18 +2245,28 @@ export interface InitOutput {
2110
2245
  readonly __wbg_wasmdualnumber_free: (a: number, b: number) => void;
2111
2246
  readonly __wbg_wasmfourvelocity_free: (a: number, b: number) => void;
2112
2247
  readonly __wbg_wasmgeometricedge_free: (a: number, b: number) => void;
2248
+ readonly __wbg_wasmgpuoptimizer_free: (a: number, b: number) => void;
2249
+ readonly __wbg_wasmmultiobjectiveoptimizer_free: (a: number, b: number) => void;
2250
+ readonly __wbg_wasmoptimizationutils_free: (a: number, b: number) => void;
2113
2251
  readonly __wbg_wasmrelativisticconstants_free: (a: number, b: number) => void;
2252
+ readonly __wbg_wasmsimpleoptimizer_free: (a: number, b: number) => void;
2114
2253
  readonly __wbg_wasmspacetimevector_free: (a: number, b: number) => void;
2115
2254
  readonly __wbg_wasmtropicalcurve_free: (a: number, b: number) => void;
2116
2255
  readonly __wbg_wasmtropicalnumber_free: (a: number, b: number) => void;
2256
+ readonly __wbg_wasmmultiobjectiveresult_free: (a: number, b: number) => void;
2117
2257
  readonly wasmrotor_inverse: (a: number) => number;
2118
2258
  readonly __wbg_wasmrotor_free: (a: number, b: number) => void;
2259
+ readonly wasmmultiobjectiveoptimizer_new: () => number;
2260
+ readonly wasmsimpleoptimizer_new: () => number;
2261
+ readonly wasm_bindgen__convert__closures_____invoke__h79d0d9c6410c14e7: (a: number, b: number, c: any) => void;
2262
+ readonly wasm_bindgen__closure__destroy__h1dd832fb828dedcc: (a: number, b: number) => void;
2263
+ readonly wasm_bindgen__convert__closures_____invoke__h0bb870c532b1b216: (a: number, b: number, c: any, d: any) => void;
2264
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
2265
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
2119
2266
  readonly __wbindgen_exn_store: (a: number) => void;
2120
2267
  readonly __externref_table_alloc: () => number;
2121
- readonly __wbindgen_export_2: WebAssembly.Table;
2268
+ readonly __wbindgen_externrefs: WebAssembly.Table;
2122
2269
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
2123
- readonly __wbindgen_malloc: (a: number, b: number) => number;
2124
- readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
2125
2270
  readonly __externref_table_dealloc: (a: number) => void;
2126
2271
  readonly __wbindgen_start: () => void;
2127
2272
  }