universal-physics-tensor 0.45.2 → 0.47.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 (548) hide show
  1. package/README.md +85 -66
  2. package/bin/upt.mjs +22 -22
  3. package/dist/atlas/applicability.d.ts +108 -0
  4. package/dist/atlas/applicability.d.ts.map +1 -0
  5. package/dist/atlas/applicability.js +301 -0
  6. package/dist/atlas/applicability.js.map +1 -0
  7. package/dist/atlas/association.d.ts +92 -0
  8. package/dist/atlas/association.d.ts.map +1 -0
  9. package/dist/atlas/association.js +112 -0
  10. package/dist/atlas/association.js.map +1 -0
  11. package/dist/atlas/benchmark/backend-shapes.d.ts +47 -0
  12. package/dist/atlas/benchmark/backend-shapes.d.ts.map +1 -0
  13. package/dist/atlas/benchmark/backend-shapes.js +58 -0
  14. package/dist/atlas/benchmark/backend-shapes.js.map +1 -0
  15. package/dist/atlas/benchmark/baselines.d.ts +64 -0
  16. package/dist/atlas/benchmark/baselines.d.ts.map +1 -0
  17. package/dist/atlas/benchmark/baselines.js +112 -0
  18. package/dist/atlas/benchmark/baselines.js.map +1 -0
  19. package/dist/atlas/benchmark/leakage.d.ts +56 -0
  20. package/dist/atlas/benchmark/leakage.d.ts.map +1 -0
  21. package/dist/atlas/benchmark/leakage.js +100 -0
  22. package/dist/atlas/benchmark/leakage.js.map +1 -0
  23. package/dist/atlas/benchmark/loader.d.ts +56 -0
  24. package/dist/atlas/benchmark/loader.d.ts.map +1 -0
  25. package/dist/atlas/benchmark/loader.js +104 -0
  26. package/dist/atlas/benchmark/loader.js.map +1 -0
  27. package/dist/atlas/benchmark/run-atlas.d.ts +72 -0
  28. package/dist/atlas/benchmark/run-atlas.d.ts.map +1 -0
  29. package/dist/atlas/benchmark/run-atlas.js +210 -0
  30. package/dist/atlas/benchmark/run-atlas.js.map +1 -0
  31. package/dist/atlas/benchmark/stats.d.ts +90 -0
  32. package/dist/atlas/benchmark/stats.d.ts.map +1 -0
  33. package/dist/atlas/benchmark/stats.js +159 -0
  34. package/dist/atlas/benchmark/stats.js.map +1 -0
  35. package/dist/atlas/benchmark/study.d.ts +120 -0
  36. package/dist/atlas/benchmark/study.d.ts.map +1 -0
  37. package/dist/atlas/benchmark/study.js +192 -0
  38. package/dist/atlas/benchmark/study.js.map +1 -0
  39. package/dist/atlas/benchmark/types.d.ts +79 -0
  40. package/dist/atlas/benchmark/types.d.ts.map +1 -0
  41. package/dist/atlas/benchmark/types.js +46 -0
  42. package/dist/atlas/benchmark/types.js.map +1 -0
  43. package/dist/atlas/composition-table.d.ts +55 -0
  44. package/dist/atlas/composition-table.d.ts.map +1 -0
  45. package/dist/atlas/composition-table.js +133 -0
  46. package/dist/atlas/composition-table.js.map +1 -0
  47. package/dist/atlas/conventions.d.ts +63 -0
  48. package/dist/atlas/conventions.d.ts.map +1 -0
  49. package/dist/atlas/conventions.js +93 -0
  50. package/dist/atlas/conventions.js.map +1 -0
  51. package/dist/atlas/coverage.d.ts +93 -0
  52. package/dist/atlas/coverage.d.ts.map +1 -0
  53. package/dist/atlas/coverage.js +69 -0
  54. package/dist/atlas/coverage.js.map +1 -0
  55. package/dist/atlas/derivation.d.ts +137 -0
  56. package/dist/atlas/derivation.d.ts.map +1 -0
  57. package/dist/atlas/derivation.js +190 -0
  58. package/dist/atlas/derivation.js.map +1 -0
  59. package/dist/atlas/derive-evidence.d.ts +218 -0
  60. package/dist/atlas/derive-evidence.d.ts.map +1 -0
  61. package/dist/atlas/derive-evidence.js +225 -0
  62. package/dist/atlas/derive-evidence.js.map +1 -0
  63. package/dist/atlas/diffusion/bridges-closure.d.ts +63 -0
  64. package/dist/atlas/diffusion/bridges-closure.d.ts.map +1 -0
  65. package/dist/atlas/diffusion/bridges-closure.js +350 -0
  66. package/dist/atlas/diffusion/bridges-closure.js.map +1 -0
  67. package/dist/atlas/diffusion/bridges.d.ts +36 -0
  68. package/dist/atlas/diffusion/bridges.d.ts.map +1 -0
  69. package/dist/atlas/diffusion/bridges.js +226 -0
  70. package/dist/atlas/diffusion/bridges.js.map +1 -0
  71. package/dist/atlas/diffusion/dimensions.d.ts +21 -0
  72. package/dist/atlas/diffusion/dimensions.d.ts.map +1 -0
  73. package/dist/atlas/diffusion/dimensions.js +21 -0
  74. package/dist/atlas/diffusion/dimensions.js.map +1 -0
  75. package/dist/atlas/diffusion/index.d.ts +16 -0
  76. package/dist/atlas/diffusion/index.d.ts.map +1 -0
  77. package/dist/atlas/diffusion/index.js +23 -0
  78. package/dist/atlas/diffusion/index.js.map +1 -0
  79. package/dist/atlas/diffusion/models.d.ts +24 -0
  80. package/dist/atlas/diffusion/models.d.ts.map +1 -0
  81. package/dist/atlas/diffusion/models.js +139 -0
  82. package/dist/atlas/diffusion/models.js.map +1 -0
  83. package/dist/atlas/diffusion/numerics.d.ts +181 -0
  84. package/dist/atlas/diffusion/numerics.d.ts.map +1 -0
  85. package/dist/atlas/diffusion/numerics.js +251 -0
  86. package/dist/atlas/diffusion/numerics.js.map +1 -0
  87. package/dist/atlas/error-algebra.d.ts +52 -0
  88. package/dist/atlas/error-algebra.d.ts.map +1 -0
  89. package/dist/atlas/error-algebra.js +55 -0
  90. package/dist/atlas/error-algebra.js.map +1 -0
  91. package/dist/atlas/export.d.ts +48 -0
  92. package/dist/atlas/export.d.ts.map +1 -0
  93. package/dist/atlas/export.js +106 -0
  94. package/dist/atlas/export.js.map +1 -0
  95. package/dist/atlas/families.d.ts +14 -0
  96. package/dist/atlas/families.d.ts.map +1 -0
  97. package/dist/atlas/families.js +20 -0
  98. package/dist/atlas/families.js.map +1 -0
  99. package/dist/atlas/index.d.ts +90 -0
  100. package/dist/atlas/index.d.ts.map +1 -0
  101. package/dist/atlas/index.js +69 -0
  102. package/dist/atlas/index.js.map +1 -0
  103. package/dist/atlas/link-prediction.d.ts +71 -0
  104. package/dist/atlas/link-prediction.d.ts.map +1 -0
  105. package/dist/atlas/link-prediction.js +128 -0
  106. package/dist/atlas/link-prediction.js.map +1 -0
  107. package/dist/atlas/model.d.ts +70 -0
  108. package/dist/atlas/model.d.ts.map +1 -0
  109. package/dist/atlas/model.js +26 -0
  110. package/dist/atlas/model.js.map +1 -0
  111. package/dist/atlas/oscillators/bridges-coarse.d.ts +71 -0
  112. package/dist/atlas/oscillators/bridges-coarse.d.ts.map +1 -0
  113. package/dist/atlas/oscillators/bridges-coarse.js +146 -0
  114. package/dist/atlas/oscillators/bridges-coarse.js.map +1 -0
  115. package/dist/atlas/oscillators/bridges-exact.d.ts +70 -0
  116. package/dist/atlas/oscillators/bridges-exact.d.ts.map +1 -0
  117. package/dist/atlas/oscillators/bridges-exact.js +230 -0
  118. package/dist/atlas/oscillators/bridges-exact.js.map +1 -0
  119. package/dist/atlas/oscillators/bridges-limits.d.ts +118 -0
  120. package/dist/atlas/oscillators/bridges-limits.d.ts.map +1 -0
  121. package/dist/atlas/oscillators/bridges-limits.js +345 -0
  122. package/dist/atlas/oscillators/bridges-limits.js.map +1 -0
  123. package/dist/atlas/oscillators/dimensions.d.ts +34 -0
  124. package/dist/atlas/oscillators/dimensions.d.ts.map +1 -0
  125. package/dist/atlas/oscillators/dimensions.js +34 -0
  126. package/dist/atlas/oscillators/dimensions.js.map +1 -0
  127. package/dist/atlas/oscillators/index.d.ts +38 -0
  128. package/dist/atlas/oscillators/index.d.ts.map +1 -0
  129. package/dist/atlas/oscillators/index.js +37 -0
  130. package/dist/atlas/oscillators/index.js.map +1 -0
  131. package/dist/atlas/oscillators/models.d.ts +25 -0
  132. package/dist/atlas/oscillators/models.d.ts.map +1 -0
  133. package/dist/atlas/oscillators/models.js +160 -0
  134. package/dist/atlas/oscillators/models.js.map +1 -0
  135. package/dist/atlas/oscillators/rejections.d.ts +21 -0
  136. package/dist/atlas/oscillators/rejections.d.ts.map +1 -0
  137. package/dist/atlas/oscillators/rejections.js +54 -0
  138. package/dist/atlas/oscillators/rejections.js.map +1 -0
  139. package/dist/atlas/path-bound.d.ts +143 -0
  140. package/dist/atlas/path-bound.d.ts.map +1 -0
  141. package/dist/atlas/path-bound.js +268 -0
  142. package/dist/atlas/path-bound.js.map +1 -0
  143. package/dist/atlas/poster/associations.d.ts +66 -0
  144. package/dist/atlas/poster/associations.d.ts.map +1 -0
  145. package/dist/atlas/poster/associations.js +90 -0
  146. package/dist/atlas/poster/associations.js.map +1 -0
  147. package/dist/atlas/poster/derivations.d.ts +156 -0
  148. package/dist/atlas/poster/derivations.d.ts.map +1 -0
  149. package/dist/atlas/poster/derivations.js +430 -0
  150. package/dist/atlas/poster/derivations.js.map +1 -0
  151. package/dist/atlas/poster/statements.d.ts +198 -0
  152. package/dist/atlas/poster/statements.d.ts.map +1 -0
  153. package/dist/atlas/poster/statements.js +365 -0
  154. package/dist/atlas/poster/statements.js.map +1 -0
  155. package/dist/atlas/public.d.ts +26 -0
  156. package/dist/atlas/public.d.ts.map +1 -0
  157. package/dist/atlas/public.js +21 -0
  158. package/dist/atlas/public.js.map +1 -0
  159. package/dist/atlas/regime.d.ts +171 -0
  160. package/dist/atlas/regime.d.ts.map +1 -0
  161. package/dist/atlas/regime.js +309 -0
  162. package/dist/atlas/regime.js.map +1 -0
  163. package/dist/atlas/serialize.d.ts +50 -0
  164. package/dist/atlas/serialize.d.ts.map +1 -0
  165. package/dist/atlas/serialize.js +180 -0
  166. package/dist/atlas/serialize.js.map +1 -0
  167. package/dist/atlas/statement.d.ts +165 -0
  168. package/dist/atlas/statement.d.ts.map +1 -0
  169. package/dist/atlas/statement.js +176 -0
  170. package/dist/atlas/statement.js.map +1 -0
  171. package/dist/atlas/types.d.ts +325 -0
  172. package/dist/atlas/types.d.ts.map +1 -0
  173. package/dist/atlas/types.js +61 -0
  174. package/dist/atlas/types.js.map +1 -0
  175. package/dist/atlas/waves/bridges-closure.d.ts +39 -0
  176. package/dist/atlas/waves/bridges-closure.d.ts.map +1 -0
  177. package/dist/atlas/waves/bridges-closure.js +226 -0
  178. package/dist/atlas/waves/bridges-closure.js.map +1 -0
  179. package/dist/atlas/waves/bridges.d.ts +49 -0
  180. package/dist/atlas/waves/bridges.d.ts.map +1 -0
  181. package/dist/atlas/waves/bridges.js +266 -0
  182. package/dist/atlas/waves/bridges.js.map +1 -0
  183. package/dist/atlas/waves/index.d.ts +16 -0
  184. package/dist/atlas/waves/index.d.ts.map +1 -0
  185. package/dist/atlas/waves/index.js +23 -0
  186. package/dist/atlas/waves/index.js.map +1 -0
  187. package/dist/atlas/waves/models.d.ts +29 -0
  188. package/dist/atlas/waves/models.d.ts.map +1 -0
  189. package/dist/atlas/waves/models.js +127 -0
  190. package/dist/atlas/waves/models.js.map +1 -0
  191. package/dist/atlas/waves/numerics.d.ts +149 -0
  192. package/dist/atlas/waves/numerics.d.ts.map +1 -0
  193. package/dist/atlas/waves/numerics.js +218 -0
  194. package/dist/atlas/waves/numerics.js.map +1 -0
  195. package/dist/atlas/witness-artifact.d.ts +65 -0
  196. package/dist/atlas/witness-artifact.d.ts.map +1 -0
  197. package/dist/atlas/witness-artifact.js +78 -0
  198. package/dist/atlas/witness-artifact.js.map +1 -0
  199. package/dist/atlas/witness-numeric.d.ts +81 -0
  200. package/dist/atlas/witness-numeric.d.ts.map +1 -0
  201. package/dist/atlas/witness-numeric.js +105 -0
  202. package/dist/atlas/witness-numeric.js.map +1 -0
  203. package/dist/atlas/witness-result.d.ts +77 -0
  204. package/dist/atlas/witness-result.d.ts.map +1 -0
  205. package/dist/atlas/witness-result.js +39 -0
  206. package/dist/atlas/witness-result.js.map +1 -0
  207. package/dist/atlas/witness-specs.d.ts +110 -0
  208. package/dist/atlas/witness-specs.d.ts.map +1 -0
  209. package/dist/atlas/witness-specs.js +372 -0
  210. package/dist/atlas/witness-specs.js.map +1 -0
  211. package/dist/atlas/witness-symbolic.d.ts +79 -0
  212. package/dist/atlas/witness-symbolic.d.ts.map +1 -0
  213. package/dist/atlas/witness-symbolic.js +140 -0
  214. package/dist/atlas/witness-symbolic.js.map +1 -0
  215. package/dist/atlas/witnesses/quantum-support.d.ts +50 -0
  216. package/dist/atlas/witnesses/quantum-support.d.ts.map +1 -0
  217. package/dist/atlas/witnesses/quantum-support.js +48 -0
  218. package/dist/atlas/witnesses/quantum-support.js.map +1 -0
  219. package/dist/bridges/be11-decoherence-confrontation.js.map +1 -1
  220. package/dist/bridges/be21-kss-confrontation.js.map +1 -1
  221. package/dist/bridges/be23-planckian-confrontation.js.map +1 -1
  222. package/dist/bridges/be35-bootstrap-confrontation.js.map +1 -1
  223. package/dist/bridges/be36-gw170817-confrontation.js.map +1 -1
  224. package/dist/bridges/be37-cassini-confrontation.js.map +1 -1
  225. package/dist/bridges/be48-collapse-confrontation.js.map +1 -1
  226. package/dist/bridges/be51-lensing-confrontation.d.ts.map +1 -1
  227. package/dist/bridges/be51-lensing-confrontation.js +5 -3
  228. package/dist/bridges/be51-lensing-confrontation.js.map +1 -1
  229. package/dist/bridges/be52-mercury-confrontation.d.ts.map +1 -1
  230. package/dist/bridges/be52-mercury-confrontation.js +4 -1
  231. package/dist/bridges/be52-mercury-confrontation.js.map +1 -1
  232. package/dist/bridges/be55-quantum-hall-confrontation.js.map +1 -1
  233. package/dist/bridges/be56-casimir-confrontation.js.map +1 -1
  234. package/dist/bridges/be58-johnson-nyquist-confrontation.js.map +1 -1
  235. package/dist/bridges/be59-ac-josephson-confrontation.js.map +1 -1
  236. package/dist/bridges/be60-fractional-qh-confrontation.js.map +1 -1
  237. package/dist/bridges/be61-wiedemann-franz-confrontation.js.map +1 -1
  238. package/dist/bridges/be62-bcs-gap-confrontation.js.map +1 -1
  239. package/dist/bridges/be63-chandrasekhar-mass-confrontation.js.map +1 -1
  240. package/dist/bridges/be64-eddington-luminosity-confrontation.js.map +1 -1
  241. package/dist/bridges/be65-jeans-mass-confrontation.js.map +1 -1
  242. package/dist/bridges/bridge-equations.d.ts +2 -2
  243. package/dist/bridges/bridge-equations.d.ts.map +1 -1
  244. package/dist/bridges/bridge-equations.js +2 -2
  245. package/dist/bridges/bridge-equations.js.map +1 -1
  246. package/dist/bridges/catalog-adapter.d.ts.map +1 -1
  247. package/dist/bridges/catalog-adapter.js.map +1 -1
  248. package/dist/bridges/confrontations.d.ts.map +1 -1
  249. package/dist/bridges/confrontations.js +7 -0
  250. package/dist/bridges/confrontations.js.map +1 -1
  251. package/dist/bridges/equations/_be-helpers.d.ts +2 -2
  252. package/dist/bridges/equations/_be-helpers.js +2 -2
  253. package/dist/bridges/equations/be-20-vacuum-energy.js.map +1 -1
  254. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +59 -72
  255. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -1
  256. package/dist/bridges/equations/be-35-conformal-bootstrap.js +66 -98
  257. package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -1
  258. package/dist/bridges/equations/be-48-grw-localization.d.ts +9 -8
  259. package/dist/bridges/equations/be-48-grw-localization.d.ts.map +1 -1
  260. package/dist/bridges/equations/be-48-grw-localization.js +9 -8
  261. package/dist/bridges/equations/be-48-grw-localization.js.map +1 -1
  262. package/dist/bridges/gravitational-lensing.d.ts +10 -0
  263. package/dist/bridges/gravitational-lensing.d.ts.map +1 -1
  264. package/dist/bridges/gravitational-lensing.js.map +1 -1
  265. package/dist/bridges/index.d.ts +125 -7
  266. package/dist/bridges/index.d.ts.map +1 -1
  267. package/dist/bridges/index.js +483 -20
  268. package/dist/bridges/index.js.map +1 -1
  269. package/dist/bridges/observations/types.d.ts +14 -0
  270. package/dist/bridges/observations/types.d.ts.map +1 -1
  271. package/dist/bridges/observations/types.js.map +1 -1
  272. package/dist/bridges/perihelion-precession.d.ts +10 -0
  273. package/dist/bridges/perihelion-precession.d.ts.map +1 -1
  274. package/dist/bridges/perihelion-precession.js.map +1 -1
  275. package/dist/bridges/rhs-registry.js +2 -2
  276. package/dist/canonical/canonical-equation.d.ts +15 -0
  277. package/dist/canonical/canonical-equation.d.ts.map +1 -1
  278. package/dist/canonical/entries/_l1-build.d.ts +1 -1
  279. package/dist/canonical/entries/_l1-build.d.ts.map +1 -1
  280. package/dist/canonical/entries/atomic.d.ts.map +1 -1
  281. package/dist/canonical/entries/atomic.js +23 -0
  282. package/dist/canonical/entries/atomic.js.map +1 -1
  283. package/dist/canonical/entries/nonmonomial.d.ts.map +1 -1
  284. package/dist/canonical/entries/nonmonomial.js +93 -0
  285. package/dist/canonical/entries/nonmonomial.js.map +1 -1
  286. package/dist/canonical/normal-form.js.map +1 -1
  287. package/dist/canonical/residual.d.ts +28 -0
  288. package/dist/canonical/residual.d.ts.map +1 -0
  289. package/dist/canonical/residual.js +31 -0
  290. package/dist/canonical/residual.js.map +1 -0
  291. package/dist/cli/command.d.ts +8 -0
  292. package/dist/cli/command.d.ts.map +1 -1
  293. package/dist/cli/command.js +10 -0
  294. package/dist/cli/command.js.map +1 -1
  295. package/dist/cli/commands/atlas.d.ts +3 -0
  296. package/dist/cli/commands/atlas.d.ts.map +1 -0
  297. package/dist/cli/commands/atlas.js +158 -0
  298. package/dist/cli/commands/atlas.js.map +1 -0
  299. package/dist/cli/commands/audit.js +3 -3
  300. package/dist/cli/commands/candidates.js +3 -3
  301. package/dist/cli/commands/canonical.js +3 -3
  302. package/dist/cli/commands/confront.d.ts.map +1 -1
  303. package/dist/cli/commands/confront.js +8 -1
  304. package/dist/cli/commands/confront.js.map +1 -1
  305. package/dist/cli/commands/connectors.js +7 -7
  306. package/dist/cli/commands/coverage.js +3 -3
  307. package/dist/cli/commands/derive.d.ts.map +1 -1
  308. package/dist/cli/commands/derive.js +40 -9
  309. package/dist/cli/commands/derive.js.map +1 -1
  310. package/dist/cli/commands/discover.d.ts.map +1 -1
  311. package/dist/cli/commands/discover.js +46 -27
  312. package/dist/cli/commands/discover.js.map +1 -1
  313. package/dist/cli/commands/evaluate.d.ts.map +1 -1
  314. package/dist/cli/commands/evaluate.js +2 -1
  315. package/dist/cli/commands/evaluate.js.map +1 -1
  316. package/dist/cli/commands/explain.d.ts.map +1 -1
  317. package/dist/cli/commands/explain.js +19 -6
  318. package/dist/cli/commands/explain.js.map +1 -1
  319. package/dist/cli/commands/index.d.ts +3 -0
  320. package/dist/cli/commands/index.d.ts.map +1 -1
  321. package/dist/cli/commands/index.js +3 -0
  322. package/dist/cli/commands/index.js.map +1 -1
  323. package/dist/cli/commands/map.d.ts.map +1 -1
  324. package/dist/cli/commands/map.js +187 -36
  325. package/dist/cli/commands/map.js.map +1 -1
  326. package/dist/cli/commands/path.d.ts +3 -0
  327. package/dist/cli/commands/path.d.ts.map +1 -0
  328. package/dist/cli/commands/path.js +228 -0
  329. package/dist/cli/commands/path.js.map +1 -0
  330. package/dist/cli/commands/predict.js +4 -4
  331. package/dist/cli/commands/priority.js +2 -2
  332. package/dist/cli/commands/probe.d.ts.map +1 -1
  333. package/dist/cli/commands/probe.js +59 -2
  334. package/dist/cli/commands/probe.js.map +1 -1
  335. package/dist/cli/commands/recover.d.ts.map +1 -1
  336. package/dist/cli/commands/recover.js +25 -6
  337. package/dist/cli/commands/recover.js.map +1 -1
  338. package/dist/cli/commands/regime.d.ts +41 -0
  339. package/dist/cli/commands/regime.d.ts.map +1 -0
  340. package/dist/cli/commands/regime.js +243 -0
  341. package/dist/cli/commands/regime.js.map +1 -0
  342. package/dist/cli/commands/symbolic.js +5 -5
  343. package/dist/cli/errors.d.ts +13 -1
  344. package/dist/cli/errors.d.ts.map +1 -1
  345. package/dist/cli/errors.js +13 -1
  346. package/dist/cli/errors.js.map +1 -1
  347. package/dist/cli/graphs.d.ts.map +1 -1
  348. package/dist/cli/graphs.js +5 -1
  349. package/dist/cli/graphs.js.map +1 -1
  350. package/dist/cli/main.d.ts.map +1 -1
  351. package/dist/cli/main.js +29 -2
  352. package/dist/cli/main.js.map +1 -1
  353. package/dist/cli/output.d.ts +6 -1
  354. package/dist/cli/output.d.ts.map +1 -1
  355. package/dist/cli/output.js.map +1 -1
  356. package/dist/cli/version.js.map +1 -1
  357. package/dist/cli-api.d.ts +21 -1
  358. package/dist/cli-api.d.ts.map +1 -1
  359. package/dist/cli-api.js +23 -1
  360. package/dist/cli-api.js.map +1 -1
  361. package/dist/composition/axis-audit.js.map +1 -1
  362. package/dist/composition/bridge-prediction.d.ts.map +1 -1
  363. package/dist/composition/bridge-prediction.js +0 -0
  364. package/dist/composition/bridge-prediction.js.map +1 -1
  365. package/dist/composition/canonical-compare.d.ts +65 -0
  366. package/dist/composition/canonical-compare.d.ts.map +1 -0
  367. package/dist/composition/canonical-compare.js +237 -0
  368. package/dist/composition/canonical-compare.js.map +1 -0
  369. package/dist/composition/canonical-graph.d.ts +2 -2
  370. package/dist/composition/canonical-graph.js +2 -2
  371. package/dist/composition/canonical-graph.js.map +1 -1
  372. package/dist/composition/canonical-prefactors.d.ts +32 -0
  373. package/dist/composition/canonical-prefactors.d.ts.map +1 -0
  374. package/dist/composition/canonical-prefactors.js +80 -0
  375. package/dist/composition/canonical-prefactors.js.map +1 -0
  376. package/dist/composition/compose-symbolic.d.ts.map +1 -1
  377. package/dist/composition/compose-symbolic.js.map +1 -1
  378. package/dist/composition/compose.d.ts.map +1 -1
  379. package/dist/composition/compose.js +80 -1
  380. package/dist/composition/compose.js.map +1 -1
  381. package/dist/composition/consequence.js.map +1 -1
  382. package/dist/composition/discovery.d.ts +20 -3
  383. package/dist/composition/discovery.d.ts.map +1 -1
  384. package/dist/composition/discovery.js +30 -4
  385. package/dist/composition/discovery.js.map +1 -1
  386. package/dist/composition/edge.d.ts +64 -0
  387. package/dist/composition/edge.d.ts.map +1 -1
  388. package/dist/composition/edge.js +29 -0
  389. package/dist/composition/edge.js.map +1 -1
  390. package/dist/composition/edges/calibration.d.ts.map +1 -1
  391. package/dist/composition/edges/calibration.js +46 -0
  392. package/dist/composition/edges/calibration.js.map +1 -1
  393. package/dist/composition/edges/catalog-quantum.d.ts.map +1 -1
  394. package/dist/composition/edges/catalog-quantum.js +9 -0
  395. package/dist/composition/edges/catalog-quantum.js.map +1 -1
  396. package/dist/composition/edges/catalog-tranche.d.ts.map +1 -1
  397. package/dist/composition/edges/catalog-tranche.js +18 -0
  398. package/dist/composition/edges/catalog-tranche.js.map +1 -1
  399. package/dist/composition/enumerate.js.map +1 -1
  400. package/dist/composition/explain.d.ts +9 -1
  401. package/dist/composition/explain.d.ts.map +1 -1
  402. package/dist/composition/explain.js +34 -8
  403. package/dist/composition/explain.js.map +1 -1
  404. package/dist/composition/expr-eval.d.ts.map +1 -1
  405. package/dist/composition/expr-eval.js.map +1 -1
  406. package/dist/composition/expr-simplify.d.ts +13 -0
  407. package/dist/composition/expr-simplify.d.ts.map +1 -1
  408. package/dist/composition/expr-simplify.js +25 -0
  409. package/dist/composition/expr-simplify.js.map +1 -1
  410. package/dist/composition/expr-subst.js.map +1 -1
  411. package/dist/composition/graph-viz-svg.d.ts.map +1 -1
  412. package/dist/composition/graph-viz.d.ts +118 -1
  413. package/dist/composition/graph-viz.d.ts.map +1 -1
  414. package/dist/composition/graph-viz.js +189 -6
  415. package/dist/composition/graph-viz.js.map +1 -1
  416. package/dist/composition/grounding.d.ts.map +1 -1
  417. package/dist/composition/grounding.js +6 -1
  418. package/dist/composition/grounding.js.map +1 -1
  419. package/dist/composition/identifiability.js.map +1 -1
  420. package/dist/composition/index.d.ts +4 -2
  421. package/dist/composition/index.d.ts.map +1 -1
  422. package/dist/composition/index.js +2 -1
  423. package/dist/composition/index.js.map +1 -1
  424. package/dist/composition/poster-source.d.ts +153 -0
  425. package/dist/composition/poster-source.d.ts.map +1 -0
  426. package/dist/composition/poster-source.js +183 -0
  427. package/dist/composition/poster-source.js.map +1 -0
  428. package/dist/composition/probe/backend-protocol.d.ts +34 -1
  429. package/dist/composition/probe/backend-protocol.d.ts.map +1 -1
  430. package/dist/composition/probe/backend-protocol.js +9 -2
  431. package/dist/composition/probe/backend-protocol.js.map +1 -1
  432. package/dist/composition/probe/candidate-store.d.ts.map +1 -1
  433. package/dist/composition/probe/corpus.d.ts +12 -0
  434. package/dist/composition/probe/corpus.d.ts.map +1 -1
  435. package/dist/composition/probe/corpus.js +100 -0
  436. package/dist/composition/probe/corpus.js.map +1 -1
  437. package/dist/composition/probe/generator.d.ts +14 -0
  438. package/dist/composition/probe/generator.d.ts.map +1 -1
  439. package/dist/composition/probe/generator.js +24 -2
  440. package/dist/composition/probe/generator.js.map +1 -1
  441. package/dist/composition/probe/limits.js.map +1 -1
  442. package/dist/composition/probe/pipeline.d.ts +5 -0
  443. package/dist/composition/probe/pipeline.d.ts.map +1 -1
  444. package/dist/composition/probe/pipeline.js +20 -3
  445. package/dist/composition/probe/pipeline.js.map +1 -1
  446. package/dist/composition/probe/problem.js.map +1 -1
  447. package/dist/composition/probe/report.d.ts.map +1 -1
  448. package/dist/composition/probe/report.js +2 -0
  449. package/dist/composition/probe/report.js.map +1 -1
  450. package/dist/composition/probe/residual.d.ts.map +1 -1
  451. package/dist/composition/probe/residual.js.map +1 -1
  452. package/dist/composition/probe/search-budget.js.map +1 -1
  453. package/dist/composition/proposed-bridges.d.ts +2 -2
  454. package/dist/composition/proposed-bridges.d.ts.map +1 -1
  455. package/dist/composition/proposed-bridges.js +1 -1
  456. package/dist/composition/proposed-bridges.js.map +1 -1
  457. package/dist/composition/retrodiction.js.map +1 -1
  458. package/dist/composition/uncertainty.d.ts +52 -2
  459. package/dist/composition/uncertainty.d.ts.map +1 -1
  460. package/dist/composition/uncertainty.js +38 -2
  461. package/dist/composition/uncertainty.js.map +1 -1
  462. package/dist/composition/user-equation.d.ts.map +1 -1
  463. package/dist/core/constants.d.ts +13 -0
  464. package/dist/core/constants.d.ts.map +1 -1
  465. package/dist/core/constants.js +13 -0
  466. package/dist/core/constants.js.map +1 -1
  467. package/dist/core/flux-rules.d.ts.map +1 -1
  468. package/dist/core/flux-rules.js.map +1 -1
  469. package/dist/core/labeled-tensor.d.ts.map +1 -1
  470. package/dist/core/regime-registry.d.ts.map +1 -1
  471. package/dist/core/regime-rule-install.js.map +1 -1
  472. package/dist/core/tensor.d.ts.map +1 -1
  473. package/dist/core/tensor.js.map +1 -1
  474. package/dist/core/types.d.ts.map +1 -1
  475. package/dist/diff/bridge-ast-gradient.js.map +1 -1
  476. package/dist/diff/bridge-gradient.d.ts +1 -1
  477. package/dist/diff/bridge-gradient.js +1 -1
  478. package/dist/dimensional/ast-types.d.ts +31 -1
  479. package/dist/dimensional/ast-types.d.ts.map +1 -1
  480. package/dist/dimensional/bridge-check.d.ts +1 -1
  481. package/dist/dimensional/bridge-check.js +1 -1
  482. package/dist/dimensional/buckingham.d.ts.map +1 -1
  483. package/dist/dimensional/connection.d.ts +2 -0
  484. package/dist/dimensional/connection.d.ts.map +1 -1
  485. package/dist/dimensional/connection.js +2 -0
  486. package/dist/dimensional/connection.js.map +1 -1
  487. package/dist/dimensional/curvature-composite.d.ts +5 -3
  488. package/dist/dimensional/curvature-composite.d.ts.map +1 -1
  489. package/dist/dimensional/curvature-composite.js +1 -0
  490. package/dist/dimensional/curvature-composite.js.map +1 -1
  491. package/dist/dimensional/curvature-invariants.d.ts +2 -0
  492. package/dist/dimensional/curvature-invariants.d.ts.map +1 -1
  493. package/dist/dimensional/curvature-invariants.js +2 -0
  494. package/dist/dimensional/curvature-invariants.js.map +1 -1
  495. package/dist/dimensional/dimension-spec.d.ts.map +1 -1
  496. package/dist/dimensional/einstein-equation.d.ts +3 -3
  497. package/dist/dimensional/einstein-equation.js +3 -3
  498. package/dist/dimensional/errors.d.ts.map +1 -1
  499. package/dist/dimensional/metric.d.ts +5 -2
  500. package/dist/dimensional/metric.d.ts.map +1 -1
  501. package/dist/dimensional/metric.js +5 -2
  502. package/dist/dimensional/metric.js.map +1 -1
  503. package/dist/dimensional/tensor-trace.js.map +1 -1
  504. package/dist/dimensional/validator-registry.js.map +1 -1
  505. package/dist/dimensional/validator.d.ts +3 -2
  506. package/dist/dimensional/validator.d.ts.map +1 -1
  507. package/dist/dimensional/validator.js +23 -4
  508. package/dist/dimensional/validator.js.map +1 -1
  509. package/dist/index.d.ts +4 -3
  510. package/dist/index.d.ts.map +1 -1
  511. package/dist/index.js +4 -1
  512. package/dist/index.js.map +1 -1
  513. package/dist/numerical/curvature-lowering-helpers.d.ts.map +1 -1
  514. package/dist/numerical/curvature-lowering-helpers.js +104 -0
  515. package/dist/numerical/curvature-lowering-helpers.js.map +1 -1
  516. package/dist/numerical/errors.d.ts.map +1 -1
  517. package/dist/numerical/errors.js.map +1 -1
  518. package/dist/numerical/float64-engine.d.ts.map +1 -1
  519. package/dist/numerical/float64-engine.js +51 -24
  520. package/dist/numerical/float64-engine.js.map +1 -1
  521. package/dist/numerical/formula-dimension.d.ts.map +1 -1
  522. package/dist/numerical/formula-dimension.js.map +1 -1
  523. package/dist/numerical/formula.d.ts.map +1 -1
  524. package/dist/numerical/formula.js.map +1 -1
  525. package/dist/numerical/geometrized.d.ts.map +1 -1
  526. package/dist/numerical/gl4-integrator.d.ts +3 -3
  527. package/dist/numerical/gl4-integrator.js +3 -3
  528. package/dist/numerical/killing.d.ts +47 -5
  529. package/dist/numerical/killing.d.ts.map +1 -1
  530. package/dist/numerical/killing.js +41 -3
  531. package/dist/numerical/killing.js.map +1 -1
  532. package/dist/numerical/klein-gordon.d.ts +2 -2
  533. package/dist/numerical/klein-gordon.js +2 -2
  534. package/dist/numerical/lowering.d.ts +2 -2
  535. package/dist/numerical/lowering.d.ts.map +1 -1
  536. package/dist/numerical/lowering.js +5 -3
  537. package/dist/numerical/lowering.js.map +1 -1
  538. package/dist/numerical/mathts-engine.d.ts.map +1 -1
  539. package/dist/numerical/mathts-engine.js.map +1 -1
  540. package/dist/numerical/metric-inverse.js.map +1 -1
  541. package/dist/numerical/perihelion-finder.d.ts +15 -13
  542. package/dist/numerical/perihelion-finder.d.ts.map +1 -1
  543. package/dist/numerical/perihelion-finder.js +15 -13
  544. package/dist/numerical/perihelion-finder.js.map +1 -1
  545. package/dist/numerical/weyl-lowering.d.ts.map +1 -1
  546. package/dist/numerical/weyl-lowering.js +90 -40
  547. package/dist/numerical/weyl-lowering.js.map +1 -1
  548. package/package.json +163 -104
