universal-physics-tensor 0.14.0 → 0.16.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.
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Exact bridge-gradients via reverse-mode AD over the symbolic RHS AST.
3
+ *
4
+ * The catalog's plain-JS evaluators cannot be differentiated by AD (they run
5
+ * raw `Math.*` arithmetic; see `bridge-gradient.ts`), and `bridgeGradient`'s
6
+ * engine path detaches them. But each bridge also carries a faithful symbolic
7
+ * encoding of its RHS (`*_RHS: ExprNode`). This module lowers that scalar AST
8
+ * through `@danielsimonjr/mathts-autograd`'s `TapedTensor` ops — binding the
9
+ * chosen variable to a traced input and every other symbol to a constant tape
10
+ * leaf — so `reverseGrad` returns the EXACT derivative (machine precision), with
11
+ * the plain-JS evaluators left untouched (P8 Decision #1).
12
+ *
13
+ * Scope: the dimensional scalar grammar is `symbol` + `op(+ − * / ^)` (the
14
+ * transcendentals of a bridge are absorbed into typed-stub *symbols*, so they
15
+ * appear as opaque constants here). A bridge encoded with a typed stub therefore
16
+ * differentiates with respect to the stub, not the physics inside it — faithful,
17
+ * fully-expanded encodings (e.g. BE-42 `ℏc³/(8πGM·k_B)`) differentiate exactly.
18
+ * `^` exponents must be constant (the differentiation variable may not appear in
19
+ * an exponent).
20
+ *
21
+ * Requires the optional `@danielsimonjr/mathts-autograd` peer; throws
22
+ * `EngineCapabilityError` when it is absent (same graceful-degradation contract
23
+ * as `bridgeGradient`).
24
+ *
25
+ * @module diff/bridge-ast-gradient
26
+ */
27
+ import type { ExprNode } from '../dimensional/validator.js';
28
+ /**
29
+ * Result of {@link bridgeGradientAST}: the bridge's scalar `value` at the
30
+ * supplied point and the exact `gradient` d(value)/d(varName).
31
+ *
32
+ * @public
33
+ */
34
+ export interface ASTGradientResult {
35
+ readonly value: number;
36
+ readonly gradient: number;
37
+ }
38
+ /**
39
+ * Differentiate a scalar bridge RHS AST with respect to one symbol via
40
+ * reverse-mode AD. Every symbol other than `varName` is resolved to a constant
41
+ * (caller `bindings`, then {@link NAMED_CONSTANTS}, then numeric literal); the
42
+ * `bindings` must contain `varName` (its value sets the point of evaluation).
43
+ *
44
+ * @public
45
+ */
46
+ export declare function bridgeGradientAST(rhs: ExprNode, varName: string, bindings: Record<string, number>): Promise<ASTGradientResult>;
47
+ //# sourceMappingURL=bridge-ast-gradient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge-ast-gradient.d.ts","sourceRoot":"","sources":["../../src/diff/bridge-ast-gradient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAI5D;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AA0FD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAyE5B"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Exact bridge-gradients via reverse-mode AD over the symbolic RHS AST.
3
+ *
4
+ * The catalog's plain-JS evaluators cannot be differentiated by AD (they run
5
+ * raw `Math.*` arithmetic; see `bridge-gradient.ts`), and `bridgeGradient`'s
6
+ * engine path detaches them. But each bridge also carries a faithful symbolic
7
+ * encoding of its RHS (`*_RHS: ExprNode`). This module lowers that scalar AST
8
+ * through `@danielsimonjr/mathts-autograd`'s `TapedTensor` ops — binding the
9
+ * chosen variable to a traced input and every other symbol to a constant tape
10
+ * leaf — so `reverseGrad` returns the EXACT derivative (machine precision), with
11
+ * the plain-JS evaluators left untouched (P8 Decision #1).
12
+ *
13
+ * Scope: the dimensional scalar grammar is `symbol` + `op(+ − * / ^)` (the
14
+ * transcendentals of a bridge are absorbed into typed-stub *symbols*, so they
15
+ * appear as opaque constants here). A bridge encoded with a typed stub therefore
16
+ * differentiates with respect to the stub, not the physics inside it — faithful,
17
+ * fully-expanded encodings (e.g. BE-42 `ℏc³/(8πGM·k_B)`) differentiate exactly.
18
+ * `^` exponents must be constant (the differentiation variable may not appear in
19
+ * an exponent).
20
+ *
21
+ * Requires the optional `@danielsimonjr/mathts-autograd` peer; throws
22
+ * `EngineCapabilityError` when it is absent (same graceful-degradation contract
23
+ * as `bridgeGradient`).
24
+ *
25
+ * @module diff/bridge-ast-gradient
26
+ */
27
+ import { PhysicalConstants } from '../core/types.js';
28
+ import { EngineCapabilityError } from '../numerical/errors.js';
29
+ /**
30
+ * Named physical constants the bridge encodings reference as bare symbols.
31
+ * Sourced from `PhysicalConstants` so a traced AST evaluates to the SAME number
32
+ * as the corresponding hand-written evaluator. Callers can override or extend
33
+ * via the `bindings` argument.
34
+ */
35
+ const NAMED_CONSTANTS = {
36
+ hbar: PhysicalConstants.hbar,
37
+ c: PhysicalConstants.c,
38
+ G: PhysicalConstants.G,
39
+ k_B: PhysicalConstants.kB,
40
+ kB: PhysicalConstants.kB,
41
+ pi: Math.PI,
42
+ '2pi': 2 * Math.PI,
43
+ '4pi': 4 * Math.PI,
44
+ '8pi': 8 * Math.PI,
45
+ };
46
+ /** Resolve a symbol's numeric value: caller bindings → named constants → numeric literal. */
47
+ function resolveConstant(name, bindings) {
48
+ if (Object.prototype.hasOwnProperty.call(bindings, name))
49
+ return bindings[name];
50
+ if (Object.prototype.hasOwnProperty.call(NAMED_CONSTANTS, name))
51
+ return NAMED_CONSTANTS[name];
52
+ const asNumber = Number(name);
53
+ if (name.trim() !== '' && Number.isFinite(asNumber))
54
+ return asNumber;
55
+ throw new TypeError(`bridgeGradientAST: unknown symbol '${name}' — not a binding, a named constant ` +
56
+ `(${Object.keys(NAMED_CONSTANTS).join(', ')}), or a numeric literal. Supply it in bindings.`);
57
+ }
58
+ /** Resolve a `^` exponent to a constant number; reject the differentiation variable. */
59
+ function resolveExponent(node, varName, bindings) {
60
+ if (node.kind === 'symbol') {
61
+ if (node.name === varName) {
62
+ throw new TypeError(`bridgeGradientAST: differentiation variable '${varName}' appears as an exponent — ` +
63
+ `variable exponents are not supported (only constant powers).`);
64
+ }
65
+ return resolveConstant(node.name, bindings);
66
+ }
67
+ throw new TypeError(`bridgeGradientAST: '^' exponent must be a constant symbol, got node kind '${node.kind}'.`);
68
+ }
69
+ /**
70
+ * Differentiate a scalar bridge RHS AST with respect to one symbol via
71
+ * reverse-mode AD. Every symbol other than `varName` is resolved to a constant
72
+ * (caller `bindings`, then {@link NAMED_CONSTANTS}, then numeric literal); the
73
+ * `bindings` must contain `varName` (its value sets the point of evaluation).
74
+ *
75
+ * @public
76
+ */
77
+ export async function bridgeGradientAST(rhs, varName, bindings) {
78
+ if (!Object.prototype.hasOwnProperty.call(bindings, varName)) {
79
+ throw new TypeError(`bridgeGradientAST: bindings must contain the differentiation variable '${varName}'.`);
80
+ }
81
+ let autograd;
82
+ let tensorMod;
83
+ try {
84
+ autograd =
85
+ (await import('@danielsimonjr/mathts-autograd'));
86
+ tensorMod =
87
+ (await import('@danielsimonjr/mathts-tensor'));
88
+ }
89
+ catch {
90
+ throw new EngineCapabilityError('mathts-autograd', 'reverseGrad');
91
+ }
92
+ const { reverseGrad, TapedTensor } = autograd;
93
+ const { Tensor } = tensorMod;
94
+ // Build the (traced var) → scalar function reverseGrad expects. `x` arrives as
95
+ // a TapedTensor; constants become extra tape leaves (their gradients are
96
+ // computed and ignored — only `x`'s gradient is returned).
97
+ const fn = (x) => {
98
+ const constLeaf = (v) => TapedTensor.fromTensorAsInput(Tensor.fromNested(v, []), x.tape);
99
+ const walk = (node) => {
100
+ if (node.kind === 'symbol') {
101
+ return node.name === varName
102
+ ? x
103
+ : constLeaf(resolveConstant(node.name, bindings));
104
+ }
105
+ if (node.kind === 'op') {
106
+ switch (node.op) {
107
+ case '+':
108
+ return node.args.map(walk).reduce((a, b) => a.add(b));
109
+ case '-': {
110
+ const terms = node.args.map(walk);
111
+ // Unary minus (0 − t); n-ary subtract folds left.
112
+ return terms.length === 1
113
+ ? constLeaf(0).sub(terms[0])
114
+ : terms.reduce((a, b) => a.sub(b));
115
+ }
116
+ case '*':
117
+ return node.args.map(walk).reduce((a, b) => a.mul(b));
118
+ case '/':
119
+ return node.args.map(walk).reduce((a, b) => a.divide(b));
120
+ case '^':
121
+ return walk(node.args[0]).pow(resolveExponent(node.args[1], varName, bindings));
122
+ default:
123
+ throw new TypeError(`bridgeGradientAST: unsupported operator '${node.op}'.`);
124
+ }
125
+ }
126
+ throw new TypeError(`bridgeGradientAST: unsupported node kind '${node.kind}' — the scalar grammar is ` +
127
+ `symbol + op(+ − * / ^). Transcendental bridges encode stubs as symbols.`);
128
+ };
129
+ return walk(rhs);
130
+ };
131
+ const xLeaf = Tensor.fromNested(bindings[varName], []);
132
+ const { value, gradient } = reverseGrad(fn, xLeaf);
133
+ return {
134
+ value: value.toNested(),
135
+ gradient: gradient.toNested(),
136
+ };
137
+ }
138
+ //# sourceMappingURL=bridge-ast-gradient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge-ast-gradient.js","sourceRoot":"","sources":["../../src/diff/bridge-ast-gradient.ts"],"names":[],"mappings":"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"}
@@ -10,15 +10,25 @@
10
10
  *
11
11
  * Per P8 Decision #1, this lives in `src/diff/` (NOT in
12
12
  * `src/bridges/`), keeping bridge evaluators untouched. The AD
