mathfuse 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/LICENSE +21 -0
  3. package/README.md +239 -0
  4. package/dist/cjs/algebra/index.d.ts +99 -0
  5. package/dist/cjs/algebra/index.d.ts.map +1 -0
  6. package/dist/cjs/algebra/index.js +358 -0
  7. package/dist/cjs/algebra/index.js.map +1 -0
  8. package/dist/cjs/index.d.ts +15 -0
  9. package/dist/cjs/index.d.ts.map +1 -0
  10. package/dist/cjs/index.js +82 -0
  11. package/dist/cjs/index.js.map +1 -0
  12. package/dist/cjs/number-theory/index.d.ts +81 -0
  13. package/dist/cjs/number-theory/index.d.ts.map +1 -0
  14. package/dist/cjs/number-theory/index.js +331 -0
  15. package/dist/cjs/number-theory/index.js.map +1 -0
  16. package/dist/cjs/numerical/index.d.ts +95 -0
  17. package/dist/cjs/numerical/index.d.ts.map +1 -0
  18. package/dist/cjs/numerical/index.js +300 -0
  19. package/dist/cjs/numerical/index.js.map +1 -0
  20. package/dist/cjs/stats/index.d.ts +32 -0
  21. package/dist/cjs/stats/index.d.ts.map +1 -0
  22. package/dist/cjs/stats/index.js +232 -0
  23. package/dist/cjs/stats/index.js.map +1 -0
  24. package/dist/esm/algebra/index.d.ts +99 -0
  25. package/dist/esm/algebra/index.d.ts.map +1 -0
  26. package/dist/esm/algebra/index.js +333 -0
  27. package/dist/esm/algebra/index.js.map +1 -0
  28. package/dist/esm/index.d.ts +15 -0
  29. package/dist/esm/index.d.ts.map +1 -0
  30. package/dist/esm/index.js +16 -0
  31. package/dist/esm/index.js.map +1 -0
  32. package/dist/esm/number-theory/index.d.ts +81 -0
  33. package/dist/esm/number-theory/index.d.ts.map +1 -0
  34. package/dist/esm/number-theory/index.js +311 -0
  35. package/dist/esm/number-theory/index.js.map +1 -0
  36. package/dist/esm/numerical/index.d.ts +95 -0
  37. package/dist/esm/numerical/index.d.ts.map +1 -0
  38. package/dist/esm/numerical/index.js +280 -0
  39. package/dist/esm/numerical/index.js.map +1 -0
  40. package/dist/esm/stats/index.d.ts +32 -0
  41. package/dist/esm/stats/index.d.ts.map +1 -0
  42. package/dist/esm/stats/index.js +208 -0
  43. package/dist/esm/stats/index.js.map +1 -0
  44. package/dist/types/algebra/index.d.ts +99 -0
  45. package/dist/types/algebra/index.d.ts.map +1 -0
  46. package/dist/types/index.d.ts +15 -0
  47. package/dist/types/index.d.ts.map +1 -0
  48. package/dist/types/number-theory/index.d.ts +81 -0
  49. package/dist/types/number-theory/index.d.ts.map +1 -0
  50. package/dist/types/numerical/index.d.ts +95 -0
  51. package/dist/types/numerical/index.d.ts.map +1 -0
  52. package/dist/types/stats/index.d.ts +32 -0
  53. package/dist/types/stats/index.d.ts.map +1 -0
  54. package/package.json +85 -0
