universal-physics-tensor 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.
Files changed (65) hide show
  1. package/bin/upt.mjs +75 -4
  2. package/dist/canonical/canonical-equation.d.ts +79 -0
  3. package/dist/canonical/canonical-equation.d.ts.map +1 -0
  4. package/dist/canonical/canonical-equation.js +2 -0
  5. package/dist/canonical/canonical-equation.js.map +1 -0
  6. package/dist/canonical/dimensional-fields.d.ts +7 -0
  7. package/dist/canonical/dimensional-fields.d.ts.map +1 -0
  8. package/dist/canonical/dimensional-fields.js +31 -0
  9. package/dist/canonical/dimensional-fields.js.map +1 -0
  10. package/dist/canonical/entries/_l1-build.d.ts +22 -0
  11. package/dist/canonical/entries/_l1-build.d.ts.map +1 -0
  12. package/dist/canonical/entries/_l1-build.js +26 -0
  13. package/dist/canonical/entries/_l1-build.js.map +1 -0
  14. package/dist/canonical/entries/dimensional-classics.d.ts +11 -0
  15. package/dist/canonical/entries/dimensional-classics.d.ts.map +1 -0
  16. package/dist/canonical/entries/dimensional-classics.js +194 -0
  17. package/dist/canonical/entries/dimensional-classics.js.map +1 -0
  18. package/dist/canonical/entries/l1-gravity-thermo.d.ts +12 -0
  19. package/dist/canonical/entries/l1-gravity-thermo.d.ts.map +1 -0
  20. package/dist/canonical/entries/l1-gravity-thermo.js +128 -0
  21. package/dist/canonical/entries/l1-gravity-thermo.js.map +1 -0
  22. package/dist/canonical/entries/l1-quantum-em.d.ts +10 -0
  23. package/dist/canonical/entries/l1-quantum-em.d.ts.map +1 -0
  24. package/dist/canonical/entries/l1-quantum-em.js +141 -0
  25. package/dist/canonical/entries/l1-quantum-em.js.map +1 -0
  26. package/dist/canonical/entries/relativity.d.ts +14 -0
  27. package/dist/canonical/entries/relativity.d.ts.map +1 -0
  28. package/dist/canonical/entries/relativity.js +114 -0
  29. package/dist/canonical/entries/relativity.js.map +1 -0
  30. package/dist/canonical/linkage.d.ts +27 -0
  31. package/dist/canonical/linkage.d.ts.map +1 -0
  32. package/dist/canonical/linkage.js +139 -0
  33. package/dist/canonical/linkage.js.map +1 -0
  34. package/dist/canonical/normal-form.d.ts +25 -0
  35. package/dist/canonical/normal-form.d.ts.map +1 -0
  36. package/dist/canonical/normal-form.js +107 -0
  37. package/dist/canonical/normal-form.js.map +1 -0
  38. package/dist/canonical/registry.d.ts +26 -0
  39. package/dist/canonical/registry.d.ts.map +1 -0
  40. package/dist/canonical/registry.js +46 -0
  41. package/dist/canonical/registry.js.map +1 -0
  42. package/dist/canonical/seed-l-layer.d.ts +20 -0
  43. package/dist/canonical/seed-l-layer.d.ts.map +1 -0
  44. package/dist/canonical/seed-l-layer.js +39 -0
  45. package/dist/canonical/seed-l-layer.js.map +1 -0
  46. package/dist/composition/discovery.d.ts +40 -6
  47. package/dist/composition/discovery.d.ts.map +1 -1
  48. package/dist/composition/discovery.js +56 -7
  49. package/dist/composition/discovery.js.map +1 -1
  50. package/dist/composition/representative-values.d.ts +46 -0
  51. package/dist/composition/representative-values.d.ts.map +1 -0
  52. package/dist/composition/representative-values.js +69 -0
  53. package/dist/composition/representative-values.js.map +1 -0
  54. package/dist/composition/symbolic-constants.d.ts.map +1 -1
  55. package/dist/composition/symbolic-constants.js +15 -1
  56. package/dist/composition/symbolic-constants.js.map +1 -1
  57. package/dist/core/constants.d.ts +6 -0
  58. package/dist/core/constants.d.ts.map +1 -1
  59. package/dist/core/constants.js +6 -0
  60. package/dist/core/constants.js.map +1 -1
  61. package/dist/index.d.ts +7 -1
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +15 -1
  64. package/dist/index.js.map +1 -1
  65. package/package.json +1 -1