13
- * dependency `mathts-autograd` is in `optionalDependencies`; this
14
- * module throws `EngineCapabilityError` via the existing
15
- * `MathTSEngine.reverseGrad` call-site pattern (degrades gracefully
16
- * when the peer is absent).
13
+ * dependency `mathts-autograd` is in `optionalDependencies`. Note this
14
+ * gives `bridgeGradient` TWO failure modes, not graceful success: when
15
+ * the peer is ABSENT it throws `EngineCapabilityError`; when the peer is
16
+ * PRESENT it still throws (see the AD limitation below) — installing the
17
+ * peer does not make AD of the plain-JS bridges work.
17
18
  *
18
- * Per P8 Adam-H1 + Eve verification: the autograd peer may not be
19
- * installed in CI (npm install --include=optional required). Tests
20
- * use `hasAutogradSupport(engine)` to skip the real-AD assertions
21
- * when the peer isn't present.
19
+ * IMPORTANT AD limitation (verified empirically): `bridgeGradient`
20
+ * does NOT actually differentiate the catalog evaluators. Because P8
21
+ * Decision #1 keeps those evaluators as plain-JS scalar functions
22
+ * (`Math.*` / raw arithmetic on numbers), neither reverse-mode (tape)
23
+ * nor forward-mode (dual) AD can trace them — the tape/dual instrument
24
+ * only sees ops routed through engine-traced tensors. With
25
+ * `Float64ReferenceEngine` the AD path throws; with `MathTSEngine` it
26
+ * also throws (the autograd `TapedTensor` does not survive
27
+ * `engine.toNested`). `bridgeGradient` therefore only works for
28
+ * functions written in engine ops — not the plain-JS bridges.
29
+ *
30
+ * The SUPPORTED way to differentiate a plain-JS bridge evaluator is
31
+ * {@link bridgeGradientNumerical} (central finite differences, no engine).
22
32
  *