package/README.md CHANGED
@@ -40,57 +40,75 @@ Think of this as:
40
40
 
41
41
  ## Quick Start
42
42
 
43
+ From npm, the CLI is `upt`:
44
+
45
+ ```bash
46
+ npm install universal-physics-tensor
47
+ npx upt help
48
+ npx upt explain hawking-temperature mass=1.989e30
49
+ ```
50
+
51
+ The npm package ships `dist/`, `bin/`, this README and the licence. The documentation, the examples
52
+ and the test fixtures linked below live in the GitHub repository. The steps below work from a clone
53
+ of it:
54
+
43
55
  ```bash
44
56
  # Clone the repository
45
57
  git clone https://github.com/danielsimonjr/universal-physics-tensor.git
46
58
  cd universal-physics-tensor
47
59
 
48
- # Install dependencies
49
- npm install
60
+ # Install dependencies (Bun is the local/CI package manager; Node ≥ 18 is the runtime)
61
+ bun install
50
62
 
51
63
  # Build the project
52
- npm run build
64
+ bun run build
53
65
 
54
66
  # Run the smoke test
55
67
  node test-example.js
56
68
 
57
69
  # Bridge-inference CLI (no TypeScript needed) — `upt` subcommands:
58
- npm run upt -- explain hawking-temperature mass=1.989e30 # explain a built-in quantity
59
- npm run upt -- priority # triage speculative bridges
60
- npm run upt -- audit # derive the bridges by dimensions
61
- npm run upt -- predict # empty regime cells as link hypotheses
62
- npm run upt -- discover # vet link candidates (merge/unlock/consistency)
63
- npm run upt -- discover --source=canonical # run the funnel on standard physics ALONE (no bridges)
64
- npm run upt -- discover --derive # surface machine-derived identity consequences (--max-orders / --anchor flags available)
65
- npm run upt -- probe scan # experimental expression/residual frontier (Product B; not `upt discover`)
66
- npm run upt -- probe run --problem=tests/fixtures/discovery/pendulum-scaling/public/problem.json
67
- npm run upt -- connectors # which isolated bridges can connect to the core
68
- npm run upt -- coverage # audit each bridge's empirical grounding
69
- npm run upt -- canonical # the standard-physics L-layer registry (answer key)
70
- npm run upt -- recover # validate bridges against standard physics
71
- npm run upt -- symbolic --simplify # compose + fold bridges' SYMBOLIC forms (MathTS simplify)
72
- npm run upt -- confront # run the catalog's committed real-data confrontations (predicted vs observed)
73
- npm run upt -- map --source=both --format=mermaid # VISUAL map of the graph (Mermaid; also --format=dot|svg, --proposed, --out=PATH)
74
- npm run upt -- map --equation "period = 2*pi*sqrt(length/gravity)" # drop YOUR OWN equation onto the map: dimensional check + where it lands
70
+ bun run upt -- explain hawking-temperature mass=1.989e30 # explain a built-in quantity
71
+ bun run upt -- priority # triage speculative bridges
72
+ bun run upt -- audit # derive the bridges by dimensions
73
+ bun run upt -- predict # empty regime cells as link hypotheses
74
+ bun run upt -- discover # vet link candidates (merge/unlock/consistency)
75
+ bun run upt -- discover --source=canonical # run the funnel on standard physics ALONE (no bridges)
76
+ bun run upt -- discover --derive # surface machine-derived identity consequences (--max-orders / --anchor flags available)
77
+ bun run upt -- probe scan # experimental expression/residual frontier (Product B; not `upt discover`)
78
+ bun run upt -- probe run --problem=tests/fixtures/discovery/pendulum-scaling/public/problem.json # a fixture in the clone
79
+ bun run upt -- connectors # which isolated bridges can connect to the core
80
+ bun run upt -- coverage # audit each bridge's empirical grounding
81
+ bun run upt -- canonical # the standard-physics L-layer registry (answer key)
82
+ bun run upt -- recover # validate bridges against standard physics
83
+ bun run upt -- symbolic --simplify # compose + fold bridges' SYMBOLIC forms (MathTS simplify)
84
+ bun run upt -- confront # run the catalog's committed real-data confrontations (predicted vs observed)
85
+ bun run upt -- map --source=both --format=mermaid # VISUAL map of the graph (Mermaid; also --format=dot|svg, --proposed, --out=PATH)
86
+ bun run upt -- map --equation "period = 2*pi*sqrt(length/gravity)" # drop YOUR OWN equation onto the map: dimensional check + where it lands
75
87
  # ...and YOUR OWN equations:
76
- npm run upt -- eval "hbar*c^3/(8*pi*G*M*k_B)" hbar=1.054571817e-34 c=299792458 G=6.6743e-11 M=1.989e30 k_B=1.380649e-23
77
- npm run upt -- derive period:time length:length gravity:acceleration --formula "2*pi*sqrt(length/gravity)"
88
+ bun run upt -- eval "hbar*c^3/(8*pi*G*M*k_B)" hbar=1.054571817e-34 c=299792458 G=6.6743e-11 M=1.989e30 k_B=1.380649e-23
89
+ bun run upt -- derive period:time length:length gravity:acceleration --formula "2*pi*sqrt(length/gravity)"
78
90
  # → period ∝ length^0.5·gravity^-0.5 ; formula dimension: [time] ✓ matches target ;
79
91
  # formula MATCHES, recovered prefactor ≈ 6.2832 (2π)
80
- npm run upt -- help
81
- # Once published, the same commands run via `npx universal-physics-tensor <cmd>`.
82
- # (`npm run explain` and `npm run bridge-priority` remain as aliases.)
92
+ bun run upt -- help
93
+ # From an npm install, run the same commands as `npx upt <cmd>`.
94
+ # (`bun run explain` and `bun run bridge-priority` remain as aliases.)
83
95
  ```
