@justinelliottcobb/amari-wasm 0.21.0 → 0.22.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/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @justinelliottcobb/amari-wasm v0.21.0
1
+ # @justinelliottcobb/amari-wasm v0.22.0
2
2
 
3
3
  **Unified Mathematical Computing Library with High-Precision WebAssembly Support**
4
4
 
@@ -15,6 +15,8 @@ Amari is a comprehensive mathematical computing library that brings advanced alg
15
15
  | [Geometric Algebra](docs/geometric-algebra.md) | amari-core | v0.1 | Multivectors, rotors, geometric products for 3D rotations and spatial transformations |
16
16
  | [Tropical Algebra](docs/tropical-algebra.md) | amari-tropical | v0.9.3 | Max-plus semiring operations plus `0.21.0` ordinal-weighted optimization carriers below ε₀ |
17
17
  | [Automatic Differentiation](docs/automatic-differentiation.md) | amari-dual | v0.9.3 | Forward-mode AD with `0.21.0` branch policies, multi-dual seeding, and fixed-size gradient wrappers |
18
+ | Combinatorial Game Theory | amari-cgt | v0.22.0 | Short normal-play games, cuts, outcomes, comparison, nimbers, and inspection helpers |
19
+ | Short Surreal Numbers | amari-surreal | v0.22.0 | Exact dyadic short-surreal arithmetic and conversion to/from numeric CGT games |
18
20
  | [Cellular Automata](docs/cellular-automata.md) | amari-automata | v0.9.4 | Geometric cellular automata with multivector states |
19
21
  | [Holographic Memory](docs/holographic-memory.md) | amari-fusion | v0.12.3 | Vector Symbolic Architecture for associative memory with binding and bundling |
20
22
  | [Measure Theory](docs/measure-theory.md) | amari-measure | v0.10.0 | Lebesgue integration, probability measures, and measure-theoretic foundations |
@@ -30,6 +32,17 @@ Amari is a comprehensive mathematical computing library that brings advanced alg
30
32
 
31
33
  Also includes bindings for: amari-network (geometric network analysis), amari-optimization (gradient descent, NSGA-II), amari-info-geom (Fisher metrics, statistical manifolds), amari-calculus (differential geometry, manifolds).
32
34
 
35
+ ### v0.22.0 CGT / Surreal WASM Surface
36
+
37
+ The `0.22.0` release exposes the new short-game and short-surreal Rust APIs to JavaScript/TypeScript:
38
+
39
+ - `WasmCgtArena` and `WasmGameId` for arena-backed short games, focused one-option cuts, addition/subtraction/negation, comparison, outcomes, canonicalization, and formatting.
40
+ - `WasmGameInspection` for birthday, canonical form, outcome, numeric/impartial classification, and reachable-node counts.
41
+ - `WasmDyadic` for exact dyadic arithmetic with checked division inside the short-surreal layer.
42
+ - `WasmShortSurreal` for exact short-surreal arithmetic plus conversion from numeric CGT games and reconstruction back into a `WasmCgtArena`.
43
+
44
+ The scope remains intentionally short/exact: loopy games, misère play, symbolic infinite surreals, and surcomplex arithmetic are not part of the `0.22.0` WASM surface.
45
+
33
46
  ### v0.21.0 Tropical / Dual WASM Surface
34
47
 
35
48
  The `0.21.0` release exposes the new optimization-oriented Rust APIs to JavaScript/TypeScript:
package/amari_wasm.d.ts CHANGED
@@ -1455,6 +1455,108 @@ export class WasmCapability {
1455
1455
  */
1456
1456
  requires(required_id: string): WasmCapability;
1457
1457
  }