23
33
  * @module diff/bridge-gradient
24
34
  */
@@ -91,4 +101,37 @@ export declare function bridgeGradient<Input>(spec: BridgeDiffSpec<Input>, engin
91
101
  * @public
92
102
  */
93
103
  export declare function gradientToNamed<Input>(spec: BridgeDiffSpec<Input>, gradient: EngineTensor, engine: TensorEngine): Record<string, number>;
104
+ /**
105
+ * Result of {@link bridgeGradientNumerical}: the bridge's scalar `value`
106
+ * at the supplied point, plus the `gradient` of partial derivatives keyed
107
+ * by `paramName` (insertion follows `spec.paramNames` order).
108
+ *
109
+ * @public
110
+ */
111
+ export interface BridgeNumericalGradientResult {
112
+ readonly value: number;
113
+ readonly gradient: Readonly<Record<string, number>>;
114
+ }
115
+ /**
116
+ * Gradient of a bridge evaluator by **central finite differences** — the
117
+ * supported way to differentiate the catalog's plain-JS evaluators.
118
+ *
119
+ * Reverse-/forward-mode AD ({@link bridgeGradient}) cannot trace these
120
+ * evaluators: per P8 Decision #1 they are plain-JS scalar functions
121
+ * (`Math.*` / raw arithmetic on numbers), so a tape/dual engine observes no
122
+ * traced ops. `bridgeGradientNumerical` perturbs the inputs instead, so it
123
+ * needs no engine and is synchronous.
124
+ *
125
+ * For each differentiable param with value `x` it uses a relative step
126
+ * `h = max(|x|, 1)·cbrt(eps)` and the ACTUAL representable denominator
127
+ * `dx = (x + h) − (x − h)` — so the perturbation survives floating-point
128
+ * rounding even at astrophysical scales (e.g. `M ≈ 2e30 kg`). The supplied
129
+ * `params` must contain every key in `spec.paramNames`; non-differentiable
130
+ * fields come from `spec.defaults`.
131
+ *
132
+ * @public
133
+ */
134
+ export declare function bridgeGradientNumerical<Input>(spec: BridgeDiffSpec<Input>, params: Record<string, number>, opts?: {
135
+ readonly relStep?: number;
136
+ }): BridgeNumericalGradientResult;
94
137
  //# sourceMappingURL=bridge-gradient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-gradient.d.ts","sourceRoot":"","sources":["../../src/diff/bridge-gradient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAIhF;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,cAAc,CAAC,KAAK;IACnC,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC;IACzD;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,qCAAqC;IACrC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC;CAC7C;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,KAAK,EACxC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAmC/B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EACnC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,YAAY,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB"}
1
+ {"version":3,"file":"bridge-gradient.d.ts","sourceRoot":"","sources":["../../src/diff/bridge-gradient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAIhF;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,cAAc,CAAC,KAAK;IACnC,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC;IACzD;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,qCAAqC;IACrC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC;CAC7C;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,KAAK,EACxC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAmC/B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EACnC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,YAAY,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACrD;AAUD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAC3C,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACnC,6BAA6B,CAmC/B"}
@@ -10,15 +10,25 @@
10
10
  *
11
11
  * Per P8 Decision #1, this lives in `src/diff/` (NOT in
12
12
  * `src/bridges/`), keeping bridge evaluators untouched. The AD
13
- * dependency `mathts-autograd` is in `optionalDependencies`; this
14
- * module throws `EngineCapabilityError` via the existing
15
- * `MathTSEngine.reverseGrad` call-site pattern (degrades gracefully
16
- * when the peer is absent).
13
+ * dependency `mathts-autograd` is in `optionalDependencies`. Note this
14
+ * gives `bridgeGradient` TWO failure modes, not graceful success: when
15
+ * the peer is ABSENT it throws `EngineCapabilityError`; when the peer is
16
+ * PRESENT it still throws (see the AD limitation below) — installing the
17
+ * peer does not make AD of the plain-JS bridges work.
17
18
  *
18
- * Per P8 Adam-H1 + Eve verification: the autograd peer may not be
19
- * installed in CI (npm install --include=optional required). Tests
20
- * use `hasAutogradSupport(engine)` to skip the real-AD assertions
21
- * when the peer isn't present.
19
+ * IMPORTANT AD limitation (verified empirically): `bridgeGradient`
20
+ * does NOT actually differentiate the catalog evaluators. Because P8
21
+ * Decision #1 keeps those evaluators as plain-JS scalar functions
22
+ * (`Math.*` / raw arithmetic on numbers), neither reverse-mode (tape)
23
+ * nor forward-mode (dual) AD can trace them — the tape/dual instrument
24
+ * only sees ops routed through engine-traced tensors. With
25
+ * `Float64ReferenceEngine` the AD path throws; with `MathTSEngine` it
26
+ * also throws (the autograd `TapedTensor` does not survive
27
+ * `engine.toNested`). `bridgeGradient` therefore only works for
28
+ * functions written in engine ops — not the plain-JS bridges.
29
+ *
30
+ * The SUPPORTED way to differentiate a plain-JS bridge evaluator is
31
+ * {@link bridgeGradientNumerical} (central finite differences, no engine).
22
32
  *
23
33
  * @module diff/bridge-gradient
24
34
  */
@@ -80,4 +90,61 @@ export function gradientToNamed(spec, gradient, engine) {
80
90
  });