84
96
 
85
97
  `eval`/`derive --formula` use the MathTS expression engine
86
98
  (`@danielsimonjr/mathts-functions`) when the optional peers are installed,
87
99
  and a built-in, dependency-free parser otherwise — transparently, via a
88
100
  `FormulaParser` registry (add `--debug` to see which is active). UPT keeps
89
- **zero hard dependencies**; the MathTS packages are optional.
90
-
91
- See [`cli/README.md`](cli/README.md) for the full CLI reference — every command
101
+ **zero hard dependencies**; the MathTS packages and `@viz-js/viz` are optional peers, which a
102
+ default install does not pull in. Add the ones you want, for example
103
+ `npm install @danielsimonjr/mathts-functions` for the MathTS parser, or `npm install @viz-js/viz`
104
+ for `upt map --format=svg`. The `universal-physics-tensor/numerical/mathts-engine` subpath imports
105
+ `@danielsimonjr/mathts-tensor` directly, so importing it without that peer fails with
106
+ `ERR_MODULE_NOT_FOUND`. That is the opt-in, not a bug: install the peer to use the engine. The main
107
+ entry point never loads that subpath.
108
+
109
+ See [`cli/README.md`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/cli/README.md) for the full CLI reference — every command
92
110
  and alias, the `--source=catalog|canonical|both` flag, input syntax, exit codes,