1458
+ /**
1459
+ * Arena-backed short combinatorial game engine for WebAssembly.
1460
+ */
1461
+ export class WasmCgtArena {
1462
+ free(): void;
1463
+ /**
1464
+ * Return whether two games are equivalent.
1465
+ */
1466
+ equivalent(lhs: WasmGameId, rhs: WasmGameId): boolean;
1467
+ /**
1468
+ * Return whether a game is numeric.
1469
+ */
1470
+ isNumeric(game: WasmGameId): boolean;
1471
+ /**
1472
+ * Number of interned arena nodes.
1473
+ */
1474
+ nodeCount(): number;
1475
+ /**
1476
+ * Format a game as recursive cut notation.
1477
+ */
1478
+ formatGame(game: WasmGameId): string;
1479
+ /**
1480
+ * Return whether a game is impartial.
1481
+ */
1482
+ isImpartial(game: WasmGameId): boolean;
1483
+ /**
1484
+ * Format a game's canonical representative.
1485
+ */
1486
+ formatCanonicalGame(game: WasmGameId): string;
1487
+ /**
1488
+ * Add two short games.
1489
+ */
1490
+ add(lhs: WasmGameId, rhs: WasmGameId): WasmGameId;
1491
+ /**
1492
+ * Build a one-left, one-right cut `{left | right}`.
1493
+ */
1494
+ cut(left: WasmGameId, right: WasmGameId): WasmGameId;
1495
+ /**
1496
+ * Negate a short game.
1497
+ */
1498
+ neg(game: WasmGameId): WasmGameId;
1499
+ /**
1500
+ * Create an empty arena with the zero game interned lazily.
1501
+ */
1502
+ constructor();
1503
+ /**
1504
+ * Return the game `1 = {0 | }`.
1505
+ */
1506
+ one(): WasmGameId;
1507
+ /**
1508
+ * Subtract two short games.
1509
+ */
1510
+ sub(lhs: WasmGameId, rhs: WasmGameId): WasmGameId;
1511
+ /**
1512
+ * Return the star game `{0 | 0}`.
1513
+ */
1514
+ star(): WasmGameId;
1515
+ /**
1516
+ * Return the zero game `{ | }`.
1517
+ */
1518
+ zero(): WasmGameId;
1519
+ /**
1520
+ * Compute the Grundy nimber of an impartial game.
1521
+ */
1522
+ grundy(game: WasmGameId): number;
1523
+ /**
1524
+ * Compare two games in the partizan order.
1525
+ */
1526
+ compare(lhs: WasmGameId, rhs: WasmGameId): string;
1527
+ /**
1528
+ * Inspect canonical, numeric, impartial, outcome, and size metadata.
1529
+ */
1530
+ inspect(game: WasmGameId): WasmGameInspection;
1531
+ /**
1532
+ * Return the normal-play outcome class.
1533
+ */
1534
+ outcome(game: WasmGameId): string;
1535
+ /**
1536
+ * Return the game's birthday.
1537
+ */
1538
+ birthday(game: WasmGameId): number;
1539
+ /**
1540
+ * Build a one-left-option game `{left | }`.
1541
+ */
1542
+ leftCut(left: WasmGameId): WasmGameId;
1543
+ /**
1544
+ * Build a Nim heap of the requested size.
1545
+ */
1546
+ nimHeap(size: number): WasmGameId;
1547
+ /**
1548
+ * Canonicalize a game and return the canonical representative handle.
1549
+ */
1550
+ canonical(game: WasmGameId): WasmGameId;
1551
+ /**
1552
+ * Return the game `-1 = {| 0}`.
1553
+ */
1554
+ minusOne(): WasmGameId;
1555
+ /**
1556
+ * Build a one-right-option game `{ | right}`.
1557
+ */
1558
+ rightCut(right: WasmGameId): WasmGameId;
1559
+ }
1458
1560
  /**
1459
1561
  * WASM wrapper for Chow classes in intersection theory
1460
1562
  */
@@ -1748,6 +1850,84 @@ export class WasmDuallyFlatManifold {
1748
1850
  */
1749
1851
  constructor(dimension: number, alpha: number);
1750
1852
  }
