universal-physics-tensor 0.47.1 → 1.0.2

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 (702) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +405 -383
  3. package/bin/upt.mjs +7 -1
  4. package/dist/atlas/benchmark/hybrid-retrieval.d.ts +108 -0
  5. package/dist/atlas/benchmark/hybrid-retrieval.d.ts.map +1 -0
  6. package/dist/atlas/benchmark/hybrid-retrieval.js +241 -0
  7. package/dist/atlas/benchmark/hybrid-retrieval.js.map +1 -0
  8. package/dist/atlas/catalog-formal-ref.d.ts +24 -0
  9. package/dist/atlas/catalog-formal-ref.d.ts.map +1 -0
  10. package/dist/atlas/catalog-formal-ref.js +36 -0
  11. package/dist/atlas/catalog-formal-ref.js.map +1 -0
  12. package/dist/atlas/chain-pipeline.d.ts +52 -0
  13. package/dist/atlas/chain-pipeline.d.ts.map +1 -0
  14. package/dist/atlas/chain-pipeline.js +176 -0
  15. package/dist/atlas/chain-pipeline.js.map +1 -0
  16. package/dist/atlas/composition-table.d.ts +11 -46
  17. package/dist/atlas/composition-table.d.ts.map +1 -1
  18. package/dist/atlas/composition-table.js +7 -124
  19. package/dist/atlas/composition-table.js.map +1 -1
  20. package/dist/atlas/conventions.d.ts +4 -58
  21. package/dist/atlas/conventions.d.ts.map +1 -1
  22. package/dist/atlas/conventions.js +3 -88
  23. package/dist/atlas/conventions.js.map +1 -1
  24. package/dist/atlas/derive-evidence.d.ts +50 -3
  25. package/dist/atlas/derive-evidence.d.ts.map +1 -1
  26. package/dist/atlas/derive-evidence.js +73 -4
  27. package/dist/atlas/derive-evidence.js.map +1 -1
  28. package/dist/atlas/diffusion/bridges-closure.d.ts.map +1 -1
  29. package/dist/atlas/diffusion/bridges-closure.js +5 -1
  30. package/dist/atlas/diffusion/bridges-closure.js.map +1 -1
  31. package/dist/atlas/index.d.ts +9 -7
  32. package/dist/atlas/index.d.ts.map +1 -1
  33. package/dist/atlas/index.js +6 -5
  34. package/dist/atlas/index.js.map +1 -1
  35. package/dist/atlas/oscillators/bridges-exact.d.ts.map +1 -1
  36. package/dist/atlas/oscillators/bridges-exact.js +6 -0
  37. package/dist/atlas/oscillators/bridges-exact.js.map +1 -1
  38. package/dist/atlas/oscillators/bridges-limits.d.ts +2 -0
  39. package/dist/atlas/oscillators/bridges-limits.d.ts.map +1 -1
  40. package/dist/atlas/oscillators/bridges-limits.js +11 -19
  41. package/dist/atlas/oscillators/bridges-limits.js.map +1 -1
  42. package/dist/atlas/oscillators/limit-witnesses.d.ts +93 -0
  43. package/dist/atlas/oscillators/limit-witnesses.d.ts.map +1 -0
  44. package/dist/atlas/oscillators/limit-witnesses.js +152 -0
  45. package/dist/atlas/oscillators/limit-witnesses.js.map +1 -0
  46. package/dist/atlas/oscillators/models.d.ts +2 -1
  47. package/dist/atlas/oscillators/models.d.ts.map +1 -1
  48. package/dist/atlas/oscillators/models.js +4 -3
  49. package/dist/atlas/oscillators/models.js.map +1 -1
  50. package/dist/atlas/oscillators/norm-transport-witness.d.ts +37 -0
  51. package/dist/atlas/oscillators/norm-transport-witness.d.ts.map +1 -0
  52. package/dist/atlas/oscillators/norm-transport-witness.js +58 -0
  53. package/dist/atlas/oscillators/norm-transport-witness.js.map +1 -0
  54. package/dist/atlas/oscillators/norm-transport.d.ts +44 -0
  55. package/dist/atlas/oscillators/norm-transport.d.ts.map +1 -0
  56. package/dist/atlas/oscillators/norm-transport.js +66 -0
  57. package/dist/atlas/oscillators/norm-transport.js.map +1 -0
  58. package/dist/atlas/oscillators/norms.d.ts +11 -0
  59. package/dist/atlas/oscillators/norms.d.ts.map +1 -0
  60. package/dist/atlas/oscillators/norms.js +11 -0
  61. package/dist/atlas/oscillators/norms.js.map +1 -0
  62. package/dist/atlas/oscillators/pendulum-motion.d.ts +38 -0
  63. package/dist/atlas/oscillators/pendulum-motion.d.ts.map +1 -0
  64. package/dist/atlas/oscillators/pendulum-motion.js +122 -0
  65. package/dist/atlas/oscillators/pendulum-motion.js.map +1 -0
  66. package/dist/atlas/oscillators/phase-carriage.d.ts +38 -0
  67. package/dist/atlas/oscillators/phase-carriage.d.ts.map +1 -0
  68. package/dist/atlas/oscillators/phase-carriage.js +96 -0
  69. package/dist/atlas/oscillators/phase-carriage.js.map +1 -0
  70. package/dist/atlas/oscillators/phase-translation.d.ts +46 -0
  71. package/dist/atlas/oscillators/phase-translation.d.ts.map +1 -0
  72. package/dist/atlas/oscillators/phase-translation.js +178 -0
  73. package/dist/atlas/oscillators/phase-translation.js.map +1 -0
  74. package/dist/atlas/oscillators/position-translation.d.ts +59 -0
  75. package/dist/atlas/oscillators/position-translation.d.ts.map +1 -0
  76. package/dist/atlas/oscillators/position-translation.js +254 -0
  77. package/dist/atlas/oscillators/position-translation.js.map +1 -0
  78. package/dist/atlas/path-bound.d.ts +126 -9
  79. package/dist/atlas/path-bound.d.ts.map +1 -1
  80. package/dist/atlas/path-bound.js +372 -23
  81. package/dist/atlas/path-bound.js.map +1 -1
  82. package/dist/atlas/physjs-ref.d.ts +141 -0
  83. package/dist/atlas/physjs-ref.d.ts.map +1 -0
  84. package/dist/atlas/physjs-ref.js +878 -0
  85. package/dist/atlas/physjs-ref.js.map +1 -0
  86. package/dist/atlas/proof-target.d.ts +32 -0
  87. package/dist/atlas/proof-target.d.ts.map +1 -0
  88. package/dist/atlas/proof-target.js +140 -0
  89. package/dist/atlas/proof-target.js.map +1 -0
  90. package/dist/atlas/regime.d.ts +12 -136
  91. package/dist/atlas/regime.d.ts.map +1 -1
  92. package/dist/atlas/regime.js +8 -254
  93. package/dist/atlas/regime.js.map +1 -1
  94. package/dist/atlas/serialize.d.ts.map +1 -1
  95. package/dist/atlas/serialize.js +25 -0
  96. package/dist/atlas/serialize.js.map +1 -1
  97. package/dist/atlas/translation-registry.d.ts +22 -0
  98. package/dist/atlas/translation-registry.d.ts.map +1 -0
  99. package/dist/atlas/translation-registry.js +31 -0
  100. package/dist/atlas/translation-registry.js.map +1 -0
  101. package/dist/atlas/translation.d.ts +116 -0
  102. package/dist/atlas/translation.d.ts.map +1 -0
  103. package/dist/atlas/translation.js +34 -0
  104. package/dist/atlas/translation.js.map +1 -0
  105. package/dist/atlas/types.d.ts +74 -240
  106. package/dist/atlas/types.d.ts.map +1 -1
  107. package/dist/atlas/types.js +5 -37
  108. package/dist/atlas/types.js.map +1 -1
  109. package/dist/atlas/waves/bridges-closure.d.ts.map +1 -1
  110. package/dist/atlas/waves/bridges-closure.js +4 -0
  111. package/dist/atlas/waves/bridges-closure.js.map +1 -1
  112. package/dist/atlas/waves/bridges.d.ts.map +1 -1
  113. package/dist/atlas/waves/bridges.js +3 -0
  114. package/dist/atlas/waves/bridges.js.map +1 -1
  115. package/dist/atlas/waves/models.js +1 -1
  116. package/dist/atlas/waves/models.js.map +1 -1
  117. package/dist/atlas/witness-dominance.d.ts +50 -0
  118. package/dist/atlas/witness-dominance.d.ts.map +1 -0
  119. package/dist/atlas/witness-dominance.js +86 -0
  120. package/dist/atlas/witness-dominance.js.map +1 -0
  121. package/dist/atlas/witness-specs.d.ts +30 -0
  122. package/dist/atlas/witness-specs.d.ts.map +1 -1
  123. package/dist/atlas/witness-specs.js +107 -0
  124. package/dist/atlas/witness-specs.js.map +1 -1
  125. package/dist/bridges/be53-yang-mills-confrontation.d.ts +81 -0
  126. package/dist/bridges/be53-yang-mills-confrontation.d.ts.map +1 -0
  127. package/dist/bridges/be53-yang-mills-confrontation.js +110 -0
  128. package/dist/bridges/be53-yang-mills-confrontation.js.map +1 -0
  129. package/dist/bridges/be63-chandrasekhar-mass.d.ts.map +1 -1
  130. package/dist/bridges/be63-chandrasekhar-mass.js +1 -3
  131. package/dist/bridges/be63-chandrasekhar-mass.js.map +1 -1
  132. package/dist/bridges/confrontation-coverage.d.ts +5 -61
  133. package/dist/bridges/confrontation-coverage.d.ts.map +1 -1
  134. package/dist/bridges/confrontation-coverage.js +5 -70
  135. package/dist/bridges/confrontation-coverage.js.map +1 -1
  136. package/dist/bridges/confrontations.d.ts +1 -1
  137. package/dist/bridges/confrontations.d.ts.map +1 -1
  138. package/dist/bridges/confrontations.js +291 -3
  139. package/dist/bridges/confrontations.js.map +1 -1
  140. package/dist/bridges/equations/be-13-einstein-trace.d.ts +2 -3
  141. package/dist/bridges/equations/be-13-einstein-trace.d.ts.map +1 -1
  142. package/dist/bridges/equations/be-13-einstein-trace.js +2 -3
  143. package/dist/bridges/equations/be-13-einstein-trace.js.map +1 -1
  144. package/dist/bridges/equations/be-38-mond.d.ts +7 -5
  145. package/dist/bridges/equations/be-38-mond.d.ts.map +1 -1
  146. package/dist/bridges/equations/be-38-mond.js +7 -5
  147. package/dist/bridges/equations/be-38-mond.js.map +1 -1
  148. package/dist/bridges/equations/be-42-hawking-temperature.d.ts +3 -0
  149. package/dist/bridges/equations/be-42-hawking-temperature.d.ts.map +1 -1
  150. package/dist/bridges/equations/be-42-hawking-temperature.js +8 -1
  151. package/dist/bridges/equations/be-42-hawking-temperature.js.map +1 -1
  152. package/dist/bridges/equations/be-53-yang-mills-beta.d.ts +21 -0
  153. package/dist/bridges/equations/be-53-yang-mills-beta.d.ts.map +1 -1
  154. package/dist/bridges/equations/be-53-yang-mills-beta.js +12 -0
  155. package/dist/bridges/equations/be-53-yang-mills-beta.js.map +1 -1
  156. package/dist/bridges/evaluator-inputs.d.ts +21 -0
  157. package/dist/bridges/evaluator-inputs.d.ts.map +1 -0
  158. package/dist/bridges/evaluator-inputs.js +75 -0
  159. package/dist/bridges/evaluator-inputs.js.map +1 -0
  160. package/dist/bridges/evaluators.d.ts +46 -0
  161. package/dist/bridges/evaluators.d.ts.map +1 -1
  162. package/dist/bridges/evaluators.js +57 -16
  163. package/dist/bridges/evaluators.js.map +1 -1
  164. package/dist/bridges/gravitational-lensing.d.ts +1 -1
  165. package/dist/bridges/gravitational-lensing.js +1 -1
  166. package/dist/bridges/index.d.ts +3 -2
  167. package/dist/bridges/index.d.ts.map +1 -1
  168. package/dist/bridges/index.js +15 -14
  169. package/dist/bridges/index.js.map +1 -1
  170. package/dist/bridges/observations/types.d.ts +110 -2
  171. package/dist/bridges/observations/types.d.ts.map +1 -1
  172. package/dist/bridges/observations/types.js +29 -0
  173. package/dist/bridges/observations/types.js.map +1 -1
  174. package/dist/bridges/perihelion-precession.d.ts +1 -1
  175. package/dist/bridges/perihelion-precession.js +1 -1
  176. package/dist/bridges/tensor-index.d.ts +39 -0
  177. package/dist/bridges/tensor-index.d.ts.map +1 -0
  178. package/dist/bridges/tensor-index.js +66 -0
  179. package/dist/bridges/tensor-index.js.map +1 -0
  180. package/dist/canonical/canonical-equation.d.ts +1 -1
  181. package/dist/canonical/canonical-equation.d.ts.map +1 -1
  182. package/dist/canonical/entries/atomic.d.ts.map +1 -1
  183. package/dist/canonical/entries/atomic.js +32 -10
  184. package/dist/canonical/entries/atomic.js.map +1 -1
  185. package/dist/canonical/entries/dimensional-classics.js +2 -2
  186. package/dist/canonical/entries/dimensional-classics.js.map +1 -1
  187. package/dist/canonical/entries/mechanics.d.ts.map +1 -1
  188. package/dist/canonical/entries/mechanics.js +10 -6
  189. package/dist/canonical/entries/mechanics.js.map +1 -1
  190. package/dist/canonical/entries/relativity.d.ts.map +1 -1
  191. package/dist/canonical/entries/relativity.js +41 -8
  192. package/dist/canonical/entries/relativity.js.map +1 -1
  193. package/dist/canonical/entries/thermo-nuclear-cosmo.js +5 -5
  194. package/dist/canonical/entries/thermo-nuclear-cosmo.js.map +1 -1
  195. package/dist/canonical/linkage.d.ts.map +1 -1
  196. package/dist/canonical/linkage.js +31 -28
  197. package/dist/canonical/linkage.js.map +1 -1
  198. package/dist/canonical/normal-form.d.ts +17 -0
  199. package/dist/canonical/normal-form.d.ts.map +1 -1
  200. package/dist/canonical/normal-form.js +21 -4
  201. package/dist/canonical/normal-form.js.map +1 -1
  202. package/dist/canonical/structural.d.ts +84 -0
  203. package/dist/canonical/structural.d.ts.map +1 -0
  204. package/dist/canonical/structural.js +107 -0
  205. package/dist/canonical/structural.js.map +1 -0
  206. package/dist/cases/brownian-sphere.d.ts +68 -0
  207. package/dist/cases/brownian-sphere.d.ts.map +1 -0
  208. package/dist/cases/brownian-sphere.js +353 -0
  209. package/dist/cases/brownian-sphere.js.map +1 -0
  210. package/dist/cases/damped-resonator.d.ts +23 -0
  211. package/dist/cases/damped-resonator.d.ts.map +1 -0
  212. package/dist/cases/damped-resonator.js +224 -0
  213. package/dist/cases/damped-resonator.js.map +1 -0
  214. package/dist/cases/index.d.ts +11 -0
  215. package/dist/cases/index.d.ts.map +1 -0
  216. package/dist/cases/index.js +29 -0
  217. package/dist/cases/index.js.map +1 -0
  218. package/dist/cases/kepler-rv.d.ts +13 -0
  219. package/dist/cases/kepler-rv.d.ts.map +1 -0
  220. package/dist/cases/kepler-rv.js +168 -0
  221. package/dist/cases/kepler-rv.js.map +1 -0
  222. package/dist/cases/lumped-cooling.d.ts +46 -0
  223. package/dist/cases/lumped-cooling.d.ts.map +1 -0
  224. package/dist/cases/lumped-cooling.js +261 -0
  225. package/dist/cases/lumped-cooling.js.map +1 -0
  226. package/dist/cases/quadrature.d.ts +14 -0
  227. package/dist/cases/quadrature.d.ts.map +1 -0
  228. package/dist/cases/quadrature.js +41 -0
  229. package/dist/cases/quadrature.js.map +1 -0
  230. package/dist/cases/resistor-noise.d.ts +14 -0
  231. package/dist/cases/resistor-noise.d.ts.map +1 -0
  232. package/dist/cases/resistor-noise.js +210 -0
  233. package/dist/cases/resistor-noise.js.map +1 -0
  234. package/dist/cases/skin-depth.d.ts +21 -0
  235. package/dist/cases/skin-depth.d.ts.map +1 -0
  236. package/dist/cases/skin-depth.js +174 -0
  237. package/dist/cases/skin-depth.js.map +1 -0
  238. package/dist/cases/types.d.ts +115 -0
  239. package/dist/cases/types.d.ts.map +1 -0
  240. package/dist/cases/types.js +20 -0
  241. package/dist/cases/types.js.map +1 -0
  242. package/dist/cli/commands/_atlas-map.d.ts +409 -0
  243. package/dist/cli/commands/_atlas-map.d.ts.map +1 -0
  244. package/dist/cli/commands/_atlas-map.js +1014 -0
  245. package/dist/cli/commands/_atlas-map.js.map +1 -0
  246. package/dist/cli/commands/_atlas-route.d.ts +111 -0
  247. package/dist/cli/commands/_atlas-route.d.ts.map +1 -0
  248. package/dist/cli/commands/_atlas-route.js +140 -0
  249. package/dist/cli/commands/_atlas-route.js.map +1 -0
  250. package/dist/cli/commands/_discovery-opts.d.ts.map +1 -1
  251. package/dist/cli/commands/_discovery-opts.js +10 -1
  252. package/dist/cli/commands/_discovery-opts.js.map +1 -1
  253. package/dist/cli/commands/atlas.d.ts +20 -0
  254. package/dist/cli/commands/atlas.d.ts.map +1 -1
  255. package/dist/cli/commands/atlas.js +333 -19
  256. package/dist/cli/commands/atlas.js.map +1 -1
  257. package/dist/cli/commands/audit.d.ts.map +1 -1
  258. package/dist/cli/commands/audit.js +12 -3
  259. package/dist/cli/commands/audit.js.map +1 -1
  260. package/dist/cli/commands/axes.js +4 -4
  261. package/dist/cli/commands/candidates.d.ts.map +1 -1
  262. package/dist/cli/commands/candidates.js +3 -2
  263. package/dist/cli/commands/candidates.js.map +1 -1
  264. package/dist/cli/commands/canonical.d.ts.map +1 -1
  265. package/dist/cli/commands/canonical.js +39 -10
  266. package/dist/cli/commands/canonical.js.map +1 -1
  267. package/dist/cli/commands/confront.d.ts.map +1 -1
  268. package/dist/cli/commands/confront.js +210 -28
  269. package/dist/cli/commands/confront.js.map +1 -1
  270. package/dist/cli/commands/connectors.d.ts.map +1 -1
  271. package/dist/cli/commands/connectors.js +5 -4
  272. package/dist/cli/commands/connectors.js.map +1 -1
  273. package/dist/cli/commands/coverage.js +3 -3
  274. package/dist/cli/commands/derive.d.ts.map +1 -1
  275. package/dist/cli/commands/derive.js +22 -9
  276. package/dist/cli/commands/derive.js.map +1 -1
  277. package/dist/cli/commands/discover.d.ts.map +1 -1
  278. package/dist/cli/commands/discover.js +149 -32
  279. package/dist/cli/commands/discover.js.map +1 -1
  280. package/dist/cli/commands/eval.d.ts.map +1 -1
  281. package/dist/cli/commands/eval.js +87 -17
  282. package/dist/cli/commands/eval.js.map +1 -1
  283. package/dist/cli/commands/evaluate.d.ts +30 -0
  284. package/dist/cli/commands/evaluate.d.ts.map +1 -1
  285. package/dist/cli/commands/evaluate.js +441 -25
  286. package/dist/cli/commands/evaluate.js.map +1 -1
  287. package/dist/cli/commands/explain.d.ts.map +1 -1
  288. package/dist/cli/commands/explain.js +38 -11
  289. package/dist/cli/commands/explain.js.map +1 -1
  290. package/dist/cli/commands/frontier.d.ts +3 -0
  291. package/dist/cli/commands/frontier.d.ts.map +1 -0
  292. package/dist/cli/commands/frontier.js +28 -0
  293. package/dist/cli/commands/frontier.js.map +1 -0
  294. package/dist/cli/commands/ground.d.ts.map +1 -1
  295. package/dist/cli/commands/ground.js +37 -12
  296. package/dist/cli/commands/ground.js.map +1 -1
  297. package/dist/cli/commands/index.d.ts +5 -0
  298. package/dist/cli/commands/index.d.ts.map +1 -1
  299. package/dist/cli/commands/index.js +5 -0
  300. package/dist/cli/commands/index.js.map +1 -1
  301. package/dist/cli/commands/map.d.ts +8 -0
  302. package/dist/cli/commands/map.d.ts.map +1 -1
  303. package/dist/cli/commands/map.js +385 -57
  304. package/dist/cli/commands/map.js.map +1 -1
  305. package/dist/cli/commands/metric.d.ts +3 -0
  306. package/dist/cli/commands/metric.d.ts.map +1 -0
  307. package/dist/cli/commands/metric.js +136 -0
  308. package/dist/cli/commands/metric.js.map +1 -0
  309. package/dist/cli/commands/path.d.ts +109 -1
  310. package/dist/cli/commands/path.d.ts.map +1 -1
  311. package/dist/cli/commands/path.js +1019 -109
  312. package/dist/cli/commands/path.js.map +1 -1
  313. package/dist/cli/commands/predict.d.ts.map +1 -1
  314. package/dist/cli/commands/predict.js +3 -2
  315. package/dist/cli/commands/predict.js.map +1 -1
  316. package/dist/cli/commands/priority.d.ts.map +1 -1
  317. package/dist/cli/commands/priority.js +3 -2
  318. package/dist/cli/commands/priority.js.map +1 -1
  319. package/dist/cli/commands/probe.d.ts +7 -0
  320. package/dist/cli/commands/probe.d.ts.map +1 -1
  321. package/dist/cli/commands/probe.js +234 -52
  322. package/dist/cli/commands/probe.js.map +1 -1
  323. package/dist/cli/commands/recover.d.ts.map +1 -1
  324. package/dist/cli/commands/recover.js +17 -6
  325. package/dist/cli/commands/recover.js.map +1 -1
  326. package/dist/cli/commands/regime.d.ts +1 -1
  327. package/dist/cli/commands/regime.d.ts.map +1 -1
  328. package/dist/cli/commands/regime.js +134 -33
  329. package/dist/cli/commands/regime.js.map +1 -1
  330. package/dist/cli/commands/retrieve.d.ts +3 -0
  331. package/dist/cli/commands/retrieve.d.ts.map +1 -0
  332. package/dist/cli/commands/retrieve.js +65 -0
  333. package/dist/cli/commands/retrieve.js.map +1 -0
  334. package/dist/cli/commands/search.d.ts +3 -0
  335. package/dist/cli/commands/search.d.ts.map +1 -0
  336. package/dist/cli/commands/search.js +70 -0
  337. package/dist/cli/commands/search.js.map +1 -0
  338. package/dist/cli/commands/symbolic.d.ts.map +1 -1
  339. package/dist/cli/commands/symbolic.js +107 -16
  340. package/dist/cli/commands/symbolic.js.map +1 -1
  341. package/dist/cli/commands/testplan.d.ts +3 -0
  342. package/dist/cli/commands/testplan.d.ts.map +1 -0
  343. package/dist/cli/commands/testplan.js +131 -0
  344. package/dist/cli/commands/testplan.js.map +1 -0
  345. package/dist/cli/conventions.d.ts +22 -0
  346. package/dist/cli/conventions.d.ts.map +1 -0
  347. package/dist/cli/conventions.js +48 -0
  348. package/dist/cli/conventions.js.map +1 -0
  349. package/dist/cli/euler-guard.d.ts +9 -0
  350. package/dist/cli/euler-guard.d.ts.map +1 -0
  351. package/dist/cli/euler-guard.js +11 -0
  352. package/dist/cli/euler-guard.js.map +1 -0
  353. package/dist/cli/eval-numbers.d.ts +26 -0
  354. package/dist/cli/eval-numbers.d.ts.map +1 -0
  355. package/dist/cli/eval-numbers.js +48 -0
  356. package/dist/cli/eval-numbers.js.map +1 -0
  357. package/dist/cli/expr-print.d.ts +25 -0
  358. package/dist/cli/expr-print.d.ts.map +1 -0
  359. package/dist/cli/expr-print.js +123 -0
  360. package/dist/cli/expr-print.js.map +1 -0
  361. package/dist/cli/graphs.d.ts +26 -0
  362. package/dist/cli/graphs.d.ts.map +1 -1
  363. package/dist/cli/graphs.js +19 -0
  364. package/dist/cli/graphs.js.map +1 -1
  365. package/dist/cli/main.d.ts +4 -10
  366. package/dist/cli/main.d.ts.map +1 -1
  367. package/dist/cli/main.js +370 -167
  368. package/dist/cli/main.js.map +1 -1
  369. package/dist/cli/map-evidence.d.ts +47 -0
  370. package/dist/cli/map-evidence.d.ts.map +1 -0
  371. package/dist/cli/map-evidence.js +53 -0
  372. package/dist/cli/map-evidence.js.map +1 -0
  373. package/dist/cli/output.d.ts +21 -1
  374. package/dist/cli/output.d.ts.map +1 -1
  375. package/dist/cli/output.js +5 -1
  376. package/dist/cli/output.js.map +1 -1
  377. package/dist/{composition → cli}/poster-source.d.ts +3 -2
  378. package/dist/cli/poster-source.d.ts.map +1 -0
  379. package/dist/{composition → cli}/poster-source.js +2 -1
  380. package/dist/cli/poster-source.js.map +1 -0
  381. package/dist/cli/record-reach.d.ts +44 -0
  382. package/dist/cli/record-reach.d.ts.map +1 -0
  383. package/dist/cli/record-reach.js +228 -0
  384. package/dist/cli/record-reach.js.map +1 -0
  385. package/dist/cli/record-tables.d.ts +38 -0
  386. package/dist/cli/record-tables.d.ts.map +1 -0
  387. package/dist/cli/record-tables.js +110 -0
  388. package/dist/cli/record-tables.js.map +1 -0
  389. package/dist/cli/record.d.ts +141 -0
  390. package/dist/cli/record.d.ts.map +1 -0
  391. package/dist/cli/record.js +612 -0
  392. package/dist/cli/record.js.map +1 -0
  393. package/dist/cli/search-index.d.ts +56 -0
  394. package/dist/cli/search-index.d.ts.map +1 -0
  395. package/dist/cli/search-index.js +190 -0
  396. package/dist/cli/search-index.js.map +1 -0
  397. package/dist/cli/statuses.d.ts +25 -0
  398. package/dist/cli/statuses.d.ts.map +1 -0
  399. package/dist/cli/statuses.js +276 -0
  400. package/dist/cli/statuses.js.map +1 -0
  401. package/dist/cli/version.d.ts +8 -0
  402. package/dist/cli/version.d.ts.map +1 -1
  403. package/dist/cli/version.js +32 -1
  404. package/dist/cli/version.js.map +1 -1
  405. package/dist/cli-api.d.ts +34 -16
  406. package/dist/cli-api.d.ts.map +1 -1
  407. package/dist/cli-api.js +32 -12
  408. package/dist/cli-api.js.map +1 -1
  409. package/dist/composition/audit-coverage.d.ts +70 -0
  410. package/dist/composition/audit-coverage.d.ts.map +1 -0
  411. package/dist/composition/audit-coverage.js +80 -0
  412. package/dist/composition/audit-coverage.js.map +1 -0
  413. package/dist/composition/bridge-analysis.d.ts.map +1 -1
  414. package/dist/composition/bridge-analysis.js +2 -1
  415. package/dist/composition/bridge-analysis.js.map +1 -1
  416. package/dist/composition/buckingham-filter.d.ts +34 -0
  417. package/dist/composition/buckingham-filter.d.ts.map +1 -0
  418. package/dist/composition/buckingham-filter.js +64 -0
  419. package/dist/composition/buckingham-filter.js.map +1 -0
  420. package/dist/composition/canonical-compare.d.ts +29 -16
  421. package/dist/composition/canonical-compare.d.ts.map +1 -1
  422. package/dist/composition/canonical-compare.js +355 -59
  423. package/dist/composition/canonical-compare.js.map +1 -1
  424. package/dist/composition/canonical-graph.d.ts +2 -2
  425. package/dist/composition/canonical-graph.js +3 -3
  426. package/dist/composition/canonical-graph.js.map +1 -1
  427. package/dist/composition/canonical-prefactors.d.ts +24 -1
  428. package/dist/composition/canonical-prefactors.d.ts.map +1 -1
  429. package/dist/composition/canonical-prefactors.js +97 -1
  430. package/dist/composition/canonical-prefactors.js.map +1 -1
  431. package/dist/composition/catalog-graph.d.ts +4 -4
  432. package/dist/composition/catalog-graph.d.ts.map +1 -1
  433. package/dist/composition/catalog-graph.js +6 -4
  434. package/dist/composition/catalog-graph.js.map +1 -1
  435. package/dist/composition/chain-candidate.d.ts +43 -0
  436. package/dist/composition/chain-candidate.d.ts.map +1 -0
  437. package/dist/composition/chain-candidate.js +56 -0
  438. package/dist/composition/chain-candidate.js.map +1 -0
  439. package/dist/composition/chain-match.d.ts +19 -0
  440. package/dist/composition/chain-match.d.ts.map +1 -0
  441. package/dist/composition/chain-match.js +10 -0
  442. package/dist/composition/chain-match.js.map +1 -0
  443. package/dist/composition/chain-regime.d.ts +34 -0
  444. package/dist/composition/chain-regime.d.ts.map +1 -0
  445. package/dist/composition/chain-regime.js +89 -0
  446. package/dist/composition/chain-regime.js.map +1 -0
  447. package/dist/composition/compose-symbolic.js +1 -1
  448. package/dist/composition/compose-symbolic.js.map +1 -1
  449. package/dist/composition/compose.d.ts +11 -0
  450. package/dist/composition/compose.d.ts.map +1 -1
  451. package/dist/composition/compose.js +30 -10
  452. package/dist/composition/compose.js.map +1 -1
  453. package/dist/composition/composition-recovery.d.ts +47 -0
  454. package/dist/composition/composition-recovery.d.ts.map +1 -0
  455. package/dist/composition/composition-recovery.js +77 -0
  456. package/dist/composition/composition-recovery.js.map +1 -0
  457. package/dist/composition/consequence.d.ts +39 -0
  458. package/dist/composition/consequence.d.ts.map +1 -1
  459. package/dist/composition/consequence.js +37 -0
  460. package/dist/composition/consequence.js.map +1 -1
  461. package/dist/{bridges → composition}/descriptor.d.ts +6 -3
  462. package/dist/composition/descriptor.d.ts.map +1 -0
  463. package/dist/{bridges → composition}/descriptor.js +7 -4
  464. package/dist/composition/descriptor.js.map +1 -0
  465. package/dist/composition/discovery.d.ts +20 -0
  466. package/dist/composition/discovery.d.ts.map +1 -1
  467. package/dist/composition/discovery.js +27 -5
  468. package/dist/composition/discovery.js.map +1 -1
  469. package/dist/composition/edge.d.ts +1 -1
  470. package/dist/composition/edge.d.ts.map +1 -1
  471. package/dist/composition/edge.js.map +1 -1
  472. package/dist/composition/edges/_catalog-helpers.d.ts +4 -0
  473. package/dist/composition/edges/_catalog-helpers.d.ts.map +1 -1
  474. package/dist/composition/edges/_catalog-helpers.js +15 -0
  475. package/dist/composition/edges/_catalog-helpers.js.map +1 -1
  476. package/dist/composition/edges/calibration.d.ts +0 -9
  477. package/dist/composition/edges/calibration.d.ts.map +1 -1
  478. package/dist/composition/edges/calibration.js +85 -0
  479. package/dist/composition/edges/calibration.js.map +1 -1
  480. package/dist/composition/edges/catalog-condensed-matter.d.ts +0 -9
  481. package/dist/composition/edges/catalog-condensed-matter.d.ts.map +1 -1
  482. package/dist/composition/edges/catalog-condensed-matter.js +32 -1
  483. package/dist/composition/edges/catalog-condensed-matter.js.map +1 -1
  484. package/dist/composition/edges/catalog-fields.d.ts.map +1 -1
  485. package/dist/composition/edges/catalog-fields.js +2 -1
  486. package/dist/composition/edges/catalog-fields.js.map +1 -1
  487. package/dist/composition/edges/catalog-full.d.ts +4 -2
  488. package/dist/composition/edges/catalog-full.d.ts.map +1 -1
  489. package/dist/composition/edges/catalog-full.js +4 -2
  490. package/dist/composition/edges/catalog-full.js.map +1 -1
  491. package/dist/composition/edges/catalog-gravitation-cosmology.d.ts +0 -10
  492. package/dist/composition/edges/catalog-gravitation-cosmology.d.ts.map +1 -1
  493. package/dist/composition/edges/catalog-gravitation-cosmology.js +31 -1
  494. package/dist/composition/edges/catalog-gravitation-cosmology.js.map +1 -1
  495. package/dist/composition/edges/catalog-quantum.d.ts +0 -10
  496. package/dist/composition/edges/catalog-quantum.d.ts.map +1 -1
  497. package/dist/composition/edges/catalog-quantum.js +53 -17
  498. package/dist/composition/edges/catalog-quantum.js.map +1 -1
  499. package/dist/composition/edges/catalog-tranche.d.ts +0 -15
  500. package/dist/composition/edges/catalog-tranche.d.ts.map +1 -1
  501. package/dist/composition/edges/catalog-tranche.js +70 -16
  502. package/dist/composition/edges/catalog-tranche.js.map +1 -1
  503. package/dist/composition/edges/proved-seeds.d.ts +39 -0
  504. package/dist/composition/edges/proved-seeds.d.ts.map +1 -0
  505. package/dist/composition/edges/proved-seeds.js +197 -0
  506. package/dist/composition/edges/proved-seeds.js.map +1 -0
  507. package/dist/composition/enumerate.d.ts +20 -0
  508. package/dist/composition/enumerate.d.ts.map +1 -1
  509. package/dist/composition/enumerate.js +23 -0
  510. package/dist/composition/enumerate.js.map +1 -1
  511. package/dist/composition/expr-eval.d.ts +5 -4
  512. package/dist/composition/expr-eval.d.ts.map +1 -1
  513. package/dist/composition/expr-eval.js +40 -6
  514. package/dist/composition/expr-eval.js.map +1 -1
  515. package/dist/composition/expr-simplify.js +1 -1
  516. package/dist/composition/expr-simplify.js.map +1 -1
  517. package/dist/composition/expr-subst.d.ts +2 -1
  518. package/dist/composition/expr-subst.d.ts.map +1 -1
  519. package/dist/composition/expr-subst.js +9 -2
  520. package/dist/composition/expr-subst.js.map +1 -1
  521. package/dist/composition/frontier-account.d.ts +78 -0
  522. package/dist/composition/frontier-account.d.ts.map +1 -0
  523. package/dist/composition/frontier-account.js +127 -0
  524. package/dist/composition/frontier-account.js.map +1 -0
  525. package/dist/composition/graph-viz.d.ts +7 -22
  526. package/dist/composition/graph-viz.d.ts.map +1 -1
  527. package/dist/composition/graph-viz.js +4 -27
  528. package/dist/composition/graph-viz.js.map +1 -1
  529. package/dist/composition/grounding.d.ts +49 -0
  530. package/dist/composition/grounding.d.ts.map +1 -1
  531. package/dist/composition/grounding.js +38 -0
  532. package/dist/composition/grounding.js.map +1 -1
  533. package/dist/composition/index.d.ts +0 -2
  534. package/dist/composition/index.d.ts.map +1 -1
  535. package/dist/composition/index.js +1 -1
  536. package/dist/composition/index.js.map +1 -1
  537. package/dist/composition/not-composable-seeds.d.ts +30 -0
  538. package/dist/composition/not-composable-seeds.d.ts.map +1 -0
  539. package/dist/composition/not-composable-seeds.js +90 -0
  540. package/dist/composition/not-composable-seeds.js.map +1 -0
  541. package/dist/composition/probe/expression-gaps.d.ts +27 -0
  542. package/dist/composition/probe/expression-gaps.d.ts.map +1 -0
  543. package/dist/composition/probe/expression-gaps.js +47 -0
  544. package/dist/composition/probe/expression-gaps.js.map +1 -0
  545. package/dist/composition/probe/frontier.d.ts +2 -1
  546. package/dist/composition/probe/frontier.d.ts.map +1 -1
  547. package/dist/composition/probe/frontier.js +3 -2
  548. package/dist/composition/probe/frontier.js.map +1 -1
  549. package/dist/composition/probe/index.d.ts +4 -1
  550. package/dist/composition/probe/index.d.ts.map +1 -1
  551. package/dist/composition/probe/index.js +3 -1
  552. package/dist/composition/probe/index.js.map +1 -1
  553. package/dist/composition/probe/pipeline.d.ts +2 -0
  554. package/dist/composition/probe/pipeline.d.ts.map +1 -1
  555. package/dist/composition/probe/pipeline.js +6 -2
  556. package/dist/composition/probe/pipeline.js.map +1 -1
  557. package/dist/composition/probe/problem.d.ts +7 -0
  558. package/dist/composition/probe/problem.d.ts.map +1 -1
  559. package/dist/composition/probe/problem.js +15 -5
  560. package/dist/composition/probe/problem.js.map +1 -1
  561. package/dist/composition/probe/search-budget.d.ts.map +1 -1
  562. package/dist/composition/probe/search-budget.js +6 -2
  563. package/dist/composition/probe/search-budget.js.map +1 -1
  564. package/dist/composition/probe/study.d.ts +340 -0
  565. package/dist/composition/probe/study.d.ts.map +1 -0
  566. package/dist/composition/probe/study.js +1519 -0
  567. package/dist/composition/probe/study.js.map +1 -0
  568. package/dist/composition/proposed-bridges.js +1 -1
  569. package/dist/composition/proposed-bridges.js.map +1 -1
  570. package/dist/composition/quantities/_dims.d.ts +6 -0
  571. package/dist/composition/quantities/_dims.d.ts.map +1 -1
  572. package/dist/composition/quantities/_dims.js +6 -0
  573. package/dist/composition/quantities/_dims.js.map +1 -1
  574. package/dist/composition/quantities/condensed-matter.d.ts +16 -0
  575. package/dist/composition/quantities/condensed-matter.d.ts.map +1 -1
  576. package/dist/composition/quantities/condensed-matter.js +43 -2
  577. package/dist/composition/quantities/condensed-matter.js.map +1 -1
  578. package/dist/composition/quantities/fields.d.ts +10 -0
  579. package/dist/composition/quantities/fields.d.ts.map +1 -1
  580. package/dist/composition/quantities/fields.js +37 -2
  581. package/dist/composition/quantities/fields.js.map +1 -1
  582. package/dist/composition/quantities/gravitation-cosmology.d.ts +4 -0
  583. package/dist/composition/quantities/gravitation-cosmology.d.ts.map +1 -1
  584. package/dist/composition/quantities/gravitation-cosmology.js +14 -0
  585. package/dist/composition/quantities/gravitation-cosmology.js.map +1 -1
  586. package/dist/composition/quantities/quantum.d.ts +2 -0
  587. package/dist/composition/quantities/quantum.d.ts.map +1 -1
  588. package/dist/composition/quantities/quantum.js +7 -0
  589. package/dist/composition/quantities/quantum.js.map +1 -1
  590. package/dist/composition/quantities.d.ts +4 -16
  591. package/dist/composition/quantities.d.ts.map +1 -1
  592. package/dist/composition/quantities.js +4 -16
  593. package/dist/composition/quantities.js.map +1 -1
  594. package/dist/composition/retrodiction.d.ts.map +1 -1
  595. package/dist/composition/retrodiction.js +6 -2
  596. package/dist/composition/retrodiction.js.map +1 -1
  597. package/dist/composition/uncertainty.d.ts +1 -1
  598. package/dist/composition/uncertainty.d.ts.map +1 -1
  599. package/dist/composition/user-equation.d.ts +79 -8
  600. package/dist/composition/user-equation.d.ts.map +1 -1
  601. package/dist/composition/user-equation.js +224 -32
  602. package/dist/composition/user-equation.js.map +1 -1
  603. package/dist/core/constants.d.ts +17 -5
  604. package/dist/core/constants.d.ts.map +1 -1
  605. package/dist/core/constants.js +17 -5
  606. package/dist/core/constants.js.map +1 -1
  607. package/dist/core/types.d.ts +1 -1
  608. package/dist/core/types.d.ts.map +1 -1
  609. package/dist/core/types.js +2 -1
  610. package/dist/core/types.js.map +1 -1
  611. package/dist/dimensional/curvature.d.ts +7 -56
  612. package/dist/dimensional/curvature.d.ts.map +1 -1
  613. package/dist/dimensional/curvature.js +7 -76
  614. package/dist/dimensional/curvature.js.map +1 -1
  615. package/dist/dimensional/dimension-spec.d.ts +7 -1
  616. package/dist/dimensional/dimension-spec.d.ts.map +1 -1
  617. package/dist/dimensional/dimension-spec.js +131 -3
  618. package/dist/dimensional/dimension-spec.js.map +1 -1
  619. package/dist/dimensional/formula-names.d.ts +30 -0
  620. package/dist/dimensional/formula-names.d.ts.map +1 -0
  621. package/dist/dimensional/formula-names.js +37 -0
  622. package/dist/dimensional/formula-names.js.map +1 -0
  623. package/dist/dimensional/natural-units.d.ts +33 -0
  624. package/dist/dimensional/natural-units.d.ts.map +1 -0
  625. package/dist/dimensional/natural-units.js +58 -0
  626. package/dist/dimensional/natural-units.js.map +1 -0
  627. package/dist/{composition → dimensional}/symbolic-constants.d.ts +21 -2
  628. package/dist/dimensional/symbolic-constants.d.ts.map +1 -0
  629. package/dist/dimensional/symbolic-constants.js +122 -0
  630. package/dist/dimensional/symbolic-constants.js.map +1 -0
  631. package/dist/dimensional/unit-convention.d.ts +30 -0
  632. package/dist/dimensional/unit-convention.d.ts.map +1 -0
  633. package/dist/dimensional/unit-convention.js +60 -0
  634. package/dist/dimensional/unit-convention.js.map +1 -0
  635. package/dist/dimensional/units.d.ts +43 -0
  636. package/dist/dimensional/units.d.ts.map +1 -0
  637. package/dist/dimensional/units.js +197 -0
  638. package/dist/dimensional/units.js.map +1 -0
  639. package/dist/index.d.ts +11 -5
  640. package/dist/index.d.ts.map +1 -1
  641. package/dist/index.js +10 -3
  642. package/dist/index.js.map +1 -1
  643. package/dist/numerical/bianchi-residual.d.ts +55 -0
  644. package/dist/numerical/bianchi-residual.d.ts.map +1 -0
  645. package/dist/numerical/bianchi-residual.js +79 -0
  646. package/dist/numerical/bianchi-residual.js.map +1 -0
  647. package/dist/numerical/binding-value.d.ts +67 -0
  648. package/dist/numerical/binding-value.d.ts.map +1 -0
  649. package/dist/numerical/binding-value.js +349 -0
  650. package/dist/numerical/binding-value.js.map +1 -0
  651. package/dist/numerical/connection-lowering-helpers.d.ts.map +1 -1
  652. package/dist/numerical/connection-lowering-helpers.js +13 -26
  653. package/dist/numerical/connection-lowering-helpers.js.map +1 -1
  654. package/dist/numerical/curvature-lowering-helpers.d.ts.map +1 -1
  655. package/dist/numerical/curvature-lowering-helpers.js +9 -0
  656. package/dist/numerical/curvature-lowering-helpers.js.map +1 -1
  657. package/dist/numerical/float64-engine.d.ts.map +1 -1
  658. package/dist/numerical/float64-engine.js +23 -16
  659. package/dist/numerical/float64-engine.js.map +1 -1
  660. package/dist/numerical/formula-dimension.d.ts +14 -0
  661. package/dist/numerical/formula-dimension.d.ts.map +1 -1
  662. package/dist/numerical/formula-dimension.js +56 -9
  663. package/dist/numerical/formula-dimension.js.map +1 -1
  664. package/dist/numerical/formula-mathts.d.ts.map +1 -1
  665. package/dist/numerical/formula-mathts.js +75 -6
  666. package/dist/numerical/formula-mathts.js.map +1 -1
  667. package/dist/numerical/formula.d.ts +33 -0
  668. package/dist/numerical/formula.d.ts.map +1 -1
  669. package/dist/numerical/formula.js +75 -6
  670. package/dist/numerical/formula.js.map +1 -1
  671. package/dist/numerical/spacetime-metrics.d.ts +243 -0
  672. package/dist/numerical/spacetime-metrics.d.ts.map +1 -0
  673. package/dist/numerical/spacetime-metrics.js +1056 -0
  674. package/dist/numerical/spacetime-metrics.js.map +1 -0
  675. package/dist/relations/category.d.ts +38 -0
  676. package/dist/relations/category.d.ts.map +1 -0
  677. package/dist/relations/category.js +23 -0
  678. package/dist/relations/category.js.map +1 -0
  679. package/dist/relations/composition-table.d.ts +61 -0
  680. package/dist/relations/composition-table.d.ts.map +1 -0
  681. package/dist/relations/composition-table.js +140 -0
  682. package/dist/relations/composition-table.js.map +1 -0
  683. package/dist/relations/conventions.d.ts +63 -0
  684. package/dist/relations/conventions.d.ts.map +1 -0
  685. package/dist/relations/conventions.js +93 -0
  686. package/dist/relations/conventions.js.map +1 -0
  687. package/dist/relations/regime.d.ts +159 -0
  688. package/dist/relations/regime.d.ts.map +1 -0
  689. package/dist/relations/regime.js +304 -0
  690. package/dist/relations/regime.js.map +1 -0
  691. package/dist/relations/types.d.ts +257 -0
  692. package/dist/relations/types.d.ts.map +1 -0
  693. package/dist/relations/types.js +35 -0
  694. package/dist/relations/types.js.map +1 -0
  695. package/package.json +166 -163
  696. package/dist/bridges/descriptor.d.ts.map +0 -1
  697. package/dist/bridges/descriptor.js.map +0 -1
  698. package/dist/composition/poster-source.d.ts.map +0 -1
  699. package/dist/composition/poster-source.js.map +0 -1
  700. package/dist/composition/symbolic-constants.d.ts.map +0 -1
  701. package/dist/composition/symbolic-constants.js +0 -65
  702. package/dist/composition/symbolic-constants.js.map +0 -1