@@ -0,0 +1,99 @@
1
+ /**
2
+ * @module algebra
3
+ * Vector and matrix operations using plain JS arrays.
4
+ * All operations return new values — inputs are never mutated.
5
+ */
6
+ export type Vector = number[];
7
+ export type Matrix = number[][];
8
+ /**
9
+ * Vector addition: a + b
10
+ */
11
+ export declare function vadd(a: Vector, b: Vector): Vector;
12
+ /**
13
+ * Vector subtraction: a − b
14
+ */
15
+ export declare function vsub(a: Vector, b: Vector): Vector;
16
+ /**
17
+ * Scalar multiplication: c * v
18
+ */
19
+ export declare function vscale(v: Vector, c: number): Vector;
20
+ /**
21
+ * Dot product: a · b
22
+ */
23
+ export declare function vdot(a: Vector, b: Vector): number;
24
+ /**
25
+ * L2 (Euclidean) norm of a vector.
26
+ */
27
+ export declare function vnorm(v: Vector, p?: number): number;
28
+ /**
29
+ * Normalized unit vector (direction only).
30
+ */
31
+ export declare function vnormalize(v: Vector): Vector;
32
+ /**
33
+ * Euclidean distance between two vectors.
34
+ */
35
+ export declare function vdistance(a: Vector, b: Vector): number;
36
+ /**
37
+ * Cosine similarity between two vectors: (a · b) / (|a| |b|)
38
+ */
39
+ export declare function cosineSimilarity(a: Vector, b: Vector): number;
40
+ /**
41
+ * Cross product of two 3D vectors.
42
+ */
43
+ export declare function cross3d(a: Vector, b: Vector): Vector;
44
+ /**
45
+ * Element-wise (Hadamard) product.
46
+ */
47
+ export declare function vhadamard(a: Vector, b: Vector): Vector;
48
+ /**
49
+ * Create an n×m matrix filled with a value (default 0).
50
+ */
51
+ export declare function mzeros(n: number, m: number): Matrix;
52
+ /**
53
+ * Create an n×n identity matrix.
54
+ */
55
+ export declare function midentity(n: number): Matrix;
56
+ /**
57
+ * Transpose a matrix.
58
+ */
59
+ export declare function mtranspose(m: Matrix): Matrix;
60
+ /**
61
+ * Matrix addition.
62
+ */
63
+ export declare function madd(a: Matrix, b: Matrix): Matrix;
64
+ /**
65
+ * Matrix scalar multiplication.
66
+ */
67
+ export declare function mscale(m: Matrix, c: number): Matrix;
68
+ /**
69
+ * Matrix multiplication (naive O(n³)).
70
+ */
71
+ export declare function mmul(a: Matrix, b: Matrix): Matrix;
72
+ /**
73
+ * Matrix-vector product: m · v
74
+ */
75
+ export declare function mvmul(m: Matrix, v: Vector): Vector;
76
+ /**
77
+ * Determinant via LU decomposition (in-place, returns sign + value).
78
+ * @example mdet([[1,2],[3,4]]) // -2
79
+ */
80
+ export declare function mdet(m: Matrix): number;
81
+ /**
82
+ * Matrix inverse via Gauss-Jordan elimination.
83
+ * Throws if the matrix is singular.
84
+ */
85
+ export declare function minverse(m: Matrix): Matrix;
86
+ /**
87
+ * Matrix trace — sum of diagonal elements.
88
+ */
89
+ export declare function mtrace(m: Matrix): number;
90
+ /**
91
+ * Matrix rank via Gaussian elimination.
92
+ */
93
+ export declare function mrank(m: Matrix): number;
94
+ /**
95
+ * Solve Ax = b using Gauss-Jordan elimination.
96
+ * @returns solution vector x
97
+ */
98
+ export declare function msolve(A: Matrix, b: Vector): Vector;
99
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algebra/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;AAC9B,MAAM,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;AAUhC;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,SAAI,GAAG,MAAM,CAK9C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI5C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CASpD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGtD;AAsBD;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI3C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAK5C;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAajD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAMlD;AAID;;;GAGG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CA6BtC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CA4B1C;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAGxC;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAsBvC;AAID;;;GAGG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAyBnD"}
@@ -0,0 +1,333 @@
1
+ /**
2
+ * @module algebra
3
+ * Vector and matrix operations using plain JS arrays.
4
+ * All operations return new values — inputs are never mutated.
5
+ */
6
+ // ─── Vector Operations ────────────────────────────────────────────────────────
7
+ function assertSameLength(a, b, label = 'vectors') {
8
+ if (a.length !== b.length) {
9
+ throw new RangeError(`${label} must have equal length (got ${a.length} and ${b.length})`);
10
+ }
11
+ }
12
+ /**
13
+ * Vector addition: a + b
14
+ */
15
+ export function vadd(a, b) {
16
+ assertSameLength(a, b);
17
+ return a.map((v, i) => v + b[i]);
18
+ }
19
+ /**
20
+ * Vector subtraction: a − b
21
+ */
22
+ export function vsub(a, b) {
23
+ assertSameLength(a, b);
24
+ return a.map((v, i) => v - b[i]);
25
+ }
26
+ /**
27
+ * Scalar multiplication: c * v
28
+ */
29
+ export function vscale(v, c) {
30
+ return v.map((x) => x * c);
31
+ }
32
+ /**
33
+ * Dot product: a · b
34
+ */
35
+ export function vdot(a, b) {
36
+ assertSameLength(a, b);
37
+ return a.reduce((s, v, i) => s + v * b[i], 0);
38
+ }
39
+ /**
40
+ * L2 (Euclidean) norm of a vector.
41
+ */
42
+ export function vnorm(v, p = 2) {
43
+ if (v.length === 0)
44
+ return 0;
45
+ if (p === Infinity)
46
+ return Math.max(...v.map(Math.abs));
47
+ if (p <= 0)
48
+ throw new RangeError('p-norm requires p > 0');
49
+ return v.reduce((s, x) => s + Math.abs(x) ** p, 0) ** (1 / p);
50
+ }
51
+ /**
52
+ * Normalized unit vector (direction only).
53
+ */
54
+ export function vnormalize(v) {
55
+ const n = vnorm(v);
56
+ if (n === 0)
57
+ throw new RangeError('cannot normalize a zero vector');
58
+ return vscale(v, 1 / n);
59
+ }
60
+ /**
61
+ * Euclidean distance between two vectors.
62
+ */
63
+ export function vdistance(a, b) {
64
+ assertSameLength(a, b);
65
+ return vnorm(vsub(a, b));
66
+ }
67
+ /**
68
+ * Cosine similarity between two vectors: (a · b) / (|a| |b|)
69
+ */
70
+ export function cosineSimilarity(a, b) {
71
+ assertSameLength(a, b);
72
+ const denom = vnorm(a) * vnorm(b);
73
+ if (denom === 0)
74
+ throw new RangeError('cosine similarity requires non-zero vectors');
75
+ return vdot(a, b) / denom;
76
+ }
77
+ /**
78
+ * Cross product of two 3D vectors.
79
+ */
80
+ export function cross3d(a, b) {
81
+ if (a.length !== 3 || b.length !== 3) {
82
+ throw new RangeError('cross3d requires 3D vectors');
83
+ }
84
+ return [
85
+ a[1] * b[2] - a[2] * b[1],
86
+ a[2] * b[0] - a[0] * b[2],
87
+ a[0] * b[1] - a[1] * b[0],
88
+ ];
89
+ }
90
+ /**
91
+ * Element-wise (Hadamard) product.
92
+ */
93
+ export function vhadamard(a, b) {
94
+ assertSameLength(a, b);
95
+ return a.map((v, i) => v * b[i]);
96
+ }
97
+ // ─── Matrix Helpers ──────────────────────────────────────────────────────────
98
+ function rows(m) { return m.length; }
99
+ function cols(m) { return m.length > 0 ? m[0].length : 0; }
100
+ function assertMatrix(m, label = 'matrix') {
101
+ if (!m || m.length === 0)
102
+ throw new RangeError(`${label} must be non-empty`);
103
+ const c = m[0].length;
104
+ if (m.some((row) => row.length !== c)) {
105
+ throw new RangeError(`${label} rows must have equal length`);
106
+ }
107
+ }
108
+ function assertSquare(m, label = 'matrix') {
109
+ assertMatrix(m, label);
110
+ if (rows(m) !== cols(m)) {
111
+ throw new RangeError(`${label} must be square (got ${rows(m)}×${cols(m)})`);
112
+ }
113
+ }
114
+ /**
115
+ * Create an n×m matrix filled with a value (default 0).
116
+ */
117
+ export function mzeros(n, m) {
118
+ return Array.from({ length: n }, () => new Array(m).fill(0));
119
+ }
120
+ /**
121
+ * Create an n×n identity matrix.
122
+ */
123
+ export function midentity(n) {
124
+ const I = mzeros(n, n);
125
+ for (let i = 0; i < n; i++)
126
+ I[i][i] = 1;
127
+ return I;
128
+ }
129
+ /**
130
+ * Transpose a matrix.
131
+ */
132
+ export function mtranspose(m) {
133
+ assertMatrix(m);
134
+ return Array.from({ length: cols(m) }, (_, c) => Array.from({ length: rows(m) }, (__, r) => m[r][c]));
135
+ }
136
+ /**
137
+ * Matrix addition.
138
+ */
139
+ export function madd(a, b) {
140
+ assertMatrix(a, 'a');
141
+ assertMatrix(b, 'b');
142
+ if (rows(a) !== rows(b) || cols(a) !== cols(b)) {
143
+ throw new RangeError('matrices must have the same dimensions for addition');
144
+ }
145
+ return a.map((row, i) => row.map((v, j) => v + b[i][j]));
146
+ }
147
+ /**
148
+ * Matrix scalar multiplication.
149
+ */
150
+ export function mscale(m, c) {
151
+ assertMatrix(m);
152
+ return m.map((row) => row.map((v) => v * c));
153
+ }
154
+ /**
155
+ * Matrix multiplication (naive O(n³)).
156
+ */
157
+ export function mmul(a, b) {
158
+ assertMatrix(a, 'a');
159
+ assertMatrix(b, 'b');
160
+ if (cols(a) !== rows(b)) {
161
+ throw new RangeError(`incompatible dimensions: ${rows(a)}×${cols(a)} · ${rows(b)}×${cols(b)}`);
162
+ }
163
+ const r = rows(a), c = cols(b), inner = cols(a);
164
+ const result = mzeros(r, c);
165
+ for (let i = 0; i < r; i++)
166
+ for (let k = 0; k < inner; k++)
167
+ if (a[i][k] !== 0)
168
+ for (let j = 0; j < c; j++)
169
+ result[i][j] += a[i][k] * b[k][j];
170
+ return result;
171
+ }
172
+ /**
173
+ * Matrix-vector product: m · v
174
+ */
175
+ export function mvmul(m, v) {
176
+ assertMatrix(m);
177
+ if (cols(m) !== v.length) {
178
+ throw new RangeError(`matrix columns (${cols(m)}) must match vector length (${v.length})`);
179
+ }
180
+ return m.map((row) => vdot(row, v));
181
+ }
182
+ // ─── Determinant & Inverse ────────────────────────────────────────────────────
183
+ /**
184
+ * Determinant via LU decomposition (in-place, returns sign + value).
185
+ * @example mdet([[1,2],[3,4]]) // -2
186
+ */
187
+ export function mdet(m) {
188
+ assertSquare(m);
189
+ const n = rows(m);
190
+ if (n === 1)
191
+ return m[0][0];
192
+ if (n === 2)
193
+ return m[0][0] * m[1][1] - m[0][1] * m[1][0];
194
+ // Copy
195
+ const a = m.map((row) => [...row]);
196
+ let sign = 1;
197
+ for (let col = 0; col < n; col++) {
198
+ // Find pivot
199
+ let maxRow = col;
200
+ for (let row = col + 1; row < n; row++) {
201
+ if (Math.abs(a[row][col]) > Math.abs(a[maxRow][col]))
202
+ maxRow = row;
203
+ }
204
+ if (maxRow !== col) {
205
+ [a[col], a[maxRow]] = [a[maxRow], a[col]];
206
+ sign *= -1;
207
+ }
208
+ if (a[col][col] === 0)
209
+ return 0;
210
+ for (let row = col + 1; row < n; row++) {
211
+ const factor = a[row][col] / a[col][col];
212
+ for (let j = col; j < n; j++) {
213
+ a[row][j] -= factor * a[col][j];
214
+ }
215
+ }
216
+ }
217
+ let det = sign;
218
+ for (let i = 0; i < n; i++)
219
+ det *= a[i][i];
220
+ return det;
221
+ }
222
+ /**
223
+ * Matrix inverse via Gauss-Jordan elimination.
224
+ * Throws if the matrix is singular.
225
+ */
226
+ export function minverse(m) {
227
+ assertSquare(m);
228
+ const n = rows(m);
229
+ const aug = m.map((row, i) => [
230
+ ...row,
231
+ ...Array.from({ length: n }, (_, j) => (j === i ? 1 : 0)),
232
+ ]);
233
+ for (let col = 0; col < n; col++) {
234
+ // Find pivot
235
+ let maxRow = col;
236
+ for (let row = col + 1; row < n; row++) {
237
+ if (Math.abs(aug[row][col]) > Math.abs(aug[maxRow][col]))
238
+ maxRow = row;
239
+ }
240
+ [aug[col], aug[maxRow]] = [aug[maxRow], aug[col]];
241
+ if (Math.abs(aug[col][col]) < 1e-12) {
242
+ throw new RangeError('matrix is singular and cannot be inverted');
243
+ }
244
+ const pivot = aug[col][col];
245
+ for (let j = 0; j < 2 * n; j++)
246
+ aug[col][j] /= pivot;
247
+ for (let row = 0; row < n; row++) {
248
+ if (row === col)
249
+ continue;
250
+ const factor = aug[row][col];
251
+ for (let j = 0; j < 2 * n; j++) {
252
+ aug[row][j] -= factor * aug[col][j];
253
+ }
254
+ }
255
+ }
256
+ return aug.map((row) => row.slice(n));
257
+ }
258
+ /**
259
+ * Matrix trace — sum of diagonal elements.
260
+ */
261
+ export function mtrace(m) {
262
+ assertSquare(m);
263
+ return m.reduce((s, row, i) => s + row[i], 0);
264
+ }
265
+ /**
266
+ * Matrix rank via Gaussian elimination.
267
+ */
268
+ export function mrank(m) {
269
+ assertMatrix(m);
270
+ const a = m.map((row) => [...row]);
271
+ const r = rows(a), c = cols(a);
272
+ let rank = 0;
273
+ for (let col = 0; col < c && rank < r; col++) {
274
+ let pivotRow = -1;
275
+ for (let row = rank; row < r; row++) {
276
+ if (Math.abs(a[row][col]) > 1e-10) {
277
+ pivotRow = row;
278
+ break;
279
+ }
280
+ }
281
+ if (pivotRow < 0)
282
+ continue;
283
+ [a[rank], a[pivotRow]] = [a[pivotRow], a[rank]];
284
+ const scale = a[rank][col];
285
+ for (let j = col; j < c; j++)
286
+ a[rank][j] /= scale;
287
+ for (let row = 0; row < r; row++) {
288
+ if (row === rank || Math.abs(a[row][col]) < 1e-10)
289
+ continue;
290
+ const f = a[row][col];
291
+ for (let j = col; j < c; j++)
292
+ a[row][j] -= f * a[rank][j];
293
+ }
294
+ rank++;
295
+ }
296
+ return rank;
297
+ }
298
+ // ─── Solve Linear Systems ─────────────────────────────────────────────────────
299
+ /**
300
+ * Solve Ax = b using Gauss-Jordan elimination.
301
+ * @returns solution vector x
302
+ */
303
+ export function msolve(A, b) {
304
+ assertSquare(A, 'A');
305
+ if (rows(A) !== b.length) {
306
+ throw new RangeError('A rows must equal b length');
307
+ }
308
+ const n = rows(A);
309
+ const aug = A.map((row, i) => [...row, b[i]]);
310
+ for (let col = 0; col < n; col++) {
311
+ let maxRow = col;
312
+ for (let row = col + 1; row < n; row++) {
313
+ if (Math.abs(aug[row][col]) > Math.abs(aug[maxRow][col]))
314
+ maxRow = row;
315
+ }
316
+ [aug[col], aug[maxRow]] = [aug[maxRow], aug[col]];
317
+ if (Math.abs(aug[col][col]) < 1e-12) {
318
+ throw new RangeError('matrix is singular — system has no unique solution');
319
+ }
320
+ const pivot = aug[col][col];
321
+ for (let j = col; j <= n; j++)
322
+ aug[col][j] /= pivot;
323
+ for (let row = 0; row < n; row++) {
324
+ if (row === col)
325
+ continue;
326
+ const f = aug[row][col];
327
+ for (let j = col; j <= n; j++)
328
+ aug[row][j] -= f * aug[col][j];
329
+ }
330
+ }
331
+ return aug.map((row) => row[n]);
332
+ }
333
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/algebra/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * mathfuse — A modern, zero-dependency TypeScript math utility library.
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ export * as stats from './stats/index.js';
7
+ export * as algebra from './algebra/index.js';
8
+ export * as nt from './number-theory/index.js';
9
+ export * as numerical from './numerical/index.js';
10
+ export { mean, median, mode, stdDev, variance, percentile, pearsonCorrelation, linearRegression, zScore, minMaxNormalize, } from './stats/index.js';
11
+ export { vadd, vsub, vdot, vnorm, vnormalize, vdistance, mmul, mdet, minverse, msolve, mtranspose, midentity, } from './algebra/index.js';
12
+ export { isPrime, primesUpTo, gcd, lcm, factorial, binomial, fibonacci, nthFibonacci, primeFactors, } from './number-theory/index.js';
13
+ export { bisection, newtonRaphson, brent, derivative, integrate, lerp, clamp, roundTo, approxEqual, } from './numerical/index.js';
14
+ export declare const VERSION = "1.0.0";
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EACL,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAChD,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe,GAC9D,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAC9C,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GACpD,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAClD,SAAS,EAAE,YAAY,EAAE,YAAY,GACtC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,SAAS,EAAE,aAAa,EAAE,KAAK,EAC/B,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,GACzD,MAAM,sBAAsB,CAAC;AAE9B,eAAO,MAAM,OAAO,UAAU,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * mathfuse — A modern, zero-dependency TypeScript math utility library.
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ export * as stats from './stats/index.js';
7
+ export * as algebra from './algebra/index.js';
8
+ export * as nt from './number-theory/index.js';
9
+ export * as numerical from './numerical/index.js';
10
+ // Convenience re-exports for the most-used functions
11
+ export { mean, median, mode, stdDev, variance, percentile, pearsonCorrelation, linearRegression, zScore, minMaxNormalize, } from './stats/index.js';
12
+ export { vadd, vsub, vdot, vnorm, vnormalize, vdistance, mmul, mdet, minverse, msolve, mtranspose, midentity, } from './algebra/index.js';
13
+ export { isPrime, primesUpTo, gcd, lcm, factorial, binomial, fibonacci, nthFibonacci, primeFactors, } from './number-theory/index.js';
14
+ export { bisection, newtonRaphson, brent, derivative, integrate, lerp, clamp, roundTo, approxEqual, } from './numerical/index.js';
15
+ export const VERSION = '1.0.0';
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,qDAAqD;AACrD,OAAO,EACL,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAChD,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe,GAC9D,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAC9C,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GACpD,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAClD,SAAS,EAAE,YAAY,EAAE,YAAY,GACtC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,SAAS,EAAE,aAAa,EAAE,KAAK,EAC/B,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,GACzD,MAAM,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @module number-theory
3
+ * Primes, GCD/LCM, combinatorics, modular arithmetic, and sequences.
4
+ */
5
+ /**
6
+ * Miller-Rabin primality test (deterministic for n < 3,317,044,064,679,887,385,961,981).
7
+ */
8
+ export declare function isPrime(n: number): boolean;
9
+ /**
10
+ * Sieve of Eratosthenes — returns all primes up to (and including) limit.
11
+ * @example primesUpTo(20) // [2, 3, 5, 7, 11, 13, 17, 19]
12
+ */
13
+ export declare function primesUpTo(limit: number): number[];
14
+ /**
15
+ * Next prime strictly greater than n.
16
+ * @example nextPrime(10) // 11
17
+ */
18
+ export declare function nextPrime(n: number): number;
19
+ /**
20
+ * Prime factorization — returns sorted array of prime factors (with repeats).
21
+ * @example primeFactors(60) // [2, 2, 3, 5]
22
+ */
23
+ export declare function primeFactors(n: number): number[];
24
+ /**
25
+ * Greatest common divisor via Euclidean algorithm.
26
+ * @example gcd(48, 18) // 6
27
+ */
28
+ export declare function gcd(a: number, b: number): number;
29
+ /**
30
+ * GCD of an array of integers.
31
+ */
32
+ export declare function gcdMany(nums: number[]): number;
33
+ /**
34
+ * Least common multiple.
35
+ * @example lcm(4, 6) // 12
36
+ */
37
+ export declare function lcm(a: number, b: number): number;
38
+ /**
39
+ * LCM of an array of integers.
40
+ */
41
+ export declare function lcmMany(nums: number[]): number;
42
+ export declare function factorial(n: number): number;
43
+ /**
44
+ * Binomial coefficient C(n, k) — "n choose k".
45
+ * @example binomial(10, 3) // 120
46
+ */
47
+ export declare function binomial(n: number, k: number): number;
48
+ /**
49
+ * Number of permutations P(n, r) = n! / (n−r)!
50
+ */
51
+ export declare function permutations(n: number, r: number): number;
52
+ /**
53
+ * Modular exponentiation: (base^exp) mod m
54
+ * @example modPow(2, 10, 1000) // 24
55
+ */
56
+ export declare function modPow(base: number, exp: number, m: number): number;
57
+ /**
58
+ * Euler's totient φ(n) — count of integers in [1, n] coprime to n.
59
+ */
60
+ export declare function eulerTotient(n: number): number;
61
+ /**
62
+ * Fibonacci sequence up to length n.
63
+ * @example fibonacci(8) // [0, 1, 1, 2, 3, 5, 8, 13]
64
+ */
65
+ export declare function fibonacci(n: number): number[];
66
+ /**
67
+ * nth Fibonacci number (0-indexed, fast doubling algorithm).
68
+ * @example nthFibonacci(10) // 55
69
+ */
70
+ export declare function nthFibonacci(n: number): number;
71
+ /**
72
+ * Collatz sequence starting at n (stops at 1).
73
+ * @example collatz(6) // [6, 3, 10, 5, 16, 8, 4, 2, 1]
74
+ */
75
+ export declare function collatz(n: number): number[];
76
+ /**
77
+ * Digital root of a positive integer (repeated digit sum until single digit).
78
+ * @example digitalRoot(9875) // 2
79
+ */
80
+ export declare function digitalRoot(n: number): number;
81
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/number-theory/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8BH;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAmC1C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAalD;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAO3C;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAYhD;AAID;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAOhD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAG9C;AAED;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAG9C;AASD,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ3C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAWrD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAOzD;AAID;;;GAGG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAYnE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAY9C;AAID;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAM7C;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAW9C;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ3C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI7C"}