81
91
  return out;
82
92
  }
93
+ /**
94
+ * Relative step for central differences: `cbrt(eps)` balances the `O(h²)`
95
+ * truncation error against the `O(eps/h)` round-off error (the central-diff
96
+ * optimum). `sqrt(eps)` — the FORWARD-diff optimum — would leave precision on
97
+ * the table for central differences.
98
+ */
99
+ const CENTRAL_DIFF_REL_STEP = Math.cbrt(Number.EPSILON); // ≈ 6.06e-6
100
+ /**
101
+ * Gradient of a bridge evaluator by **central finite differences** — the
102
+ * supported way to differentiate the catalog's plain-JS evaluators.
103
+ *
104
+ * Reverse-/forward-mode AD ({@link bridgeGradient}) cannot trace these
105
+ * evaluators: per P8 Decision #1 they are plain-JS scalar functions
106
+ * (`Math.*` / raw arithmetic on numbers), so a tape/dual engine observes no
107
+ * traced ops. `bridgeGradientNumerical` perturbs the inputs instead, so it
108
+ * needs no engine and is synchronous.
109
+ *
110
+ * For each differentiable param with value `x` it uses a relative step
111
+ * `h = max(|x|, 1)·cbrt(eps)` and the ACTUAL representable denominator
112
+ * `dx = (x + h) − (x − h)` — so the perturbation survives floating-point
113
+ * rounding even at astrophysical scales (e.g. `M ≈ 2e30 kg`). The supplied
114
+ * `params` must contain every key in `spec.paramNames`; non-differentiable
115
+ * fields come from `spec.defaults`.
116
+ *
117
+ * @public
118
+ */
119
+ export function bridgeGradientNumerical(spec, params, opts) {
120
+ const relStep = opts?.relStep ?? CENTRAL_DIFF_REL_STEP;
121
+ // Same contract as bridgeGradient: every paramName must be a number.
122
+ for (const k of spec.paramNames) {
123
+ if (typeof params[k] !== 'number') {
124
+ throw new TypeError(`bridgeGradientNumerical: ${spec.bridgeId}: missing or non-numeric param '${k}' ` +
125
+ `(got ${typeof params[k]}). All paramNames must be numbers in the params object.`);
126
+ }
127
+ }
128
+ // Build the full Input struct (defaults + differentiable params), with an
129
+ // optional single-param override for the perturbed evaluations.
130
+ const buildInput = (override) => {
131
+ const input = { ...spec.defaults };
132
+ for (const k of spec.paramNames)
133
+ input[k] = params[k];
134
+ if (override)
135
+ input[override.key] = override.val;
136
+ return input;
137
+ };
138
+ const value = spec.evaluate(buildInput());
139
+ const gradient = {};
140
+ for (const k of spec.paramNames) {
141
+ const x = params[k];
142
+ const h = Math.max(Math.abs(x), 1) * relStep;
143
+ const dx = x + h - (x - h); // actual representable step (huge-x safe)
144
+ const fp = spec.evaluate(buildInput({ key: k, val: x + h }));
145
+ const fm = spec.evaluate(buildInput({ key: k, val: x - h }));
146
+ gradient[k] = (fp - fm) / dx;
147
+ }
148
+ return { value, gradient };
149
+ }
83
150
  //# sourceMappingURL=bridge-gradient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-gradient.js","sourceRoot":"","sources":["../../src/diff/bridge-gradient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAqD/D;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAA2B,EAC3B,MAAoB,EACpB,MAA8B;IAE9B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC9D,CAAC;IAED,0DAA0D;IAC1D,MAAM,MAAM,GAAa,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACjD,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CACjB,mBAAmB,IAAI,CAAC,QAAQ,mCAAmC,CAAC,IAAI;gBACxE,QAAQ,OAAO,CAAC,yDAAyD,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/D,yDAAyD;IACzD,4DAA4D;IAC5D,8DAA8D;IAC9D,mBAAmB;IACnB,MAAM,EAAE,GAAG,CAAC,CAAe,EAAgB,EAAE;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAa,CAAC;QAChD,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAsB,CAAC;QACvD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9B,KAAiC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpC,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,WAAY,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAW,CAAC;IACrD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,IAA2B,EAC3B,QAAsB,EACtB,MAAoB;IAEpB,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAa,CAAC;IAClD,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"bridge-gradient.js","sourceRoot":"","sources":["../../src/diff/bridge-gradient.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -24,8 +24,10 @@ export type { RegimeProvenance, RegimeValueBase, RegimeSpec, } from './core/regi