1853
+ /**
1854
+ * Exact dyadic rational `numerator / 2^exponent` for short surreal values.
1855
+ */
1856
+ export class WasmDyadic {
1857
+ free(): void;
1858
+ /**
1859
+ * Checked division; fails if the quotient leaves the dyadic layer.
1860
+ */
1861
+ checkedDiv(rhs: WasmDyadic): WasmDyadic;
1862
+ /**
1863
+ * Return whether the dyadic is negative.
1864
+ */
1865
+ isNegative(): boolean;
1866
+ /**
1867
+ * Return whether the dyadic is positive.
1868
+ */
1869
+ isPositive(): boolean;
1870
+ /**
1871
+ * Create a dyadic integer.
1872
+ */
1873
+ static fromInteger(value: number): WasmDyadic;
1874
+ /**
1875
+ * Numerator as a base-10 string.
1876
+ */
1877
+ numeratorString(): string;
1878
+ /**
1879
+ * Checked reciprocal within the dyadic short-surreal layer.
1880
+ */
1881
+ checkedReciprocal(): WasmDyadic;
1882
+ /**
1883
+ * Absolute value.
1884
+ */
1885
+ abs(): WasmDyadic;
1886
+ /**
1887
+ * Add two dyadics exactly.
1888
+ */
1889
+ add(rhs: WasmDyadic): WasmDyadic;
1890
+ /**
1891
+ * Multiply two dyadics exactly.
1892
+ */
1893
+ mul(rhs: WasmDyadic): WasmDyadic;
1894
+ /**
1895
+ * Negate the dyadic.
1896
+ */
1897
+ neg(): WasmDyadic;
1898
+ /**
1899
+ * Create and normalize a dyadic rational `numerator / 2^exponent`.
1900
+ */
1901
+ constructor(numerator: number, exponent: number);
1902
+ /**
1903
+ * Return one.
1904
+ */
1905
+ static one(): WasmDyadic;
1906
+ /**
1907
+ * Subtract two dyadics exactly.
1908
+ */
1909
+ sub(rhs: WasmDyadic): WasmDyadic;
1910
+ /**
1911
+ * Return the sign as `negative`, `zero`, or `positive`.
1912
+ */
1913
+ sign(): string;
1914
+ /**
1915
+ * Return zero.
1916
+ */
1917
+ static zero(): WasmDyadic;
1918
+ /**
1919
+ * Format as an integer or rational string.
1920
+ */
1921
+ format(): string;
1922
+ /**
1923
+ * Return whether the dyadic is zero.
1924
+ */
1925
+ isZero(): boolean;
1926
+ /**
1927
+ * Power-of-two denominator exponent.
1928
+ */
1929
+ exponent(): number;
1930
+ }
1751
1931
  /**
1752
1932
  * WASM wrapper for equivariant localization on Grassmannians
1753
1933
  */
@@ -2065,6 +2245,64 @@ export class WasmGF2Vector {
2065
2245
  */
2066
2246
  static fromBits(bits: Uint8Array): WasmGF2Vector;
2067
2247
  }
2248
+ /**
2249
+ * Opaque handle for a short combinatorial game stored in a `WasmCgtArena`.
2250
+ */
2251
+ export class WasmGameId {
2252
+ private constructor();
2253
+ free(): void;
2254
+ /**
2255
+ * Returns whether two game handles point at the same arena-local game.
2256
+ */
2257
+ same(other: WasmGameId): boolean;
2258
+ }
2259
+ /**
2260
+ * Inspection summary for a short combinatorial game.
2261
+ */
2262
+ export class WasmGameInspection {
2263
+ private constructor();
2264
+ free(): void;
2265
+ /**
2266
+ * Whether the game is numeric.
2267
+ */
2268
+ isNumeric(): boolean;
2269
+ /**
2270
+ * Whether the game is partizan.
2271
+ */
2272
+ isPartizan(): boolean;
2273
+ /**
2274
+ * Whether the game already is its canonical representative.
2275
+ */
2276
+ isCanonical(): boolean;
2277
+ /**
2278
+ * Whether the game is impartial.
2279
+ */
2280
+ isImpartial(): boolean;
2281
+ /**
2282
+ * Canonical structural form as recursive cut notation.
2283
+ */
2284
+ canonicalForm(): string;
2285
+ /**
2286
+ * Whether the game is non-numeric.
2287
+ */
2288
+ isNonNumeric(): boolean;
2289
+ /**
2290
+ * Number of reachable arena nodes in the game DAG.
2291
+ */
2292
+ reachableNodeCount(): number;
2293
+ /**
2294
+ * Normal-play outcome class.
2295
+ */
2296
+ outcome(): string;
2297
+ /**
2298
+ * Birthday of the inspected game.
2299
+ */
2300
+ birthday(): number;
2301
+ /**
2302
+ * Canonical representative handle.
2303
+ */
2304
+ canonical(): WasmGameId;
2305
+ }
2068
2306
  /**
2069
2307
  * WASM wrapper for Gaussian distribution on Cl(3,0,0) multivector space
2070
2308
  *
@@ -4226,6 +4464,101 @@ export class WasmSensitivityMap {
4226
4464
  */