93
- and troubleshooting. [`docs/architecture/PHYSICS_MAP.md`](docs/architecture/PHYSICS_MAP.md)
111
+ and troubleshooting. [`docs/architecture/PHYSICS_MAP.md`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/PHYSICS_MAP.md)
94
112
  shows the rendered map (`upt map --format=mermaid|dot|svg`).
95
113
 
96
114
  ## Installation
@@ -157,7 +175,7 @@ Where:
157
175
  - **B** (Bridges): Off-diagonal equations connecting regimes
158
176
  - **E** (Emergence): Higher-order correlations producing emergent phenomena
159
177
 
160
- > **Note on notation:** the "+" here denotes disjoint union of catalog entries (each tensor slot holds content of exactly one category), not algebraic addition. The type system enforces this disjointness via the `Cell` discriminated union in [`src/core/cell.ts`](src/core/cell.ts); `UniversalTensor.populatedCells()` is the canonical way to enumerate the populated catalog as typed `Cell` values. See also [Part I §1.2](docs/specification/Part-I.md) for the spec-level treatment. Different slots may hold quantities of different physical dimensions (e.g., a Lagrangian density and a decoherence rate) and cannot be summed numerically.
178
+ > **Note on notation:** the "+" here denotes disjoint union of catalog entries (each tensor slot holds content of exactly one category), not algebraic addition. The type system enforces this disjointness via the `Cell` discriminated union in [`src/core/cell.ts`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/src/core/cell.ts); `UniversalTensor.populatedCells()` is the canonical way to enumerate the populated catalog as typed `Cell` values. See also [Part I §1.2](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-I.md) for the spec-level treatment. Different slots may hold quantities of different physical dimensions (e.g., a Lagrangian density and a decoherence rate) and cannot be summed numerically.
161
179
 