24
24
  export { defineRegime, defineScale, defineForce, defineSymmetry, defineInformation, defineDimension, defineTopology, lookupRegime, listRegimesByAxis, provenanceFor, attachRegimesToCell, getCellRegimes, RegimeCollisionError, } from './core/regime-registry.js';
25
25
  import './core/regime-rule-install.js';
26
26
  import './core/regimes-builtins.js';
27
- export type { BridgeDiffSpec, BridgeGradientResult, } from './diff/bridge-gradient.js';
28
- export { bridgeGradient, gradientToNamed, } from './diff/bridge-gradient.js';
27
+ export type { BridgeDiffSpec, BridgeGradientResult, BridgeNumericalGradientResult, } from './diff/bridge-gradient.js';
28
+ export { bridgeGradient, bridgeGradientNumerical, gradientToNamed, } from './diff/bridge-gradient.js';
29
+ export type { ASTGradientResult } from './diff/bridge-ast-gradient.js';
30
+ export { bridgeGradientAST } from './diff/bridge-ast-gradient.js';
29
31
  export { BE37_SHAPIRO_DIFF, BE52_PERIHELION_DIFF, BE42_HAWKING_DIFF, BE11_DECOHERENCE_DIFF, DIFFERENTIABLE_BRIDGE_SPECS, } from './diff/bridge-specs.js';
