universal-physics-tensor 0.4.5

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 (299) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +377 -0
  3. package/dist/bridges/equations/be-11-decoherence-master.d.ts +83 -0
  4. package/dist/bridges/equations/be-11-decoherence-master.d.ts.map +1 -0
  5. package/dist/bridges/equations/be-11-decoherence-master.js +116 -0
  6. package/dist/bridges/equations/be-11-decoherence-master.js.map +1 -0
  7. package/dist/bridges/equations/be-12-coherence-length.d.ts +80 -0
  8. package/dist/bridges/equations/be-12-coherence-length.d.ts.map +1 -0
  9. package/dist/bridges/equations/be-12-coherence-length.js +128 -0
  10. package/dist/bridges/equations/be-12-coherence-length.js.map +1 -0
  11. package/dist/bridges/equations/be-13-einstein-trace.d.ts +89 -0
  12. package/dist/bridges/equations/be-13-einstein-trace.d.ts.map +1 -0
  13. package/dist/bridges/equations/be-13-einstein-trace.js +143 -0
  14. package/dist/bridges/equations/be-13-einstein-trace.js.map +1 -0
  15. package/dist/bridges/equations/be-14-ryu-takayanagi.d.ts +67 -0
  16. package/dist/bridges/equations/be-14-ryu-takayanagi.d.ts.map +1 -0
  17. package/dist/bridges/equations/be-14-ryu-takayanagi.js +112 -0
  18. package/dist/bridges/equations/be-14-ryu-takayanagi.js.map +1 -0
  19. package/dist/bridges/equations/be-15-emergence.d.ts +164 -0
  20. package/dist/bridges/equations/be-15-emergence.d.ts.map +1 -0
  21. package/dist/bridges/equations/be-15-emergence.js +204 -0
  22. package/dist/bridges/equations/be-15-emergence.js.map +1 -0
  23. package/dist/bridges/equations/be-16-landauer.d.ts +180 -0
  24. package/dist/bridges/equations/be-16-landauer.d.ts.map +1 -0
  25. package/dist/bridges/equations/be-16-landauer.js +206 -0
  26. package/dist/bridges/equations/be-16-landauer.js.map +1 -0
  27. package/dist/bridges/equations/be-17-einstein-cartan.d.ts +245 -0
  28. package/dist/bridges/equations/be-17-einstein-cartan.d.ts.map +1 -0
  29. package/dist/bridges/equations/be-17-einstein-cartan.js +304 -0
  30. package/dist/bridges/equations/be-17-einstein-cartan.js.map +1 -0
  31. package/dist/bridges/equations/be-18-higgs-mass.d.ts +65 -0
  32. package/dist/bridges/equations/be-18-higgs-mass.d.ts.map +1 -0
  33. package/dist/bridges/equations/be-18-higgs-mass.js +86 -0
  34. package/dist/bridges/equations/be-18-higgs-mass.js.map +1 -0
  35. package/dist/bridges/equations/be-19-quantum-bounce.d.ts +72 -0
  36. package/dist/bridges/equations/be-19-quantum-bounce.d.ts.map +1 -0
  37. package/dist/bridges/equations/be-19-quantum-bounce.js +151 -0
  38. package/dist/bridges/equations/be-19-quantum-bounce.js.map +1 -0
  39. package/dist/bridges/equations/be-20-vacuum-energy.d.ts +72 -0
  40. package/dist/bridges/equations/be-20-vacuum-energy.d.ts.map +1 -0
  41. package/dist/bridges/equations/be-20-vacuum-energy.js +115 -0
  42. package/dist/bridges/equations/be-20-vacuum-energy.js.map +1 -0
  43. package/dist/bridges/equations/be-21-kss-bound.d.ts +72 -0
  44. package/dist/bridges/equations/be-21-kss-bound.d.ts.map +1 -0
  45. package/dist/bridges/equations/be-21-kss-bound.js +103 -0
  46. package/dist/bridges/equations/be-21-kss-bound.js.map +1 -0
  47. package/dist/bridges/equations/be-22-topological-entanglement.d.ts +90 -0
  48. package/dist/bridges/equations/be-22-topological-entanglement.d.ts.map +1 -0
  49. package/dist/bridges/equations/be-22-topological-entanglement.js +123 -0
  50. package/dist/bridges/equations/be-22-topological-entanglement.js.map +1 -0
  51. package/dist/bridges/equations/be-23-syk-planckian.d.ts +89 -0
  52. package/dist/bridges/equations/be-23-syk-planckian.d.ts.map +1 -0
  53. package/dist/bridges/equations/be-23-syk-planckian.js +155 -0
  54. package/dist/bridges/equations/be-23-syk-planckian.js.map +1 -0
  55. package/dist/bridges/equations/be-24-foerster-fret.d.ts +81 -0
  56. package/dist/bridges/equations/be-24-foerster-fret.d.ts.map +1 -0
  57. package/dist/bridges/equations/be-24-foerster-fret.js +121 -0
  58. package/dist/bridges/equations/be-24-foerster-fret.js.map +1 -0
  59. package/dist/bridges/equations/be-25-iit-phi.d.ts +220 -0
  60. package/dist/bridges/equations/be-25-iit-phi.d.ts.map +1 -0
  61. package/dist/bridges/equations/be-25-iit-phi.js +259 -0
  62. package/dist/bridges/equations/be-25-iit-phi.js.map +1 -0
  63. package/dist/bridges/equations/be-25-orch-or.d.ts +78 -0
  64. package/dist/bridges/equations/be-25-orch-or.d.ts.map +1 -0
  65. package/dist/bridges/equations/be-25-orch-or.js +121 -0
  66. package/dist/bridges/equations/be-25-orch-or.js.map +1 -0
  67. package/dist/bridges/equations/be-26-dna-tunneling.d.ts +75 -0
  68. package/dist/bridges/equations/be-26-dna-tunneling.d.ts.map +1 -0
  69. package/dist/bridges/equations/be-26-dna-tunneling.js +138 -0
  70. package/dist/bridges/equations/be-26-dna-tunneling.js.map +1 -0
  71. package/dist/bridges/equations/be-27-effective-temperature.d.ts +81 -0
  72. package/dist/bridges/equations/be-27-effective-temperature.d.ts.map +1 -0
  73. package/dist/bridges/equations/be-27-effective-temperature.js +120 -0
  74. package/dist/bridges/equations/be-27-effective-temperature.js.map +1 -0
  75. package/dist/bridges/equations/be-28-onsager-entropy-production.d.ts +175 -0
  76. package/dist/bridges/equations/be-28-onsager-entropy-production.d.ts.map +1 -0
  77. package/dist/bridges/equations/be-28-onsager-entropy-production.js +203 -0
  78. package/dist/bridges/equations/be-28-onsager-entropy-production.js.map +1 -0
  79. package/dist/bridges/equations/be-29-jarzynski.d.ts +86 -0
  80. package/dist/bridges/equations/be-29-jarzynski.d.ts.map +1 -0
  81. package/dist/bridges/equations/be-29-jarzynski.js +132 -0
  82. package/dist/bridges/equations/be-29-jarzynski.js.map +1 -0
  83. package/dist/bridges/equations/be-30-flm-first-law.d.ts +93 -0
  84. package/dist/bridges/equations/be-30-flm-first-law.d.ts.map +1 -0
  85. package/dist/bridges/equations/be-30-flm-first-law.js +109 -0
  86. package/dist/bridges/equations/be-30-flm-first-law.js.map +1 -0
  87. package/dist/bridges/equations/be-31-causal-set-bd.d.ts +96 -0
  88. package/dist/bridges/equations/be-31-causal-set-bd.d.ts.map +1 -0
  89. package/dist/bridges/equations/be-31-causal-set-bd.js +133 -0
  90. package/dist/bridges/equations/be-31-causal-set-bd.js.map +1 -0
  91. package/dist/bridges/equations/be-32-quantum-reference-frame.d.ts +113 -0
  92. package/dist/bridges/equations/be-32-quantum-reference-frame.d.ts.map +1 -0
  93. package/dist/bridges/equations/be-32-quantum-reference-frame.js +155 -0
  94. package/dist/bridges/equations/be-32-quantum-reference-frame.js.map +1 -0
  95. package/dist/bridges/equations/be-33-hertz-millis.d.ts +77 -0
  96. package/dist/bridges/equations/be-33-hertz-millis.d.ts.map +1 -0
  97. package/dist/bridges/equations/be-33-hertz-millis.js +113 -0
  98. package/dist/bridges/equations/be-33-hertz-millis.js.map +1 -0
  99. package/dist/bridges/equations/be-34-kibble-zurek.d.ts +76 -0
  100. package/dist/bridges/equations/be-34-kibble-zurek.d.ts.map +1 -0
  101. package/dist/bridges/equations/be-34-kibble-zurek.js +139 -0
  102. package/dist/bridges/equations/be-34-kibble-zurek.js.map +1 -0
  103. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +117 -0
  104. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -0
  105. package/dist/bridges/equations/be-35-conformal-bootstrap.js +167 -0
  106. package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -0
  107. package/dist/bridges/equations/be-36-gw-speed-bound.d.ts +77 -0
  108. package/dist/bridges/equations/be-36-gw-speed-bound.d.ts.map +1 -0
  109. package/dist/bridges/equations/be-36-gw-speed-bound.js +107 -0
  110. package/dist/bridges/equations/be-36-gw-speed-bound.js.map +1 -0
  111. package/dist/bridges/equations/be-37-shapiro-delay.d.ts +260 -0
  112. package/dist/bridges/equations/be-37-shapiro-delay.d.ts.map +1 -0
  113. package/dist/bridges/equations/be-37-shapiro-delay.js +429 -0
  114. package/dist/bridges/equations/be-37-shapiro-delay.js.map +1 -0
  115. package/dist/bridges/equations/be-38-mond.d.ts +86 -0
  116. package/dist/bridges/equations/be-38-mond.d.ts.map +1 -0
  117. package/dist/bridges/equations/be-38-mond.js +122 -0
  118. package/dist/bridges/equations/be-38-mond.js.map +1 -0
  119. package/dist/bridges/equations/be-39-asymptotic-safety.d.ts +106 -0
  120. package/dist/bridges/equations/be-39-asymptotic-safety.d.ts.map +1 -0
  121. package/dist/bridges/equations/be-39-asymptotic-safety.js +155 -0
  122. package/dist/bridges/equations/be-39-asymptotic-safety.js.map +1 -0
  123. package/dist/bridges/equations/be-40-composite-higgs.d.ts +81 -0
  124. package/dist/bridges/equations/be-40-composite-higgs.d.ts.map +1 -0
  125. package/dist/bridges/equations/be-40-composite-higgs.js +149 -0
  126. package/dist/bridges/equations/be-40-composite-higgs.js.map +1 -0
  127. package/dist/bridges/equations/be-41-swampland.d.ts +67 -0
  128. package/dist/bridges/equations/be-41-swampland.d.ts.map +1 -0
  129. package/dist/bridges/equations/be-41-swampland.js +109 -0
  130. package/dist/bridges/equations/be-41-swampland.js.map +1 -0
  131. package/dist/bridges/equations/be-42-hawking-temperature.d.ts +67 -0
  132. package/dist/bridges/equations/be-42-hawking-temperature.d.ts.map +1 -0
  133. package/dist/bridges/equations/be-42-hawking-temperature.js +109 -0
  134. package/dist/bridges/equations/be-42-hawking-temperature.js.map +1 -0
  135. package/dist/bridges/equations/be-43-er-epr.d.ts +73 -0
  136. package/dist/bridges/equations/be-43-er-epr.d.ts.map +1 -0
  137. package/dist/bridges/equations/be-43-er-epr.js +114 -0
  138. package/dist/bridges/equations/be-43-er-epr.js.map +1 -0
  139. package/dist/bridges/equations/be-44-soft-hair.d.ts +151 -0
  140. package/dist/bridges/equations/be-44-soft-hair.d.ts.map +1 -0
  141. package/dist/bridges/equations/be-44-soft-hair.js +185 -0
  142. package/dist/bridges/equations/be-44-soft-hair.js.map +1 -0
  143. package/dist/bridges/equations/be-45-tcc.d.ts +116 -0
  144. package/dist/bridges/equations/be-45-tcc.d.ts.map +1 -0
  145. package/dist/bridges/equations/be-45-tcc.js +157 -0
  146. package/dist/bridges/equations/be-45-tcc.js.map +1 -0
  147. package/dist/bridges/equations/be-46-multiverse-measure.d.ts +163 -0
  148. package/dist/bridges/equations/be-46-multiverse-measure.d.ts.map +1 -0
  149. package/dist/bridges/equations/be-46-multiverse-measure.js +198 -0
  150. package/dist/bridges/equations/be-46-multiverse-measure.js.map +1 -0
  151. package/dist/bridges/equations/be-47-bbn-dark-sector.d.ts +72 -0
  152. package/dist/bridges/equations/be-47-bbn-dark-sector.d.ts.map +1 -0
  153. package/dist/bridges/equations/be-47-bbn-dark-sector.js +121 -0
  154. package/dist/bridges/equations/be-47-bbn-dark-sector.js.map +1 -0
  155. package/dist/bridges/equations/be-48-grw-localization.d.ts +84 -0
  156. package/dist/bridges/equations/be-48-grw-localization.d.ts.map +1 -0
  157. package/dist/bridges/equations/be-48-grw-localization.js +107 -0
  158. package/dist/bridges/equations/be-48-grw-localization.js.map +1 -0
  159. package/dist/bridges/equations/be-49-quantum-darwinism.d.ts +97 -0
  160. package/dist/bridges/equations/be-49-quantum-darwinism.d.ts.map +1 -0
  161. package/dist/bridges/equations/be-49-quantum-darwinism.js +129 -0
  162. package/dist/bridges/equations/be-49-quantum-darwinism.js.map +1 -0
  163. package/dist/bridges/equations/be-50-wheeler-feynman.d.ts +120 -0
  164. package/dist/bridges/equations/be-50-wheeler-feynman.d.ts.map +1 -0
  165. package/dist/bridges/equations/be-50-wheeler-feynman.js +151 -0
  166. package/dist/bridges/equations/be-50-wheeler-feynman.js.map +1 -0
  167. package/dist/bridges/gravitational-lensing.d.ts +52 -0
  168. package/dist/bridges/gravitational-lensing.d.ts.map +1 -0
  169. package/dist/bridges/gravitational-lensing.js +48 -0
  170. package/dist/bridges/gravitational-lensing.js.map +1 -0
  171. package/dist/bridges/index.d.ts +104 -0
  172. package/dist/bridges/index.d.ts.map +1 -0
  173. package/dist/bridges/index.js +1663 -0
  174. package/dist/bridges/index.js.map +1 -0
  175. package/dist/bridges/perihelion-precession.d.ts +62 -0
  176. package/dist/bridges/perihelion-precession.d.ts.map +1 -0
  177. package/dist/bridges/perihelion-precession.js +68 -0
  178. package/dist/bridges/perihelion-precession.js.map +1 -0
  179. package/dist/core/tensor.d.ts +135 -0
  180. package/dist/core/tensor.d.ts.map +1 -0
  181. package/dist/core/tensor.js +376 -0
  182. package/dist/core/tensor.js.map +1 -0
  183. package/dist/core/types.d.ts +131 -0
  184. package/dist/core/types.d.ts.map +1 -0
  185. package/dist/core/types.js +25 -0
  186. package/dist/core/types.js.map +1 -0
  187. package/dist/dimensional/algebra.d.ts +34 -0
  188. package/dist/dimensional/algebra.d.ts.map +1 -0
  189. package/dist/dimensional/algebra.js +90 -0
  190. package/dist/dimensional/algebra.js.map +1 -0
  191. package/dist/dimensional/bridge-check.d.ts +48 -0
  192. package/dist/dimensional/bridge-check.d.ts.map +1 -0
  193. package/dist/dimensional/bridge-check.js +137 -0
  194. package/dist/dimensional/bridge-check.js.map +1 -0
  195. package/dist/dimensional/connection-validators.d.ts +53 -0
  196. package/dist/dimensional/connection-validators.d.ts.map +1 -0
  197. package/dist/dimensional/connection-validators.js +84 -0
  198. package/dist/dimensional/connection-validators.js.map +1 -0
  199. package/dist/dimensional/connection.d.ts +40 -0
  200. package/dist/dimensional/connection.d.ts.map +1 -0
  201. package/dist/dimensional/connection.js +81 -0
  202. package/dist/dimensional/connection.js.map +1 -0
  203. package/dist/dimensional/constants.d.ts +30 -0
  204. package/dist/dimensional/constants.d.ts.map +1 -0
  205. package/dist/dimensional/constants.js +31 -0
  206. package/dist/dimensional/constants.js.map +1 -0
  207. package/dist/dimensional/errors.d.ts +161 -0
  208. package/dist/dimensional/errors.d.ts.map +1 -0
  209. package/dist/dimensional/errors.js +254 -0
  210. package/dist/dimensional/errors.js.map +1 -0
  211. package/dist/dimensional/fresh-label.d.ts +26 -0
  212. package/dist/dimensional/fresh-label.d.ts.map +1 -0
  213. package/dist/dimensional/fresh-label.js +31 -0
  214. package/dist/dimensional/fresh-label.js.map +1 -0
  215. package/dist/dimensional/metric-validators.d.ts +124 -0
  216. package/dist/dimensional/metric-validators.d.ts.map +1 -0
  217. package/dist/dimensional/metric-validators.js +141 -0
  218. package/dist/dimensional/metric-validators.js.map +1 -0
  219. package/dist/dimensional/metric.d.ts +67 -0
  220. package/dist/dimensional/metric.d.ts.map +1 -0
  221. package/dist/dimensional/metric.js +177 -0
  222. package/dist/dimensional/metric.js.map +1 -0
  223. package/dist/dimensional/tensor.d.ts +153 -0
  224. package/dist/dimensional/tensor.d.ts.map +1 -0
  225. package/dist/dimensional/tensor.js +138 -0
  226. package/dist/dimensional/tensor.js.map +1 -0
  227. package/dist/dimensional/types.d.ts +50 -0
  228. package/dist/dimensional/types.d.ts.map +1 -0
  229. package/dist/dimensional/types.js +66 -0
  230. package/dist/dimensional/types.js.map +1 -0
  231. package/dist/dimensional/validator.d.ts +84 -0
  232. package/dist/dimensional/validator.d.ts.map +1 -0
  233. package/dist/dimensional/validator.js +505 -0
  234. package/dist/dimensional/validator.js.map +1 -0
  235. package/dist/index.d.ts +25 -0
  236. package/dist/index.d.ts.map +1 -0
  237. package/dist/index.js +37 -0
  238. package/dist/index.js.map +1 -0
  239. package/dist/numerical/be37-covariant-eikonal.d.ts +90 -0
  240. package/dist/numerical/be37-covariant-eikonal.d.ts.map +1 -0
  241. package/dist/numerical/be37-covariant-eikonal.js +79 -0
  242. package/dist/numerical/be37-covariant-eikonal.js.map +1 -0
  243. package/dist/numerical/connection-lowering-helpers.d.ts +107 -0
  244. package/dist/numerical/connection-lowering-helpers.d.ts.map +1 -0
  245. package/dist/numerical/connection-lowering-helpers.js +315 -0
  246. package/dist/numerical/connection-lowering-helpers.js.map +1 -0
  247. package/dist/numerical/engine-registry.d.ts +50 -0
  248. package/dist/numerical/engine-registry.d.ts.map +1 -0
  249. package/dist/numerical/engine-registry.js +82 -0
  250. package/dist/numerical/engine-registry.js.map +1 -0
  251. package/dist/numerical/errors.d.ts +28 -0
  252. package/dist/numerical/errors.d.ts.map +1 -0
  253. package/dist/numerical/errors.js +39 -0
  254. package/dist/numerical/errors.js.map +1 -0
  255. package/dist/numerical/float64-engine.d.ts +53 -0
  256. package/dist/numerical/float64-engine.d.ts.map +1 -0
  257. package/dist/numerical/float64-engine.js +638 -0
  258. package/dist/numerical/float64-engine.js.map +1 -0
  259. package/dist/numerical/geodesic-integrator.d.ts +62 -0
  260. package/dist/numerical/geodesic-integrator.d.ts.map +1 -0
  261. package/dist/numerical/geodesic-integrator.js +103 -0
  262. package/dist/numerical/geodesic-integrator.js.map +1 -0
  263. package/dist/numerical/grid-field.d.ts +24 -0
  264. package/dist/numerical/grid-field.d.ts.map +1 -0
  265. package/dist/numerical/grid-field.js +2 -0
  266. package/dist/numerical/grid-field.js.map +1 -0
  267. package/dist/numerical/index.d.ts +80 -0
  268. package/dist/numerical/index.d.ts.map +1 -0
  269. package/dist/numerical/index.js +75 -0
  270. package/dist/numerical/index.js.map +1 -0
  271. package/dist/numerical/lowering.d.ts +48 -0
  272. package/dist/numerical/lowering.d.ts.map +1 -0
  273. package/dist/numerical/lowering.js +443 -0
  274. package/dist/numerical/lowering.js.map +1 -0
  275. package/dist/numerical/mathts-engine.d.ts +55 -0
  276. package/dist/numerical/mathts-engine.d.ts.map +1 -0
  277. package/dist/numerical/mathts-engine.js +164 -0
  278. package/dist/numerical/mathts-engine.js.map +1 -0
  279. package/dist/numerical/metric-inverse.d.ts +31 -0
  280. package/dist/numerical/metric-inverse.d.ts.map +1 -0
  281. package/dist/numerical/metric-inverse.js +68 -0
  282. package/dist/numerical/metric-inverse.js.map +1 -0
  283. package/dist/numerical/null-ray-integrator.d.ts +13 -0
  284. package/dist/numerical/null-ray-integrator.d.ts.map +1 -0
  285. package/dist/numerical/null-ray-integrator.js +53 -0
  286. package/dist/numerical/null-ray-integrator.js.map +1 -0
  287. package/dist/numerical/pderiv.d.ts +43 -0
  288. package/dist/numerical/pderiv.d.ts.map +1 -0
  289. package/dist/numerical/pderiv.js +121 -0
  290. package/dist/numerical/pderiv.js.map +1 -0
  291. package/dist/numerical/tensor-engine.d.ts +114 -0
  292. package/dist/numerical/tensor-engine.d.ts.map +1 -0
  293. package/dist/numerical/tensor-engine.js +64 -0
  294. package/dist/numerical/tensor-engine.js.map +1 -0
  295. package/dist/numerical/types.d.ts +37 -0
  296. package/dist/numerical/types.d.ts.map +1 -0
  297. package/dist/numerical/types.js +8 -0
  298. package/dist/numerical/types.js.map +1 -0
  299. package/package.json +72 -0
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Bridge Equation 46 — Multiverse Measure Problem
3
+ * (Weinberg-Vilenkin anthropic-probability scalar reduction).
4
+ *
5
+ * **Original (formally divergent) form.**
6
+ *
7
+ * P[O] = ∫ dμ[g, φ] W[g, φ] δ(O − O[g, φ])
8
+ *
9
+ * The integration measure dμ over the space of all spacetime metrics
10
+ * and field configurations is not Turing-computable, and the weighting
11
+ * factor W is itself the **unsolved measure problem** — the equation's
12
+ * own subject. As written, the original BE-46 is not a closed-form
13
+ * mathematical object that can be encoded in the UPT AST grammar
14
+ * (`symbol | op (* / + - ^) | integral | derivative` — there is no
15
+ * functional integral over the space of metrics). It is included in
16
+ * the catalog as a flagged formally-divergent entry whose role is to
17
+ * surface the bridge-framing question, not to be evaluated.
18
+ *
19
+ * **Encoded reduction (Weinberg-Vilenkin form).** Wave Z applies
20
+ * OpenAI's scalar reduction: instead of encoding the full path
21
+ * integral, we encode the most-cited specific anthropic-probability
22
+ * proposal — the Weinberg-Vilenkin form for a cosmological-constant-
23
+ * like landscape parameter Λ:
24
+ *
25
+ * P(Λ) = A · exp(−α / Λ)
26
+ *
27
+ * where:
28
+ * - P(Λ) is a probability ∈ [0, 1] (DIMENSIONLESS by definition);
29
+ * - A is a normalization constant (DIMENSIONLESS; scheme-dependent —
30
+ * it depends on the integrating-out cutoff used to render the
31
+ * underlying measure finite);
32
+ * - α is a model parameter, and Λ is the landscape parameter; the
33
+ * ratio α/Λ must be dimensionless for the exponential to be
34
+ * mathematically meaningful, so we encode α and Λ both as
35
+ * DIMENSIONLESS symbols (treating them as ratio components in the
36
+ * dimensionless argument).
37
+ *
38
+ * **Dimensionless-stub pattern for exp.** The AST has no `exp`
39
+ * primitive. Following the same pattern as BE-26 (exp(-WKB)), BE-41
40
+ * (exp(...)) and BE-45 (log()), we encode `exp(−α/Λ)` as a fresh
41
+ * DIMENSIONLESS symbol stub `exp_factor` and expose the exp-argument
42
+ * `−α/Λ` separately as `BE46_EXP_ARGUMENT` so the lemma test can
43
+ * verify it is dimensionless directly. The stub does NOT enforce that
44
+ * the argument is dimensionless — that is a property the encoding
45
+ * committee enforces by construction.
46
+ *
47
+ * Bracket-checks (numerical evaluator computes P(Λ) = A·exp(−α/Λ)):
48
+ * - At Λ = α (the e-folding point): P = A · exp(−1) ≈ A · 0.368;
49
+ * - For large Λ (Λ ≫ α): P → A (exponential suppression vanishes,
50
+ * Λ-large limit dominates);
51
+ * - For small Λ (Λ ≪ α): P → 0 (exponential suppression is severe).
52
+ *
53
+ * References:
54
+ * - Linde, Linde & Mezhlumian 1994 *Phys. Rev. D* 49:1783
55
+ * (arXiv:gr-qc/9306035; volume-weighting and scale-factor cutoff
56
+ * measure proposals).
57
+ * - Vilenkin 1995 *Phys. Rev. Lett.* 74:846 (arXiv:gr-qc/9406010;
58
+ * proper-time cutoff measure; canonical anthropic-probability
59
+ * formulation).
60
+ * - Garriga & Vilenkin 2001 *Phys. Rev. D* 64:023507; comparative
61
+ * analysis of measure proposals.
62
+ * - Freivogel 2011 *Class. Quantum Grav.* 28:204007
63
+ * (arXiv:1105.0244; review of the measure-problem proposals;
64
+ * canonical reference for the unsolved-problem framing).
65
+ * - Weinberg 1987 *Phys. Rev. Lett.* 59:2607 (canonical anthropic
66
+ * prediction for the cosmological constant — the physical
67
+ * motivation for the `exp(−α/Λ)` form).
68
+ *
69
+ * Status: highly-speculative.
70
+ *
71
+ * Honest-claude scope notes:
72
+ * - This module encodes ONE specific measure proposal — the
73
+ * Weinberg-Vilenkin / `exp(−α/Λ)` form. Alternative measures
74
+ * (proper-time cutoff, scale-factor cutoff, causal-patch,
75
+ * Hartle-Hawking no-boundary) give DIFFERENT P(Λ) shapes; the
76
+ * measure problem is unsolved precisely because there is no
77
+ * consensus first-principles derivation that picks out one.
78
+ * - The exp argument α/Λ is dimensionless **by the dimensionless-
79
+ * stub convention**; α and Λ are encoded as DIMENSIONLESS symbols
80
+ * because they appear as ratio components of a dimensionless
81
+ * scalar. In a more elaborate encoding α and Λ might carry
82
+ * [energy^4] (cosmological-constant density) and cancel; that is
83
+ * not modelled here.
84
+ * - The normalization A is itself a scheme-dependent quantity (it
85
+ * depends on the integrating-out cutoff applied to the underlying
86
+ * measure to render it finite). The numerical evaluator takes A
87
+ * as a free input.
88
+ * - Status 'highly-speculative' is **not lifted by this encoding**.
89
+ * Pinning a Tier-5 AST does not promote the bridge framing — the
90
+ * measure problem remains unsolved, and `exp(−α/Λ)` is one
91
+ * proposal among several. Promoting 'highly-speculative' →
92
+ * 'speculative' or 'established' would require deleting the
93
+ * status-pin test in `tests/bridges/be-46-encoding.test.ts`
94
+ * deliberately.
95
+ *
96
+ * @see docs/specification/Part-II.md ("Bridge Equation 46: Multiverse Measure Problem")
97
+ * @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 46)
98
+ * @module bridges/equations/be-46-multiverse-measure
99
+ */
100
+ import { validate, validateEquation } from '../../dimensional/validator.js';
101
+ import { DIMENSIONLESS, } from '../../dimensional/types.js';
102
+ const sym = (name, dim) => ({ kind: 'symbol', name, dim });
103
+ // --- Symbolic AST ---
104
+ /**
105
+ * Lemma AST: the exp argument `−α / Λ` (DIMENSIONLESS).
106
+ *
107
+ * Encoded as `(0 - α) / Λ` so the binary-subtract/divide validator can
108
+ * walk the tree; an equivalent encoding `(-1) · (α/Λ)` via a
109
+ * dimensionless `neg_one` would also be valid. Both α and Λ carry the
110
+ * DIMENSIONLESS dimension (they are ratio components of a dimensionless
111
+ * scalar — see module-header honest-claude notes).
112
+ *
113
+ * Exposed for the lemma test that verifies the exp argument is
114
+ * dimensionless (per the dimensionless-stub convention).
115
+ */
116
+ export const BE46_EXP_ARGUMENT = {
117
+ kind: 'op', op: '/',
118
+ args: [
119
+ {
120
+ kind: 'op', op: '-',
121
+ args: [
122
+ sym('0', DIMENSIONLESS),
123
+ sym('alpha', DIMENSIONLESS),
124
+ ],
125
+ },
126
+ sym('Lambda', DIMENSIONLESS),
127
+ ],
128
+ };
129
+ /**
130
+ * Lemma AST: the `exp(−α/Λ)` factor, encoded as a fresh DIMENSIONLESS
131
+ * symbol stub `exp_factor` (the AST has no `exp` primitive; following
132
+ * BE-26, BE-41, BE-45 dimensionless-stub idiom). The actual exp
133
+ * argument is exposed separately via `BE46_EXP_ARGUMENT` so the lemma
134
+ * test can verify it is dimensionless.
135
+ */
136
+ export const BE46_EXP_FACTOR = sym('exp_factor', DIMENSIONLESS);
137
+ /**
138
+ * Lemma AST: the normalization constant A (DIMENSIONLESS;
139
+ * scheme-dependent — depends on the cutoff used to render the
140
+ * underlying measure finite).
141
+ */
142
+ export const BE46_NORMALIZATION = sym('A', DIMENSIONLESS);
143
+ /**
144
+ * RHS of `P(Λ) = A · exp(−α/Λ)` as a typed ExprNode tree:
145
+ *
146
+ * A · exp_factor
147
+ *
148
+ * `exp_factor` is a DIMENSIONLESS symbol stub for `exp(−α/Λ)`; the
149
+ * argument `−α/Λ` is exposed via `BE46_EXP_ARGUMENT` and verified
150
+ * dimensionless directly.
151
+ */
152
+ export const BE46_ANTHROPIC_PROBABILITY_RHS = {
153
+ kind: 'op', op: '*',
154
+ args: [
155
+ BE46_NORMALIZATION,
156
+ BE46_EXP_FACTOR,
157
+ ],
158
+ };
159
+ /** LHS: P(Λ) is a probability, DIMENSIONLESS by definition (P ∈ [0, 1]). */
160
+ export const BE46_ANTHROPIC_PROBABILITY_LHS = sym('P_Lambda', DIMENSIONLESS);
161
+ /**
162
+ * Evaluate the Weinberg-Vilenkin anthropic probability:
163
+ *
164
+ * P(Λ) = A · exp(−α / Λ)
165
+ *
166
+ * @returns Dimensionless probability (caller is responsible for
167
+ * ensuring the chosen (A, α, Λ) yield P ∈ [0, 1] — the function does
168
+ * not clamp).
169
+ */
170
+ export function evaluateWeinbergVilenkinP(input) {
171
+ const { normalization, alpha, lambda } = input;
172
+ if (!Number.isFinite(normalization)) {
173
+ throw new RangeError(`evaluateWeinbergVilenkinP: normalization must be finite, got ${normalization}`);
174
+ }
175
+ if (!Number.isFinite(alpha)) {
176
+ throw new RangeError(`evaluateWeinbergVilenkinP: alpha must be finite, got ${alpha}`);
177
+ }
178
+ if (!Number.isFinite(lambda) || lambda <= 0) {
179
+ throw new RangeError(`evaluateWeinbergVilenkinP: lambda must be a finite positive number, got ${lambda}`);
180
+ }
181
+ return normalization * Math.exp(-alpha / lambda);
182
+ }
183
+ // --- Self-validation ---
184
+ /**
185
+ * Run the AST through the dimensional analyzer; LHS and RHS should
186
+ * both be DIMENSIONLESS.
187
+ */
188
+ export function validateBE46Dimensions() {
189
+ const eq = validateEquation(BE46_ANTHROPIC_PROBABILITY_LHS, BE46_ANTHROPIC_PROBABILITY_RHS);
190
+ const lhs = validate(BE46_ANTHROPIC_PROBABILITY_LHS);
191
+ const rhs = validate(BE46_ANTHROPIC_PROBABILITY_RHS);
192
+ return {
193
+ ok: eq.ok,
194
+ lhsDim: lhs.inferredDimension,
195
+ rhsDim: rhs.inferredDimension,
196
+ };
197
+ }
198
+ //# sourceMappingURL=be-46-multiverse-measure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"be-46-multiverse-measure.js","sourceRoot":"","sources":["../../../src/bridges/equations/be-46-multiverse-measure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkGG;AAGH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAEL,aAAa,GACd,MAAM,4BAA4B,CAAC;AAEpC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,GAAc,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;AAExF,uBAAuB;AAEvB;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAa;IACzC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG;IACnB,IAAI,EAAE;QACJ;YACE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG;YACnB,IAAI,EAAE;gBACJ,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC;gBACvB,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC;aAC5B;SACF;QACD,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC7B;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,eAAe,GAAa,GAAG,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;AAE1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAa,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;AAEpE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAa;IACtD,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG;IACnB,IAAI,EAAE;QACJ,kBAAkB;QAClB,eAAe;KAChB;CACF,CAAC;AAEF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,8BAA8B,GAAa,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAavF;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAsB;IAC9D,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC/C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,UAAU,CAClB,gEAAgE,aAAa,EAAE,CAChF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,UAAU,CAClB,wDAAwD,KAAK,EAAE,CAChE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,UAAU,CAClB,2EAA2E,MAAM,EAAE,CACpF,CAAC;IACJ,CAAC;IACD,OAAO,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;AACnD,CAAC;AAED,0BAA0B;AAE1B;;;GAGG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,EAAE,GAAG,gBAAgB,CACzB,8BAA8B,EAC9B,8BAA8B,CAC/B,CAAC;IACF,MAAM,GAAG,GAAG,QAAQ,CAAC,8BAA8B,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,QAAQ,CAAC,8BAA8B,CAAC,CAAC;IACrD,OAAO;QACL,EAAE,EAAE,EAAE,CAAC,EAAE;QACT,MAAM,EAAE,GAAG,CAAC,iBAAiB;QAC7B,MAAM,EAAE,GAAG,CAAC,iBAAiB;KAC9B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Bridge Equation 47 — BBN Dark-Sector-Coupling Boltzmann ODE.
3
+ *
4
+ * dY/dt + 3 H Y = ⟨σv⟩_SM n_p n_n − ⟨σv⟩_dark n_χ² ε_transfer
5
+ *
6
+ * Big Bang Nucleosynthesis number-density Boltzmann equation with a
7
+ * dark-sector sink term. The base form (Hubble drag + SM source) is
8
+ * canonical Kolb-Turner §5.2 Eq. 5.13–5.14 / Pitrou et al. 2018
9
+ * Phys. Rep. 754:1 Eq. 2.5; the dark-sector coupling
10
+ * `⟨σv⟩_dark n_χ² ε_transfer` is the unverified physics extension.
11
+ *
12
+ * Status: speculative (the SM base is canonical; the dark-sector term
13
+ * is the conjectural part).
14
+ *
15
+ * Honest-claude scope notes:
16
+ * - Y is encoded as a number density [L^-3] so dY/dt has dim
17
+ * [L^-3 T^-1]. Each term in the equation reduces to [L^-3 T^-1]:
18
+ * ⟨σv⟩ has dim [L^3 T^-1] (cross-section × velocity); products of
19
+ * two number densities give [L^-6]; ⟨σv⟩ × density² = [L^-3 T^-1].
20
+ * - ε_transfer is dimensionless (transfer-efficiency).
21
+ * - We expose each term as a separate ExprNode (BBN_DARK_DYDT_TERM,
22
+ * BBN_DARK_HUBBLE_TERM, BBN_DARK_SM_TERM, BBN_DARK_DARK_TERM) so
23
+ * dimensional consistency can be tested per-term, not just on the
24
+ * reduced LHS/RHS.
25
+ *
26
+ * @see docs/specification/Part-II.md ("Bridge Equation 47: Big Bang Nucleosynthesis - Dark Sector Coupling")
27
+ * @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 47)
28
+ * @module bridges/equations/be-47-bbn-dark-sector
29
+ */
30
+ import type { ExprNode, DimensionValidationReport } from '../../dimensional/validator.js';
31
+ /** dY/dt — derivative of number density Y w.r.t. time. */
32
+ export declare const BBN_DARK_DYDT_TERM: ExprNode;
33
+ /** 3 H Y — Hubble dilution drag (H is frequency [T^-1]). */
34
+ export declare const BBN_DARK_HUBBLE_TERM: ExprNode;
35
+ /** ⟨σv⟩_SM · n_p · n_n — Standard Model two-body source. */
36
+ export declare const BBN_DARK_SM_TERM: ExprNode;
37
+ /** ⟨σv⟩_dark · n_χ² · ε_transfer — dark-sector sink. */
38
+ export declare const BBN_DARK_DARK_TERM: ExprNode;
39
+ /** LHS: dY/dt + 3 H Y. */
40
+ export declare const BBN_DARK_LHS: ExprNode;
41
+ /** RHS: ⟨σv⟩_SM n_p n_n − ⟨σv⟩_dark n_χ² ε_transfer. */
42
+ export declare const BBN_DARK_RHS: ExprNode;
43
+ export interface BBNDarkInputs {
44
+ /** Hubble parameter H (s^-1). */
45
+ H: number;
46
+ /** Yield / number density Y (m^-3). */
47
+ Y: number;
48
+ /** ⟨σv⟩_SM (m^3/s). */
49
+ sigmav_SM: number;
50
+ /** Proton number density (m^-3). */
51
+ n_p: number;
52
+ /** Neutron number density (m^-3). */
53
+ n_n: number;
54
+ /** ⟨σv⟩_dark (m^3/s). */
55
+ sigmav_dark: number;
56
+ /** Dark species number density n_χ (m^-3). */
57
+ n_chi: number;
58
+ /** Dimensionless transfer efficiency ε. */
59
+ eps_transfer: number;
60
+ }
61
+ /**
62
+ * Evaluate dY/dt = ⟨σv⟩_SM n_p n_n − ⟨σv⟩_dark n_χ² ε − 3 H Y.
63
+ *
64
+ * @returns dY/dt in (m^-3 s^-1).
65
+ */
66
+ export declare function evaluateBBNDark(input: BBNDarkInputs): number;
67
+ /**
68
+ * Run the AST through the dimensional analyzer; both LHS and RHS
69
+ * should be [L^-3 T^-1].
70
+ */
71
+ export declare function validateBBNDarkDimensions(): DimensionValidationReport;
72
+ //# sourceMappingURL=be-47-bbn-dark-sector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"be-47-bbn-dark-sector.d.ts","sourceRoot":"","sources":["../../../src/bridges/equations/be-47-bbn-dark-sector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAuB1F,0DAA0D;AAC1D,eAAO,MAAM,kBAAkB,EAAE,QAIhC,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,oBAAoB,EAAE,QAOlC,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,EAAE,QAO9B,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,EAAE,QAUhC,CAAC;AAEF,0BAA0B;AAC1B,eAAO,MAAM,YAAY,EAAE,QAG1B,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,YAAY,EAAE,QAG1B,CAAC;AAIF,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,CAAC,EAAE,MAAM,CAAC;IACV,uCAAuC;IACvC,CAAC,EAAE,MAAM,CAAC;IACV,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAkB5D;AAID;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,yBAAyB,CASrE"}
@@ -0,0 +1,121 @@
1
+ /**
2
+ * Bridge Equation 47 — BBN Dark-Sector-Coupling Boltzmann ODE.
3
+ *
4
+ * dY/dt + 3 H Y = ⟨σv⟩_SM n_p n_n − ⟨σv⟩_dark n_χ² ε_transfer
5
+ *
6
+ * Big Bang Nucleosynthesis number-density Boltzmann equation with a
7
+ * dark-sector sink term. The base form (Hubble drag + SM source) is
8
+ * canonical Kolb-Turner §5.2 Eq. 5.13–5.14 / Pitrou et al. 2018
9
+ * Phys. Rep. 754:1 Eq. 2.5; the dark-sector coupling
10
+ * `⟨σv⟩_dark n_χ² ε_transfer` is the unverified physics extension.
11
+ *
12
+ * Status: speculative (the SM base is canonical; the dark-sector term
13
+ * is the conjectural part).
14
+ *
15
+ * Honest-claude scope notes:
16
+ * - Y is encoded as a number density [L^-3] so dY/dt has dim
17
+ * [L^-3 T^-1]. Each term in the equation reduces to [L^-3 T^-1]:
18
+ * ⟨σv⟩ has dim [L^3 T^-1] (cross-section × velocity); products of
19
+ * two number densities give [L^-6]; ⟨σv⟩ × density² = [L^-3 T^-1].
20
+ * - ε_transfer is dimensionless (transfer-efficiency).
21
+ * - We expose each term as a separate ExprNode (BBN_DARK_DYDT_TERM,
22
+ * BBN_DARK_HUBBLE_TERM, BBN_DARK_SM_TERM, BBN_DARK_DARK_TERM) so
23
+ * dimensional consistency can be tested per-term, not just on the
24
+ * reduced LHS/RHS.
25
+ *
26
+ * @see docs/specification/Part-II.md ("Bridge Equation 47: Big Bang Nucleosynthesis - Dark Sector Coupling")
27
+ * @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 47)
28
+ * @module bridges/equations/be-47-bbn-dark-sector
29
+ */
30
+ import { validate, validateEquation } from '../../dimensional/validator.js';
31
+ import { DIMENSIONLESS, TIME, FREQUENCY, } from '../../dimensional/types.js';
32
+ const sym = (name, dim) => ({ kind: 'symbol', name, dim });
33
+ /** Number density [L^-3]. */
34
+ const NUMBER_DENSITY = {
35
+ L: -3, M: 0, T: 0, I: 0, Theta: 0, N: 0, J: 0,
36
+ };
37
+ /** Cross-section × velocity ⟨σv⟩ has dim [L^3 T^-1]. */
38
+ const SIGMAV = {
39
+ L: 3, M: 0, T: -1, I: 0, Theta: 0, N: 0, J: 0,
40
+ };
41
+ // --- Per-term ASTs ---
42
+ /** dY/dt — derivative of number density Y w.r.t. time. */
43
+ export const BBN_DARK_DYDT_TERM = {
44
+ kind: 'derivative',
45
+ of: sym('Y', NUMBER_DENSITY),
46
+ wrt: sym('t', TIME),
47
+ };
48
+ /** 3 H Y — Hubble dilution drag (H is frequency [T^-1]). */
49
+ export const BBN_DARK_HUBBLE_TERM = {
50
+ kind: 'op', op: '*',
51
+ args: [
52
+ sym('3', DIMENSIONLESS),
53
+ sym('H', FREQUENCY),
54
+ sym('Y', NUMBER_DENSITY),
55
+ ],
56
+ };
57
+ /** ⟨σv⟩_SM · n_p · n_n — Standard Model two-body source. */
58
+ export const BBN_DARK_SM_TERM = {
59
+ kind: 'op', op: '*',
60
+ args: [
61
+ sym('sigmav_SM', SIGMAV),
62
+ sym('n_p', NUMBER_DENSITY),
63
+ sym('n_n', NUMBER_DENSITY),
64
+ ],
65
+ };
66
+ /** ⟨σv⟩_dark · n_χ² · ε_transfer — dark-sector sink. */
67
+ export const BBN_DARK_DARK_TERM = {
68
+ kind: 'op', op: '*',
69
+ args: [
70
+ sym('sigmav_dark', SIGMAV),
71
+ {
72
+ kind: 'op', op: '^',
73
+ args: [sym('n_chi', NUMBER_DENSITY), sym('2', DIMENSIONLESS)],
74
+ },
75
+ sym('eps_transfer', DIMENSIONLESS),
76
+ ],
77
+ };
78
+ /** LHS: dY/dt + 3 H Y. */
79
+ export const BBN_DARK_LHS = {
80
+ kind: 'op', op: '+',
81
+ args: [BBN_DARK_DYDT_TERM, BBN_DARK_HUBBLE_TERM],
82
+ };
83
+ /** RHS: ⟨σv⟩_SM n_p n_n − ⟨σv⟩_dark n_χ² ε_transfer. */
84
+ export const BBN_DARK_RHS = {
85
+ kind: 'op', op: '-',
86
+ args: [BBN_DARK_SM_TERM, BBN_DARK_DARK_TERM],
87
+ };
88
+ /**
89
+ * Evaluate dY/dt = ⟨σv⟩_SM n_p n_n − ⟨σv⟩_dark n_χ² ε − 3 H Y.
90
+ *
91
+ * @returns dY/dt in (m^-3 s^-1).
92
+ */
93
+ export function evaluateBBNDark(input) {
94
+ const { H, Y, sigmav_SM, n_p, n_n, sigmav_dark, n_chi, eps_transfer, } = input;
95
+ const inputs = [H, Y, sigmav_SM, n_p, n_n, sigmav_dark, n_chi, eps_transfer];
96
+ for (const v of inputs) {
97
+ if (!Number.isFinite(v)) {
98
+ throw new RangeError(`evaluateBBNDark: all inputs must be finite, got ${JSON.stringify(input)}`);
99
+ }
100
+ }
101
+ const sm_source = sigmav_SM * n_p * n_n;
102
+ const dark_sink = sigmav_dark * n_chi * n_chi * eps_transfer;
103
+ const hubble_drag = 3 * H * Y;
104
+ return sm_source - dark_sink - hubble_drag;
105
+ }
106
+ // --- Self-validation ---
107
+ /**
108
+ * Run the AST through the dimensional analyzer; both LHS and RHS
109
+ * should be [L^-3 T^-1].
110
+ */
111
+ export function validateBBNDarkDimensions() {
112
+ const eq = validateEquation(BBN_DARK_LHS, BBN_DARK_RHS);
113
+ const lhs = validate(BBN_DARK_LHS);
114
+ const rhs = validate(BBN_DARK_RHS);
115
+ return {
116
+ ok: eq.ok,
117
+ lhsDim: lhs.inferredDimension,
118
+ rhsDim: rhs.inferredDimension,
119
+ };
120
+ }
121
+ //# sourceMappingURL=be-47-bbn-dark-sector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"be-47-bbn-dark-sector.js","sourceRoot":"","sources":["../../../src/bridges/equations/be-47-bbn-dark-sector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Bridge Equation 48 — GRW mass-amplified localization rate
3
+ * (Continuous Spontaneous Localization mass-dependence, post Wave Y
4
+ * reformulation).
5
+ *
6
+ * λ_GRW(m) = λ_0 · (m / m_0)
7
+ *
8
+ * The mass-amplification mechanism in objective-collapse models: a
9
+ * particle of mass m localizes at rate proportional to m/m_0, where
10
+ * m_0 is the nucleon mass and λ_0 ≈ 10⁻¹⁶ /s is the canonical GRW
11
+ * single-nucleon rate.
12
+ *
13
+ * References:
14
+ * - Ghirardi, Rimini & Weber 1986 *Phys. Rev. D* 34:470 (canonical
15
+ * GRW objective-collapse master equation; original 1986 form).
16
+ * - Pearle 1989 *Phys. Rev. A* 39:2277 (Continuous Spontaneous
17
+ * Localization extension; introduces mass-density-coupled noise).
18
+ * - Ghirardi, Pearle & Rimini 1990 *Phys. Rev. A* 42:78 (CSL with
19
+ * mass-amplification mechanism: rate λ ∝ m/m_0 for composite
20
+ * systems with N nucleons).
21
+ * - Bassi & Ghirardi 2003 *Phys. Rep.* 379:257 (review).
22
+ *
23
+ * Status: speculative.
24
+ *
25
+ * Honest-claude scope notes:
26
+ * - The full GRW master equation (encoded in formula_latex of BE-48
27
+ * entry, not here) is the operator-valued Lindblad form
28
+ * dρ/dt = -(i/ℏ)[H,ρ] + λ ∫d³x [L_x ρ L_x† - (1/2){L_x† L_x, ρ}].
29
+ * The Wave Y reformulation encodes only the scalar localization
30
+ * RATE λ_GRW(m), parallel to BE-11 encoding only the Caldeira-
31
+ * Leggett rate γ_k(λ) and not the full Lindblad master equation.
32
+ * - λ_0 = 10⁻¹⁶ /s is the canonical single-nucleon rate (per the
33
+ * 1986 GRW Phys. Rev. D 34:470). Earlier proposals (10⁻¹⁷ /s)
34
+ * are superseded by experimental constraints (Adler 2007 *J.
35
+ * Phys. A* 40:2935).
36
+ * - Bracket: λ_GRW(electron) = (m_e/m_p) × 10⁻¹⁶ ≈ 5×10⁻²⁰ /s
37
+ * (negligible for individual electrons); λ_GRW(macroscopic 1 g)
38
+ * = (10⁻³ kg / 1.67×10⁻²⁷ kg) × 10⁻¹⁶ ≈ 6×10⁷ /s (rapid collapse,
39
+ * no macroscopic Schrödinger-cat states).
40
+ *
41
+ * @see docs/specification/Part-II.md ("Bridge Equation 48")
42
+ * @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 48)
43
+ * @module bridges/equations/be-48-grw-localization
44
+ */
45
+ import type { ExprNode, DimensionValidationReport } from '../../dimensional/validator.js';
46
+ /**
47
+ * RHS of the mass-amplified GRW localization rate:
48
+ * λ_GRW(m) = λ_0 · (m / m_0)
49
+ *
50
+ * λ_0 has dim [frequency] = [T⁻¹]; (m / m_0) is dimensionless. Product
51
+ * is [frequency].
52
+ */
53
+ export declare const BE48_GRW_LOCALIZATION_RHS: ExprNode;
54
+ /** LHS: λ_GRW(m) has dimension [frequency] = [T⁻¹]. */
55
+ export declare const BE48_GRW_LOCALIZATION_LHS: ExprNode;
56
+ export interface GRWLocalizationInputs {
57
+ /** Object mass m (kg). Must be > 0 and finite. */
58
+ m_kg: number;
59
+ /**
60
+ * Reference mass m_0 (kg). Default: nucleon mass m_p ≈ 1.67×10⁻²⁷ kg
61
+ * (standard GRW choice).
62
+ */
63
+ m_0_kg?: number;
64
+ /**
65
+ * Single-nucleon localization rate λ_0 (1/s). Default: 1×10⁻¹⁶ /s
66
+ * (canonical GRW 1986 value, per Ghirardi-Rimini-Weber Phys. Rev. D
67
+ * 34:470).
68
+ */
69
+ lambda_0_per_s?: number;
70
+ }
71
+ /**
72
+ * Evaluate the GRW mass-amplified localization rate
73
+ *
74
+ * λ_GRW(m) = λ_0 · (m / m_0)
75
+ *
76
+ * @returns Localization rate in 1/s.
77
+ */
78
+ export declare function evaluateGRWLocalization(input: GRWLocalizationInputs): number;
79
+ /**
80
+ * Run the AST through the dimensional analyzer; both sides should be
81
+ * [frequency].
82
+ */
83
+ export declare function validateBE48Dimensions(): DimensionValidationReport;
84
+ //# sourceMappingURL=be-48-grw-localization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"be-48-grw-localization.d.ts","sourceRoot":"","sources":["../../../src/bridges/equations/be-48-grw-localization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAU1F;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,EAAE,QAYvC,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,yBAAyB,EAAE,QAAuC,CAAC;AAIhF,MAAM,WAAW,qBAAqB;IACpC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAKD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAsB5E;AAID;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,yBAAyB,CAYlE"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Bridge Equation 48 — GRW mass-amplified localization rate
3
+ * (Continuous Spontaneous Localization mass-dependence, post Wave Y
4
+ * reformulation).
5
+ *
6
+ * λ_GRW(m) = λ_0 · (m / m_0)
7
+ *
8
+ * The mass-amplification mechanism in objective-collapse models: a
9
+ * particle of mass m localizes at rate proportional to m/m_0, where
10
+ * m_0 is the nucleon mass and λ_0 ≈ 10⁻¹⁶ /s is the canonical GRW
11
+ * single-nucleon rate.
12
+ *
13
+ * References:
14
+ * - Ghirardi, Rimini & Weber 1986 *Phys. Rev. D* 34:470 (canonical
15
+ * GRW objective-collapse master equation; original 1986 form).
16
+ * - Pearle 1989 *Phys. Rev. A* 39:2277 (Continuous Spontaneous
17
+ * Localization extension; introduces mass-density-coupled noise).
18
+ * - Ghirardi, Pearle & Rimini 1990 *Phys. Rev. A* 42:78 (CSL with
19
+ * mass-amplification mechanism: rate λ ∝ m/m_0 for composite
20
+ * systems with N nucleons).
21
+ * - Bassi & Ghirardi 2003 *Phys. Rep.* 379:257 (review).
22
+ *
23
+ * Status: speculative.
24
+ *
25
+ * Honest-claude scope notes:
26
+ * - The full GRW master equation (encoded in formula_latex of BE-48
27
+ * entry, not here) is the operator-valued Lindblad form
28
+ * dρ/dt = -(i/ℏ)[H,ρ] + λ ∫d³x [L_x ρ L_x† - (1/2){L_x† L_x, ρ}].
29
+ * The Wave Y reformulation encodes only the scalar localization
30
+ * RATE λ_GRW(m), parallel to BE-11 encoding only the Caldeira-
31
+ * Leggett rate γ_k(λ) and not the full Lindblad master equation.
32
+ * - λ_0 = 10⁻¹⁶ /s is the canonical single-nucleon rate (per the
33
+ * 1986 GRW Phys. Rev. D 34:470). Earlier proposals (10⁻¹⁷ /s)
34
+ * are superseded by experimental constraints (Adler 2007 *J.
35
+ * Phys. A* 40:2935).
36
+ * - Bracket: λ_GRW(electron) = (m_e/m_p) × 10⁻¹⁶ ≈ 5×10⁻²⁰ /s
37
+ * (negligible for individual electrons); λ_GRW(macroscopic 1 g)
38
+ * = (10⁻³ kg / 1.67×10⁻²⁷ kg) × 10⁻¹⁶ ≈ 6×10⁷ /s (rapid collapse,
39
+ * no macroscopic Schrödinger-cat states).
40
+ *
41
+ * @see docs/specification/Part-II.md ("Bridge Equation 48")
42
+ * @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 48)
43
+ * @module bridges/equations/be-48-grw-localization
44
+ */
45
+ import { validate, validateEquation } from '../../dimensional/validator.js';
46
+ import { FREQUENCY, MASS, } from '../../dimensional/types.js';
47
+ const sym = (name, dim) => ({ kind: 'symbol', name, dim });
48
+ /**
49
+ * RHS of the mass-amplified GRW localization rate:
50
+ * λ_GRW(m) = λ_0 · (m / m_0)
51
+ *
52
+ * λ_0 has dim [frequency] = [T⁻¹]; (m / m_0) is dimensionless. Product
53
+ * is [frequency].
54
+ */
55
+ export const BE48_GRW_LOCALIZATION_RHS = {
56
+ kind: 'op', op: '*',
57
+ args: [
58
+ sym('lambda_0', FREQUENCY),
59
+ {
60
+ kind: 'op', op: '/',
61
+ args: [
62
+ sym('m', MASS),
63
+ sym('m_0', MASS),
64
+ ],
65
+ },
66
+ ],
67
+ };
68
+ /** LHS: λ_GRW(m) has dimension [frequency] = [T⁻¹]. */
69
+ export const BE48_GRW_LOCALIZATION_LHS = sym('lambda_GRW', FREQUENCY);
70
+ const DEFAULT_M_0_KG = 1.67e-27; // proton/nucleon mass
71
+ const DEFAULT_LAMBDA_0 = 1e-16; // canonical GRW 1986 rate (per second)
72
+ /**
73
+ * Evaluate the GRW mass-amplified localization rate
74
+ *
75
+ * λ_GRW(m) = λ_0 · (m / m_0)
76
+ *
77
+ * @returns Localization rate in 1/s.
78
+ */
79
+ export function evaluateGRWLocalization(input) {
80
+ const { m_kg, m_0_kg = DEFAULT_M_0_KG, lambda_0_per_s = DEFAULT_LAMBDA_0, } = input;
81
+ if (!Number.isFinite(m_kg) || m_kg <= 0) {
82
+ throw new RangeError(`evaluateGRWLocalization: m_kg must be a finite positive number, got ${m_kg}`);
83
+ }
84
+ if (!Number.isFinite(m_0_kg) || m_0_kg <= 0) {
85
+ throw new RangeError(`evaluateGRWLocalization: m_0_kg must be a finite positive number, got ${m_0_kg}`);
86
+ }
87
+ if (!Number.isFinite(lambda_0_per_s) || lambda_0_per_s < 0) {
88
+ throw new RangeError(`evaluateGRWLocalization: lambda_0_per_s must be a finite non-negative number, got ${lambda_0_per_s}`);
89
+ }
90
+ return lambda_0_per_s * (m_kg / m_0_kg);
91
+ }
92
+ // --- Self-validation ---
93
+ /**
94
+ * Run the AST through the dimensional analyzer; both sides should be
95
+ * [frequency].
96
+ */
97
+ export function validateBE48Dimensions() {
98
+ const eq = validateEquation(BE48_GRW_LOCALIZATION_LHS, BE48_GRW_LOCALIZATION_RHS);
99
+ const lhs = validate(BE48_GRW_LOCALIZATION_LHS);
100
+ const rhs = validate(BE48_GRW_LOCALIZATION_RHS);
101
+ return {
102
+ ok: eq.ok,
103
+ lhsDim: lhs.inferredDimension,
104
+ rhsDim: rhs.inferredDimension,
105
+ };
106
+ }
107
+ //# sourceMappingURL=be-48-grw-localization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"be-48-grw-localization.js","sourceRoot":"","sources":["../../../src/bridges/equations/be-48-grw-localization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAGH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAEL,SAAS,EACT,IAAI,GACL,MAAM,4BAA4B,CAAC;AAEpC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,GAAc,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;AAExF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAa;IACjD,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG;IACnB,IAAI,EAAE;QACJ,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC;QAC1B;YACE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG;YACnB,IAAI,EAAE;gBACJ,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC;gBACd,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC;aACjB;SACF;KACF;CACF,CAAC;AAEF,uDAAuD;AACvD,MAAM,CAAC,MAAM,yBAAyB,GAAa,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AAoBhF,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,sBAAsB;AACvD,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,uCAAuC;AAEvE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAA4B;IAClE,MAAM,EACJ,IAAI,EACJ,MAAM,GAAG,cAAc,EACvB,cAAc,GAAG,gBAAgB,GAClC,GAAG,KAAK,CAAC;IACV,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,UAAU,CAClB,uEAAuE,IAAI,EAAE,CAC9E,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,UAAU,CAClB,yEAAyE,MAAM,EAAE,CAClF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,UAAU,CAClB,qFAAqF,cAAc,EAAE,CACtG,CAAC;IACJ,CAAC;IACD,OAAO,cAAc,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,0BAA0B;AAE1B;;;GAGG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,EAAE,GAAG,gBAAgB,CACzB,yBAAyB,EACzB,yBAAyB,CAC1B,CAAC;IACF,MAAM,GAAG,GAAG,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAChD,OAAO;QACL,EAAE,EAAE,EAAE,CAAC,EAAE;QACT,MAAM,EAAE,GAAG,CAAC,iBAAiB;QAC7B,MAAM,EAAE,GAAG,CAAC,iBAAiB;KAC9B,CAAC;AACJ,CAAC"}