4227
4465
  getTotalSensitivity(): number;
4228
4466
  }
4467
+ /**
4468
+ * Exact short surreal value backed by a dyadic rational.
4469
+ */
4470
+ export class WasmShortSurreal {
4471
+ private constructor();
4472
+ free(): void;
4473
+ /**
4474
+ * Reconstruct this short surreal as a numeric CGT game in the provided arena.
4475
+ */
4476
+ toGameIn(arena: WasmCgtArena): WasmGameId;
4477
+ /**
4478
+ * Checked division; fails if the quotient leaves the dyadic layer.
4479
+ */
4480
+ checkedDiv(rhs: WasmShortSurreal): WasmShortSurreal;
4481
+ /**
4482
+ * Create a short surreal from an exact dyadic value.
4483
+ */
4484
+ static fromDyadic(value: WasmDyadic): WasmShortSurreal;
4485
+ /**
4486
+ * Return whether the value is negative.
4487
+ */
4488
+ isNegative(): boolean;
4489
+ /**
4490
+ * Return whether the value is positive.
4491
+ */
4492
+ isPositive(): boolean;
4493
+ /**
4494
+ * Create a short surreal from an integer.
4495
+ */
4496
+ static fromInteger(value: number): WasmShortSurreal;
4497
+ /**
4498
+ * Whether the value was converted from a CGT game handle.
4499
+ */
4500
+ hasProvenance(): boolean;
4501
+ /**
4502
+ * Checked reciprocal within the dyadic short-surreal layer.
4503
+ */
4504
+ checkedReciprocal(): WasmShortSurreal;
4505
+ /**
4506
+ * Absolute value.
4507
+ */
4508
+ abs(): WasmShortSurreal;
4509
+ /**
4510
+ * Add two short surreals exactly.
4511
+ */
4512
+ add(rhs: WasmShortSurreal): WasmShortSurreal;
4513
+ /**
4514
+ * Multiply two short surreals exactly.
4515
+ */
4516
+ mul(rhs: WasmShortSurreal): WasmShortSurreal;
4517
+ /**
4518
+ * Negate the value.
4519
+ */
4520
+ neg(): WasmShortSurreal;
4521
+ /**
4522
+ * Return one.
4523
+ */
4524
+ static one(): WasmShortSurreal;
4525
+ /**
4526
+ * Subtract two short surreals exactly.
4527
+ */
4528
+ sub(rhs: WasmShortSurreal): WasmShortSurreal;
4529
+ /**
4530
+ * Return the sign as `negative`, `zero`, or `positive`.
4531
+ */
4532
+ sign(): string;
4533
+ /**
4534
+ * Return zero.
4535
+ */
4536
+ static zero(): WasmShortSurreal;
4537
+ /**
4538
+ * Format as an integer or dyadic rational string.
4539
+ */
4540
+ format(): string;
4541
+ /**
4542
+ * Compare two short surreal values.
4543
+ */
4544
+ compare(rhs: WasmShortSurreal): string;
4545
+ /**
4546
+ * Return whether the value is zero.
4547
+ */
4548
+ isZero(): boolean;
4549
+ /**
4550
+ * Birthday of the short surreal value.
4551
+ */
4552
+ birthday(): number;
4553
+ /**
4554
+ * Convert a numeric CGT game to a short surreal.
4555
+ */
4556
+ static fromGame(arena: WasmCgtArena, game: WasmGameId): WasmShortSurreal;
4557
+ /**
4558
+ * Return the exact dyadic value.
4559
+ */
4560
+ toDyadic(): WasmDyadic;
4561
+ }
4229
4562
  /**
4230
4563
  * Simple quadratic optimization problem for WASM demonstration
4231
4564
  */