30
32
  export { BRIDGE_EQUATIONS } from './bridges/index.js';
31
33
  export type { BridgeEquationEntry, BridgeEquationStatus, BridgeIssueSeverity, BridgeIssueFixable, KnownIssue, } from './bridges/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -26,7 +26,8 @@ export { defineRegime, defineScale, defineForce, defineSymmetry, defineInformati
26
26
  import './core/regime-rule-install.js';
27
27
  // Phase 2 side-effect: pre-registers the 18 built-in regimes.
28
28
  import './core/regimes-builtins.js';
29
- export { bridgeGradient, gradientToNamed, } from './diff/bridge-gradient.js';
29
+ export { bridgeGradient, bridgeGradientNumerical, gradientToNamed, } from './diff/bridge-gradient.js';
30
+ export { bridgeGradientAST } from './diff/bridge-ast-gradient.js';
30
31
  export { BE37_SHAPIRO_DIFF, BE52_PERIHELION_DIFF, BE42_HAWKING_DIFF, BE11_DECOHERENCE_DIFF, DIFFERENTIABLE_BRIDGE_SPECS, } from './diff/bridge-specs.js';
31
32
  // Machine-readable bridge equation index — the 40+ catalogued equations.
32
33
  // `BridgeEquationEntry` is intentionally a different shape from the runtime
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "universal-physics-tensor",
3
- "version": "0.14.0",
3
+ "version": "0.16.0",
4
4
  "description": "Computational framework for exploring unified physics through tensor formalism",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -78,7 +78,7 @@
78
78
  "vitest": "^4.1.7"
79
79
  },
80
80
  "optionalDependencies": {
81
- "@danielsimonjr/mathts-autograd": "^0.1.1",
81
+ "@danielsimonjr/mathts-autograd": "^0.2.0",
82
82
  "@danielsimonjr/mathts-core": "^0.1.3",
83
83
  "@danielsimonjr/mathts-expression": "^0.2.1",
84
84
  "@danielsimonjr/mathts-functions": "^0.2.2",