162
180
  ### Bridge Equations
163
181
 
@@ -175,7 +193,7 @@ Bridge equations connect different physical regimes:
175
193
  - Universal Emergence Equation
176
194
  - Complexity-Entropy Production Relation
177
195
 
178
- Parts I–II of the formal specification document the original BE-11…54 corpus; later established additions BE-55…65 are captured in the live code/research record. The **authoritative current catalog** is the versioned, test-pinned JSON artifact at [`data/bridge-catalog.json`](data/bridge-catalog.json), which currently spans BE-11…65. Part III covers algorithmic implementation.
196
+ Parts I–II of the formal specification document the original BE-11…54 corpus; later established additions BE-55…65 are captured in the live code/research record. The **authoritative current catalog** is the versioned, test-pinned JSON artifact at [`data/bridge-catalog.json`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/data/bridge-catalog.json), which currently spans BE-11…65. Part III covers algorithmic implementation.
179
197
 
180
198
  ### Composing Bridges (v0.8.0)
181
199
 
@@ -195,7 +213,7 @@ erasureCost.confidence; // 'highly-speculative' (min of the op
195
213
  That derived relation — the minimum erasure cost at a black-hole
196
214
  horizon — is the framework's first **derived** (rather than encoded)
197
215
  literature-anchored result, pre-registered before implementation and