@@ -5470,6 +5803,7 @@ export interface InitOutput {
5470
5803
  readonly __wbg_wasmbinarymultivector_free: (a: number, b: number) => void;
5471
5804
  readonly __wbg_wasmboundaryface_free: (a: number, b: number) => void;
5472
5805
  readonly __wbg_wasmcapability_free: (a: number, b: number) => void;
5806
+ readonly __wbg_wasmcgtarena_free: (a: number, b: number) => void;
5473
5807
  readonly __wbg_wasmchowclass_free: (a: number, b: number) => void;
5474
5808
  readonly __wbg_wasmcommunity_free: (a: number, b: number) => void;
5475
5809
  readonly __wbg_wasmcomposablenamespace_free: (a: number, b: number) => void;
@@ -5481,6 +5815,8 @@ export interface InitOutput {
5481
5815
  readonly __wbg_wasmfiltration_free: (a: number, b: number) => void;
5482
5816
  readonly __wbg_wasmfisherinformationmatrix_free: (a: number, b: number) => void;
5483
5817
  readonly __wbg_wasmfishermeasure_free: (a: number, b: number) => void;
5818
+ readonly __wbg_wasmgameid_free: (a: number, b: number) => void;
5819
+ readonly __wbg_wasmgameinspection_free: (a: number, b: number) => void;
5484
5820
  readonly __wbg_wasmgaussianmultivector_free: (a: number, b: number) => void;
5485
5821
  readonly __wbg_wasmgeodesicintegrator_free: (a: number, b: number) => void;
5486
5822
  readonly __wbg_wasmgeometricca_free: (a: number, b: number) => void;
@@ -5489,7 +5825,6 @@ export interface InitOutput {
5489
5825
  readonly __wbg_wasmgf2matrix_free: (a: number, b: number) => void;
5490
5826
  readonly __wbg_wasmgf2vector_free: (a: number, b: number) => void;
5491
5827
  readonly __wbg_wasmgradeprojecteddistribution_free: (a: number, b: number) => void;
5492
- readonly __wbg_wasmgrassmannian_free: (a: number, b: number) => void;
5493
5828
  readonly __wbg_wasmholographicmemory_free: (a: number, b: number) => void;
5494
5829
  readonly __wbg_wasmintersectionresult_free: (a: number, b: number) => void;
5495
5830
  readonly __wbg_wasminversecadesigner_free: (a: number, b: number) => void;
@@ -5514,6 +5849,7 @@ export interface InitOutput {
5514
5849
  readonly __wbg_wasmschubertcalculus_free: (a: number, b: number) => void;
5515
5850
  readonly __wbg_wasmselfassembler_free: (a: number, b: number) => void;
5516
5851
  readonly __wbg_wasmsensitivitymap_free: (a: number, b: number) => void;
5852
+ readonly __wbg_wasmshortsurreal_free: (a: number, b: number) => void;
5517
5853
  readonly __wbg_wasmsimplex_free: (a: number, b: number) => void;
5518
5854
  readonly __wbg_wasmsimplicialcomplex_free: (a: number, b: number) => void;
5519
5855
  readonly __wbg_wasmsmtproofobligation_free: (a: number, b: number) => void;
@@ -5729,6 +6065,30 @@ export interface InitOutput {
5729
6065
  readonly wasmcapability_getName: (a: number) => [number, number];
5730
6066
  readonly wasmcapability_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number];
5731
6067
  readonly wasmcapability_requires: (a: number, b: number, c: number) => number;
6068
+ readonly wasmcgtarena_add: (a: number, b: number, c: number) => [number, number, number];
6069
+ readonly wasmcgtarena_birthday: (a: number, b: number) => [number, number, number];
6070
+ readonly wasmcgtarena_canonical: (a: number, b: number) => [number, number, number];
6071
+ readonly wasmcgtarena_compare: (a: number, b: number, c: number) => [number, number, number, number];
6072
+ readonly wasmcgtarena_cut: (a: number, b: number, c: number) => [number, number, number];
6073
+ readonly wasmcgtarena_equivalent: (a: number, b: number, c: number) => [number, number, number];
6074
+ readonly wasmcgtarena_formatCanonicalGame: (a: number, b: number) => [number, number, number, number];
6075
+ readonly wasmcgtarena_formatGame: (a: number, b: number) => [number, number, number, number];
6076
+ readonly wasmcgtarena_grundy: (a: number, b: number) => [number, number, number];
6077
+ readonly wasmcgtarena_inspect: (a: number, b: number) => [number, number, number];
6078
+ readonly wasmcgtarena_isImpartial: (a: number, b: number) => [number, number, number];
6079
+ readonly wasmcgtarena_isNumeric: (a: number, b: number) => [number, number, number];
6080
+ readonly wasmcgtarena_leftCut: (a: number, b: number) => [number, number, number];
6081
+ readonly wasmcgtarena_minusOne: (a: number) => [number, number, number];
6082
+ readonly wasmcgtarena_neg: (a: number, b: number) => [number, number, number];
6083
+ readonly wasmcgtarena_new: () => number;
6084
+ readonly wasmcgtarena_nimHeap: (a: number, b: number) => [number, number, number];
6085
+ readonly wasmcgtarena_nodeCount: (a: number) => number;
6086
+ readonly wasmcgtarena_one: (a: number) => [number, number, number];
6087
+ readonly wasmcgtarena_outcome: (a: number, b: number) => [number, number, number, number];
6088
+ readonly wasmcgtarena_rightCut: (a: number, b: number) => [number, number, number];
6089
+ readonly wasmcgtarena_star: (a: number) => [number, number, number];
6090
+ readonly wasmcgtarena_sub: (a: number, b: number, c: number) => [number, number, number];
6091
+ readonly wasmcgtarena_zero: (a: number) => number;
5732
6092
  readonly wasmchowclass_getDegree: (a: number) => number;
5733
6093
  readonly wasmchowclass_getDimension: (a: number) => number;
5734
6094
  readonly wasmchowclass_hypersurface: (a: number) => number;
@@ -5789,6 +6149,23 @@ export interface InitOutput {
5789
6149
  readonly wasmdualnumber_tan: (a: number) => number;
5790
6150
  readonly wasmdualnumber_tanh: (a: number) => number;
5791
6151
  readonly wasmdualnumber_variable: (a: number) => number;
6152
+ readonly wasmdyadic_abs: (a: number) => number;
6153
+ readonly wasmdyadic_add: (a: number, b: number) => number;
6154
+ readonly wasmdyadic_checkedDiv: (a: number, b: number) => [number, number, number];
6155
+ readonly wasmdyadic_checkedReciprocal: (a: number) => [number, number, number];
6156
+ readonly wasmdyadic_format: (a: number) => [number, number];
6157
+ readonly wasmdyadic_fromInteger: (a: number) => number;
6158
+ readonly wasmdyadic_isNegative: (a: number) => number;
6159
+ readonly wasmdyadic_isPositive: (a: number) => number;
6160
+ readonly wasmdyadic_isZero: (a: number) => number;
6161
+ readonly wasmdyadic_mul: (a: number, b: number) => number;
6162
+ readonly wasmdyadic_neg: (a: number) => number;
6163
+ readonly wasmdyadic_new: (a: number, b: number) => number;
6164
+ readonly wasmdyadic_numeratorString: (a: number) => [number, number];
6165
+ readonly wasmdyadic_one: () => number;
6166
+ readonly wasmdyadic_sign: (a: number) => [number, number];
6167
+ readonly wasmdyadic_sub: (a: number, b: number) => number;
6168
+ readonly wasmdyadic_zero: () => number;
5792
6169
  readonly wasmequivariantlocalizer_fixedPointCount: (a: number) => number;
5793
6170
  readonly wasmequivariantlocalizer_localizedIntersection: (a: number, b: number, c: number) => number;
5794
6171
  readonly wasmequivariantlocalizer_new: (a: number, b: number) => [number, number, number];
@@ -5819,6 +6196,17 @@ export interface InitOutput {
5819
6196
  readonly wasmfourvelocity_rapidity: (a: number) => number;
5820
6197
  readonly wasmfourvelocity_spatial_velocity_magnitude: (a: number) => number;
5821
6198
  readonly wasmfourvelocity_to_string: (a: number) => [number, number];
6199
+ readonly wasmgameid_same: (a: number, b: number) => number;
6200
+ readonly wasmgameinspection_birthday: (a: number) => number;
6201
+ readonly wasmgameinspection_canonical: (a: number) => number;
6202
+ readonly wasmgameinspection_canonicalForm: (a: number) => [number, number];
6203
+ readonly wasmgameinspection_isCanonical: (a: number) => number;
6204
+ readonly wasmgameinspection_isImpartial: (a: number) => number;
6205
+ readonly wasmgameinspection_isNonNumeric: (a: number) => number;
6206
+ readonly wasmgameinspection_isNumeric: (a: number) => number;
6207
+ readonly wasmgameinspection_isPartizan: (a: number) => number;
6208
+ readonly wasmgameinspection_outcome: (a: number) => [number, number];
6209
+ readonly wasmgameinspection_reachableNodeCount: (a: number) => number;
5822
6210
  readonly wasmgaussianmultivector_getCovariance: (a: number) => [number, number];
5823
6211
  readonly wasmgaussianmultivector_getMean: (a: number) => [number, number];
5824
6212
  readonly wasmgaussianmultivector_getStdDevs: (a: number) => [number, number];
@@ -6101,7 +6489,6 @@ export interface InitOutput {
6101
6489
  readonly wasmopticalrotorfield_random: (a: number, b: number, c: bigint) => number;
6102
6490
  readonly wasmopticalrotorfield_totalEnergy: (a: number) => number;
6103
6491
  readonly wasmopticalrotorfield_uniform: (a: number, b: number, c: number, d: number) => number;
6104
- readonly wasmopticalrotorfield_width: (a: number) => number;
6105
6492
  readonly wasmoptimizationresult_converged: (a: number) => number;
6106
6493
  readonly wasmoptimizationresult_solution: (a: number) => [number, number];
6107
6494
  readonly wasmoptimizationutils_dominates: (a: number, b: number, c: number, d: number) => number;
@@ -6210,6 +6597,27 @@ export interface InitOutput {
6210
6597
  readonly wasmsensitivitymap_getAllSensitivities: (a: number) => [number, number, number];
6211
6598
  readonly wasmsensitivitymap_getMostSensitive: (a: number, b: number) => [number, number];
6212
6599
  readonly wasmsensitivitymap_getTotalSensitivity: (a: number) => number;
6600
+ readonly wasmshortsurreal_abs: (a: number) => number;
6601
+ readonly wasmshortsurreal_add: (a: number, b: number) => number;
6602
+ readonly wasmshortsurreal_checkedDiv: (a: number, b: number) => [number, number, number];
6603
+ readonly wasmshortsurreal_checkedReciprocal: (a: number) => [number, number, number];
6604
+ readonly wasmshortsurreal_compare: (a: number, b: number) => [number, number];
6605
+ readonly wasmshortsurreal_format: (a: number) => [number, number];
6606
+ readonly wasmshortsurreal_fromDyadic: (a: number) => number;
6607
+ readonly wasmshortsurreal_fromGame: (a: number, b: number) => [number, number, number];
6608
+ readonly wasmshortsurreal_fromInteger: (a: number) => number;
6609
+ readonly wasmshortsurreal_hasProvenance: (a: number) => number;
6610
+ readonly wasmshortsurreal_isNegative: (a: number) => number;
6611
+ readonly wasmshortsurreal_isPositive: (a: number) => number;
6612
+ readonly wasmshortsurreal_isZero: (a: number) => number;
6613
+ readonly wasmshortsurreal_mul: (a: number, b: number) => number;
6614
+ readonly wasmshortsurreal_neg: (a: number) => number;
6615
+ readonly wasmshortsurreal_one: () => number;
6616
+ readonly wasmshortsurreal_sign: (a: number) => [number, number];
6617
+ readonly wasmshortsurreal_sub: (a: number, b: number) => number;
6618
+ readonly wasmshortsurreal_toDyadic: (a: number) => number;
6619
+ readonly wasmshortsurreal_toGameIn: (a: number, b: number) => [number, number, number];
6620
+ readonly wasmshortsurreal_zero: () => number;
6213
6621
  readonly wasmsimpleoptimizer_optimizeQuadratic: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
6214
6622
  readonly wasmsimplex_boundaryFaces: (a: number) => [number, number];
6215
6623
  readonly wasmsimplex_containsVertex: (a: number, b: number) => number;
@@ -6443,6 +6851,7 @@ export interface InitOutput {
6443
6851
  readonly wasmcommunity_cohesion_score: (a: number) => number;
6444
6852
  readonly wasmcriticalpoint_value: (a: number) => number;
6445
6853
  readonly wasmdualnumber_getReal: (a: number) => number;
6854
+ readonly wasmdyadic_exponent: (a: number) => number;
6446
6855
  readonly wasmevaluationresult_getBestPathScore: (a: number) => number;
6447
6856
  readonly wasmevaluationresult_getGradientNorm: (a: number) => number;
6448
6857
  readonly wasmgeometricbrownianmotion_getMu: (a: number) => number;
@@ -6462,6 +6871,7 @@ export interface InitOutput {
6462
6871
  readonly wasmmultiobjectiveresult_generations: (a: number) => number;
6463
6872
  readonly wasmopticalfieldalgebra_height: (a: number) => number;
6464
6873
  readonly wasmopticalfieldalgebra_width: (a: number) => number;
6874
+ readonly wasmopticalrotorfield_width: (a: number) => number;
6465
6875
  readonly wasmoptimizationresult_iterations: (a: number) => number;
6466
6876
  readonly wasmoptimizationresult_objective_value: (a: number) => number;
6467
6877
  readonly wasmordinal_getIndex: (a: number) => number;
@@ -6471,6 +6881,7 @@ export interface InitOutput {
6471
6881
  readonly wasmpropagationanalysis_convergence_time: (a: number) => number;
6472
6882
  readonly wasmrareevent_probability: (a: number) => number;
6473
6883
  readonly wasmschwarzschildmetric_mass: (a: number) => number;
6884
+ readonly wasmshortsurreal_birthday: (a: number) => number;
6474
6885
  readonly wasmsimplicialcomplex_dimension: (a: number) => number;
6475
6886
  readonly wasmspacetimevector_x: (a: number) => number;
6476
6887
  readonly wasmspacetimevector_y: (a: number) => number;
@@ -6513,6 +6924,7 @@ export interface InitOutput {
6513
6924
  readonly __wbg_wasmgeometricbrownianmotion_free: (a: number, b: number) => void;
6514
6925
  readonly __wbg_wasmgeometricedge_free: (a: number, b: number) => void;
6515
6926
  readonly __wbg_wasmgpuoptimizer_free: (a: number, b: number) => void;
6927
+ readonly __wbg_wasmgrassmannian_free: (a: number, b: number) => void;
6516
6928
  readonly __wbg_wasmhilbertspace_free: (a: number, b: number) => void;
6517
6929
  readonly __wbg_wasmmontecarloestimator_free: (a: number, b: number) => void;
6518
6930
  readonly __wbg_wasmmontecarloverifier_free: (a: number, b: number) => void;
@@ -6539,6 +6951,7 @@ export interface InitOutput {
6539
6951
  readonly __wbg_wasmtropicalopticalalgebra_free: (a: number, b: number) => void;
6540
6952
  readonly __wbg_wasmwallcrossingengine_free: (a: number, b: number) => void;
6541
6953
  readonly __wbg_wasmwienerprocess_free: (a: number, b: number) => void;
6954
+ readonly __wbg_wasmdyadic_free: (a: number, b: number) => void;
6542
6955
  readonly __wbg_wasmfixedpoint_free: (a: number, b: number) => void;
6543
6956
  readonly __wbg_wasmmatrixoperator_free: (a: number, b: number) => void;
6544
6957
  readonly __wbg_wasmmultiobjectiveresult_free: (a: number, b: number) => void;
@@ -6566,8 +6979,8 @@ export interface InitOutput {
6566
6979
  readonly __wbindgen_export_6: WebAssembly.Table;
6567
6980
  readonly __externref_table_dealloc: (a: number) => void;
6568
6981
  readonly __externref_drop_slice: (a: number, b: number) => void;
6569
- readonly closure72_externref_shim: (a: number, b: number, c: any) => void;
6570
- readonly closure66_externref_shim: (a: number, b: number, c: any, d: any) => void;
6982
+ readonly closure77_externref_shim: (a: number, b: number, c: any) => void;
6983
+ readonly closure71_externref_shim: (a: number, b: number, c: any, d: any) => void;
6571
6984
  readonly __wbindgen_start: () => void;
6572
6985
  }
6573
6986