@@ -0,0 +1,128 @@
1
+ import { sym } from '../../bridges/equations/_be-helpers.js';
2
+ import { LENGTH, MASS, AREA, VELOCITY, ACTION, ENERGY, ENTROPY, TEMPERATURE, FORCE, DIMENSIONLESS, } from '../../dimensional/types.js';
3
+ import { dim, op, pow, l1 } from './_l1-build.js';
4
+ const GRAV = dim(3, -1, -2); // Newton's constant [L³ M⁻¹ T⁻²]
5
+ const VOLUME = dim(3); // [L³]
6
+ const PRESSURE = dim(-1, 1, -2); // [M L⁻¹ T⁻²]
7
+ const SB_FLUX = dim(0, 1, -3); // radiative flux W/m² = [M T⁻³]
8
+ const SIGMA_SB = dim(0, 1, -3, 0, -4); // Stefan–Boltzmann σ [M T⁻³ Θ⁻⁴] (Θ is 5th arg)
9
+ // ── Bekenstein–Hawking entropy S = k_B c³ A / (4 G ℏ) (AREA form) ─────────
10
+ const BH_TARGET = { name: 'bh-entropy', dim: ENTROPY };
11
+ const BH_GOV = [
12
+ { name: 'k_B', dim: ENTROPY },
13
+ { name: 'c', dim: VELOCITY },
14
+ { name: 'A', dim: AREA },
15
+ { name: 'G', dim: GRAV },
16
+ { name: 'hbar', dim: ACTION },
17
+ ];
18
+ // ── Landauer minimum erasure energy E = k_B T ln2 (natural log) ───────────
19
+ const LANDAUER_TARGET = { name: 'erasure-energy', dim: ENERGY };
20
+ const LANDAUER_GOV = [
21
+ { name: 'k_B', dim: ENTROPY },
22
+ { name: 'T', dim: TEMPERATURE },
23
+ ];
24
+ // ── Newton's law of gravitation F = G m₁ m₂ / r² (free mass-ratio group) ──
25
+ const NEWTON_TARGET = { name: 'gravitational-force', dim: FORCE };
26
+ const NEWTON_GOV = [
27
+ { name: 'G', dim: GRAV },
28
+ { name: 'm_1', dim: MASS },
29
+ { name: 'm_2', dim: MASS },
30
+ { name: 'r', dim: LENGTH },
31
+ ];
32
+ // ── Stefan–Boltzmann law j = σ T⁴ (radiative FLUX) ────────────────────────
33
+ const SB_TARGET = { name: 'radiative-flux', dim: SB_FLUX };
34
+ const SB_GOV = [
35
+ { name: 'sigma_sb', dim: SIGMA_SB },
36
+ { name: 'T', dim: TEMPERATURE },
37
+ ];
38
+ // ── Ideal gas law P = N k_B T / V (N is a dimensionless count) ────────────
39
+ const GAS_TARGET = { name: 'pressure', dim: PRESSURE };
40
+ const GAS_GOV = [
41
+ { name: 'k_B', dim: ENTROPY },
42
+ { name: 'T', dim: TEMPERATURE },
43
+ { name: 'V', dim: VOLUME },
44
+ ];
45
+ export const L1_GRAVITY_THERMO = [
46
+ l1(BH_TARGET, BH_GOV, {
47
+ id: 'CE-bekenstein-hawking',
48
+ name: 'Bekenstein–Hawking entropy',
49
+ domain: 'general-relativity',
50
+ formula_latex: 'S = k_B c^3 A/(4 G \\hbar)',
51
+ epistemicStatus: 'fully-quantitative',
52
+ scalarAst: op('/', [
53
+ op('*', [sym('k_B', ENTROPY), pow(sym('c', VELOCITY), '3'), sym('A', AREA)]),
54
+ op('*', [sym('4', DIMENSIONLESS), sym('G', GRAV), sym('hbar', ACTION)]),
55
+ ]),
56
+ forms: { areaOrRadius: 'area' },
57
+ regime: { force: 'gravitational', information: 'vonNeumann' },
58
+ assumptions: ['stationary horizon', 'semiclassical'],
59
+ references: ['Bekenstein 1973; Hawking 1975'],
60
+ // 42 = Hawking temperature (same black-hole-thermodynamics family). No
61
+ // bridge literally encodes S=A/4, so no restatesBridge.
62
+ partnerBridges: ['42'],
63
+ }),
64
+ l1(LANDAUER_TARGET, LANDAUER_GOV, {
65
+ id: 'CE-landauer',
66
+ name: 'Landauer erasure bound',
67
+ domain: 'information',
68
+ formula_latex: 'E = k_B T \\ln 2',
69
+ epistemicStatus: 'fully-quantitative',
70
+ scalarAst: op('*', [
71
+ sym('k_B', ENTROPY),
72
+ sym('T', TEMPERATURE),
73
+ sym('ln2', DIMENSIONLESS),
74
+ ]),
75
+ forms: { logBase: 'e' },
76
+ regime: { scale: 'mesoscopic', information: 'shannon' },
77
+ assumptions: ['isothermal', 'quasi-static erasure'],
78
+ references: ['Landauer 1961'],
79
+ // 16 = "Information-Thermodynamics Bridge (Landauer's principle)" — a
80
+ // genuine restatement (the canonical Landauer bound IS bridge 16).
81
+ partnerBridges: ['16'],
82
+ restatesBridge: '16',
83
+ }),
84
+ l1(NEWTON_TARGET, NEWTON_GOV, {
85
+ id: 'CE-newton-gravitation',
86
+ name: "Newton's law of gravitation",
87
+ domain: 'gravitation',
88
+ formula_latex: 'F = G m_1 m_2/r^2',
89
+ epistemicStatus: 'fully-quantitative',
90
+ scalarAst: op('/', [
91
+ op('*', [sym('G', GRAV), sym('m_1', MASS), sym('m_2', MASS)]),
92
+ pow(sym('r', LENGTH), '2'),
93
+ ]),
94
+ regime: { scale: 'classical', force: 'gravitational' },
95
+ assumptions: ['point masses', 'non-relativistic'],
96
+ references: ['Newton 1687'],
97
+ partnerBridges: [],
98
+ }),
99
+ l1(SB_TARGET, SB_GOV, {
100
+ id: 'CE-stefan-boltzmann',
101
+ name: 'Stefan–Boltzmann law',
102
+ domain: 'thermodynamics',
103
+ formula_latex: 'j = \\sigma T^4',
104
+ epistemicStatus: 'fully-quantitative',
105
+ scalarAst: op('*', [sym('sigma_sb', SIGMA_SB), pow(sym('T', TEMPERATURE), '4')]),
106
+ forms: { quantityKind: 'flux' },
107
+ regime: { scale: 'classical', force: 'electromagnetic' },
108
+ assumptions: ['blackbody', 'thermal equilibrium'],
109
+ references: ['Stefan 1879; Boltzmann 1884'],
110
+ partnerBridges: [],
111
+ }),
112
+ l1(GAS_TARGET, GAS_GOV, {
113
+ id: 'CE-ideal-gas',
114
+ name: 'Ideal gas law',
115
+ domain: 'thermodynamics',
116
+ formula_latex: 'P = N k_B T/V',
117
+ epistemicStatus: 'fully-quantitative',
118
+ scalarAst: op('/', [
119
+ op('*', [sym('N', DIMENSIONLESS), sym('k_B', ENTROPY), sym('T', TEMPERATURE)]),
120
+ sym('V', VOLUME),
121
+ ]),
122
+ regime: { scale: 'classical', force: 'electromagnetic' },
123
+ assumptions: ['ideal gas', 'thermal equilibrium'],
124
+ references: ['Clapeyron 1834'],
125
+ partnerBridges: [],
126
+ }),
127
+ ];
128
+ //# sourceMappingURL=l1-gravity-thermo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l1-gravity-thermo.js","sourceRoot":"","sources":["../../../src/canonical/entries/l1-gravity-thermo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * L1 (scalar-AST) canonical entries — quantum + electromagnetism. Coulomb's
3
+ * law, Planck–Einstein, de Broglie, Bohr radius, Wien's displacement, and the
4
+ * Lorentz-force magnitude. L0 fields derived from the engine (see `_l1-build`).
5
+ *
6
+ * @module canonical/entries/l1-quantum-em
7
+ */
8
+ import type { CanonicalEquation } from '../canonical-equation.js';
9
+ export declare const L1_QUANTUM_EM: readonly CanonicalEquation[];
10
+ //# sourceMappingURL=l1-quantum-em.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l1-quantum-em.d.ts","sourceRoot":"","sources":["../../../src/canonical/entries/l1-quantum-em.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAmElE,eAAO,MAAM,aAAa,EAAE,SAAS,iBAAiB,EA2FrD,CAAC"}
@@ -0,0 +1,141 @@
1
+ import { sym } from '../../bridges/equations/_be-helpers.js';
2
+ import { LENGTH, MASS, VELOCITY, ACTION, ENERGY, FREQUENCY, FORCE, CHARGE, DIMENSIONLESS, } from '../../dimensional/types.js';
3
+ import { dim, op, pow, l1 } from './_l1-build.js';
4
+ const PERMITTIVITY = dim(-3, -1, 4, 2); // ε₀ [I² T⁴ M⁻¹ L⁻³]
5
+ const MOMENTUM = dim(1, 1, -1); // [L M T⁻¹]
6
+ const MAGFIELD = dim(0, 1, -2, -1); // magnetic flux density (tesla) [M T⁻² I⁻¹]
7
+ const WIEN_B = dim(1, 0, 0, 0, 1); // Wien constant [L Θ]
8
+ // ── Coulomb's law F = q₁ q₂ / (4π ε₀ r²) (free charge-ratio group) ────────
9
+ const COULOMB_TARGET = { name: 'coulomb-force', dim: FORCE };
10
+ const COULOMB_GOV = [
11
+ { name: 'q_1', dim: CHARGE },
12
+ { name: 'q_2', dim: CHARGE },
13
+ { name: 'epsilon_0', dim: PERMITTIVITY },
14
+ { name: 'r', dim: LENGTH },
15
+ ];
16
+ // ── Planck–Einstein E = h ν ────────────────────────────────────────────────
17
+ const PE_TARGET = { name: 'photon-energy', dim: ENERGY };
18
+ const PE_GOV = [
19
+ { name: 'h', dim: ACTION },
20
+ { name: 'nu', dim: FREQUENCY },
21
+ ];
22
+ // ── de Broglie λ = h / p ───────────────────────────────────────────────────
23
+ const DB_TARGET = { name: 'de-broglie-wavelength', dim: LENGTH };
24
+ const DB_GOV = [
25
+ { name: 'h', dim: ACTION },
26
+ { name: 'p', dim: MOMENTUM },
27
+ ];
28
+ // ── Bohr radius a₀ = 4π ε₀ ℏ² / (m_e e²) ───────────────────────────────────
29
+ const BOHR_TARGET = { name: 'bohr-radius', dim: LENGTH };
30
+ const BOHR_GOV = [
31
+ { name: 'epsilon_0', dim: PERMITTIVITY },
32
+ { name: 'hbar', dim: ACTION },
33
+ { name: 'm_e', dim: MASS },
34
+ { name: 'e', dim: CHARGE },
35
+ ];
36
+ // ── Wien's displacement λ_max = b / T ──────────────────────────────────────
37
+ const WIEN_TARGET = { name: 'peak-wavelength', dim: LENGTH };
38
+ const WIEN_GOV = [
39
+ { name: 'b', dim: WIEN_B },
40
+ { name: 'T', dim: dim(0, 0, 0, 0, 1) },
41
+ ];
42
+ // ── Lorentz force magnitude F = q v B ──────────────────────────────────────
43
+ const LORENTZ_TARGET = { name: 'lorentz-force', dim: FORCE };
44
+ const LORENTZ_GOV = [
45
+ { name: 'q', dim: CHARGE },
46
+ { name: 'v', dim: VELOCITY },
47
+ { name: 'B', dim: MAGFIELD },
48
+ ];
49
+ export const L1_QUANTUM_EM = [
50
+ l1(COULOMB_TARGET, COULOMB_GOV, {
51
+ id: 'CE-coulomb',
52
+ name: "Coulomb's law",
53
+ domain: 'electromagnetism',
54
+ formula_latex: 'F = q_1 q_2/(4\\pi\\varepsilon_0 r^2)',
55
+ epistemicStatus: 'fully-quantitative',
56
+ scalarAst: op('/', [
57
+ op('*', [sym('q_1', CHARGE), sym('q_2', CHARGE)]),
58
+ op('*', [
59
+ sym('4pi', DIMENSIONLESS),
60
+ sym('epsilon_0', PERMITTIVITY),
61
+ pow(sym('r', LENGTH), '2'),
62
+ ]),
63
+ ]),
64
+ regime: { scale: 'classical', force: 'electromagnetic' },
65
+ assumptions: ['point charges', 'vacuum', 'electrostatic'],
66
+ references: ['Coulomb 1785'],
67
+ partnerBridges: [],
68
+ }),
69
+ l1(PE_TARGET, PE_GOV, {
70
+ id: 'CE-planck-einstein',
71
+ name: 'Planck–Einstein relation',
72
+ domain: 'quantum',
73
+ formula_latex: 'E = h\\nu',
74
+ epistemicStatus: 'fully-quantitative',
75
+ scalarAst: op('*', [sym('h', ACTION), sym('nu', FREQUENCY)]),
76
+ regime: { scale: 'quantum', force: 'electromagnetic' },
77
+ assumptions: [],
78
+ references: ['Planck 1900; Einstein 1905'],
79
+ partnerBridges: [],
80
+ }),
81
+ l1(DB_TARGET, DB_GOV, {
82
+ id: 'CE-de-broglie',
83
+ name: 'de Broglie wavelength',
84
+ domain: 'quantum',
85
+ formula_latex: '\\lambda = h/p',
86
+ epistemicStatus: 'fully-quantitative',
87
+ scalarAst: op('/', [sym('h', ACTION), sym('p', MOMENTUM)]),
88
+ regime: { scale: 'quantum' },
89
+ assumptions: [],
90
+ references: ['de Broglie 1924'],
91
+ partnerBridges: [],
92
+ }),
93
+ l1(BOHR_TARGET, BOHR_GOV, {
94
+ id: 'CE-bohr-radius',
95
+ name: 'Bohr radius',
96
+ domain: 'quantum',
97
+ formula_latex: 'a_0 = 4\\pi\\varepsilon_0\\hbar^2/(m_e e^2)',
98
+ epistemicStatus: 'fully-quantitative',
99
+ scalarAst: op('/', [
100
+ op('*', [
101
+ sym('4pi', DIMENSIONLESS),
102
+ sym('epsilon_0', PERMITTIVITY),
103
+ pow(sym('hbar', ACTION), '2'),
104
+ ]),
105
+ op('*', [sym('m_e', MASS), pow(sym('e', CHARGE), '2')]),
106
+ ]),
107
+ regime: { scale: 'quantum', force: 'electromagnetic' },
108
+ assumptions: ['hydrogen-like', 'non-relativistic'],
109
+ references: ['Bohr 1913'],
110
+ partnerBridges: [],
111
+ }),
112
+ l1(WIEN_TARGET, WIEN_GOV, {
113
+ id: 'CE-wien',
114
+ name: "Wien's displacement law",
115
+ domain: 'thermodynamics',
116
+ formula_latex: '\\lambda_{max} = b/T',
117
+ epistemicStatus: 'fully-quantitative',
118
+ scalarAst: op('/', [sym('b', WIEN_B), sym('T', dim(0, 0, 0, 0, 1))]),
119
+ regime: { scale: 'classical', force: 'electromagnetic' },
120
+ assumptions: ['blackbody', 'thermal equilibrium'],
121
+ references: ['Wien 1893'],
122
+ partnerBridges: [],
123
+ }),
124
+ l1(LORENTZ_TARGET, LORENTZ_GOV, {
125
+ id: 'CE-lorentz-force',
126
+ name: 'Lorentz force (magnitude)',
127
+ domain: 'electromagnetism',
128
+ formula_latex: 'F = q v B',
129
+ epistemicStatus: 'fully-quantitative',
130
+ scalarAst: op('*', [
131
+ sym('q', CHARGE),
132
+ sym('v', VELOCITY),
133
+ sym('B', MAGFIELD),
134
+ ]),
135
+ regime: { scale: 'classical', force: 'electromagnetic' },
136
+ assumptions: ['v ⟂ B (magnitude only)'],
137
+ references: ['Lorentz 1895'],
138
+ partnerBridges: [],
139
+ }),
140
+ ];
141
+ //# sourceMappingURL=l1-quantum-em.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l1-quantum-em.js","sourceRoot":"","sources":["../../../src/canonical/entries/l1-quantum-em.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Relativity canonical entries: the Einstein field equation (L2 — a structural
3
+ * `EinsteinFieldEquationNode` validated by the existing field-equation
4
+ * predicate) and the Friedmann equation (L1 — the flat, matter-dominated scalar
5
+ * form H² = 8πG ρ / 3).
6
+ *
7
+ * @module canonical/entries/relativity
8
+ */
9
+ import type { CanonicalEquation } from '../canonical-equation.js';
10
+ import type { EinsteinFieldEquationNode } from '../../dimensional/einstein-equation.js';
11
+ /** The canonical Einstein field equation node, G_μν + Λg_μν = (8πG/c⁴)T_μν. */
12
+ export declare const EFE_NODE: EinsteinFieldEquationNode;
13
+ export declare const RELATIVITY: readonly CanonicalEquation[];
14
+ //# sourceMappingURL=relativity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relativity.d.ts","sourceRoot":"","sources":["../../../src/canonical/entries/relativity.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AA+FxF,+EAA+E;AAC/E,eAAO,MAAM,QAAQ,EAAE,yBAOtB,CAAC;AAoBF,eAAO,MAAM,UAAU,EAAE,SAAS,iBAAiB,EA4BlD,CAAC"}
@@ -0,0 +1,114 @@
1
+ import { metric } from '../../dimensional/metric.js';
2
+ import { tsym } from '../../dimensional/tensor.js';
3
+ import { sym } from '../../bridges/equations/_be-helpers.js';
4
+ import { LENGTH, DIMENSIONLESS } from '../../dimensional/types.js';
5
+ import { dim, op, l1 } from './_l1-build.js';
6
+ // ── EFE node builders (the canonical G_μν + Λg_μν = (8πG/c⁴)T_μν structure) ──
7
+ const L_INV2 = dim(-2); // [L⁻²] — per-component dim of every EFE term
8
+ const ENERGY_DENSITY = dim(-1, 1, -2); // T_μν componentDim [M L⁻¹ T⁻²]
9
+ function buildRiemann(mu = 'mu', nu = 'nu') {
10
+ const gLower = metric('g', [
11
+ { label: 'a', variance: 'lower' },
12
+ { label: 'b', variance: 'lower' },
13
+ ], DIMENSIONLESS, '+,-,-,-');
14
+ const gInverse = metric('g_inv', [
15
+ { label: 'a', variance: 'upper' },
16
+ { label: 'b', variance: 'upper' },
17
+ ], DIMENSIONLESS, '+,-,-,-');
18
+ const xCoord = tsym('x', [{ label: 'c', variance: 'upper' }], LENGTH, 'coordinate');
19
+ return {
20
+ kind: 'riemann-tensor',
21
+ upperIndex: { label: 'rho', variance: 'upper' },
22
+ lowerIndices: [
23
+ { label: mu, variance: 'lower' },
24
+ { label: 'lambda', variance: 'lower' },
25
+ { label: nu, variance: 'lower' },
26
+ ],
27
+ gLower,
28
+ gInverse,
29
+ xCoord,
30
+ };
31
+ }
32
+ function buildEinstein(mu = 'mu', nu = 'nu') {
33
+ const riemann = buildRiemann(mu, nu);
34
+ return {
35
+ kind: 'einstein-tensor',
36
+ riemann,
37
+ gLower: riemann.gLower,
38
+ gInverse: riemann.gInverse,
39
+ };
40
+ }
41
+ const buildT = (mu = 'mu', nu = 'nu') => ({
42
+ kind: 'stress-energy',
43
+ symbol: 'T',
44
+ indices: [
45
+ { label: mu, variance: 'lower' },
46
+ { label: nu, variance: 'lower' },
47
+ ],
48
+ symmetry: 'symmetric',
49
+ componentDim: ENERGY_DENSITY,
50
+ });
51
+ const buildLambda = () => ({
52
+ kind: 'cosmological-constant',
53
+ symbol: 'Λ',
54
+ dim: L_INV2,
55
+ });
56
+ const buildMetric = () => metric('g_metric', [
57
+ { label: 'mu', variance: 'lower' },
58
+ { label: 'nu', variance: 'lower' },
59
+ ], DIMENSIONLESS, '+,-,-,-');
60
+ /** The canonical Einstein field equation node, G_μν + Λg_μν = (8πG/c⁴)T_μν. */
61
+ export const EFE_NODE = {
62
+ kind: 'einstein-equation',
63
+ lhs: buildEinstein('mu', 'nu'),
64
+ cosmological: buildLambda(),
65
+ metric: buildMetric(),
66
+ rhs: buildT('mu', 'nu'),
67
+ coupling: 'einstein',
68
+ };
69
+ // ── dimensional layer for the EFE (per-component [L⁻²] from 8πG·T/c⁴) ────────
70
+ const GRAV = dim(3, -1, -2);
71
+ const EFE_TARGET = { name: 'efe-curvature', dim: L_INV2 };
72
+ const EFE_GOV = [
73
+ { name: 'G', dim: GRAV },
74
+ { name: 'c', dim: dim(1, 0, -1) },
75
+ { name: 'stress-energy-density', dim: ENERGY_DENSITY },
76
+ ];
77
+ // ── Friedmann (flat, matter-dominated): H² = 8πG ρ / 3 ───────────────────────
78
+ const HSQUARED = dim(0, 0, -2); // [T⁻²]
79
+ const DENSITY = dim(-3, 1); // [M L⁻³]
80
+ const FRIEDMANN_TARGET = { name: 'hubble-rate-squared', dim: HSQUARED };
81
+ const FRIEDMANN_GOV = [
82
+ { name: 'G', dim: GRAV },
83
+ { name: 'rho', dim: DENSITY },
84
+ ];
85
+ export const RELATIVITY = [
86
+ l1(EFE_TARGET, EFE_GOV, {
87
+ id: 'CE-einstein-field-eq',
88
+ name: 'Einstein field equation',
89
+ domain: 'general-relativity',
90
+ formula_latex: 'G_{\\mu\\nu} + \\Lambda g_{\\mu\\nu} = (8\\pi G/c^4) T_{\\mu\\nu}',
91
+ epistemicStatus: 'fully-quantitative',
92
+ fieldEquation: EFE_NODE,
93
+ regime: { force: 'gravitational', symmetry: 'poincare' },
94
+ assumptions: ['classical GR', 'pseudo-Riemannian spacetime'],
95
+ references: ['Einstein 1915'],
96
+ partnerBridges: ['13'], // 13 = Information-Geometry (Jacobson thermodynamic EFE)
97
+ }),
98
+ l1(FRIEDMANN_TARGET, FRIEDMANN_GOV, {
99
+ id: 'CE-friedmann',
100
+ name: 'Friedmann equation (flat, matter-dominated)',
101
+ domain: 'cosmology',
102
+ formula_latex: 'H^2 = 8\\pi G \\rho/3',
103
+ epistemicStatus: 'fully-quantitative',
104
+ scalarAst: op('/', [
105
+ op('*', [sym('8pi', DIMENSIONLESS), sym('G', GRAV), sym('rho', DENSITY)]),
106
+ sym('3', DIMENSIONLESS),
107
+ ]),
108
+ regime: { scale: 'cosmological', force: 'gravitational' },
109
+ assumptions: ['flat (k=0)', 'matter-dominated', 'Λ=0', 'FLRW'],
110
+ references: ['Friedmann 1922'],
111
+ partnerBridges: [],
112
+ }),
113
+ ];
114
+ //# sourceMappingURL=relativity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relativity.js","sourceRoot":"","sources":["../../../src/canonical/entries/relativity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /** Best-effort numerical-recovery outcome. */
2
+ export interface RecoveryOutcome {
3
+ /** Both ASTs evaluated at every sample (no unresolved leaf). */
4
+ readonly tested: boolean;
5
+ /** Spread of the canonical/bridge value ratio across samples (0 ⇒ they agree
6
+ * up to a single constant factor). `NaN` when not tested. */
7
+ readonly maxRelErr: number;
8
+ }
9
+ /** One bridge↔canonical comparison. */
10
+ export interface LinkageResult {
11
+ readonly canonicalId: string;
12
+ readonly bridgeId: number;
13
+ /** Inferred dimensions agree. */
14
+ readonly dimMatch: boolean;
15
+ /** Same relation up to dimensionless factors (`normalForm`). */
16
+ readonly structuralMatch: boolean;
17
+ readonly recovery: RecoveryOutcome | null;
18
+ readonly classification: 'restates-canonical' | 'recovers' | 'dimensional-only' | 'unrelated';
19
+ }
20
+ /** Compare one canonical entry against one bridge. */
21
+ export declare function classifyLinkage(canonicalId: string, bridgeId: number): LinkageResult;
22
+ /**
23
+ * Scan every canonical entry (with a scalar-AST) against every bridge RHS, and
24
+ * return the non-`unrelated` results — the physicist's linkage worklist.
25
+ */
26
+ export declare function scanLinkages(): LinkageResult[];
27
+ //# sourceMappingURL=linkage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkage.d.ts","sourceRoot":"","sources":["../../src/canonical/linkage.ts"],"names":[],"mappings":"AAwBA,8CAA8C;AAC9C,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;kEAC8D;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,uCAAuC;AACvC,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,cAAc,EACnB,oBAAoB,GACpB,UAAU,GACV,kBAAkB,GAClB,WAAW,CAAC;CACjB;AAwFD,sDAAsD;AACtD,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,aAAa,CAsCf;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,aAAa,EAAE,CAU9C"}
@@ -0,0 +1,139 @@
1
+ import { validate } from '../dimensional/validator.js';
2
+ import { evalExpr } from '../composition/expr-eval.js';
3
+ import { CONSTANTS } from '../composition/symbolic-constants.js';
4
+ import { BRIDGE_RHS_BY_ID } from '../bridges/rhs-registry.js';
5
+ import { CANONICAL_EQUATIONS, canonicalById } from './registry.js';
6
+ import { structurallyEqual } from './normal-form.js';
7
+ const dimEqual = (a, b) => a.L === b.L &&
8
+ a.M === b.M &&
9
+ a.T === b.T &&
10
+ a.I === b.I &&
11
+ a.Theta === b.Theta &&
12
+ a.N === b.N &&
13
+ a.J === b.J;
14
+ const isDimensionless = (d) => d.L === 0 &&
15
+ d.M === 0 &&
16
+ d.T === 0 &&
17
+ d.I === 0 &&
18
+ d.Theta === 0 &&
19
+ d.N === 0 &&
20
+ d.J === 0;
21
+ /**
22
+ * Collect leaves `evalExpr` can't resolve (not a registered constant, not a
23
+ * numeric literal), split into physical `vars` (non-dimensionless — varied
24
+ * across samples) and `dimless` (dimensionless — held fixed: they ARE the
25
+ * constant factor "up to" which recovery is measured).
26
+ */
27
+ function collectLeaves(node, vars, dimless) {
28
+ switch (node.kind) {
29
+ case 'symbol':
30
+ if (!(node.name in CONSTANTS) && Number.isNaN(Number(node.name))) {
31
+ (isDimensionless(node.dim) ? dimless : vars).add(node.name);
32
+ }
33
+ return;
34
+ case 'op':
35
+ for (const a of node.args)
36
+ collectLeaves(a, vars, dimless);
37
+ return;
38
+ case 'transcendental':
39
+ collectLeaves(node.arg, vars, dimless);
40
+ return;
41
+ case 'abs':
42
+ collectLeaves(node.arg, vars, dimless);
43
+ return;
44
+ default:
45
+ return;
46
+ }
47
+ }
48
+ const SAMPLE_FACTORS = [1, 2, 3];
49
+ /** Best-effort check that two ASTs agree up to a constant ratio. */
50
+ function numericalRecovery(canon, bridge) {
51
+ const vars = new Set();
52
+ const dimless = new Set();
53
+ collectLeaves(canon, vars, dimless);
54
+ collectLeaves(bridge, vars, dimless);
55
+ const names = [...vars].sort();
56
+ const ratios = [];
57
+ for (const s of SAMPLE_FACTORS) {
58
+ const values = {};
59
+ names.forEach((n, i) => {
60
+ values[n] = (1.3 + 0.7 * i) * s; // distinct positive samples
61
+ });
62
+ // Hold unresolved dimensionless leaves fixed — recovery is "up to" them.
63
+ for (const n of dimless)
64
+ values[n] = 1;
65
+ let cv;
66
+ let bv;
67
+ try {
68
+ cv = evalExpr(canon, values);
69
+ bv = evalExpr(bridge, values);
70
+ }
71
+ catch {
72
+ return { tested: false, maxRelErr: NaN };
73
+ }
74
+ // Guard cv===0 too: with cv===0 the ratio is 0 at every sample, so the
75
+ // relative-spread denominator r0===0 ⇒ NaN — a false "tested" result.
76
+ if (!Number.isFinite(cv) || !Number.isFinite(bv) || bv === 0 || cv === 0) {
77
+ return { tested: false, maxRelErr: NaN };
78
+ }
79
+ ratios.push(cv / bv);
80
+ }
81
+ const r0 = ratios[0];
82
+ const maxRelErr = Math.max(...ratios.map((r) => Math.abs((r - r0) / r0)));
83
+ return { tested: true, maxRelErr };
84
+ }
85
+ /** Compare one canonical entry against one bridge. */
86
+ export function classifyLinkage(canonicalId, bridgeId) {
87
+ const canon = canonicalById(canonicalId);
88
+ const bridgeRhs = BRIDGE_RHS_BY_ID.get(bridgeId);
89
+ const base = { canonicalId, bridgeId };
90
+ if (!canon || !bridgeRhs || !canon.scalarAst) {
91
+ return {
92
+ ...base,
93
+ dimMatch: false,
94
+ structuralMatch: false,
95
+ recovery: null,
96
+ classification: 'unrelated',
97
+ };
98
+ }
99
+ const bridgeDim = validate(bridgeRhs);
100
+ const dimMatch = bridgeDim.ok &&
101
+ bridgeDim.inferredDimension != null &&
102
+ dimEqual(bridgeDim.inferredDimension, canon.dimensional.target.dim);
103
+ const structuralMatch = structurallyEqual(canon.scalarAst, bridgeRhs);
104
+ const recovery = structuralMatch
105
+ ? numericalRecovery(canon.scalarAst, bridgeRhs)
106
+ : null;
107
+ let classification;
108
+ if (structuralMatch) {
109
+ classification =
110
+ canon.restatesBridge === String(bridgeId)
111
+ ? 'restates-canonical'
112
+ : 'recovers';
113
+ }
114
+ else if (dimMatch) {
115
+ classification = 'dimensional-only';
116
+ }
117
+ else {
118
+ classification = 'unrelated';
119
+ }
120
+ return { ...base, dimMatch, structuralMatch, recovery, classification };
121
+ }
122
+ /**
123
+ * Scan every canonical entry (with a scalar-AST) against every bridge RHS, and
124
+ * return the non-`unrelated` results — the physicist's linkage worklist.
125
+ */
126
+ export function scanLinkages() {
127
+ const results = [];
128
+ for (const ce of CANONICAL_EQUATIONS) {
129
+ if (!ce.scalarAst)
130
+ continue;
131
+ for (const bridgeId of BRIDGE_RHS_BY_ID.keys()) {
132
+ const r = classifyLinkage(ce.id, bridgeId);
133
+ if (r.classification !== 'unrelated')
134
+ results.push(r);
135
+ }
136
+ }
137
+ return results;
138
+ }
139
+ //# sourceMappingURL=linkage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkage.js","sourceRoot":"","sources":["../../src/canonical/linkage.ts"],"names":[],"mappings":"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"}