198
- pinned to relErr ≤ 10⁻¹² (see [Part IX](docs/specification/Part-IX-Composition.md)
216
+ pinned to relErr ≤ 10⁻¹² (see [Part IX](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-IX-Composition.md)
199
217
  and `docs/planning/v0.8.0-Design.md`). A computable **membership
200
218
  criterion** (a bridge's endpoint quantities must differ in regime) now
201
219
  adjudicates the catalog — 36 bridges · 5 not-a-bridge · 3 contested —
@@ -213,46 +231,47 @@ can be folded by MathTS `simplify` (optional peer), so CT-1 reduces to
213
231
 
214
232
  ### Formal Specification
215
233
  Complete theoretical foundation of the Universal Physics Tensor Framework —
216
- see the **[specification index](docs/specification/README.md)** for the full
217
- reader's map and the **[spec revision history](docs/specification/CHANGELOG.md)**
234
+ see the **[specification index](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/README.md)** for the full
235
+ reader's map and the **[spec revision history](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/CHANGELOG.md)**
218
236
  for how the documents evolved.
219
237
 
220
- - **[Part I: Foundation & Mathematical Framework](docs/specification/Part-I.md)** - Tensor structure, Π = L + B + E decomposition, Bridge Equations 11-20
221
- - **[Part II: Extended Bridge Equation Catalog](docs/specification/Part-II.md)** - Bridge Equations 21-54 across condensed matter, quantum biology, emergent spacetime
222
- - **[Part III: Computational Implementation](docs/specification/Part-III.md)** - Algorithms, information-theoretic bounds, ML integration
223
- - **[Part IV: Validation & Implications](docs/specification/Part-IV.md)** - Experimental pathways, philosophical implications, applications
224
- - **[Part V: Advanced Mathematics & Protocols](docs/specification/Part-V.md)** - Category theory extensions, validation protocols, algorithmic analysis
225
- - **[Part VI: Deployment & Governance](docs/specification/Part-VI.md)** - Implementation strategies, applications, governance frameworks
226
- - **Supplements** - [Part VII: Tensor Algebra](docs/specification/Part-VII-Tensor-Algebra.md) · [Part VIII: Metric Layer](docs/specification/Part-VIII-Metric-Layer.md) · [Part IX: Composition](docs/specification/Part-IX-Composition.md) · [Part X: Curvature & Field Equations](docs/specification/Part-X-Curvature-and-Field-Equations.md) · [Part XI: Proposed Equations](docs/specification/Part-XI-Proposed-Equations.md) (non-normative; machine-derived identity consequences, unadjudicated)
238
+ - **[Part I: Foundation & Mathematical Framework](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-I.md)** - Tensor structure, Π = L + B + E decomposition, Bridge Equations 11-20
239
+ - **[Part II: Extended Bridge Equation Catalog](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-II.md)** - Bridge Equations 21-54 across condensed matter, quantum biology, emergent spacetime
240
+ - **[Part III: Computational Implementation](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-III.md)** - Algorithms, information-theoretic bounds, ML integration
241
+ - **[Part IV: Validation & Implications](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-IV.md)** - Experimental pathways, philosophical implications, applications
242
+ - **[Part V: Advanced Mathematics & Protocols](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-V.md)** - Category theory extensions, validation protocols, algorithmic analysis
243
+ - **[Part VI: Deployment & Governance](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-VI.md)** - Implementation strategies, applications, governance frameworks
244
+ - **Supplements** - [Part VII: Tensor Algebra](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-VII-Tensor-Algebra.md) · [Part VIII: Metric Layer](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-VIII-Metric-Layer.md) · [Part IX: Composition](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-IX-Composition.md) · [Part X: Curvature & Field Equations](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-X-Curvature-and-Field-Equations.md) · [Part XI: Proposed Equations](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/specification/Part-XI-Proposed-Equations.md) (non-normative; machine-derived identity consequences, unadjudicated)
227
245
 
228
246
  ### Planning & Development
229
- - **[Development Plan](docs/planning/Development-Plan.md)** - Phased implementation roadmap
230
- - **[Implementation Plan](docs/planning/Implementation-Plan.md)** - Technical architecture
231
- - **[System Requirements](docs/planning/System-Requirements.md)** - Functional requirements
247
+ - **[ROADMAP.md](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/ROADMAP.md)** - Strategic direction: from bridge catalog to a verified, regime-aware physics atlas (phased, with exit criteria)
248
+ - **[Development Plan](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/planning/Development-Plan.md)** - Phased implementation roadmap
249
+ - **[Implementation Plan](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/planning/Implementation-Plan.md)** - Technical architecture
250
+ - **[System Requirements](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/planning/System-Requirements.md)** - Functional requirements
232
251
 
233
252
  ### Architecture
234
253
 
235
254
  Grounded in a real parse of the code. Every authored document ends with a `## Verification` block,
236
255
  and `repo_map.py check` fails when a claim in one stops matching the source.
237
256
 
238
- - **[Overview](docs/architecture/OVERVIEW.md)** - What this is, what it does, how it is laid out
239
- - **[Architecture](docs/architecture/ARCHITECTURE.md)** - Why it is built this way; principles and key decisions
240
- - **[Components](docs/architecture/COMPONENTS.md)** - Each module, with real signatures
241
- - **[Data Flow](docs/architecture/DATAFLOW.md)** - How a request travels end to end
242
- - **[API Reference](docs/architecture/API.md)** - The public surface, per export
243
- - **[File Inventory](docs/architecture/FILE_INVENTORY.md)** - Every tracked file, by zone and disposition
244
- - **[Test Coverage](docs/architecture/TEST_COVERAGE.md)** - What is tested and what is not *(generated)*
245
- - **[Dependency Graph](docs/architecture/DEPENDENCY_GRAPH.md)** - Who imports whom *(generated)*
246
- - **[Unused Analysis](docs/architecture/unused-analysis.md)** - Files and exports with no importer *(generated)*
247
- - **[Duplicate Symbols](docs/architecture/duplicate-symbols.md)** - Names defined in more than one file
248
- - **[Physics Map](docs/architecture/PHYSICS_MAP.md)** - The bridge catalog as a map
257
+ - **[Overview](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/OVERVIEW.md)** - What this is, what it does, how it is laid out
258
+ - **[Architecture](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/ARCHITECTURE.md)** - Why it is built this way; principles and key decisions
259
+ - **[Components](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/COMPONENTS.md)** - Each module, with real signatures
260
+ - **[Data Flow](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/DATAFLOW.md)** - How a request travels end to end
261
+ - **[API Reference](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/API.md)** - The public surface, per export
262
+ - **[File Inventory](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/FILE_INVENTORY.md)** - Every tracked file, by zone and disposition
263
+ - **[Test Coverage](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/TEST_COVERAGE.md)** - What is tested and what is not *(generated)*
264
+ - **[Dependency Graph](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/DEPENDENCY_GRAPH.md)** - Who imports whom *(generated)*
265
+ - **[Unused Analysis](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/unused-analysis.md)** - Files and exports with no importer *(generated)*
266
+ - **[Duplicate Symbols](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/duplicate-symbols.md)** - Names defined in more than one file
267
+ - **[Physics Map](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/PHYSICS_MAP.md)** - The bridge catalog as a map
249
268
 
250
269
  Regenerate the three generated reports with `npm run docs:deps`; do not edit them by hand. The
251
270
  `docs-fresh` CI job fails if what is committed differs from a fresh generation.
252
271
 
253
272
  ### Code Documentation
254
- - **[Examples](examples/)** - Usage examples and code samples
255
- - **[Documentation Index](docs/README.md)** - Complete documentation guide
273
+ - **[Examples](https://github.com/danielsimonjr/universal-physics-tensor/tree/master/examples)** - Usage examples and code samples
274
+ - **[Documentation Index](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/README.md)** - Complete documentation guide
256
275
 
257
276
  ## Benchmarks
258
277
 
@@ -263,15 +282,15 @@ npm run bench # interactive run (median, p99, ops/sec)
263
282
  npm run bench:ci # verbose run for CI log capture
264
283
  ```
265
284
 
266
- Baseline results are recorded in [`docs/architecture/benchmarks.md`](docs/architecture/benchmarks.md).
285
+ Baseline results are recorded in [`docs/architecture/benchmarks.md`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/architecture/benchmarks.md).
267
286
  These are **correctness-first baselines, not optimization targets**. Comparative
268
287
  analysis has since landed: v0.6.0's BR-2 `christoffelFn` flat-array refactor
269
- delivered a measured **5-6× RK4 geodesic-integrator speedup** (see [CHANGELOG](CHANGELOG.md)).
288
+ delivered a measured **5-6× RK4 geodesic-integrator speedup** (see [CHANGELOG](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/CHANGELOG.md)).
270
289
 
271
290
  ## Development Status
272
291
 
273
292
  The current version is recorded in `package.json` and on npm; release chronology
274
- lives in the [CHANGELOG](CHANGELOG.md). This README deliberately carries **no
293
+ lives in the [CHANGELOG](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/CHANGELOG.md). This README deliberately carries **no
275
294
  version number and no release-by-release counts** — both drift, and nothing gates
276
295
  this file. It said `v0.44.1` while the package was at `0.44.3`.
277
296
 
@@ -282,7 +301,7 @@ The current machine-checked state is:
282
301
  | Bridge catalog | **55 entries (BE-11…65)**: 19 established, 33 speculative, 3 highly speculative; the JSON artifact is freshness-tested against the TypeScript registry |
283
302
  | Empirical spine | **19 committed confrontations**, exposed through `upt confront` with rigor/caveat metadata |
284
303
  | Composition layer | **41 bridge edges** plus the canonical L-layer graph; dimensional, symbolic, discovery, consequence, and visualization tooling |
285
- | Canonical reference layer | **103 canonical equations** used as the non-speculative answer-key layer for bridge recovery/linkage |
304
+ | Canonical reference layer | **107 canonical equations** used as the non-speculative answer-key layer for bridge recovery/linkage |
286
305
  | Architecture | Generated dependency graph reports **0 circular dependencies** and a clean unused-analysis report; `npm run docs:deps` is CI freshness-gated |
287
306
  | Quality gates | Build, strict source+test TypeScript checks, full Vitest suite, active-plan audit, package-content smoke test, and nightly long-horizon GL4/Shapiro accuracy tests |
288
307
 
@@ -294,16 +313,16 @@ external evidence/domain review before promotion.
294
313
  ### Remaining frontier (not code-completion blockers)
295
314
 
296
315
  - Physics-curation decisions and literature validation are tracked as bounded
297
- contributor tasks in [CONTRIBUTING.md](CONTRIBUTING.md).
316
+ contributor tasks in [CONTRIBUTING.md](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/CONTRIBUTING.md).
298
317
  - Longer-horizon production ideas are explicitly non-blocking and live in
299
- [`docs/planning/Future-Production-Hardening.md`](docs/planning/Future-Production-Hardening.md).
318
+ [`docs/planning/Future-Production-Hardening.md`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/docs/planning/Future-Production-Hardening.md).
300
319
  - Historical implementation plans are preserved as records; the live code-completion
301
- ledger is [`docs/planning/ACTIVE.md`](docs/planning/ACTIVE.md) and is what
320
+ ledger is [`ACTIVE.md`](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/ACTIVE.md) and is what
302
321
  `npm run audit:plans` gates.
303
322
 
304
323
  ## Contributing
305
324
 
306
- See **[CONTRIBUTING.md](CONTRIBUTING.md)** — it lists bounded,
325
+ See **[CONTRIBUTING.md](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/CONTRIBUTING.md)** — it lists bounded,
307
326
  no-code-required physics-review tasks (catalog adjudications, encoding
308
327
  checks against the literature, quantity-identification reviews) plus
309
328
  the dev quick-start, and explains the JSON catalog review surface.
@@ -334,7 +353,7 @@ This is an **engineer's approach to theoretical physics** — systematic, organi
334
353
 
335
354
  ## License
336
355
 
337
- MIT License - see [LICENSE](LICENSE) for details.
356
+ Code: MIT License - see [LICENSE](LICENSE). Exported atlas data (`data/atlas/`): CC BY 4.0 - see [LICENSE-DATA](https://github.com/danielsimonjr/universal-physics-tensor/blob/master/LICENSE-DATA).
338
357
 
339
358
  ## Author
340
359
 
package/bin/upt.mjs CHANGED
@@ -1,22 +1,22 @@
1
- #!/usr/bin/env node
2
- /**
3
- * upt — thin launcher. All logic lives in src/cli/ (compiled to dist/cli/).
4
- * This shim only resolves dist/, guards the not-built case, and maps the
5
- * returned code onto process.exitCode (NOT process.exit — a hard exit can
6
- * truncate piped stdout).
7
- */
8
- import { fileURLToPath, pathToFileURL } from 'node:url';
9
- import { dirname, join } from 'node:path';
10
-
11
- const here = dirname(fileURLToPath(import.meta.url));
12
- const entry = pathToFileURL(join(here, '..', 'dist', 'cli', 'main.js')).href;
13
-
14
- let main;
15
- try {
16
- main = await import(entry);
17
- } catch (err) {
18
- console.error('Could not load the built package. Run `npm run build` first.');
19
- console.error(String(err && err.message ? err.message : err));
20
- process.exit(1);
21
- }
22
- process.exitCode = await main.runCli(process.argv.slice(2));
1
+ #!/usr/bin/env node
2
+ /**
3
+ * upt — thin launcher. All logic lives in src/cli/ (compiled to dist/cli/).
4
+ * This shim only resolves dist/, guards the not-built case, and maps the
5
+ * returned code onto process.exitCode (NOT process.exit — a hard exit can
6
+ * truncate piped stdout).
7
+ */
8
+ import { fileURLToPath, pathToFileURL } from 'node:url';
9
+ import { dirname, join } from 'node:path';
10
+
11
+ const here = dirname(fileURLToPath(import.meta.url));
12
+ const entry = pathToFileURL(join(here, '..', 'dist', 'cli', 'main.js')).href;
13
+
14
+ let main;
15
+ try {
16
+ main = await import(entry);
17
+ } catch (err) {
18
+ console.error('Could not load the built package. Run `npm run build` first.');
19
+ console.error(String(err && err.message ? err.message : err));
20
+ process.exit(1);
21
+ }
22
+ process.exitCode = await main.runCli(process.argv.slice(2));
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Atlas Phase 4, S4.1 — the applicability checker.
3
+ *
4
+ * Design note: `docs/planning/Atlas-Phase-4-Design.md` §1.
5
+ *
6
+ * **This module answers "what about this bridge is not checked?", and it
7
+ * returns FINDINGS rather than a boolean.** A boolean would have to choose
8
+ * between "unchecked" and "wrong", and those are the two states the module
9
+ * exists to keep apart. Every finding therefore carries a
10
+ * {@link ApplicabilitySeverity}:
11
+ *
12
+ * - `'blocking'` — the data CONTRADICTS ITSELF. A dimensional failure, two
13
+ * records declaring opposite conventions, a literal zero divisor.
14
+ * - `'question'` — the data is SILENT. A divisor nobody guarded, a convention
15
+ * only one side declares, two premise models whose relationship is
16
+ * unrecorded.
17
+ *
18
+ * `src/atlas/conventions.ts` already argues this asymmetry at length for the
19
+ * convention comparison: absence is not disagreement. The same reasoning
20
+ * governs every rule here. Collapsing the two severities would report "four
21
+ * findings" for a record whose only defect is that nobody wrote something
22
+ * down, and would bury a genuine contradiction among them.
23
+ *
24
+ * **Nothing here mutates a record and nothing here is a verdict.** The checker
25
+ * has no authority to promote or reject: it produces the list a reviewer reads.
26
+ * That is the same firewall the rest of the repo keeps — no machine verdict
27
+ * mutates a catalog.
28
+ *
29
+ * @module atlas/applicability
30
+ * @internal
31
+ */
32
+ import type { ExprNode } from '../dimensional/ast-types.js';
33
+ import type { AtlasModel } from './model.js';
34
+ import type { Conventions } from './types.js';
35
+ /** Whether a finding is a contradiction in the data or a silence in it. @internal */
36
+ export type ApplicabilitySeverity = 'blocking' | 'question';
37
+ /**
38
+ * The rule that produced a finding. A closed union so a caller can filter by
39
+ * rule without matching on prose.
40
+ *
41
+ * @internal
42
+ */
43
+ export type ApplicabilityFindingKind = 'dimensional-inconsistency' | 'convention-mismatch' | 'convention-undeclared' | 'division-unguarded' | 'division-by-zero' | 'squaring-adds-solutions' | 'model-incompatibility';
44
+ /** One thing a reviewer must resolve before believing the record. @internal */
45
+ export interface ApplicabilityFinding {
46
+ readonly kind: ApplicabilityFindingKind;
47
+ readonly severity: ApplicabilitySeverity;
48
+ /** Human-readable statement of what is unresolved. */
49
+ readonly detail: string;
50
+ /**
51
+ * Where it was found: an AST path (`'args[1]'`), a convention key, or a
52
+ * model id. Absent when the finding is about the record as a whole.
53
+ */
54
+ readonly where?: string;
55
+ }
56
+ /**
57
+ * What the checker is given. Every field is optional EXCEPT the side
58
+ * conditions, which are required so that "this record states none" is a
59
+ * written choice (`[]`) rather than a forgotten argument — the same reasoning
60
+ * that made `passingWitnessIds` required in `derive-evidence.ts`.
61
+ *
62
+ * @internal
63
+ */
64
+ export interface ApplicabilityInput {
65
+ /** The transformation's AST, when the record encodes one. */
66
+ readonly ast?: ExprNode;
67
+ /** The record's stated side conditions, as free prose. REQUIRED; `[]` is a statement. */
68
+ readonly sideConditions: readonly string[];
69
+ /** The premise records' declared conventions. */
70
+ readonly premiseConventions?: Conventions;
71
+ /** The conclusion record's declared conventions. */
72
+ readonly conclusionConventions?: Conventions;
73
+ /** The premise models (many). */
74
+ readonly premises?: readonly AtlasModel[];
75
+ /** The conclusion model (one). */
76
+ readonly conclusion?: AtlasModel;
77
+ /**
78
+ * Family pairs already bridged, so a genuine cross-family step is not
79
+ * reported as unrecorded. Unordered: `['a','b']` covers `['b','a']`.
80
+ */
81
+ readonly declaredBridges?: readonly (readonly [string, string])[];
82
+ }
83
+ /**
84
+ * Every unresolved question and contradiction the checker can see in a record.
85
+ *
86
+ * An EMPTY result means "no rule fired", which is weaker than "this bridge is
87
+ * valid" and must not be reported as the latter. The rules in hand cover
88
+ * dimensions, declared conventions, division guards, even-power equating and
89
+ * model families; a bridge can be wrong in ways none of them reaches.
90
+ *
91
+ * @param input - the record's checkable parts. `sideConditions` is required.
92
+ * @returns findings in rule order (dimensions, conventions, AST, models);
93
+ * never `null`, never throws on a malformed AST.
94
+ * @internal
95
+ */
96
+ export declare function checkApplicability(input: ApplicabilityInput): readonly ApplicabilityFinding[];
97
+ /**
98
+ * The `'blocking'` subset of {@link checkApplicability}.
99
+ *
100
+ * Offered because the two severities are read by different callers — a report
101
+ * shows both, a gate looks only at contradictions — and filtering on the
102
+ * severity string at every call site is how one of them eventually filters on
103
+ * the wrong one.
104
+ *
105
+ * @internal
106
+ */
107
+ export declare function blockingFindings(findings: readonly ApplicabilityFinding[]): readonly ApplicabilityFinding[];
108
+ //# sourceMappingURL=applicability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applicability.d.ts","sourceRoot":"","sources":["../../src/atlas/applicability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qFAAqF;AACrF,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAChC,2BAA2B,GAC3B,qBAAqB,GACrB,uBAAuB,GACvB,oBAAoB,GACpB,kBAAkB,GAClB,yBAAyB,GACzB,uBAAuB,CAAC;AAE5B,+EAA+E;AAC/E,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,6DAA6D;IAC7D,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;IACxB,yFAAyF;IACzF,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,iDAAiD;IACjD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,WAAW,CAAC;IAC1C,oDAAoD;IACpD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC;IAC7C,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC1C,kCAAkC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;CACnE;AAoLD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,GACxB,SAAS,oBAAoB,EAAE,CAkFjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,SAAS,oBAAoB,EAAE,GACxC,SAAS,oBAAoB,EAAE,CAEjC"}