@@ -53,8 +53,8 @@ interface ConstantDef {
53
53
  /**
54
54
  * The universal constants a canonical `governing` list may name, with SI value
55
55
  * AND dimension. Reuses the symbolic-composition `CONSTANTS` registry (single
56
- * source for ℏ/c/G/k_B/ε₀/σ_sb/b) and adds the `boltzmann` alias, the
57
- * elementary charge `e`, and the electron mass `m_e` — all universal constants,
56
+ * source for ℏ/c/G/k_B/ε₀/σ_sb/b and the elementary charge `e`) and adds the
57
+ * `boltzmann` alias, repeats `e`, and adds the electron mass `m_e` — all universal constants,
58
58
  * not observables. A governing entry is BAKED into the evaluator iff its name
59
59
  * AND dimension match an entry here; everything else is a physical variable (a
60
60
  * graph node). The dimension guard is load-bearing: it stops a future
@@ -43,15 +43,15 @@
43
43
  * @module composition/canonical-graph
44
44
  */
45
45
  import { CANONICAL_EQUATIONS } from '../canonical/registry.js';
46
- import { CONSTANTS } from './symbolic-constants.js';
46
+ import { CONSTANTS } from '../dimensional/symbolic-constants.js';
47
47
  import { E_SI, M_E_SI } from '../core/constants.js';
48
48
  import { CHARGE, MASS } from '../dimensional/types.js';
49
49
  import { equals } from '../dimensional/algebra.js';
50
50
  /**
51
51
  * The universal constants a canonical `governing` list may name, with SI value
52
52
  * AND dimension. Reuses the symbolic-composition `CONSTANTS` registry (single
53
- * source for ℏ/c/G/k_B/ε₀/σ_sb/b) and adds the `boltzmann` alias, the
54
- * elementary charge `e`, and the electron mass `m_e` — all universal constants,
53
+ * source for ℏ/c/G/k_B/ε₀/σ_sb/b and the elementary charge `e`) and adds the
54
+ * `boltzmann` alias, repeats `e`, and adds the electron mass `m_e` — all universal constants,
55
55
  * not observables. A governing entry is BAKED into the evaluator iff its name
56
56
  * AND dimension match an entry here; everything else is a physical variable (a
57
57
  * graph node). The dimension guard is load-bearing: it stops a future
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-graph.js","sourceRoot":"","sources":["../../src/composition/canonical-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canonical-graph.js","sourceRoot":"","sources":["../../src/composition/canonical-graph.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,13 @@
10
10
  * carries a constant of its own.
11
11
  *
12
12
  * Every quote is verbatim wikitext from the pinned Wikipedia revision in its
13
- * locator, fetched and matched on 2026-09-25.
13
+ * locator, fetched and matched on 2026-09-25 (the first nine) or 2026-09-27 (the
14
+ * rest, and the group prefactor below).
15
+ *
16
+ * A prefactor that depends on a dimensionless group the entry's dimensional
17
+ * record does not carry (CE-sound-speed's √γ) is not a constant, so it is not in
18
+ * CANONICAL_PREFACTORS and canonicalPrefactor does not return it: it is in
19
+ * CANONICAL_GROUP_PREFACTORS, which only a caller that can bind the group uses.
14
20
  *
15
21
  * @module composition/canonical-prefactors
16
22
  */
@@ -29,4 +35,21 @@ export interface CanonicalPrefactor {
29
35
  export declare const CANONICAL_PREFACTORS: readonly CanonicalPrefactor[];
30
36
  /** The sourced prefactor of a canonical entry, or `undefined`. @internal */
31
37
  export declare function canonicalPrefactor(id: string): number | undefined;
38
+ /**
39
+ * A sourced prefactor that is a power of a dimensionless group: the factor in
40
+ * front of the entry's AST or monomial is `coefficient · group^exponent`. @internal
41
+ */
42
+ export interface CanonicalGroupPrefactor {
43
+ readonly id: string;
44
+ /** The group as the entry's formula names it (`'gamma'` for γ). */
45
+ readonly group: string;
46
+ readonly coefficient: number;
47
+ readonly exponent: number;
48
+ readonly quote: string;
49
+ readonly locator: string;
50
+ }
51
+ /** The sourced group prefactors, by canonical id. @internal */
52
+ export declare const CANONICAL_GROUP_PREFACTORS: readonly CanonicalGroupPrefactor[];
53
+ /** The prefactor of a group-dependent entry at a value of its group, or `undefined`. @internal */
54
+ export declare function canonicalGroupPrefactor(id: string, groupValue: number): number | undefined;
32
55
  //# sourceMappingURL=canonical-prefactors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-prefactors.d.ts","sourceRoot":"","sources":["../../src/composition/canonical-prefactors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,yDAAyD;AACzD,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAyD7D,CAAC;AAEF,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEjE"}
1
+ {"version":3,"file":"canonical-prefactors.d.ts","sourceRoot":"","sources":["../../src/composition/canonical-prefactors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,yDAAyD;AACzD,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAkI7D,CAAC;AAEF,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEjE;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,+DAA+D;AAC/D,eAAO,MAAM,0BAA0B,EAAE,SAAS,uBAAuB,EAUxE,CAAC;AAEF,kGAAkG;AAClG,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1F"}
@@ -10,7 +10,13 @@
10
10
  * carries a constant of its own.
11
11
  *
12
12
  * Every quote is verbatim wikitext from the pinned Wikipedia revision in its
13
- * locator, fetched and matched on 2026-09-25.
13
+ * locator, fetched and matched on 2026-09-25 (the first nine) or 2026-09-27 (the
14
+ * rest, and the group prefactor below).
15
+ *
16
+ * A prefactor that depends on a dimensionless group the entry's dimensional
17
+ * record does not carry (CE-sound-speed's √γ) is not a constant, so it is not in
18
+ * CANONICAL_PREFACTORS and canonicalPrefactor does not return it: it is in
19
+ * CANONICAL_GROUP_PREFACTORS, which only a caller that can bind the group uses.
14
20
  *
15
21
  * @module composition/canonical-prefactors
16
22
  */
@@ -72,9 +78,99 @@ export const CANONICAL_PREFACTORS = [
72
78
  quote: String.raw `D = \frac{k_\text{B} T}{6\pi\,\eta\,r}.`,
73
79
  locator: "Wikipedia, 'Einstein relation (kinetic theory)', revision 1353047788, wikitext line 79",
74
80
  },
81
+ {
82
+ id: 'CE-simple-harmonic-frequency',
83
+ prefactor: 1,
84
+ quote: String.raw `\omega = \sqrt{\frac k m}.`,
85
+ locator: "Wikipedia, 'Harmonic oscillator', revision 1373924880, wikitext line 44",
86
+ },
87
+ {
88
+ id: 'CE-spring-potential-energy',
89
+ prefactor: 0.5,
90
+ quote: String.raw `U_\mathrm{el}(x) = \tfrac 1 2 kx^2`,
91
+ locator: "Wikipedia, 'Hooke's law', revision 1375736650, wikitext line 146",
92
+ },
93
+ {
94
+ id: 'CE-oscillator-energy',
95
+ prefactor: 0.5,
96
+ quote: String.raw `E = K + U = \tfrac12 k A^2.`,
97
+ locator: "Wikipedia, 'Simple harmonic motion', revision 1347475303, wikitext line 80",
98
+ },
99
+ {
100
+ // The source writes the tension T; the canonical entry calls it F.
101
+ id: 'CE-string-wave-speed',
102
+ prefactor: 1,
103
+ quote: String.raw `v=\sqrt{T\over\mu},`,
104
+ locator: "Wikipedia, 'String vibration', revision 1306385524, wikitext line 40",
105
+ },
106
+ {
107
+ // The three Planck units are all-constant: compared once, at the SI values (persona finding W5).
108
+ id: 'CE-planck-length',
109
+ prefactor: 1,
110
+ quote: String.raw `<math>l_\text{P} = \sqrt{\frac{\hbar G}{c^3}}</math>`,
111
+ locator: "Wikipedia, 'Planck units', revision 1375441167, wikitext line 77",
112
+ },
113
+ {
114
+ id: 'CE-planck-mass',
115
+ prefactor: 1,
116
+ quote: String.raw `<math>m_\text{P} = \sqrt{\frac{\hbar c}{G}}</math>`,
117
+ locator: "Wikipedia, 'Planck units', revision 1375441167, wikitext line 82",
118
+ },
119
+ {
120
+ id: 'CE-planck-time',
121
+ prefactor: 1,
122
+ quote: String.raw `<math>t_\text{P} = \sqrt{\frac{\hbar G}{c^5}}</math>`,
123
+ locator: "Wikipedia, 'Planck units', revision 1375441167, wikitext line 87",
124
+ },
125
+ {
126
+ // The AST is μ₀ I / r; the quoted wire field divides by 2π.
127
+ id: 'CE-magnetic-field-wire',
128
+ prefactor: 1 / (2 * Math.PI),
129
+ quote: String.raw `B = \frac{\mu_0I}{2\pi x}`,
130
+ locator: "Wikipedia, 'Magnetic field', revision 1375215267, wikitext line 876",
131
+ },
132
+ {
133
+ // The AST divides by ε₀ c³ only; the quoted power divides by 6π as well.
134
+ id: 'CE-larmor-power',
135
+ prefactor: 1 / (6 * Math.PI),
136
+ quote: String.raw `\frac{q^2 a^2}{6 \pi \varepsilon_0 c^3}`,
137
+ locator: "Wikipedia, 'Larmor formula', revision 1352376843, wikitext line 9",
138
+ },
139
+ {
140
+ // The quote's electric term is ε E²/2. In vacuum ε = ε₀, and the AST is ε₀ E².
141
+ id: 'CE-field-energy-density',
142
+ prefactor: 0.5,
143
+ quote: String.raw `u = \frac{\varepsilon}{2} \mathbf{E}^2 + \frac{1}{2 \mu} \mathbf{B}^2`,
144
+ locator: "Wikipedia, 'Energy density', revision 1366889538, wikitext line 81",
145
+ },
146
+ {
147
+ // The L0 monomial is ħ/(m c). The quote is the reduced wavelength, so the factor is 1.
148
+ // λ = h/(m c) is the separate fully-quantitative entry CE-compton-wavelength-full.
149
+ id: 'CE-compton-wavelength',
150
+ prefactor: 1,
151
+ quote: String.raw `\lambda\!\!\!\bar{} = \frac{\lambda}{2 \pi} = \frac{\hbar}{m c},`,
152
+ locator: "Wikipedia, 'Compton wavelength', revision 1376812882, wikitext line 13",
153
+ },
75
154
  ];
76
155
  /** The sourced prefactor of a canonical entry, or `undefined`. @internal */
77
156
  export function canonicalPrefactor(id) {
78
157
  return CANONICAL_PREFACTORS.find((p) => p.id === id)?.prefactor;
79
158
  }
159
+ /** The sourced group prefactors, by canonical id. @internal */
160
+ export const CANONICAL_GROUP_PREFACTORS = [
161
+ {
162
+ // c = √(γ p/ρ): the monomial p^½ ρ^-½ times γ^½, γ the adiabatic index.
163
+ id: 'CE-sound-speed',
164
+ group: 'gamma',
165
+ coefficient: 1,
166
+ exponent: 0.5,
167
+ quote: String.raw `c = \sqrt{\gamma \cdot {p \over \rho}},`,
168
+ locator: "Wikipedia, 'Speed of sound', revision 1373106219, wikitext line 142",
169
+ },
170
+ ];
171
+ /** The prefactor of a group-dependent entry at a value of its group, or `undefined`. @internal */
172
+ export function canonicalGroupPrefactor(id, groupValue) {
173
+ const p = CANONICAL_GROUP_PREFACTORS.find((q) => q.id === id);
174
+ return p === undefined ? undefined : p.coefficient * groupValue ** p.exponent;
175
+ }
80
176
  //# sourceMappingURL=canonical-prefactors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonical-prefactors.js","sourceRoot":"","sources":["../../src/composition/canonical-prefactors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAcH,yDAAyD;AACzD,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IACjE;QACE,EAAE,EAAE,oBAAoB;QACxB,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE;QACtB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,+BAA+B;QAChD,OAAO,EAAE,2EAA2E;KACrF;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,SAAS,EAAE,GAAG;QACd,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,+BAA+B;QAChD,OAAO,EAAE,oEAAoE;KAC9E;IACD;QACE,EAAE,EAAE,8BAA8B;QAClC,SAAS,EAAE,GAAG;QACd,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,+CAA+C;QAChE,OAAO,EAAE,sEAAsE;KAChF;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,SAAS,EAAE,GAAG;QACd,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,qBAAqB;QACtC,OAAO,EAAE,gEAAgE;KAC1E;IACD;QACE,EAAE,EAAE,yBAAyB;QAC7B,SAAS,EAAE,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,yEAAyE;QAC1F,OAAO,EAAE,0EAA0E;KACpF;IACD;QACE,iGAAiG;QACjG,EAAE,EAAE,iBAAiB;QACrB,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE;QACtB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,qEAAqE;QACtF,OAAO,EAAE,wFAAwF;KAClG;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,SAAS,EAAE,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,iCAAiC;QAClD,OAAO,EAAE,gEAAgE;KAC1E;IACD;QACE,4EAA4E;QAC5E,EAAE,EAAE,gBAAgB;QACpB,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE;QACtB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,6BAA6B;QAC9C,OAAO,EAAE,wFAAwF;KAClG;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA,yCAAyC;QAC1D,OAAO,EAAE,wFAAwF;KAClG;CACF,CAAC;AAEF,4EAA4E;AAC5E,MAAM,UAAU,kBAAkB,CAAC,EAAU;IAC3C,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"canonical-prefactors.js","sourceRoot":"","sources":["../../src/composition/canonical-prefactors.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * The full composition graph as a single constant — the 41 `BridgeEdge`s
3
- * (9 calibration + 6 catalog-tranche + 26 catalog-full).
2
+ * The full composition graph as a single constant — the 46 `BridgeEdge`s
3
+ * (9 calibration + 6 catalog-tranche + 26 catalog-full + 5 proved seeds).
4
4
  *
5
5
  * Single source of truth for "the catalog as a graph": the CLI, the
6
6
  * analysis functions, and the test suites consume this rather than each
@@ -11,8 +11,8 @@
11
11
  */
12
12
  import type { BridgeEdge } from './edge.js';
13
13
  /**
14
- * Every `BridgeEdge` in the composition graph (41 edges). The order is
15
- * calibration → tranche → catalog-full.
14
+ * Every `BridgeEdge` in the composition graph (46 edges). The order is
15
+ * calibration → tranche → catalog-full → proved seeds.
16
16
  *
17
17
  * @public
18
18
  */
@@ -1 +1 @@
1
- {"version":3,"file":"catalog-graph.d.ts","sourceRoot":"","sources":["../../src/composition/catalog-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAsB5C;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,UAAU,EAiB9C,CAAC"}
1
+ {"version":3,"file":"catalog-graph.d.ts","sourceRoot":"","sources":["../../src/composition/catalog-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAuB5C;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,UAAU,EAkB9C,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * The full composition graph as a single constant — the 41 `BridgeEdge`s
3
- * (9 calibration + 6 catalog-tranche + 26 catalog-full).
2
+ * The full composition graph as a single constant — the 46 `BridgeEdge`s
3
+ * (9 calibration + 6 catalog-tranche + 26 catalog-full + 5 proved seeds).
4
4
  *
5
5
  * Single source of truth for "the catalog as a graph": the CLI, the
6
6
  * analysis functions, and the test suites consume this rather than each
@@ -12,9 +12,10 @@
12
12
  import { be11ZurekEdge, be12Edge, be16Edge, be37Edge, be42Edge, be42ViaRsEdge, be51Edge, be52Edge, lawSchwarzschildRadius, } from './edges/calibration.js';
13
13
  import { be14Edge, be19Edge, be21Edge, be48Edge, be53Edge, be54Edge, } from './edges/catalog-tranche.js';
14
14
  import { CATALOG_FULL_EDGES } from './edges/catalog-full.js';
15
+ import { PROVED_SEED_EDGES } from './edges/proved-seeds.js';
15
16
  /**
16
- * Every `BridgeEdge` in the composition graph (41 edges). The order is
17
- * calibration → tranche → catalog-full.
17
+ * Every `BridgeEdge` in the composition graph (46 edges). The order is
18
+ * calibration → tranche → catalog-full → proved seeds.
18
19
  *
19
20
  * @public
20
21
  */
@@ -35,5 +36,6 @@ export const CATALOG_GRAPH = [
35
36
  be53Edge,
36
37
  be54Edge,
37
38
  ...CATALOG_FULL_EDGES,
39
+ ...PROVED_SEED_EDGES,
38
40
  ];
39
41
  //# sourceMappingURL=catalog-graph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog-graph.js","sourceRoot":"","sources":["../../src/composition/catalog-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAA0B;IAClD,aAAa;IACb,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,QAAQ;IACR,sBAAsB;IACtB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,GAAG,kBAAkB;CACtB,CAAC"}
1
+ {"version":3,"file":"catalog-graph.js","sourceRoot":"","sources":["../../src/composition/catalog-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAA0B;IAClD,aAAa;IACb,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,QAAQ;IACR,sBAAsB;IACtB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,GAAG,kBAAkB;IACrB,GAAG,iBAAiB;CACrB,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * A chain candidate and the order the pipeline reads candidates in.
3
+ *
4
+ * Confirmation of a catalog id, then a restatement, then a unique
5
+ * monomial, then a named PhysJS.Dimensional shape that leaves a
6
+ * function or an exponent unfixed. A shorter chain comes before a
7
+ * longer one. Equal lengths compare the ordered edge ids from the
8
+ * left. Nothing here is written into the catalog.
9
+ *
10
+ * @internal
11
+ * @module composition/chain-candidate
12
+ */
13
+ /** The four classes the order distinguishes. */
14
+ export type ChainCandidateKind = 'confirmation' | 'restatement' | 'unique-monomial' | 'unfixed-shape';
15
+ /**
16
+ * One survivor of a chain of proved edges.
17
+ *
18
+ * `kind` and `edgeIds` are the order. `catalogId`, `canonicalId`,
19
+ * `restatesBridge`, `theorem`, and `id` are carried data and are not
20
+ * compared.
21
+ */
22
+ export interface ChainCandidate {
23
+ readonly kind: ChainCandidateKind;
24
+ readonly edgeIds: readonly string[];
25
+ readonly catalogId?: number;
26
+ readonly canonicalId?: string;
27
+ readonly restatesBridge?: string;
28
+ readonly theorem?: string;
29
+ readonly id?: string;
30
+ }
31
+ /**
32
+ * Shorter chain first, then lexicographic edge ids.
33
+ *
34
+ * The regime-mismatch list uses this same comparison. It is not a class
35
+ * inside {@link orderChainCandidates}.
36
+ */
37
+ export declare function compareChainEdgeIds(left: readonly string[], right: readonly string[]): -1 | 0 | 1;
38
+ /**
39
+ * Total order of chain candidates. Returns a new array of the same
40
+ * objects. The input array is left as it was.
41
+ */
42
+ export declare function orderChainCandidates(candidates: readonly ChainCandidate[]): ChainCandidate[];
43
+ //# sourceMappingURL=chain-candidate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-candidate.d.ts","sourceRoot":"","sources":["../../src/composition/chain-candidate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,gDAAgD;AAChD,MAAM,MAAM,kBAAkB,GAC1B,cAAc,GACd,aAAa,GACb,iBAAiB,GACjB,eAAe,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;CACtB;AAeD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CASjG;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,GAAG,cAAc,EAAE,CAM5F"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * A chain candidate and the order the pipeline reads candidates in.
3
+ *
4
+ * Confirmation of a catalog id, then a restatement, then a unique
5
+ * monomial, then a named PhysJS.Dimensional shape that leaves a
6
+ * function or an exponent unfixed. A shorter chain comes before a
7
+ * longer one. Equal lengths compare the ordered edge ids from the
8
+ * left. Nothing here is written into the catalog.
9
+ *
10
+ * @internal
11
+ * @module composition/chain-candidate
12
+ */
13
+ function classIndex(kind) {
14
+ switch (kind) {
15
+ case 'confirmation':
16
+ return 0;
17
+ case 'restatement':
18
+ return 1;
19
+ case 'unique-monomial':
20
+ return 2;
21
+ case 'unfixed-shape':
22
+ return 3;
23
+ }
24
+ }
25
+ /**
26
+ * Shorter chain first, then lexicographic edge ids.
27
+ *
28
+ * The regime-mismatch list uses this same comparison. It is not a class
29
+ * inside {@link orderChainCandidates}.
30
+ */
31
+ export function compareChainEdgeIds(left, right) {
32
+ if (left.length !== right.length)
33
+ return left.length < right.length ? -1 : 1;
34
+ for (let i = 0; i < left.length; i++) {
35
+ const a = left[i];
36
+ const b = right[i];
37
+ if (a < b)
38
+ return -1;
39
+ if (a > b)
40
+ return 1;
41
+ }
42
+ return 0;
43
+ }
44
+ /**
45
+ * Total order of chain candidates. Returns a new array of the same
46
+ * objects. The input array is left as it was.
47
+ */
48
+ export function orderChainCandidates(candidates) {
49
+ return [...candidates].sort((a, b) => {
50
+ const byClass = classIndex(a.kind) - classIndex(b.kind);
51
+ if (byClass !== 0)
52
+ return byClass < 0 ? -1 : 1;
53
+ return compareChainEdgeIds(a.edgeIds, b.edgeIds);
54
+ });
55
+ }
56
+ //# sourceMappingURL=chain-candidate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-candidate.js","sourceRoot":"","sources":["../../src/composition/chain-candidate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA0BH,SAAS,UAAU,CAAC,IAAwB;IAC1C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,cAAc;YACjB,OAAO,CAAC,CAAC;QACX,KAAK,aAAa;YAChB,OAAO,CAAC,CAAC;QACX,KAAK,iBAAiB;YACpB,OAAO,CAAC,CAAC;QACX,KAAK,eAAe;YAClB,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAuB,EAAE,KAAwB;IACnF,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;QAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAW,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAqC;IACxE,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,OAAO,KAAK,CAAC;YAAE,OAAO,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO,mBAAmB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Pipeline match for a chain of proved edges.
3
+ *
4
+ * Calls {@link classifyStructure}. A confirmation reports the catalog id.
5
+ * A restatement reports the pre-declared canonical equation. Anything else
6
+ * is a provisional `chain-` id. This function writes no catalog row, no
7
+ * formal-reference overlay entry, and no evidence tag.
8
+ *
9
+ * @module composition/chain-match
10
+ */
11
+ import type { ExprNode } from '../dimensional/validator.js';
12
+ import { type ChainClassification } from '../canonical/structural.js';
13
+ /**
14
+ * Classify one composed chain. `edgeIds` stay in chain order.
15
+ *
16
+ * @internal
17
+ */
18
+ export declare function matchChain(expr: ExprNode, edgeIds: readonly string[]): ChainClassification;
19
+ //# sourceMappingURL=chain-match.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-match.d.ts","sourceRoot":"","sources":["../../src/composition/chain-match.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,mBAAmB,CAE1F"}
@@ -0,0 +1,10 @@
1
+ import { classifyStructure, } from '../canonical/structural.js';
2
+ /**
3
+ * Classify one composed chain. `edgeIds` stay in chain order.
4
+ *
5
+ * @internal
6
+ */
7
+ export function matchChain(expr, edgeIds) {
8
+ return classifyStructure(expr, edgeIds);
9
+ }
10
+ //# sourceMappingURL=chain-match.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-match.js","sourceRoot":"","sources":["../../src/composition/chain-match.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,iBAAiB,GAElB,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAc,EAAE,OAA0B;IACnE,OAAO,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Regime gate for a chain that meets on a quantity name.
3
+ *
4
+ * The domain is the §VI.6.1 component of the catalog category of `beId`,
5
+ * derived by `tensorIndexComponent`. Scale and force are the gated axes
6
+ * on the two junction ports. A recorded `Regime` on both edges is
7
+ * compared with `regimeOverlap`. Silence on a facet is not a mismatch.
8
+ * The rule is `docs/planning/Regime-Aware-Join-Gate-Design.md`.
9
+ *
10
+ * This module does not write the catalog and does not call `deriveEvidence`.
11
+ *
12
+ * @module composition/chain-regime
13
+ */
14
+ import type { BridgeEdge } from './edge.js';
15
+ /** The class a regime-incompatible join is recorded as. @internal */
16
+ export declare const REGIME_MISMATCH_KIND: 'rejected: regime mismatch';
17
+ /** A join the regime gate refused. Not a stub and not a catalog write. @internal */
18
+ export interface ChainRegimeMismatch {
19
+ readonly kind: typeof REGIME_MISMATCH_KIND;
20
+ readonly edgeIds: readonly [string, string];
21
+ readonly quantity: string;
22
+ readonly reasons: readonly string[];
23
+ }
24
+ /**
25
+ * The regime mismatch of a pair, or `undefined` when every facet abstains
26
+ * or agrees.
27
+ *
28
+ * Reasons, in order: a domain clash, then each clashing `GATE_AXES` axis,
29
+ * then `regime: disjoint`. The producer value is written first.
30
+ *
31
+ * @internal
32
+ */
33
+ export declare function joinRegimeMismatch(first: BridgeEdge, second: BridgeEdge): ChainRegimeMismatch | undefined;
34
+ //# sourceMappingURL=chain-regime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-regime.d.ts","sourceRoot":"","sources":["../../src/composition/chain-regime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,EAAG,2BAAoC,CAAC;AAEzE,oFAAoF;AACpF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,OAAO,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AA6BD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,UAAU,GACjB,mBAAmB,GAAG,SAAS,CAmCjC"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Regime gate for a chain that meets on a quantity name.
3
+ *
4
+ * The domain is the §VI.6.1 component of the catalog category of `beId`,
5
+ * derived by `tensorIndexComponent`. Scale and force are the gated axes
6
+ * on the two junction ports. A recorded `Regime` on both edges is
7
+ * compared with `regimeOverlap`. Silence on a facet is not a mismatch.
8
+ * The rule is `docs/planning/Regime-Aware-Join-Gate-Design.md`.
9
+ *
10
+ * This module does not write the catalog and does not call `deriveEvidence`.
11
+ *
12
+ * @module composition/chain-regime
13
+ */
14
+ import { BRIDGE_EQUATIONS } from '../bridges/index.js';
15
+ import { tensorIndexComponent, } from '../bridges/tensor-index.js';
16
+ import { regimeOverlap } from '../relations/regime.js';
17
+ import { GATE_AXES } from './axes.js';
18
+ import { QUANTITY_IDENTIFICATIONS } from './compose.js';
19
+ /** The class a regime-incompatible join is recorded as. @internal */
20
+ export const REGIME_MISMATCH_KIND = 'rejected: regime mismatch';
21
+ function edgeDomain(edge) {
22
+ if (edge.beId === null)
23
+ return undefined;
24
+ const entry = BRIDGE_EQUATIONS.find((row) => row.id === edge.beId);
25
+ if (entry === undefined)
26
+ return undefined;
27
+ const component = tensorIndexComponent(entry.category);
28
+ if (component === 'unassigned')
29
+ return undefined;
30
+ return component;
31
+ }
32
+ function junctionPorts(first, second) {
33
+ const named = second.sources.find((src) => src.name === first.target.name);
34
+ if (named !== undefined) {
35
+ return { quantity: first.target.name, producer: first.target, consumer: named };
36
+ }
37
+ for (const ident of QUANTITY_IDENTIFICATIONS) {
38
+ if (ident.from !== first.target.name)
39
+ continue;
40
+ const src = second.sources.find((candidate) => candidate.name === ident.to);
41
+ if (src !== undefined) {
42
+ return { quantity: first.target.name, producer: first.target, consumer: src };
43
+ }
44
+ }
45
+ throw new Error(`chain regime gate: ${first.id} -> ${second.id} has no junction`);
46
+ }
47
+ /**
48
+ * The regime mismatch of a pair, or `undefined` when every facet abstains
49
+ * or agrees.
50
+ *
51
+ * Reasons, in order: a domain clash, then each clashing `GATE_AXES` axis,
52
+ * then `regime: disjoint`. The producer value is written first.
53
+ *
54
+ * @internal
55
+ */
56
+ export function joinRegimeMismatch(first, second) {
57
+ const { quantity, producer, consumer } = junctionPorts(first, second);
58
+ const reasons = [];
59
+ const producerDomain = edgeDomain(first);
60
+ const consumerDomain = edgeDomain(second);
61
+ if (producerDomain !== undefined &&
62
+ consumerDomain !== undefined &&
63
+ producerDomain !== consumerDomain) {
64
+ reasons.push(`domain: ${producerDomain} ≠ ${consumerDomain}`);
65
+ }
66
+ const producerAttrs = producer.attributes;
67
+ const consumerAttrs = consumer.attributes;
68
+ for (const axis of GATE_AXES) {
69
+ const left = producerAttrs[axis];
70
+ const right = consumerAttrs[axis];
71
+ if (left !== undefined && right !== undefined && left !== right) {
72
+ reasons.push(`${axis}: ${left} ≠ ${right}`);
73
+ }
74
+ }
75
+ if (first.regime !== undefined &&
76
+ second.regime !== undefined &&
77
+ regimeOverlap(first.regime, second.regime) === 'disjoint') {
78
+ reasons.push('regime: disjoint');
79
+ }
80
+ if (reasons.length === 0)
81
+ return undefined;
82
+ return {
83
+ kind: REGIME_MISMATCH_KIND,
84
+ edgeIds: [first.id, second.id],
85
+ quantity,
86
+ reasons,
87
+ };
88
+ }
89
+ //# sourceMappingURL=chain-regime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-regime.js","sourceRoot":"","sources":["../../src/composition/chain-regime.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ import { validate } from '../dimensional/validator.js';
20
20
  import { QUANTITY_IDENTIFICATIONS } from './compose.js';
21
21
  import { substitute } from './expr-subst.js';
22
22
  import { evalExpr, SymbolicEvalError } from './expr-eval.js';
23
- import { CONSTANTS } from './symbolic-constants.js';
23
+ import { CONSTANTS } from '../dimensional/symbolic-constants.js';
24
24
  /** Symbolic composition is undefined (no junction / missing `symbolic` /
25
25
  * zero-occurrence substitution / dimensional mismatch). @public */
26
26
  export class SymbolicCompositionError extends Error {
@@ -1 +1 @@
1
- {"version":3,"file":"compose-symbolic.js","sourceRoot":"","sources":["../../src/composition/compose-symbolic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose-symbolic.js","sourceRoot":"","sources":["../../src/composition/compose-symbolic.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@
29
29
  *
30
30
  * @module composition/compose
31
31
  */
32
+ import type { Dimension } from '../dimensional/types.js';
32
33
  import type { BridgeEdge, EdgeConfidence } from './edge.js';
33
34
  import type { RegimeAttributes } from './quantity.js';
34
35
  /**
@@ -115,6 +116,16 @@ export interface ComposeOptions {
115
116
  */
116
117
  readonly aliases?: readonly AliasDisposition[];
117
118
  }
119
+ /**
120
+ * The two sides of a composition pipe have the same dimension.
121
+ *
122
+ * This is the check `composeEdges` already applied: `equals` on the seven
123
+ * SI bases, including that function's exponent tolerance. A mismatch is
124
+ * still {@link CompositionDimensionError}.
125
+ *
126
+ * @internal
127
+ */
128
+ export declare function junctionDimensionsMatch(left: Dimension, right: Dimension): boolean;
118
129
  /**
119
130
  * Compose two edges into a new edge (sequential composition through a
120
131
  * shared quantity). See module docs for the definedness conditions.