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.
- package/LICENSE +21 -0
- package/README.md +377 -0
- package/dist/bridges/equations/be-11-decoherence-master.d.ts +83 -0
- package/dist/bridges/equations/be-11-decoherence-master.d.ts.map +1 -0
- package/dist/bridges/equations/be-11-decoherence-master.js +116 -0
- package/dist/bridges/equations/be-11-decoherence-master.js.map +1 -0
- package/dist/bridges/equations/be-12-coherence-length.d.ts +80 -0
- package/dist/bridges/equations/be-12-coherence-length.d.ts.map +1 -0
- package/dist/bridges/equations/be-12-coherence-length.js +128 -0
- package/dist/bridges/equations/be-12-coherence-length.js.map +1 -0
- package/dist/bridges/equations/be-13-einstein-trace.d.ts +89 -0
- package/dist/bridges/equations/be-13-einstein-trace.d.ts.map +1 -0
- package/dist/bridges/equations/be-13-einstein-trace.js +143 -0
- package/dist/bridges/equations/be-13-einstein-trace.js.map +1 -0
- package/dist/bridges/equations/be-14-ryu-takayanagi.d.ts +67 -0
- package/dist/bridges/equations/be-14-ryu-takayanagi.d.ts.map +1 -0
- package/dist/bridges/equations/be-14-ryu-takayanagi.js +112 -0
- package/dist/bridges/equations/be-14-ryu-takayanagi.js.map +1 -0
- package/dist/bridges/equations/be-15-emergence.d.ts +164 -0
- package/dist/bridges/equations/be-15-emergence.d.ts.map +1 -0
- package/dist/bridges/equations/be-15-emergence.js +204 -0
- package/dist/bridges/equations/be-15-emergence.js.map +1 -0
- package/dist/bridges/equations/be-16-landauer.d.ts +180 -0
- package/dist/bridges/equations/be-16-landauer.d.ts.map +1 -0
- package/dist/bridges/equations/be-16-landauer.js +206 -0
- package/dist/bridges/equations/be-16-landauer.js.map +1 -0
- package/dist/bridges/equations/be-17-einstein-cartan.d.ts +245 -0
- package/dist/bridges/equations/be-17-einstein-cartan.d.ts.map +1 -0
- package/dist/bridges/equations/be-17-einstein-cartan.js +304 -0
- package/dist/bridges/equations/be-17-einstein-cartan.js.map +1 -0
- package/dist/bridges/equations/be-18-higgs-mass.d.ts +65 -0
- package/dist/bridges/equations/be-18-higgs-mass.d.ts.map +1 -0
- package/dist/bridges/equations/be-18-higgs-mass.js +86 -0
- package/dist/bridges/equations/be-18-higgs-mass.js.map +1 -0
- package/dist/bridges/equations/be-19-quantum-bounce.d.ts +72 -0
- package/dist/bridges/equations/be-19-quantum-bounce.d.ts.map +1 -0
- package/dist/bridges/equations/be-19-quantum-bounce.js +151 -0
- package/dist/bridges/equations/be-19-quantum-bounce.js.map +1 -0
- package/dist/bridges/equations/be-20-vacuum-energy.d.ts +72 -0
- package/dist/bridges/equations/be-20-vacuum-energy.d.ts.map +1 -0
- package/dist/bridges/equations/be-20-vacuum-energy.js +115 -0
- package/dist/bridges/equations/be-20-vacuum-energy.js.map +1 -0
- package/dist/bridges/equations/be-21-kss-bound.d.ts +72 -0
- package/dist/bridges/equations/be-21-kss-bound.d.ts.map +1 -0
- package/dist/bridges/equations/be-21-kss-bound.js +103 -0
- package/dist/bridges/equations/be-21-kss-bound.js.map +1 -0
- package/dist/bridges/equations/be-22-topological-entanglement.d.ts +90 -0
- package/dist/bridges/equations/be-22-topological-entanglement.d.ts.map +1 -0
- package/dist/bridges/equations/be-22-topological-entanglement.js +123 -0
- package/dist/bridges/equations/be-22-topological-entanglement.js.map +1 -0
- package/dist/bridges/equations/be-23-syk-planckian.d.ts +89 -0
- package/dist/bridges/equations/be-23-syk-planckian.d.ts.map +1 -0
- package/dist/bridges/equations/be-23-syk-planckian.js +155 -0
- package/dist/bridges/equations/be-23-syk-planckian.js.map +1 -0
- package/dist/bridges/equations/be-24-foerster-fret.d.ts +81 -0
- package/dist/bridges/equations/be-24-foerster-fret.d.ts.map +1 -0
- package/dist/bridges/equations/be-24-foerster-fret.js +121 -0
- package/dist/bridges/equations/be-24-foerster-fret.js.map +1 -0
- package/dist/bridges/equations/be-25-iit-phi.d.ts +220 -0
- package/dist/bridges/equations/be-25-iit-phi.d.ts.map +1 -0
- package/dist/bridges/equations/be-25-iit-phi.js +259 -0
- package/dist/bridges/equations/be-25-iit-phi.js.map +1 -0
- package/dist/bridges/equations/be-25-orch-or.d.ts +78 -0
- package/dist/bridges/equations/be-25-orch-or.d.ts.map +1 -0
- package/dist/bridges/equations/be-25-orch-or.js +121 -0
- package/dist/bridges/equations/be-25-orch-or.js.map +1 -0
- package/dist/bridges/equations/be-26-dna-tunneling.d.ts +75 -0
- package/dist/bridges/equations/be-26-dna-tunneling.d.ts.map +1 -0
- package/dist/bridges/equations/be-26-dna-tunneling.js +138 -0
- package/dist/bridges/equations/be-26-dna-tunneling.js.map +1 -0
- package/dist/bridges/equations/be-27-effective-temperature.d.ts +81 -0
- package/dist/bridges/equations/be-27-effective-temperature.d.ts.map +1 -0
- package/dist/bridges/equations/be-27-effective-temperature.js +120 -0
- package/dist/bridges/equations/be-27-effective-temperature.js.map +1 -0
- package/dist/bridges/equations/be-28-onsager-entropy-production.d.ts +175 -0
- package/dist/bridges/equations/be-28-onsager-entropy-production.d.ts.map +1 -0
- package/dist/bridges/equations/be-28-onsager-entropy-production.js +203 -0
- package/dist/bridges/equations/be-28-onsager-entropy-production.js.map +1 -0
- package/dist/bridges/equations/be-29-jarzynski.d.ts +86 -0
- package/dist/bridges/equations/be-29-jarzynski.d.ts.map +1 -0
- package/dist/bridges/equations/be-29-jarzynski.js +132 -0
- package/dist/bridges/equations/be-29-jarzynski.js.map +1 -0
- package/dist/bridges/equations/be-30-flm-first-law.d.ts +93 -0
- package/dist/bridges/equations/be-30-flm-first-law.d.ts.map +1 -0
- package/dist/bridges/equations/be-30-flm-first-law.js +109 -0
- package/dist/bridges/equations/be-30-flm-first-law.js.map +1 -0
- package/dist/bridges/equations/be-31-causal-set-bd.d.ts +96 -0
- package/dist/bridges/equations/be-31-causal-set-bd.d.ts.map +1 -0
- package/dist/bridges/equations/be-31-causal-set-bd.js +133 -0
- package/dist/bridges/equations/be-31-causal-set-bd.js.map +1 -0
- package/dist/bridges/equations/be-32-quantum-reference-frame.d.ts +113 -0
- package/dist/bridges/equations/be-32-quantum-reference-frame.d.ts.map +1 -0
- package/dist/bridges/equations/be-32-quantum-reference-frame.js +155 -0
- package/dist/bridges/equations/be-32-quantum-reference-frame.js.map +1 -0
- package/dist/bridges/equations/be-33-hertz-millis.d.ts +77 -0
- package/dist/bridges/equations/be-33-hertz-millis.d.ts.map +1 -0
- package/dist/bridges/equations/be-33-hertz-millis.js +113 -0
- package/dist/bridges/equations/be-33-hertz-millis.js.map +1 -0
- package/dist/bridges/equations/be-34-kibble-zurek.d.ts +76 -0
- package/dist/bridges/equations/be-34-kibble-zurek.d.ts.map +1 -0
- package/dist/bridges/equations/be-34-kibble-zurek.js +139 -0
- package/dist/bridges/equations/be-34-kibble-zurek.js.map +1 -0
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +117 -0
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -0
- package/dist/bridges/equations/be-35-conformal-bootstrap.js +167 -0
- package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -0
- package/dist/bridges/equations/be-36-gw-speed-bound.d.ts +77 -0
- package/dist/bridges/equations/be-36-gw-speed-bound.d.ts.map +1 -0
- package/dist/bridges/equations/be-36-gw-speed-bound.js +107 -0
- package/dist/bridges/equations/be-36-gw-speed-bound.js.map +1 -0
- package/dist/bridges/equations/be-37-shapiro-delay.d.ts +260 -0
- package/dist/bridges/equations/be-37-shapiro-delay.d.ts.map +1 -0
- package/dist/bridges/equations/be-37-shapiro-delay.js +429 -0
- package/dist/bridges/equations/be-37-shapiro-delay.js.map +1 -0
- package/dist/bridges/equations/be-38-mond.d.ts +86 -0
- package/dist/bridges/equations/be-38-mond.d.ts.map +1 -0
- package/dist/bridges/equations/be-38-mond.js +122 -0
- package/dist/bridges/equations/be-38-mond.js.map +1 -0
- package/dist/bridges/equations/be-39-asymptotic-safety.d.ts +106 -0
- package/dist/bridges/equations/be-39-asymptotic-safety.d.ts.map +1 -0
- package/dist/bridges/equations/be-39-asymptotic-safety.js +155 -0
- package/dist/bridges/equations/be-39-asymptotic-safety.js.map +1 -0
- package/dist/bridges/equations/be-40-composite-higgs.d.ts +81 -0
- package/dist/bridges/equations/be-40-composite-higgs.d.ts.map +1 -0
- package/dist/bridges/equations/be-40-composite-higgs.js +149 -0
- package/dist/bridges/equations/be-40-composite-higgs.js.map +1 -0
- package/dist/bridges/equations/be-41-swampland.d.ts +67 -0
- package/dist/bridges/equations/be-41-swampland.d.ts.map +1 -0
- package/dist/bridges/equations/be-41-swampland.js +109 -0
- package/dist/bridges/equations/be-41-swampland.js.map +1 -0
- package/dist/bridges/equations/be-42-hawking-temperature.d.ts +67 -0
- package/dist/bridges/equations/be-42-hawking-temperature.d.ts.map +1 -0
- package/dist/bridges/equations/be-42-hawking-temperature.js +109 -0
- package/dist/bridges/equations/be-42-hawking-temperature.js.map +1 -0
- package/dist/bridges/equations/be-43-er-epr.d.ts +73 -0
- package/dist/bridges/equations/be-43-er-epr.d.ts.map +1 -0
- package/dist/bridges/equations/be-43-er-epr.js +114 -0
- package/dist/bridges/equations/be-43-er-epr.js.map +1 -0
- package/dist/bridges/equations/be-44-soft-hair.d.ts +151 -0
- package/dist/bridges/equations/be-44-soft-hair.d.ts.map +1 -0
- package/dist/bridges/equations/be-44-soft-hair.js +185 -0
- package/dist/bridges/equations/be-44-soft-hair.js.map +1 -0
- package/dist/bridges/equations/be-45-tcc.d.ts +116 -0
- package/dist/bridges/equations/be-45-tcc.d.ts.map +1 -0
- package/dist/bridges/equations/be-45-tcc.js +157 -0
- package/dist/bridges/equations/be-45-tcc.js.map +1 -0
- package/dist/bridges/equations/be-46-multiverse-measure.d.ts +163 -0
- package/dist/bridges/equations/be-46-multiverse-measure.d.ts.map +1 -0
- package/dist/bridges/equations/be-46-multiverse-measure.js +198 -0
- package/dist/bridges/equations/be-46-multiverse-measure.js.map +1 -0
- package/dist/bridges/equations/be-47-bbn-dark-sector.d.ts +72 -0
- package/dist/bridges/equations/be-47-bbn-dark-sector.d.ts.map +1 -0
- package/dist/bridges/equations/be-47-bbn-dark-sector.js +121 -0
- package/dist/bridges/equations/be-47-bbn-dark-sector.js.map +1 -0
- package/dist/bridges/equations/be-48-grw-localization.d.ts +84 -0
- package/dist/bridges/equations/be-48-grw-localization.d.ts.map +1 -0
- package/dist/bridges/equations/be-48-grw-localization.js +107 -0
- package/dist/bridges/equations/be-48-grw-localization.js.map +1 -0
- package/dist/bridges/equations/be-49-quantum-darwinism.d.ts +97 -0
- package/dist/bridges/equations/be-49-quantum-darwinism.d.ts.map +1 -0
- package/dist/bridges/equations/be-49-quantum-darwinism.js +129 -0
- package/dist/bridges/equations/be-49-quantum-darwinism.js.map +1 -0
- package/dist/bridges/equations/be-50-wheeler-feynman.d.ts +120 -0
- package/dist/bridges/equations/be-50-wheeler-feynman.d.ts.map +1 -0
- package/dist/bridges/equations/be-50-wheeler-feynman.js +151 -0
- package/dist/bridges/equations/be-50-wheeler-feynman.js.map +1 -0
- package/dist/bridges/gravitational-lensing.d.ts +52 -0
- package/dist/bridges/gravitational-lensing.d.ts.map +1 -0
- package/dist/bridges/gravitational-lensing.js +48 -0
- package/dist/bridges/gravitational-lensing.js.map +1 -0
- package/dist/bridges/index.d.ts +104 -0
- package/dist/bridges/index.d.ts.map +1 -0
- package/dist/bridges/index.js +1663 -0
- package/dist/bridges/index.js.map +1 -0
- package/dist/bridges/perihelion-precession.d.ts +62 -0
- package/dist/bridges/perihelion-precession.d.ts.map +1 -0
- package/dist/bridges/perihelion-precession.js +68 -0
- package/dist/bridges/perihelion-precession.js.map +1 -0
- package/dist/core/tensor.d.ts +135 -0
- package/dist/core/tensor.d.ts.map +1 -0
- package/dist/core/tensor.js +376 -0
- package/dist/core/tensor.js.map +1 -0
- package/dist/core/types.d.ts +131 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +25 -0
- package/dist/core/types.js.map +1 -0
- package/dist/dimensional/algebra.d.ts +34 -0
- package/dist/dimensional/algebra.d.ts.map +1 -0
- package/dist/dimensional/algebra.js +90 -0
- package/dist/dimensional/algebra.js.map +1 -0
- package/dist/dimensional/bridge-check.d.ts +48 -0
- package/dist/dimensional/bridge-check.d.ts.map +1 -0
- package/dist/dimensional/bridge-check.js +137 -0
- package/dist/dimensional/bridge-check.js.map +1 -0
- package/dist/dimensional/connection-validators.d.ts +53 -0
- package/dist/dimensional/connection-validators.d.ts.map +1 -0
- package/dist/dimensional/connection-validators.js +84 -0
- package/dist/dimensional/connection-validators.js.map +1 -0
- package/dist/dimensional/connection.d.ts +40 -0
- package/dist/dimensional/connection.d.ts.map +1 -0
- package/dist/dimensional/connection.js +81 -0
- package/dist/dimensional/connection.js.map +1 -0
- package/dist/dimensional/constants.d.ts +30 -0
- package/dist/dimensional/constants.d.ts.map +1 -0
- package/dist/dimensional/constants.js +31 -0
- package/dist/dimensional/constants.js.map +1 -0
- package/dist/dimensional/errors.d.ts +161 -0
- package/dist/dimensional/errors.d.ts.map +1 -0
- package/dist/dimensional/errors.js +254 -0
- package/dist/dimensional/errors.js.map +1 -0
- package/dist/dimensional/fresh-label.d.ts +26 -0
- package/dist/dimensional/fresh-label.d.ts.map +1 -0
- package/dist/dimensional/fresh-label.js +31 -0
- package/dist/dimensional/fresh-label.js.map +1 -0
- package/dist/dimensional/metric-validators.d.ts +124 -0
- package/dist/dimensional/metric-validators.d.ts.map +1 -0
- package/dist/dimensional/metric-validators.js +141 -0
- package/dist/dimensional/metric-validators.js.map +1 -0
- package/dist/dimensional/metric.d.ts +67 -0
- package/dist/dimensional/metric.d.ts.map +1 -0
- package/dist/dimensional/metric.js +177 -0
- package/dist/dimensional/metric.js.map +1 -0
- package/dist/dimensional/tensor.d.ts +153 -0
- package/dist/dimensional/tensor.d.ts.map +1 -0
- package/dist/dimensional/tensor.js +138 -0
- package/dist/dimensional/tensor.js.map +1 -0
- package/dist/dimensional/types.d.ts +50 -0
- package/dist/dimensional/types.d.ts.map +1 -0
- package/dist/dimensional/types.js +66 -0
- package/dist/dimensional/types.js.map +1 -0
- package/dist/dimensional/validator.d.ts +84 -0
- package/dist/dimensional/validator.d.ts.map +1 -0
- package/dist/dimensional/validator.js +505 -0
- package/dist/dimensional/validator.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/numerical/be37-covariant-eikonal.d.ts +90 -0
- package/dist/numerical/be37-covariant-eikonal.d.ts.map +1 -0
- package/dist/numerical/be37-covariant-eikonal.js +79 -0
- package/dist/numerical/be37-covariant-eikonal.js.map +1 -0
- package/dist/numerical/connection-lowering-helpers.d.ts +107 -0
- package/dist/numerical/connection-lowering-helpers.d.ts.map +1 -0
- package/dist/numerical/connection-lowering-helpers.js +315 -0
- package/dist/numerical/connection-lowering-helpers.js.map +1 -0
- package/dist/numerical/engine-registry.d.ts +50 -0
- package/dist/numerical/engine-registry.d.ts.map +1 -0
- package/dist/numerical/engine-registry.js +82 -0
- package/dist/numerical/engine-registry.js.map +1 -0
- package/dist/numerical/errors.d.ts +28 -0
- package/dist/numerical/errors.d.ts.map +1 -0
- package/dist/numerical/errors.js +39 -0
- package/dist/numerical/errors.js.map +1 -0
- package/dist/numerical/float64-engine.d.ts +53 -0
- package/dist/numerical/float64-engine.d.ts.map +1 -0
- package/dist/numerical/float64-engine.js +638 -0
- package/dist/numerical/float64-engine.js.map +1 -0
- package/dist/numerical/geodesic-integrator.d.ts +62 -0
- package/dist/numerical/geodesic-integrator.d.ts.map +1 -0
- package/dist/numerical/geodesic-integrator.js +103 -0
- package/dist/numerical/geodesic-integrator.js.map +1 -0
- package/dist/numerical/grid-field.d.ts +24 -0
- package/dist/numerical/grid-field.d.ts.map +1 -0
- package/dist/numerical/grid-field.js +2 -0
- package/dist/numerical/grid-field.js.map +1 -0
- package/dist/numerical/index.d.ts +80 -0
- package/dist/numerical/index.d.ts.map +1 -0
- package/dist/numerical/index.js +75 -0
- package/dist/numerical/index.js.map +1 -0
- package/dist/numerical/lowering.d.ts +48 -0
- package/dist/numerical/lowering.d.ts.map +1 -0
- package/dist/numerical/lowering.js +443 -0
- package/dist/numerical/lowering.js.map +1 -0
- package/dist/numerical/mathts-engine.d.ts +55 -0
- package/dist/numerical/mathts-engine.d.ts.map +1 -0
- package/dist/numerical/mathts-engine.js +164 -0
- package/dist/numerical/mathts-engine.js.map +1 -0
- package/dist/numerical/metric-inverse.d.ts +31 -0
- package/dist/numerical/metric-inverse.d.ts.map +1 -0
- package/dist/numerical/metric-inverse.js +68 -0
- package/dist/numerical/metric-inverse.js.map +1 -0
- package/dist/numerical/null-ray-integrator.d.ts +13 -0
- package/dist/numerical/null-ray-integrator.d.ts.map +1 -0
- package/dist/numerical/null-ray-integrator.js +53 -0
- package/dist/numerical/null-ray-integrator.js.map +1 -0
- package/dist/numerical/pderiv.d.ts +43 -0
- package/dist/numerical/pderiv.d.ts.map +1 -0
- package/dist/numerical/pderiv.js +121 -0
- package/dist/numerical/pderiv.js.map +1 -0
- package/dist/numerical/tensor-engine.d.ts +114 -0
- package/dist/numerical/tensor-engine.d.ts.map +1 -0
- package/dist/numerical/tensor-engine.js +64 -0
- package/dist/numerical/tensor-engine.js.map +1 -0
- package/dist/numerical/types.d.ts +37 -0
- package/dist/numerical/types.d.ts.map +1 -0
- package/dist/numerical/types.js +8 -0
- package/dist/numerical/types.js.map +1 -0
- package/package.json +72 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bridge Equation 35 — Conformal Bootstrap (crossing-symmetry residual).
|
|
3
|
+
*
|
|
4
|
+
* Original 4-pt-function form (operator-valued; no scalar reduction
|
|
5
|
+
* without committing to specific operator dimensions):
|
|
6
|
+
*
|
|
7
|
+
* ⟨O₁(x₁) O₂(x₂) O₃(x₃) O₄(x₄)⟩
|
|
8
|
+
* = Σ_{Δ, ℓ} C₁₂^O · C₃₄^O · g_{Δ, ℓ}(u, v)
|
|
9
|
+
*
|
|
10
|
+
* Encoded reduction (Wave Z — OpenAI scalar-reduction proposal): for a
|
|
11
|
+
* unitarily-truncated single-block contribution `B(u, v) = C² · g_{Δ,ℓ}(u, v)`,
|
|
12
|
+
* crossing symmetry of the 4-pt function requires `B(u, v) = B(v, u)`. The
|
|
13
|
+
* residual
|
|
14
|
+
*
|
|
15
|
+
* R_cross = C² · [ g_block(u, v) − g_block(v, u) ]
|
|
16
|
+
*
|
|
17
|
+
* is identically zero for any consistent CFT. At the crossing-symmetric
|
|
18
|
+
* point u = v = 1/4 the residual collapses to the operational identity
|
|
19
|
+
* `R_cross|_{u=v=1/4} ≡ 0`.
|
|
20
|
+
*
|
|
21
|
+
* R_cross is DIMENSIONLESS: C is dimensionless when the operators are
|
|
22
|
+
* unit-normalized in their two-point functions, and g_block(u, v) is a
|
|
23
|
+
* dimensionless special function of dimensionless cross-ratios.
|
|
24
|
+
*
|
|
25
|
+
* References:
|
|
26
|
+
* - Rattazzi-Rychkov-Tonni-Vichi 2008 JHEP 0812:031
|
|
27
|
+
* (arXiv:0807.0004): "Bounding scalar operator dimensions in 4D CFT".
|
|
28
|
+
* - Poland-Rychkov-Vichi 2019 Rev. Mod. Phys. 91:015002
|
|
29
|
+
* (arXiv:1805.04405): "The conformal bootstrap: theory, numerical
|
|
30
|
+
* techniques, and applications".
|
|
31
|
+
* - Dolan-Osborn 2001 Nucl. Phys. B 599:459: "Conformal four-point
|
|
32
|
+
* functions and the operator product expansion".
|
|
33
|
+
* - Kos-Poland-Simmons-Duffin 2014 JHEP 1406:091: "Bootstrapping the
|
|
34
|
+
* O(N) vector models".
|
|
35
|
+
*
|
|
36
|
+
* Status: established. The crossing-symmetry equation is canonical CFT
|
|
37
|
+
* bootstrap content; pinning it as 'established' in the catalog reflects
|
|
38
|
+
* that the *symmetry identity* has decades of literature support.
|
|
39
|
+
*
|
|
40
|
+
* Honest-claude scope notes:
|
|
41
|
+
* - Single-block reduction. The real bootstrap programme sums an
|
|
42
|
+
* infinite (Δ, ℓ) tower with positivity / unitarity constraints —
|
|
43
|
+
* that spectrum-fitting is the load-bearing numerical content of
|
|
44
|
+
* bootstrap papers and is NOT captured here. Encoding only the
|
|
45
|
+
* crossing residual pins the symmetry but not the spectrum work.
|
|
46
|
+
* - OPE coefficients C are scheme-dependent normalizations. We
|
|
47
|
+
* assume operators are unit-normalized in their two-point function,
|
|
48
|
+
* which makes C dimensionless. Other normalization conventions
|
|
49
|
+
* (e.g., absorbing a Δ-dependent factor into C) shift the literal
|
|
50
|
+
* numerical value of C without altering R_cross = 0.
|
|
51
|
+
* - Conformal-block special functions g_{Δ,ℓ}(u, v) are encoded as
|
|
52
|
+
* dimensionless symbol stubs (`g_block_uv`, `g_block_vu`) — NOT as
|
|
53
|
+
* their analytic-function expressions. Closed forms exist in 2D and
|
|
54
|
+
* 4D (Dolan-Osborn) but live outside the AST grammar (which has no
|
|
55
|
+
* hypergeometric-function node).
|
|
56
|
+
* - The identity is symbolic. Numerically evaluating with arbitrary
|
|
57
|
+
* g_uv ≠ g_vu yields a nonzero residual: that does NOT signal a
|
|
58
|
+
* bootstrap violation — it signals that the caller passed a pair
|
|
59
|
+
* that is not a legitimate (u, v) ↔ (v, u) crossing pair from the
|
|
60
|
+
* same conformal block. The residual is a *test instrument*.
|
|
61
|
+
*
|
|
62
|
+
* @see docs/specification/Part-II.md ("Bridge Equation 35: Conformal Bootstrap")
|
|
63
|
+
* @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 35)
|
|
64
|
+
* @module bridges/equations/be-35-conformal-bootstrap
|
|
65
|
+
*/
|
|
66
|
+
import type { ExprNode, DimensionValidationReport } from '../../dimensional/validator.js';
|
|
67
|
+
/**
|
|
68
|
+
* Lemma AST: forward-channel block `C² · g_block(u, v)`.
|
|
69
|
+
*
|
|
70
|
+
* Both factors are dimensionless: C is the OPE coefficient under
|
|
71
|
+
* unit-normalized operators; g_block(u, v) is the conformal block
|
|
72
|
+
* (dimensionless function of dimensionless cross-ratios u, v).
|
|
73
|
+
*/
|
|
74
|
+
export declare const BE35_FORWARD_BLOCK: ExprNode;
|
|
75
|
+
/**
|
|
76
|
+
* Lemma AST: crossed-channel block `C² · g_block(v, u)`. Same shape as
|
|
77
|
+
* BE35_FORWARD_BLOCK with cross-ratios swapped — exposed for direct
|
|
78
|
+
* dimensional verification and for differencing in the residual.
|
|
79
|
+
*/
|
|
80
|
+
export declare const BE35_CROSSED_BLOCK: ExprNode;
|
|
81
|
+
/**
|
|
82
|
+
* RHS of the crossing-symmetry residual:
|
|
83
|
+
*
|
|
84
|
+
* R_cross = C² · g_block(u, v) − C² · g_block(v, u)
|
|
85
|
+
*
|
|
86
|
+
* encoded as the difference of the two lemma blocks. Both summands are
|
|
87
|
+
* dimensionless, so the result infers DIMENSIONLESS through the
|
|
88
|
+
* dimensional analyzer.
|
|
89
|
+
*/
|
|
90
|
+
export declare const BE35_CROSSING_RESIDUAL_RHS: ExprNode;
|
|
91
|
+
/** LHS: R_cross is dimensionless. */
|
|
92
|
+
export declare const BE35_CROSSING_RESIDUAL_LHS: ExprNode;
|
|
93
|
+
export interface CrossingResidualInputs {
|
|
94
|
+
/** OPE coefficient C (dimensionless under unit-normalized operators). Must be finite. */
|
|
95
|
+
ope_coefficient: number;
|
|
96
|
+
/** Conformal block g_block(u, v) at (u, v). Must be finite. */
|
|
97
|
+
g_block_uv: number;
|
|
98
|
+
/** Conformal block g_block(v, u) at the crossed point. Must be finite. */
|
|
99
|
+
g_block_vu: number;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Evaluate the crossing-symmetry residual
|
|
103
|
+
*
|
|
104
|
+
* R_cross = C² · ( g_block(u, v) − g_block(v, u) )
|
|
105
|
+
*
|
|
106
|
+
* Honest-claude: for a *legitimate* crossing pair from a single block,
|
|
107
|
+
* g_uv = g_vu and the residual is exactly zero. Nonzero output for
|
|
108
|
+
* arbitrary inputs does not signal a CFT violation; it signals that the
|
|
109
|
+
* pair (g_uv, g_vu) is not from the same block under a u ↔ v swap.
|
|
110
|
+
*/
|
|
111
|
+
export declare function evaluateCrossingResidual(input: CrossingResidualInputs): number;
|
|
112
|
+
/**
|
|
113
|
+
* Run the AST through the dimensional analyzer; LHS and RHS should
|
|
114
|
+
* both be DIMENSIONLESS.
|
|
115
|
+
*/
|
|
116
|
+
export declare function validateBE35Dimensions(): DimensionValidationReport;
|
|
117
|
+
//# sourceMappingURL=be-35-conformal-bootstrap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"be-35-conformal-bootstrap.d.ts","sourceRoot":"","sources":["../../../src/bridges/equations/be-35-conformal-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAW1F;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,QAehC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,QAYhC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,EAAE,QAMxC,CAAC;AAEF,qCAAqC;AACrC,eAAO,MAAM,0BAA0B,EAAE,QAAwC,CAAC;AAIlF,MAAM,WAAW,sBAAsB;IACrC,yFAAyF;IACzF,eAAe,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,CAkB9E;AAID;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,yBAAyB,CAYlE"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bridge Equation 35 — Conformal Bootstrap (crossing-symmetry residual).
|
|
3
|
+
*
|
|
4
|
+
* Original 4-pt-function form (operator-valued; no scalar reduction
|
|
5
|
+
* without committing to specific operator dimensions):
|
|
6
|
+
*
|
|
7
|
+
* ⟨O₁(x₁) O₂(x₂) O₃(x₃) O₄(x₄)⟩
|
|
8
|
+
* = Σ_{Δ, ℓ} C₁₂^O · C₃₄^O · g_{Δ, ℓ}(u, v)
|
|
9
|
+
*
|
|
10
|
+
* Encoded reduction (Wave Z — OpenAI scalar-reduction proposal): for a
|
|
11
|
+
* unitarily-truncated single-block contribution `B(u, v) = C² · g_{Δ,ℓ}(u, v)`,
|
|
12
|
+
* crossing symmetry of the 4-pt function requires `B(u, v) = B(v, u)`. The
|
|
13
|
+
* residual
|
|
14
|
+
*
|
|
15
|
+
* R_cross = C² · [ g_block(u, v) − g_block(v, u) ]
|
|
16
|
+
*
|
|
17
|
+
* is identically zero for any consistent CFT. At the crossing-symmetric
|
|
18
|
+
* point u = v = 1/4 the residual collapses to the operational identity
|
|
19
|
+
* `R_cross|_{u=v=1/4} ≡ 0`.
|
|
20
|
+
*
|
|
21
|
+
* R_cross is DIMENSIONLESS: C is dimensionless when the operators are
|
|
22
|
+
* unit-normalized in their two-point functions, and g_block(u, v) is a
|
|
23
|
+
* dimensionless special function of dimensionless cross-ratios.
|
|
24
|
+
*
|
|
25
|
+
* References:
|
|
26
|
+
* - Rattazzi-Rychkov-Tonni-Vichi 2008 JHEP 0812:031
|
|
27
|
+
* (arXiv:0807.0004): "Bounding scalar operator dimensions in 4D CFT".
|
|
28
|
+
* - Poland-Rychkov-Vichi 2019 Rev. Mod. Phys. 91:015002
|
|
29
|
+
* (arXiv:1805.04405): "The conformal bootstrap: theory, numerical
|
|
30
|
+
* techniques, and applications".
|
|
31
|
+
* - Dolan-Osborn 2001 Nucl. Phys. B 599:459: "Conformal four-point
|
|
32
|
+
* functions and the operator product expansion".
|
|
33
|
+
* - Kos-Poland-Simmons-Duffin 2014 JHEP 1406:091: "Bootstrapping the
|
|
34
|
+
* O(N) vector models".
|
|
35
|
+
*
|
|
36
|
+
* Status: established. The crossing-symmetry equation is canonical CFT
|
|
37
|
+
* bootstrap content; pinning it as 'established' in the catalog reflects
|
|
38
|
+
* that the *symmetry identity* has decades of literature support.
|
|
39
|
+
*
|
|
40
|
+
* Honest-claude scope notes:
|
|
41
|
+
* - Single-block reduction. The real bootstrap programme sums an
|
|
42
|
+
* infinite (Δ, ℓ) tower with positivity / unitarity constraints —
|
|
43
|
+
* that spectrum-fitting is the load-bearing numerical content of
|
|
44
|
+
* bootstrap papers and is NOT captured here. Encoding only the
|
|
45
|
+
* crossing residual pins the symmetry but not the spectrum work.
|
|
46
|
+
* - OPE coefficients C are scheme-dependent normalizations. We
|
|
47
|
+
* assume operators are unit-normalized in their two-point function,
|
|
48
|
+
* which makes C dimensionless. Other normalization conventions
|
|
49
|
+
* (e.g., absorbing a Δ-dependent factor into C) shift the literal
|
|
50
|
+
* numerical value of C without altering R_cross = 0.
|
|
51
|
+
* - Conformal-block special functions g_{Δ,ℓ}(u, v) are encoded as
|
|
52
|
+
* dimensionless symbol stubs (`g_block_uv`, `g_block_vu`) — NOT as
|
|
53
|
+
* their analytic-function expressions. Closed forms exist in 2D and
|
|
54
|
+
* 4D (Dolan-Osborn) but live outside the AST grammar (which has no
|
|
55
|
+
* hypergeometric-function node).
|
|
56
|
+
* - The identity is symbolic. Numerically evaluating with arbitrary
|
|
57
|
+
* g_uv ≠ g_vu yields a nonzero residual: that does NOT signal a
|
|
58
|
+
* bootstrap violation — it signals that the caller passed a pair
|
|
59
|
+
* that is not a legitimate (u, v) ↔ (v, u) crossing pair from the
|
|
60
|
+
* same conformal block. The residual is a *test instrument*.
|
|
61
|
+
*
|
|
62
|
+
* @see docs/specification/Part-II.md ("Bridge Equation 35: Conformal Bootstrap")
|
|
63
|
+
* @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 35)
|
|
64
|
+
* @module bridges/equations/be-35-conformal-bootstrap
|
|
65
|
+
*/
|
|
66
|
+
import { validate, validateEquation } from '../../dimensional/validator.js';
|
|
67
|
+
import { DIMENSIONLESS, } from '../../dimensional/types.js';
|
|
68
|
+
// --- Symbolic AST ---
|
|
69
|
+
const sym = (name, dim) => ({ kind: 'symbol', name, dim });
|
|
70
|
+
/**
|
|
71
|
+
* Lemma AST: forward-channel block `C² · g_block(u, v)`.
|
|
72
|
+
*
|
|
73
|
+
* Both factors are dimensionless: C is the OPE coefficient under
|
|
74
|
+
* unit-normalized operators; g_block(u, v) is the conformal block
|
|
75
|
+
* (dimensionless function of dimensionless cross-ratios u, v).
|
|
76
|
+
*/
|
|
77
|
+
export const BE35_FORWARD_BLOCK = {
|
|
78
|
+
kind: 'op', op: '*',
|
|
79
|
+
args: [
|
|
80
|
+
{
|
|
81
|
+
kind: 'op', op: '^',
|
|
82
|
+
args: [
|
|
83
|
+
sym('C', DIMENSIONLESS),
|
|
84
|
+
// Numeric-literal exponent: the validator parses the symbol's
|
|
85
|
+
// `name` via Number(), so the literal text must be a finite
|
|
86
|
+
// number ('2'), not a word ('two').
|
|
87
|
+
sym('2', DIMENSIONLESS),
|
|
88
|
+
],
|
|
89
|
+
},
|
|
90
|
+
sym('g_block_uv', DIMENSIONLESS),
|
|
91
|
+
],
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Lemma AST: crossed-channel block `C² · g_block(v, u)`. Same shape as
|
|
95
|
+
* BE35_FORWARD_BLOCK with cross-ratios swapped — exposed for direct
|
|
96
|
+
* dimensional verification and for differencing in the residual.
|
|
97
|
+
*/
|
|
98
|
+
export const BE35_CROSSED_BLOCK = {
|
|
99
|
+
kind: 'op', op: '*',
|
|
100
|
+
args: [
|
|
101
|
+
{
|
|
102
|
+
kind: 'op', op: '^',
|
|
103
|
+
args: [
|
|
104
|
+
sym('C', DIMENSIONLESS),
|
|
105
|
+
sym('2', DIMENSIONLESS),
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
sym('g_block_vu', DIMENSIONLESS),
|
|
109
|
+
],
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* RHS of the crossing-symmetry residual:
|
|
113
|
+
*
|
|
114
|
+
* R_cross = C² · g_block(u, v) − C² · g_block(v, u)
|
|
115
|
+
*
|
|
116
|
+
* encoded as the difference of the two lemma blocks. Both summands are
|
|
117
|
+
* dimensionless, so the result infers DIMENSIONLESS through the
|
|
118
|
+
* dimensional analyzer.
|
|
119
|
+
*/
|
|
120
|
+
export const BE35_CROSSING_RESIDUAL_RHS = {
|
|
121
|
+
kind: 'op', op: '-',
|
|
122
|
+
args: [
|
|
123
|
+
BE35_FORWARD_BLOCK,
|
|
124
|
+
BE35_CROSSED_BLOCK,
|
|
125
|
+
],
|
|
126
|
+
};
|
|
127
|
+
/** LHS: R_cross is dimensionless. */
|
|
128
|
+
export const BE35_CROSSING_RESIDUAL_LHS = sym('R_cross', DIMENSIONLESS);
|
|
129
|
+
/**
|
|
130
|
+
* Evaluate the crossing-symmetry residual
|
|
131
|
+
*
|
|
132
|
+
* R_cross = C² · ( g_block(u, v) − g_block(v, u) )
|
|
133
|
+
*
|
|
134
|
+
* Honest-claude: for a *legitimate* crossing pair from a single block,
|
|
135
|
+
* g_uv = g_vu and the residual is exactly zero. Nonzero output for
|
|
136
|
+
* arbitrary inputs does not signal a CFT violation; it signals that the
|
|
137
|
+
* pair (g_uv, g_vu) is not from the same block under a u ↔ v swap.
|
|
138
|
+
*/
|
|
139
|
+
export function evaluateCrossingResidual(input) {
|
|
140
|
+
const { ope_coefficient, g_block_uv, g_block_vu } = input;
|
|
141
|
+
if (!Number.isFinite(ope_coefficient)) {
|
|
142
|
+
throw new RangeError(`evaluateCrossingResidual: ope_coefficient must be finite, got ${ope_coefficient}`);
|
|
143
|
+
}
|
|
144
|
+
if (!Number.isFinite(g_block_uv)) {
|
|
145
|
+
throw new RangeError(`evaluateCrossingResidual: g_block_uv must be finite, got ${g_block_uv}`);
|
|
146
|
+
}
|
|
147
|
+
if (!Number.isFinite(g_block_vu)) {
|
|
148
|
+
throw new RangeError(`evaluateCrossingResidual: g_block_vu must be finite, got ${g_block_vu}`);
|
|
149
|
+
}
|
|
150
|
+
return ope_coefficient * ope_coefficient * (g_block_uv - g_block_vu);
|
|
151
|
+
}
|
|
152
|
+
// --- Self-validation ---
|
|
153
|
+
/**
|
|
154
|
+
* Run the AST through the dimensional analyzer; LHS and RHS should
|
|
155
|
+
* both be DIMENSIONLESS.
|
|
156
|
+
*/
|
|
157
|
+
export function validateBE35Dimensions() {
|
|
158
|
+
const eq = validateEquation(BE35_CROSSING_RESIDUAL_LHS, BE35_CROSSING_RESIDUAL_RHS);
|
|
159
|
+
const lhs = validate(BE35_CROSSING_RESIDUAL_LHS);
|
|
160
|
+
const rhs = validate(BE35_CROSSING_RESIDUAL_RHS);
|
|
161
|
+
return {
|
|
162
|
+
ok: eq.ok,
|
|
163
|
+
lhsDim: lhs.inferredDimension,
|
|
164
|
+
rhsDim: rhs.inferredDimension,
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=be-35-conformal-bootstrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"be-35-conformal-bootstrap.js","sourceRoot":"","sources":["../../../src/bridges/equations/be-35-conformal-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bridge Equation 36 — GW170817 graviton-speed bound (post Wave Y
|
|
3
|
+
* reformulation).
|
|
4
|
+
*
|
|
5
|
+
* |c_GW − c| / c ≤ 10⁻¹⁵
|
|
6
|
+
*
|
|
7
|
+
* The empirical constraint from the GW170817 binary-neutron-star
|
|
8
|
+
* merger / GRB170817A coincidence: the gravitational-wave speed and
|
|
9
|
+
* the photon speed agree to better than 1 part in 10¹⁵, derived from
|
|
10
|
+
* the ~1.7 s arrival-time difference over a ~40 Mpc distance
|
|
11
|
+
* (Abbott et al. 2017 *ApJ Lett.* 848:L13; Boran et al. 2018
|
|
12
|
+
* *Phys. Rev. D* 97:041501). This bound rules out or strongly
|
|
13
|
+
* constrains TeVeS-class theories that generically predict c_GW ≠ c.
|
|
14
|
+
*
|
|
15
|
+
* The encoded scalar is the dimensionless ratio (c_GW − c)/c
|
|
16
|
+
* (signed). The bound itself is `|·| ≤ 10⁻¹⁵`; for GR (c_GW = c
|
|
17
|
+
* exactly), the LHS is 0.
|
|
18
|
+
*
|
|
19
|
+
* References:
|
|
20
|
+
* - Abbott et al. (LIGO/Virgo + INTEGRAL Collaborations) 2017 *ApJ
|
|
21
|
+
* Lett.* 848:L13 (arXiv:1710.05832; multi-messenger GW170817 +
|
|
22
|
+
* GRB170817A coincidence; |Δv|/c ≲ 10⁻¹⁵).
|
|
23
|
+
* - Boran, Desai, Kahya & Woodard 2018 *Phys. Rev. D* 97:041501
|
|
24
|
+
* (arXiv:1710.06168; GW170817 constraint on TeVeS-class theories).
|
|
25
|
+
*
|
|
26
|
+
* Status: speculative.
|
|
27
|
+
*
|
|
28
|
+
* Honest-claude scope notes:
|
|
29
|
+
* - The TeVeS framework (Bekenstein 2004, the original BE-36 form)
|
|
30
|
+
* is preserved as the bridge framing; the GW170817 dimensionless
|
|
31
|
+
* ratio is the AST-encodable scalar bound.
|
|
32
|
+
* - For GR (c_GW = c), the encoded ratio is 0 ≤ 10⁻¹⁵ ✓ (trivially).
|
|
33
|
+
* - For TeVeS variants where c_GW ≠ c, the |ratio| must be bounded
|
|
34
|
+
* above by 10⁻¹⁵ to remain consistent with GW170817.
|
|
35
|
+
* - The AST encodes the signed ratio (c_GW − c)/c; the absolute
|
|
36
|
+
* value is computed in the numerical evaluator (Math.abs).
|
|
37
|
+
*
|
|
38
|
+
* @see docs/specification/Part-II.md ("Bridge Equation 36")
|
|
39
|
+
* @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 36)
|
|
40
|
+
* @module bridges/equations/be-36-gw-speed-bound
|
|
41
|
+
*/
|
|
42
|
+
import type { ExprNode, DimensionValidationReport } from '../../dimensional/validator.js';
|
|
43
|
+
/**
|
|
44
|
+
* RHS of the GW170817 dimensionless ratio:
|
|
45
|
+
* ratio = (c_GW − c) / c
|
|
46
|
+
*
|
|
47
|
+
* Both numerator and denominator are velocities; ratio is
|
|
48
|
+
* DIMENSIONLESS.
|
|
49
|
+
*/
|
|
50
|
+
export declare const BE36_GW_SPEED_RATIO_RHS: ExprNode;
|
|
51
|
+
/** LHS: signed dimensionless graviton-photon speed-difference ratio. */
|
|
52
|
+
export declare const BE36_GW_SPEED_RATIO_LHS: ExprNode;
|
|
53
|
+
/** Canonical GW170817 upper bound on |Δv|/c. */
|
|
54
|
+
export declare const GW170817_SPEED_BOUND = 1e-15;
|
|
55
|
+
export interface GWSpeedRatioInputs {
|
|
56
|
+
/** Gravitational-wave speed c_GW (m/s). Must be > 0 and finite. */
|
|
57
|
+
c_GW_m_per_s: number;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Evaluate the signed dimensionless ratio (c_GW − c)/c.
|
|
61
|
+
*
|
|
62
|
+
* @returns Signed ratio. For GR, c_GW = c exactly and ratio = 0.
|
|
63
|
+
*/
|
|
64
|
+
export declare function evaluateGWSpeedRatio(input: GWSpeedRatioInputs): number;
|
|
65
|
+
/**
|
|
66
|
+
* Check whether a candidate c_GW satisfies the GW170817 bound
|
|
67
|
+
* |(c_GW − c)/c| ≤ 10⁻¹⁵.
|
|
68
|
+
*
|
|
69
|
+
* @returns true if |ratio| is at or below the bound.
|
|
70
|
+
*/
|
|
71
|
+
export declare function satisfiesGW170817Bound(input: GWSpeedRatioInputs): boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Run the AST through the dimensional analyzer; both sides should be
|
|
74
|
+
* DIMENSIONLESS.
|
|
75
|
+
*/
|
|
76
|
+
export declare function validateBE36Dimensions(): DimensionValidationReport;
|
|
77
|
+
//# sourceMappingURL=be-36-gw-speed-bound.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"be-36-gw-speed-bound.d.ts","sourceRoot":"","sources":["../../../src/bridges/equations/be-36-gw-speed-bound.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAW1F;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAYrC,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,EAAE,QAA+C,CAAC;AAEtF,gDAAgD;AAChD,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAI1C,MAAM,WAAW,kBAAkB;IACjC,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAStE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAEzE;AAID;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,yBAAyB,CASlE"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bridge Equation 36 — GW170817 graviton-speed bound (post Wave Y
|
|
3
|
+
* reformulation).
|
|
4
|
+
*
|
|
5
|
+
* |c_GW − c| / c ≤ 10⁻¹⁵
|
|
6
|
+
*
|
|
7
|
+
* The empirical constraint from the GW170817 binary-neutron-star
|
|
8
|
+
* merger / GRB170817A coincidence: the gravitational-wave speed and
|
|
9
|
+
* the photon speed agree to better than 1 part in 10¹⁵, derived from
|
|
10
|
+
* the ~1.7 s arrival-time difference over a ~40 Mpc distance
|
|
11
|
+
* (Abbott et al. 2017 *ApJ Lett.* 848:L13; Boran et al. 2018
|
|
12
|
+
* *Phys. Rev. D* 97:041501). This bound rules out or strongly
|
|
13
|
+
* constrains TeVeS-class theories that generically predict c_GW ≠ c.
|
|
14
|
+
*
|
|
15
|
+
* The encoded scalar is the dimensionless ratio (c_GW − c)/c
|
|
16
|
+
* (signed). The bound itself is `|·| ≤ 10⁻¹⁵`; for GR (c_GW = c
|
|
17
|
+
* exactly), the LHS is 0.
|
|
18
|
+
*
|
|
19
|
+
* References:
|
|
20
|
+
* - Abbott et al. (LIGO/Virgo + INTEGRAL Collaborations) 2017 *ApJ
|
|
21
|
+
* Lett.* 848:L13 (arXiv:1710.05832; multi-messenger GW170817 +
|
|
22
|
+
* GRB170817A coincidence; |Δv|/c ≲ 10⁻¹⁵).
|
|
23
|
+
* - Boran, Desai, Kahya & Woodard 2018 *Phys. Rev. D* 97:041501
|
|
24
|
+
* (arXiv:1710.06168; GW170817 constraint on TeVeS-class theories).
|
|
25
|
+
*
|
|
26
|
+
* Status: speculative.
|
|
27
|
+
*
|
|
28
|
+
* Honest-claude scope notes:
|
|
29
|
+
* - The TeVeS framework (Bekenstein 2004, the original BE-36 form)
|
|
30
|
+
* is preserved as the bridge framing; the GW170817 dimensionless
|
|
31
|
+
* ratio is the AST-encodable scalar bound.
|
|
32
|
+
* - For GR (c_GW = c), the encoded ratio is 0 ≤ 10⁻¹⁵ ✓ (trivially).
|
|
33
|
+
* - For TeVeS variants where c_GW ≠ c, the |ratio| must be bounded
|
|
34
|
+
* above by 10⁻¹⁵ to remain consistent with GW170817.
|
|
35
|
+
* - The AST encodes the signed ratio (c_GW − c)/c; the absolute
|
|
36
|
+
* value is computed in the numerical evaluator (Math.abs).
|
|
37
|
+
*
|
|
38
|
+
* @see docs/specification/Part-II.md ("Bridge Equation 36")
|
|
39
|
+
* @see src/bridges/index.ts BRIDGE_EQUATIONS.find(e => e.id === 36)
|
|
40
|
+
* @module bridges/equations/be-36-gw-speed-bound
|
|
41
|
+
*/
|
|
42
|
+
import { validate, validateEquation } from '../../dimensional/validator.js';
|
|
43
|
+
import { DIMENSIONLESS, VELOCITY, } from '../../dimensional/types.js';
|
|
44
|
+
import { PhysicalConstants } from '../../core/types.js';
|
|
45
|
+
const sym = (name, dim) => ({ kind: 'symbol', name, dim });
|
|
46
|
+
/**
|
|
47
|
+
* RHS of the GW170817 dimensionless ratio:
|
|
48
|
+
* ratio = (c_GW − c) / c
|
|
49
|
+
*
|
|
50
|
+
* Both numerator and denominator are velocities; ratio is
|
|
51
|
+
* DIMENSIONLESS.
|
|
52
|
+
*/
|
|
53
|
+
export const BE36_GW_SPEED_RATIO_RHS = {
|
|
54
|
+
kind: 'op', op: '/',
|
|
55
|
+
args: [
|
|
56
|
+
{
|
|
57
|
+
kind: 'op', op: '-',
|
|
58
|
+
args: [
|
|
59
|
+
sym('c_GW', VELOCITY),
|
|
60
|
+
sym('c', VELOCITY),
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
sym('c', VELOCITY),
|
|
64
|
+
],
|
|
65
|
+
};
|
|
66
|
+
/** LHS: signed dimensionless graviton-photon speed-difference ratio. */
|
|
67
|
+
export const BE36_GW_SPEED_RATIO_LHS = sym('delta_v_over_c', DIMENSIONLESS);
|
|
68
|
+
/** Canonical GW170817 upper bound on |Δv|/c. */
|
|
69
|
+
export const GW170817_SPEED_BOUND = 1e-15;
|
|
70
|
+
/**
|
|
71
|
+
* Evaluate the signed dimensionless ratio (c_GW − c)/c.
|
|
72
|
+
*
|
|
73
|
+
* @returns Signed ratio. For GR, c_GW = c exactly and ratio = 0.
|
|
74
|
+
*/
|
|
75
|
+
export function evaluateGWSpeedRatio(input) {
|
|
76
|
+
const { c_GW_m_per_s } = input;
|
|
77
|
+
if (!Number.isFinite(c_GW_m_per_s) || c_GW_m_per_s <= 0) {
|
|
78
|
+
throw new RangeError(`evaluateGWSpeedRatio: c_GW_m_per_s must be a finite positive number, got ${c_GW_m_per_s}`);
|
|
79
|
+
}
|
|
80
|
+
const { c } = PhysicalConstants;
|
|
81
|
+
return (c_GW_m_per_s - c) / c;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Check whether a candidate c_GW satisfies the GW170817 bound
|
|
85
|
+
* |(c_GW − c)/c| ≤ 10⁻¹⁵.
|
|
86
|
+
*
|
|
87
|
+
* @returns true if |ratio| is at or below the bound.
|
|
88
|
+
*/
|
|
89
|
+
export function satisfiesGW170817Bound(input) {
|
|
90
|
+
return Math.abs(evaluateGWSpeedRatio(input)) <= GW170817_SPEED_BOUND;
|
|
91
|
+
}
|
|
92
|
+
// --- Self-validation ---
|
|
93
|
+
/**
|
|
94
|
+
* Run the AST through the dimensional analyzer; both sides should be
|
|
95
|
+
* DIMENSIONLESS.
|
|
96
|
+
*/
|
|
97
|
+
export function validateBE36Dimensions() {
|
|
98
|
+
const eq = validateEquation(BE36_GW_SPEED_RATIO_LHS, BE36_GW_SPEED_RATIO_RHS);
|
|
99
|
+
const lhs = validate(BE36_GW_SPEED_RATIO_LHS);
|
|
100
|
+
const rhs = validate(BE36_GW_SPEED_RATIO_RHS);
|
|
101
|
+
return {
|
|
102
|
+
ok: eq.ok,
|
|
103
|
+
lhsDim: lhs.inferredDimension,
|
|
104
|
+
rhsDim: rhs.inferredDimension,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=be-36-gw-speed-bound.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"be-36-gw-speed-bound.js","sourceRoot":"","sources":["../../../src/bridges/equations/be-36-gw-speed-bound.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAGH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAEL,aAAa,EACb,QAAQ,GACT,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,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,uBAAuB,GAAa;IAC/C,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,MAAM,EAAE,QAAQ,CAAC;gBACrB,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC;aACnB;SACF;QACD,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC;KACnB;CACF,CAAC;AAEF,wEAAwE;AACxE,MAAM,CAAC,MAAM,uBAAuB,GAAa,GAAG,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;AAEtF,gDAAgD;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC;AAS1C;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAyB;IAC5D,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,UAAU,CAClB,4EAA4E,YAAY,EAAE,CAC3F,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,CAAC,EAAE,GAAG,iBAAiB,CAAC;IAChC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAyB;IAC9D,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,IAAI,oBAAoB,CAAC;AACvE,CAAC;AAED,0BAA0B;AAE1B;;;GAGG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,EAAE,GAAG,gBAAgB,CAAC,uBAAuB,EAAE,uBAAuB,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAC9C,OAAO;QACL,EAAE,EAAE,EAAE,CAAC,EAAE;QACT,MAAM,EAAE,GAAG,CAAC,iBAAiB;QAC7B,MAAM,EAAE,GAAG,CAAC,iBAAiB;KAC9B,CAAC;AACJ,CAAC"}
|