universal-physics-tensor 0.45.2 → 0.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +85 -66
- package/bin/upt.mjs +22 -22
- package/dist/atlas/applicability.d.ts +108 -0
- package/dist/atlas/applicability.d.ts.map +1 -0
- package/dist/atlas/applicability.js +301 -0
- package/dist/atlas/applicability.js.map +1 -0
- package/dist/atlas/association.d.ts +92 -0
- package/dist/atlas/association.d.ts.map +1 -0
- package/dist/atlas/association.js +112 -0
- package/dist/atlas/association.js.map +1 -0
- package/dist/atlas/benchmark/backend-shapes.d.ts +47 -0
- package/dist/atlas/benchmark/backend-shapes.d.ts.map +1 -0
- package/dist/atlas/benchmark/backend-shapes.js +58 -0
- package/dist/atlas/benchmark/backend-shapes.js.map +1 -0
- package/dist/atlas/benchmark/baselines.d.ts +64 -0
- package/dist/atlas/benchmark/baselines.d.ts.map +1 -0
- package/dist/atlas/benchmark/baselines.js +112 -0
- package/dist/atlas/benchmark/baselines.js.map +1 -0
- package/dist/atlas/benchmark/leakage.d.ts +56 -0
- package/dist/atlas/benchmark/leakage.d.ts.map +1 -0
- package/dist/atlas/benchmark/leakage.js +100 -0
- package/dist/atlas/benchmark/leakage.js.map +1 -0
- package/dist/atlas/benchmark/loader.d.ts +56 -0
- package/dist/atlas/benchmark/loader.d.ts.map +1 -0
- package/dist/atlas/benchmark/loader.js +104 -0
- package/dist/atlas/benchmark/loader.js.map +1 -0
- package/dist/atlas/benchmark/run-atlas.d.ts +72 -0
- package/dist/atlas/benchmark/run-atlas.d.ts.map +1 -0
- package/dist/atlas/benchmark/run-atlas.js +210 -0
- package/dist/atlas/benchmark/run-atlas.js.map +1 -0
- package/dist/atlas/benchmark/stats.d.ts +90 -0
- package/dist/atlas/benchmark/stats.d.ts.map +1 -0
- package/dist/atlas/benchmark/stats.js +159 -0
- package/dist/atlas/benchmark/stats.js.map +1 -0
- package/dist/atlas/benchmark/study.d.ts +120 -0
- package/dist/atlas/benchmark/study.d.ts.map +1 -0
- package/dist/atlas/benchmark/study.js +192 -0
- package/dist/atlas/benchmark/study.js.map +1 -0
- package/dist/atlas/benchmark/types.d.ts +79 -0
- package/dist/atlas/benchmark/types.d.ts.map +1 -0
- package/dist/atlas/benchmark/types.js +46 -0
- package/dist/atlas/benchmark/types.js.map +1 -0
- package/dist/atlas/composition-table.d.ts +55 -0
- package/dist/atlas/composition-table.d.ts.map +1 -0
- package/dist/atlas/composition-table.js +133 -0
- package/dist/atlas/composition-table.js.map +1 -0
- package/dist/atlas/conventions.d.ts +63 -0
- package/dist/atlas/conventions.d.ts.map +1 -0
- package/dist/atlas/conventions.js +93 -0
- package/dist/atlas/conventions.js.map +1 -0
- package/dist/atlas/coverage.d.ts +93 -0
- package/dist/atlas/coverage.d.ts.map +1 -0
- package/dist/atlas/coverage.js +69 -0
- package/dist/atlas/coverage.js.map +1 -0
- package/dist/atlas/derivation.d.ts +137 -0
- package/dist/atlas/derivation.d.ts.map +1 -0
- package/dist/atlas/derivation.js +190 -0
- package/dist/atlas/derivation.js.map +1 -0
- package/dist/atlas/derive-evidence.d.ts +218 -0
- package/dist/atlas/derive-evidence.d.ts.map +1 -0
- package/dist/atlas/derive-evidence.js +225 -0
- package/dist/atlas/derive-evidence.js.map +1 -0
- package/dist/atlas/diffusion/bridges-closure.d.ts +63 -0
- package/dist/atlas/diffusion/bridges-closure.d.ts.map +1 -0
- package/dist/atlas/diffusion/bridges-closure.js +350 -0
- package/dist/atlas/diffusion/bridges-closure.js.map +1 -0
- package/dist/atlas/diffusion/bridges.d.ts +36 -0
- package/dist/atlas/diffusion/bridges.d.ts.map +1 -0
- package/dist/atlas/diffusion/bridges.js +226 -0
- package/dist/atlas/diffusion/bridges.js.map +1 -0
- package/dist/atlas/diffusion/dimensions.d.ts +21 -0
- package/dist/atlas/diffusion/dimensions.d.ts.map +1 -0
- package/dist/atlas/diffusion/dimensions.js +21 -0
- package/dist/atlas/diffusion/dimensions.js.map +1 -0
- package/dist/atlas/diffusion/index.d.ts +16 -0
- package/dist/atlas/diffusion/index.d.ts.map +1 -0
- package/dist/atlas/diffusion/index.js +23 -0
- package/dist/atlas/diffusion/index.js.map +1 -0
- package/dist/atlas/diffusion/models.d.ts +24 -0
- package/dist/atlas/diffusion/models.d.ts.map +1 -0
- package/dist/atlas/diffusion/models.js +139 -0
- package/dist/atlas/diffusion/models.js.map +1 -0
- package/dist/atlas/diffusion/numerics.d.ts +181 -0
- package/dist/atlas/diffusion/numerics.d.ts.map +1 -0
- package/dist/atlas/diffusion/numerics.js +251 -0
- package/dist/atlas/diffusion/numerics.js.map +1 -0
- package/dist/atlas/error-algebra.d.ts +52 -0
- package/dist/atlas/error-algebra.d.ts.map +1 -0
- package/dist/atlas/error-algebra.js +55 -0
- package/dist/atlas/error-algebra.js.map +1 -0
- package/dist/atlas/export.d.ts +48 -0
- package/dist/atlas/export.d.ts.map +1 -0
- package/dist/atlas/export.js +106 -0
- package/dist/atlas/export.js.map +1 -0
- package/dist/atlas/families.d.ts +14 -0
- package/dist/atlas/families.d.ts.map +1 -0
- package/dist/atlas/families.js +20 -0
- package/dist/atlas/families.js.map +1 -0
- package/dist/atlas/index.d.ts +90 -0
- package/dist/atlas/index.d.ts.map +1 -0
- package/dist/atlas/index.js +69 -0
- package/dist/atlas/index.js.map +1 -0
- package/dist/atlas/link-prediction.d.ts +71 -0
- package/dist/atlas/link-prediction.d.ts.map +1 -0
- package/dist/atlas/link-prediction.js +128 -0
- package/dist/atlas/link-prediction.js.map +1 -0
- package/dist/atlas/model.d.ts +70 -0
- package/dist/atlas/model.d.ts.map +1 -0
- package/dist/atlas/model.js +26 -0
- package/dist/atlas/model.js.map +1 -0
- package/dist/atlas/oscillators/bridges-coarse.d.ts +71 -0
- package/dist/atlas/oscillators/bridges-coarse.d.ts.map +1 -0
- package/dist/atlas/oscillators/bridges-coarse.js +146 -0
- package/dist/atlas/oscillators/bridges-coarse.js.map +1 -0
- package/dist/atlas/oscillators/bridges-exact.d.ts +70 -0
- package/dist/atlas/oscillators/bridges-exact.d.ts.map +1 -0
- package/dist/atlas/oscillators/bridges-exact.js +230 -0
- package/dist/atlas/oscillators/bridges-exact.js.map +1 -0
- package/dist/atlas/oscillators/bridges-limits.d.ts +118 -0
- package/dist/atlas/oscillators/bridges-limits.d.ts.map +1 -0
- package/dist/atlas/oscillators/bridges-limits.js +345 -0
- package/dist/atlas/oscillators/bridges-limits.js.map +1 -0
- package/dist/atlas/oscillators/dimensions.d.ts +34 -0
- package/dist/atlas/oscillators/dimensions.d.ts.map +1 -0
- package/dist/atlas/oscillators/dimensions.js +34 -0
- package/dist/atlas/oscillators/dimensions.js.map +1 -0
- package/dist/atlas/oscillators/index.d.ts +38 -0
- package/dist/atlas/oscillators/index.d.ts.map +1 -0
- package/dist/atlas/oscillators/index.js +37 -0
- package/dist/atlas/oscillators/index.js.map +1 -0
- package/dist/atlas/oscillators/models.d.ts +25 -0
- package/dist/atlas/oscillators/models.d.ts.map +1 -0
- package/dist/atlas/oscillators/models.js +160 -0
- package/dist/atlas/oscillators/models.js.map +1 -0
- package/dist/atlas/oscillators/rejections.d.ts +21 -0
- package/dist/atlas/oscillators/rejections.d.ts.map +1 -0
- package/dist/atlas/oscillators/rejections.js +54 -0
- package/dist/atlas/oscillators/rejections.js.map +1 -0
- package/dist/atlas/path-bound.d.ts +143 -0
- package/dist/atlas/path-bound.d.ts.map +1 -0
- package/dist/atlas/path-bound.js +268 -0
- package/dist/atlas/path-bound.js.map +1 -0
- package/dist/atlas/poster/associations.d.ts +66 -0
- package/dist/atlas/poster/associations.d.ts.map +1 -0
- package/dist/atlas/poster/associations.js +90 -0
- package/dist/atlas/poster/associations.js.map +1 -0
- package/dist/atlas/poster/derivations.d.ts +156 -0
- package/dist/atlas/poster/derivations.d.ts.map +1 -0
- package/dist/atlas/poster/derivations.js +430 -0
- package/dist/atlas/poster/derivations.js.map +1 -0
- package/dist/atlas/poster/statements.d.ts +198 -0
- package/dist/atlas/poster/statements.d.ts.map +1 -0
- package/dist/atlas/poster/statements.js +365 -0
- package/dist/atlas/poster/statements.js.map +1 -0
- package/dist/atlas/public.d.ts +26 -0
- package/dist/atlas/public.d.ts.map +1 -0
- package/dist/atlas/public.js +21 -0
- package/dist/atlas/public.js.map +1 -0
- package/dist/atlas/regime.d.ts +171 -0
- package/dist/atlas/regime.d.ts.map +1 -0
- package/dist/atlas/regime.js +309 -0
- package/dist/atlas/regime.js.map +1 -0
- package/dist/atlas/serialize.d.ts +50 -0
- package/dist/atlas/serialize.d.ts.map +1 -0
- package/dist/atlas/serialize.js +180 -0
- package/dist/atlas/serialize.js.map +1 -0
- package/dist/atlas/statement.d.ts +165 -0
- package/dist/atlas/statement.d.ts.map +1 -0
- package/dist/atlas/statement.js +176 -0
- package/dist/atlas/statement.js.map +1 -0
- package/dist/atlas/types.d.ts +325 -0
- package/dist/atlas/types.d.ts.map +1 -0
- package/dist/atlas/types.js +61 -0
- package/dist/atlas/types.js.map +1 -0
- package/dist/atlas/waves/bridges-closure.d.ts +39 -0
- package/dist/atlas/waves/bridges-closure.d.ts.map +1 -0
- package/dist/atlas/waves/bridges-closure.js +226 -0
- package/dist/atlas/waves/bridges-closure.js.map +1 -0
- package/dist/atlas/waves/bridges.d.ts +49 -0
- package/dist/atlas/waves/bridges.d.ts.map +1 -0
- package/dist/atlas/waves/bridges.js +266 -0
- package/dist/atlas/waves/bridges.js.map +1 -0
- package/dist/atlas/waves/index.d.ts +16 -0
- package/dist/atlas/waves/index.d.ts.map +1 -0
- package/dist/atlas/waves/index.js +23 -0
- package/dist/atlas/waves/index.js.map +1 -0
- package/dist/atlas/waves/models.d.ts +29 -0
- package/dist/atlas/waves/models.d.ts.map +1 -0
- package/dist/atlas/waves/models.js +127 -0
- package/dist/atlas/waves/models.js.map +1 -0
- package/dist/atlas/waves/numerics.d.ts +149 -0
- package/dist/atlas/waves/numerics.d.ts.map +1 -0
- package/dist/atlas/waves/numerics.js +218 -0
- package/dist/atlas/waves/numerics.js.map +1 -0
- package/dist/atlas/witness-artifact.d.ts +65 -0
- package/dist/atlas/witness-artifact.d.ts.map +1 -0
- package/dist/atlas/witness-artifact.js +78 -0
- package/dist/atlas/witness-artifact.js.map +1 -0
- package/dist/atlas/witness-numeric.d.ts +81 -0
- package/dist/atlas/witness-numeric.d.ts.map +1 -0
- package/dist/atlas/witness-numeric.js +105 -0
- package/dist/atlas/witness-numeric.js.map +1 -0
- package/dist/atlas/witness-result.d.ts +77 -0
- package/dist/atlas/witness-result.d.ts.map +1 -0
- package/dist/atlas/witness-result.js +39 -0
- package/dist/atlas/witness-result.js.map +1 -0
- package/dist/atlas/witness-specs.d.ts +110 -0
- package/dist/atlas/witness-specs.d.ts.map +1 -0
- package/dist/atlas/witness-specs.js +372 -0
- package/dist/atlas/witness-specs.js.map +1 -0
- package/dist/atlas/witness-symbolic.d.ts +79 -0
- package/dist/atlas/witness-symbolic.d.ts.map +1 -0
- package/dist/atlas/witness-symbolic.js +140 -0
- package/dist/atlas/witness-symbolic.js.map +1 -0
- package/dist/atlas/witnesses/quantum-support.d.ts +50 -0
- package/dist/atlas/witnesses/quantum-support.d.ts.map +1 -0
- package/dist/atlas/witnesses/quantum-support.js +48 -0
- package/dist/atlas/witnesses/quantum-support.js.map +1 -0
- package/dist/bridges/be11-decoherence-confrontation.js.map +1 -1
- package/dist/bridges/be21-kss-confrontation.js.map +1 -1
- package/dist/bridges/be23-planckian-confrontation.js.map +1 -1
- package/dist/bridges/be35-bootstrap-confrontation.js.map +1 -1
- package/dist/bridges/be36-gw170817-confrontation.js.map +1 -1
- package/dist/bridges/be37-cassini-confrontation.js.map +1 -1
- package/dist/bridges/be48-collapse-confrontation.js.map +1 -1
- package/dist/bridges/be51-lensing-confrontation.d.ts.map +1 -1
- package/dist/bridges/be51-lensing-confrontation.js +5 -3
- package/dist/bridges/be51-lensing-confrontation.js.map +1 -1
- package/dist/bridges/be52-mercury-confrontation.d.ts.map +1 -1
- package/dist/bridges/be52-mercury-confrontation.js +4 -1
- package/dist/bridges/be52-mercury-confrontation.js.map +1 -1
- package/dist/bridges/be55-quantum-hall-confrontation.js.map +1 -1
- package/dist/bridges/be56-casimir-confrontation.js.map +1 -1
- package/dist/bridges/be58-johnson-nyquist-confrontation.js.map +1 -1
- package/dist/bridges/be59-ac-josephson-confrontation.js.map +1 -1
- package/dist/bridges/be60-fractional-qh-confrontation.js.map +1 -1
- package/dist/bridges/be61-wiedemann-franz-confrontation.js.map +1 -1
- package/dist/bridges/be62-bcs-gap-confrontation.js.map +1 -1
- package/dist/bridges/be63-chandrasekhar-mass-confrontation.js.map +1 -1
- package/dist/bridges/be64-eddington-luminosity-confrontation.js.map +1 -1
- package/dist/bridges/be65-jeans-mass-confrontation.js.map +1 -1
- package/dist/bridges/bridge-equations.d.ts +2 -2
- package/dist/bridges/bridge-equations.d.ts.map +1 -1
- package/dist/bridges/bridge-equations.js +2 -2
- package/dist/bridges/bridge-equations.js.map +1 -1
- package/dist/bridges/catalog-adapter.d.ts.map +1 -1
- package/dist/bridges/catalog-adapter.js.map +1 -1
- package/dist/bridges/confrontations.d.ts.map +1 -1
- package/dist/bridges/confrontations.js +7 -0
- package/dist/bridges/confrontations.js.map +1 -1
- package/dist/bridges/equations/_be-helpers.d.ts +2 -2
- package/dist/bridges/equations/_be-helpers.js +2 -2
- package/dist/bridges/equations/be-20-vacuum-energy.js.map +1 -1
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +59 -72
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -1
- package/dist/bridges/equations/be-35-conformal-bootstrap.js +66 -98
- package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -1
- package/dist/bridges/equations/be-48-grw-localization.d.ts +9 -8
- package/dist/bridges/equations/be-48-grw-localization.d.ts.map +1 -1
- package/dist/bridges/equations/be-48-grw-localization.js +9 -8
- package/dist/bridges/equations/be-48-grw-localization.js.map +1 -1
- package/dist/bridges/gravitational-lensing.d.ts +10 -0
- package/dist/bridges/gravitational-lensing.d.ts.map +1 -1
- package/dist/bridges/gravitational-lensing.js.map +1 -1
- package/dist/bridges/index.d.ts +125 -7
- package/dist/bridges/index.d.ts.map +1 -1
- package/dist/bridges/index.js +483 -20
- package/dist/bridges/index.js.map +1 -1
- package/dist/bridges/observations/types.d.ts +14 -0
- package/dist/bridges/observations/types.d.ts.map +1 -1
- package/dist/bridges/observations/types.js.map +1 -1
- package/dist/bridges/perihelion-precession.d.ts +10 -0
- package/dist/bridges/perihelion-precession.d.ts.map +1 -1
- package/dist/bridges/perihelion-precession.js.map +1 -1
- package/dist/bridges/rhs-registry.js +2 -2
- package/dist/canonical/canonical-equation.d.ts +15 -0
- package/dist/canonical/canonical-equation.d.ts.map +1 -1
- package/dist/canonical/entries/_l1-build.d.ts +1 -1
- package/dist/canonical/entries/_l1-build.d.ts.map +1 -1
- package/dist/canonical/entries/atomic.d.ts.map +1 -1
- package/dist/canonical/entries/atomic.js +23 -0
- package/dist/canonical/entries/atomic.js.map +1 -1
- package/dist/canonical/entries/nonmonomial.d.ts.map +1 -1
- package/dist/canonical/entries/nonmonomial.js +93 -0
- package/dist/canonical/entries/nonmonomial.js.map +1 -1
- package/dist/canonical/normal-form.js.map +1 -1
- package/dist/canonical/residual.d.ts +28 -0
- package/dist/canonical/residual.d.ts.map +1 -0
- package/dist/canonical/residual.js +31 -0
- package/dist/canonical/residual.js.map +1 -0
- package/dist/cli/command.d.ts +8 -0
- package/dist/cli/command.d.ts.map +1 -1
- package/dist/cli/command.js +10 -0
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/commands/atlas.d.ts +3 -0
- package/dist/cli/commands/atlas.d.ts.map +1 -0
- package/dist/cli/commands/atlas.js +158 -0
- package/dist/cli/commands/atlas.js.map +1 -0
- package/dist/cli/commands/audit.js +3 -3
- package/dist/cli/commands/candidates.js +3 -3
- package/dist/cli/commands/canonical.js +3 -3
- package/dist/cli/commands/confront.d.ts.map +1 -1
- package/dist/cli/commands/confront.js +8 -1
- package/dist/cli/commands/confront.js.map +1 -1
- package/dist/cli/commands/connectors.js +7 -7
- package/dist/cli/commands/coverage.js +3 -3
- package/dist/cli/commands/derive.d.ts.map +1 -1
- package/dist/cli/commands/derive.js +40 -9
- package/dist/cli/commands/derive.js.map +1 -1
- package/dist/cli/commands/discover.d.ts.map +1 -1
- package/dist/cli/commands/discover.js +46 -27
- package/dist/cli/commands/discover.js.map +1 -1
- package/dist/cli/commands/evaluate.d.ts.map +1 -1
- package/dist/cli/commands/evaluate.js +2 -1
- package/dist/cli/commands/evaluate.js.map +1 -1
- package/dist/cli/commands/explain.d.ts.map +1 -1
- package/dist/cli/commands/explain.js +19 -6
- package/dist/cli/commands/explain.js.map +1 -1
- package/dist/cli/commands/index.d.ts +3 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +3 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/map.d.ts.map +1 -1
- package/dist/cli/commands/map.js +187 -36
- package/dist/cli/commands/map.js.map +1 -1
- package/dist/cli/commands/path.d.ts +3 -0
- package/dist/cli/commands/path.d.ts.map +1 -0
- package/dist/cli/commands/path.js +228 -0
- package/dist/cli/commands/path.js.map +1 -0
- package/dist/cli/commands/predict.js +4 -4
- package/dist/cli/commands/priority.js +2 -2
- package/dist/cli/commands/probe.d.ts.map +1 -1
- package/dist/cli/commands/probe.js +59 -2
- package/dist/cli/commands/probe.js.map +1 -1
- package/dist/cli/commands/recover.d.ts.map +1 -1
- package/dist/cli/commands/recover.js +25 -6
- package/dist/cli/commands/recover.js.map +1 -1
- package/dist/cli/commands/regime.d.ts +41 -0
- package/dist/cli/commands/regime.d.ts.map +1 -0
- package/dist/cli/commands/regime.js +243 -0
- package/dist/cli/commands/regime.js.map +1 -0
- package/dist/cli/commands/symbolic.js +5 -5
- package/dist/cli/errors.d.ts +13 -1
- package/dist/cli/errors.d.ts.map +1 -1
- package/dist/cli/errors.js +13 -1
- package/dist/cli/errors.js.map +1 -1
- package/dist/cli/graphs.d.ts.map +1 -1
- package/dist/cli/graphs.js +5 -1
- package/dist/cli/graphs.js.map +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +29 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/output.d.ts +6 -1
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/version.js.map +1 -1
- package/dist/cli-api.d.ts +21 -1
- package/dist/cli-api.d.ts.map +1 -1
- package/dist/cli-api.js +23 -1
- package/dist/cli-api.js.map +1 -1
- package/dist/composition/axis-audit.js.map +1 -1
- package/dist/composition/bridge-prediction.d.ts.map +1 -1
- package/dist/composition/bridge-prediction.js +0 -0
- package/dist/composition/bridge-prediction.js.map +1 -1
- package/dist/composition/canonical-compare.d.ts +65 -0
- package/dist/composition/canonical-compare.d.ts.map +1 -0
- package/dist/composition/canonical-compare.js +237 -0
- package/dist/composition/canonical-compare.js.map +1 -0
- package/dist/composition/canonical-graph.d.ts +2 -2
- package/dist/composition/canonical-graph.js +2 -2
- package/dist/composition/canonical-graph.js.map +1 -1
- package/dist/composition/canonical-prefactors.d.ts +32 -0
- package/dist/composition/canonical-prefactors.d.ts.map +1 -0
- package/dist/composition/canonical-prefactors.js +80 -0
- package/dist/composition/canonical-prefactors.js.map +1 -0
- package/dist/composition/compose-symbolic.d.ts.map +1 -1
- package/dist/composition/compose-symbolic.js.map +1 -1
- package/dist/composition/compose.d.ts.map +1 -1
- package/dist/composition/compose.js +80 -1
- package/dist/composition/compose.js.map +1 -1
- package/dist/composition/consequence.js.map +1 -1
- package/dist/composition/discovery.d.ts +20 -3
- package/dist/composition/discovery.d.ts.map +1 -1
- package/dist/composition/discovery.js +30 -4
- package/dist/composition/discovery.js.map +1 -1
- package/dist/composition/edge.d.ts +64 -0
- package/dist/composition/edge.d.ts.map +1 -1
- package/dist/composition/edge.js +29 -0
- package/dist/composition/edge.js.map +1 -1
- package/dist/composition/edges/calibration.d.ts.map +1 -1
- package/dist/composition/edges/calibration.js +46 -0
- package/dist/composition/edges/calibration.js.map +1 -1
- package/dist/composition/edges/catalog-quantum.d.ts.map +1 -1
- package/dist/composition/edges/catalog-quantum.js +9 -0
- package/dist/composition/edges/catalog-quantum.js.map +1 -1
- package/dist/composition/edges/catalog-tranche.d.ts.map +1 -1
- package/dist/composition/edges/catalog-tranche.js +18 -0
- package/dist/composition/edges/catalog-tranche.js.map +1 -1
- package/dist/composition/enumerate.js.map +1 -1
- package/dist/composition/explain.d.ts +9 -1
- package/dist/composition/explain.d.ts.map +1 -1
- package/dist/composition/explain.js +34 -8
- package/dist/composition/explain.js.map +1 -1
- package/dist/composition/expr-eval.d.ts.map +1 -1
- package/dist/composition/expr-eval.js.map +1 -1
- package/dist/composition/expr-simplify.d.ts +13 -0
- package/dist/composition/expr-simplify.d.ts.map +1 -1
- package/dist/composition/expr-simplify.js +25 -0
- package/dist/composition/expr-simplify.js.map +1 -1
- package/dist/composition/expr-subst.js.map +1 -1
- package/dist/composition/graph-viz-svg.d.ts.map +1 -1
- package/dist/composition/graph-viz.d.ts +118 -1
- package/dist/composition/graph-viz.d.ts.map +1 -1
- package/dist/composition/graph-viz.js +189 -6
- package/dist/composition/graph-viz.js.map +1 -1
- package/dist/composition/grounding.d.ts.map +1 -1
- package/dist/composition/grounding.js +6 -1
- package/dist/composition/grounding.js.map +1 -1
- package/dist/composition/identifiability.js.map +1 -1
- package/dist/composition/index.d.ts +4 -2
- package/dist/composition/index.d.ts.map +1 -1
- package/dist/composition/index.js +2 -1
- package/dist/composition/index.js.map +1 -1
- package/dist/composition/poster-source.d.ts +153 -0
- package/dist/composition/poster-source.d.ts.map +1 -0
- package/dist/composition/poster-source.js +183 -0
- package/dist/composition/poster-source.js.map +1 -0
- package/dist/composition/probe/backend-protocol.d.ts +34 -1
- package/dist/composition/probe/backend-protocol.d.ts.map +1 -1
- package/dist/composition/probe/backend-protocol.js +9 -2
- package/dist/composition/probe/backend-protocol.js.map +1 -1
- package/dist/composition/probe/candidate-store.d.ts.map +1 -1
- package/dist/composition/probe/corpus.d.ts +12 -0
- package/dist/composition/probe/corpus.d.ts.map +1 -1
- package/dist/composition/probe/corpus.js +100 -0
- package/dist/composition/probe/corpus.js.map +1 -1
- package/dist/composition/probe/generator.d.ts +14 -0
- package/dist/composition/probe/generator.d.ts.map +1 -1
- package/dist/composition/probe/generator.js +24 -2
- package/dist/composition/probe/generator.js.map +1 -1
- package/dist/composition/probe/limits.js.map +1 -1
- package/dist/composition/probe/pipeline.d.ts +5 -0
- package/dist/composition/probe/pipeline.d.ts.map +1 -1
- package/dist/composition/probe/pipeline.js +20 -3
- package/dist/composition/probe/pipeline.js.map +1 -1
- package/dist/composition/probe/problem.js.map +1 -1
- package/dist/composition/probe/report.d.ts.map +1 -1
- package/dist/composition/probe/report.js +2 -0
- package/dist/composition/probe/report.js.map +1 -1
- package/dist/composition/probe/residual.d.ts.map +1 -1
- package/dist/composition/probe/residual.js.map +1 -1
- package/dist/composition/probe/search-budget.js.map +1 -1
- package/dist/composition/proposed-bridges.d.ts +2 -2
- package/dist/composition/proposed-bridges.d.ts.map +1 -1
- package/dist/composition/proposed-bridges.js +1 -1
- package/dist/composition/proposed-bridges.js.map +1 -1
- package/dist/composition/retrodiction.js.map +1 -1
- package/dist/composition/uncertainty.d.ts +52 -2
- package/dist/composition/uncertainty.d.ts.map +1 -1
- package/dist/composition/uncertainty.js +38 -2
- package/dist/composition/uncertainty.js.map +1 -1
- package/dist/composition/user-equation.d.ts.map +1 -1
- package/dist/core/constants.d.ts +13 -0
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +13 -0
- package/dist/core/constants.js.map +1 -1
- package/dist/core/flux-rules.d.ts.map +1 -1
- package/dist/core/flux-rules.js.map +1 -1
- package/dist/core/labeled-tensor.d.ts.map +1 -1
- package/dist/core/regime-registry.d.ts.map +1 -1
- package/dist/core/regime-rule-install.js.map +1 -1
- package/dist/core/tensor.d.ts.map +1 -1
- package/dist/core/tensor.js.map +1 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/diff/bridge-ast-gradient.js.map +1 -1
- package/dist/diff/bridge-gradient.d.ts +1 -1
- package/dist/diff/bridge-gradient.js +1 -1
- package/dist/dimensional/ast-types.d.ts +31 -1
- package/dist/dimensional/ast-types.d.ts.map +1 -1
- package/dist/dimensional/bridge-check.d.ts +1 -1
- package/dist/dimensional/bridge-check.js +1 -1
- package/dist/dimensional/buckingham.d.ts.map +1 -1
- package/dist/dimensional/connection.d.ts +2 -0
- package/dist/dimensional/connection.d.ts.map +1 -1
- package/dist/dimensional/connection.js +2 -0
- package/dist/dimensional/connection.js.map +1 -1
- package/dist/dimensional/curvature-composite.d.ts +5 -3
- package/dist/dimensional/curvature-composite.d.ts.map +1 -1
- package/dist/dimensional/curvature-composite.js +1 -0
- package/dist/dimensional/curvature-composite.js.map +1 -1
- package/dist/dimensional/curvature-invariants.d.ts +2 -0
- package/dist/dimensional/curvature-invariants.d.ts.map +1 -1
- package/dist/dimensional/curvature-invariants.js +2 -0
- package/dist/dimensional/curvature-invariants.js.map +1 -1
- package/dist/dimensional/dimension-spec.d.ts.map +1 -1
- package/dist/dimensional/einstein-equation.d.ts +3 -3
- package/dist/dimensional/einstein-equation.js +3 -3
- package/dist/dimensional/errors.d.ts.map +1 -1
- package/dist/dimensional/metric.d.ts +5 -2
- package/dist/dimensional/metric.d.ts.map +1 -1
- package/dist/dimensional/metric.js +5 -2
- package/dist/dimensional/metric.js.map +1 -1
- package/dist/dimensional/tensor-trace.js.map +1 -1
- package/dist/dimensional/validator-registry.js.map +1 -1
- package/dist/dimensional/validator.d.ts +3 -2
- package/dist/dimensional/validator.d.ts.map +1 -1
- package/dist/dimensional/validator.js +23 -4
- package/dist/dimensional/validator.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/numerical/curvature-lowering-helpers.d.ts.map +1 -1
- package/dist/numerical/curvature-lowering-helpers.js +104 -0
- package/dist/numerical/curvature-lowering-helpers.js.map +1 -1
- package/dist/numerical/errors.d.ts.map +1 -1
- package/dist/numerical/errors.js.map +1 -1
- package/dist/numerical/float64-engine.d.ts.map +1 -1
- package/dist/numerical/float64-engine.js +51 -24
- package/dist/numerical/float64-engine.js.map +1 -1
- package/dist/numerical/formula-dimension.d.ts.map +1 -1
- package/dist/numerical/formula-dimension.js.map +1 -1
- package/dist/numerical/formula.d.ts.map +1 -1
- package/dist/numerical/formula.js.map +1 -1
- package/dist/numerical/geometrized.d.ts.map +1 -1
- package/dist/numerical/gl4-integrator.d.ts +3 -3
- package/dist/numerical/gl4-integrator.js +3 -3
- package/dist/numerical/killing.d.ts +47 -5
- package/dist/numerical/killing.d.ts.map +1 -1
- package/dist/numerical/killing.js +41 -3
- package/dist/numerical/killing.js.map +1 -1
- package/dist/numerical/klein-gordon.d.ts +2 -2
- package/dist/numerical/klein-gordon.js +2 -2
- package/dist/numerical/lowering.d.ts +2 -2
- package/dist/numerical/lowering.d.ts.map +1 -1
- package/dist/numerical/lowering.js +5 -3
- package/dist/numerical/lowering.js.map +1 -1
- package/dist/numerical/mathts-engine.d.ts.map +1 -1
- package/dist/numerical/mathts-engine.js.map +1 -1
- package/dist/numerical/metric-inverse.js.map +1 -1
- package/dist/numerical/perihelion-finder.d.ts +15 -13
- package/dist/numerical/perihelion-finder.d.ts.map +1 -1
- package/dist/numerical/perihelion-finder.js +15 -13
- package/dist/numerical/perihelion-finder.js.map +1 -1
- package/dist/numerical/weyl-lowering.d.ts.map +1 -1
- package/dist/numerical/weyl-lowering.js +90 -40
- package/dist/numerical/weyl-lowering.js.map +1 -1
- package/package.json +163 -104
package/dist/cli/commands/map.js
CHANGED
|
@@ -16,7 +16,7 @@ import { writeFileSync } from 'node:fs';
|
|
|
16
16
|
import { registerCommand } from '../command.js';
|
|
17
17
|
import { resolveGraph } from '../graphs.js';
|
|
18
18
|
import { emitJson } from '../output.js';
|
|
19
|
-
import { UsageError, CliError } from '../errors.js';
|
|
19
|
+
import { UsageError, CliError, EXIT_CHECK_FAILED } from '../errors.js';
|
|
20
20
|
import { parseDiscoveryOpts } from './_discovery-opts.js';
|
|
21
21
|
const FLAGS = [
|
|
22
22
|
{ name: '--source', valueStyle: 'attached' },
|
|
@@ -25,32 +25,88 @@ const FLAGS = [
|
|
|
25
25
|
{ name: '--max-orders', valueStyle: 'attached' },
|
|
26
26
|
{ name: '--anchor', valueStyle: 'attached', repeatable: true },
|
|
27
27
|
{ name: '--proposed', valueStyle: 'none' },
|
|
28
|
+
{ name: '--relation', valueStyle: 'attached' },
|
|
29
|
+
{ name: '--evidence', valueStyle: 'attached' },
|
|
28
30
|
// optionalValue: a bare trailing --equation stores '' so the empty-check in
|
|
29
31
|
// run() owns the diagnostic (old-CLI fidelity: bin/upt.mjs did `a[i+1] ?? ''`
|
|
30
32
|
// and let mapCmd emit `upt: --equation requires "TARGET = EXPR"`, exit 2).
|
|
31
33
|
{ name: '--equation', valueStyle: 'either', optionalValue: true },
|
|
32
34
|
{ name: '--json', valueStyle: 'none' },
|
|
33
35
|
];
|
|
34
|
-
const HELP = `upt map [--source=catalog|canonical|both] [--format=text|mermaid|dot|svg]
|
|
35
|
-
[--proposed] [--out=PATH] [--equation "TARGET = EXPR"]
|
|
36
|
-
Map how the equations LINK: connected components (clusters) of the
|
|
37
|
-
graph by shared quantities, the anchored core, the link hubs, and
|
|
38
|
-
the isolated tail.
|
|
39
|
-
--source defaults to 'both' (catalog + canonical) — a pure
|
|
40
|
-
connectivity question gets the honest, all-known-physics answer by
|
|
41
|
-
default; --source=catalog shows the bridge-catalog view alone.
|
|
42
|
-
--
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
36
|
+
const HELP = `upt map [--source=catalog|canonical|both|poster] [--format=text|mermaid|dot|svg]
|
|
37
|
+
[--proposed] [--out=PATH] [--equation "TARGET = EXPR"]
|
|
38
|
+
Map how the equations LINK: connected components (clusters) of the
|
|
39
|
+
graph by shared quantities, the anchored core, the link hubs, and
|
|
40
|
+
the isolated tail.
|
|
41
|
+
--source defaults to 'both' (catalog + canonical) — a pure
|
|
42
|
+
connectivity question gets the honest, all-known-physics answer by
|
|
43
|
+
default; --source=catalog shows the bridge-catalog view alone.
|
|
44
|
+
--source=poster draws the ATLAS PHASE 3 POSTER INDEX instead of the
|
|
45
|
+
bridge graph: nodes are STATEMENTS (including the hidden supporting
|
|
46
|
+
nodes — action principle, Noether, the full Maxwell system, the
|
|
47
|
+
Lorentz group, the central limit theorem) and boxes are DERIVATIONS
|
|
48
|
+
(premises in, conclusion out). Associations are drawn DASHED because
|
|
49
|
+
they assert no relation at all. It also reports any premise naming a
|
|
50
|
+
statement the registry does not define, and says so out loud when the
|
|
51
|
+
index is not registered in this build rather than printing an empty
|
|
52
|
+
map as an answer.
|
|
53
|
+
--format=mermaid|dot|svg emits the VISUAL map (quantities = nodes,
|
|
54
|
+
equations = junctions colored by status, one subgraph per component).
|
|
55
|
+
text (default) is the unchanged linkage printout. svg renders the dot
|
|
56
|
+
layout via the optional @viz-js/viz peer (npm i @viz-js/viz; or pipe
|
|
57
|
+
dot through "dot -Tsvg"). --proposed overlays the unadjudicated
|
|
58
|
+
identity-consequence relations (gray dashed). --out writes to a file
|
|
59
|
+
(default stdout).
|
|
60
|
+
--equation "TARGET = EXPR" injects YOUR OWN equation as a violet 'user'
|
|
61
|
+
node and reports where it lands (which cluster / shared quantities), with
|
|
62
|
+
a "did you mean?" hint for names that miss the catalog vocabulary. Use
|
|
63
|
+
underscores for multi-word quantities (photon_energy -> photon-energy).
|
|
64
|
+
--relation=TYPE keeps only edges whose recorded Atlas relation is that
|
|
65
|
+
type; --evidence=TAG keeps only edges whose evidence set, DERIVED from
|
|
66
|
+
the catalog row at read time, contains that tag.
|
|
67
|
+
⚠ Filtering changes what a missing overlay means: unfiltered, an edge
|
|
68
|
+
with no overlay is KEPT; filtered, it is DROPPED, because nothing shows
|
|
69
|
+
it satisfies the filter. Those drops are counted and printed separately
|
|
70
|
+
from the edges that simply did not match — an unaudited graph must not
|
|
71
|
+
render as a complete answer.
|
|
72
|
+
e.g. upt map --relation=derivation --source=both`;
|
|
73
|
+
const RELATION_TYPES = [
|
|
74
|
+
'derivation',
|
|
75
|
+
'exact-equivalence',
|
|
76
|
+
'restriction',
|
|
77
|
+
'approximation',
|
|
78
|
+
'coarse-graining',
|
|
79
|
+
'analytic-continuation',
|
|
80
|
+
'structural-analogy',
|
|
81
|
+
'deformation-quantization',
|
|
82
|
+
];
|
|
83
|
+
const EVIDENCE_TAGS = [
|
|
84
|
+
'proposed',
|
|
85
|
+
'reviewed',
|
|
86
|
+
'dimension-checked',
|
|
87
|
+
'convention-checked',
|
|
88
|
+
'symbolically-checked',
|
|
89
|
+
'numerically-supported',
|
|
90
|
+
'formally-proved',
|
|
91
|
+
'empirically-supported',
|
|
92
|
+
'contradicted',
|
|
93
|
+
'unresolved',
|
|
94
|
+
];
|
|
95
|
+
/** Last value of an `attached` flag, or undefined when the flag is absent. */
|
|
96
|
+
function lastValue(flags, name) {
|
|
97
|
+
const v = flags.get(name);
|
|
98
|
+
return v && v.length > 0 ? v[v.length - 1] : undefined;
|
|
99
|
+
}
|
|
100
|
+
/** Validate one filter value against its vocabulary. A bad value is a CliError
|
|
101
|
+
* (exit 1); an unknown FLAG is the parser's UsageError (exit 2). */
|
|
102
|
+
function parseFilter(raw, allowed, flag) {
|
|
103
|
+
if (raw === undefined)
|
|
104
|
+
return undefined;
|
|
105
|
+
if (!allowed.includes(raw)) {
|
|
106
|
+
throw new CliError(`upt: unknown ${flag}='${raw}' (expected: ${allowed.join(' | ')})`);
|
|
107
|
+
}
|
|
108
|
+
return raw;
|
|
109
|
+
}
|
|
54
110
|
// Convert the derived identity-consequence proposals into viz junctions
|
|
55
111
|
// (gray-dashed, status 'proposed'). The library never imports proposed-bridges;
|
|
56
112
|
// the CLI does the conversion, keeping the epistemic firewall intact.
|
|
@@ -75,11 +131,15 @@ async function analyzeEquation(api, equation, graph) {
|
|
|
75
131
|
for (const q of [...e.sources, e.target])
|
|
76
132
|
catalogDims.set(q.name, q.dim);
|
|
77
133
|
}
|
|
78
|
-
|
|
134
|
+
const user = await api.analyzeUserEquation(equation, catalogDims);
|
|
135
|
+
// Dimensions cannot see a prefactor: compare with the canonical equation the
|
|
136
|
+
// user's one restates, when the registry holds one (persona finding L2).
|
|
137
|
+
const comparisons = user.parseError ? [] : await api.compareUserEquation(equation, catalogDims);
|
|
138
|
+
return { user, comparisons };
|
|
79
139
|
}
|
|
80
140
|
// Print the dimensional verdict, where the equation landed, and any hints.
|
|
81
141
|
// `out` is ctx.out (text mode → stdout) or ctx.err (visual → stderr).
|
|
82
|
-
function printEquationReport(api, model, user, out) {
|
|
142
|
+
function printEquationReport(api, model, user, out, comparisons = []) {
|
|
83
143
|
out('');
|
|
84
144
|
if (user.consistent === true) {
|
|
85
145
|
out(` ✓ dimensionally consistent: ${api.format(user.rhsDimension)}`);
|
|
@@ -90,6 +150,8 @@ function printEquationReport(api, model, user, out) {
|
|
|
90
150
|
else if (user.rhsDimension) {
|
|
91
151
|
out(` · RHS dimension: ${api.format(user.rhsDimension)} (target not in the catalog, so no comparison)`);
|
|
92
152
|
}
|
|
153
|
+
for (const line of api.describeComparisons(comparisons))
|
|
154
|
+
out(` ${line}`);
|
|
93
155
|
const L = api.equationLanding(model, 'user-equation');
|
|
94
156
|
if (L.isolated) {
|
|
95
157
|
out(' ⚠ your equation is ISOLATED — it shares no quantity with this graph.');
|
|
@@ -116,8 +178,40 @@ async function run(ctx) {
|
|
|
116
178
|
// map asks a pure connectivity question, so it defaults to --source=both
|
|
117
179
|
// (catalog + canonical) rather than graphs.ts's catalog fallback used by
|
|
118
180
|
// the other --source commands (e.g. discover, which keeps catalog).
|
|
181
|
+
//
|
|
182
|
+
// `--source=poster` is a MAP-ONLY source and is resolved HERE, not in
|
|
183
|
+
// `resolveGraph`. That helper is shared by `discover`, `candidates` and the
|
|
184
|
+
// rest, and the poster index is not a `BridgeEdge` graph they could analyse;
|
|
185
|
+
// teaching it a value only one command can use would hand every other command
|
|
186
|
+
// a source that silently means nothing.
|
|
187
|
+
const posterMode = lastValue(args.flags, 'source') === 'poster';
|
|
119
188
|
const sourceFlags = args.flags.has('source') ? args.flags : new Map(args.flags).set('source', ['both']);
|
|
120
|
-
const
|
|
189
|
+
const resolved = posterMode
|
|
190
|
+
? { graph: [], label: 'poster (Atlas Phase 3 index)', source: 'poster' }
|
|
191
|
+
: resolveGraph(api, sourceFlags);
|
|
192
|
+
const { graph: fullGraph, label, source } = resolved;
|
|
193
|
+
// The poster's own report line: what it contributed, or why it contributed
|
|
194
|
+
// nothing (design note §6). Computed once; printed by every output form.
|
|
195
|
+
const posterValidation = posterMode ? api.validatePoster(api.POSTER_GRAPH) : null;
|
|
196
|
+
const posterNote = posterMode
|
|
197
|
+
? api.describePosterSource(api.POSTER_GRAPH, posterValidation)
|
|
198
|
+
: null;
|
|
199
|
+
// The two overlay filters. Parsed BEFORE anything else is computed so a bad
|
|
200
|
+
// value costs nothing and always exits 1.
|
|
201
|
+
const relation = parseFilter(lastValue(args.flags, 'relation'), RELATION_TYPES, '--relation');
|
|
202
|
+
const evidence = parseFilter(lastValue(args.flags, 'evidence'), EVIDENCE_TAGS, '--evidence');
|
|
203
|
+
const filterOpts = {
|
|
204
|
+
...(relation !== undefined ? { relation } : {}),
|
|
205
|
+
...(evidence !== undefined ? { evidence } : {}),
|
|
206
|
+
};
|
|
207
|
+
// The TEXT and JSON paths filter the edge list here, because `linkageMap`
|
|
208
|
+
// consumes edges. The VISUAL path hands `buildVizModel` the FULL graph with
|
|
209
|
+
// the same options, so the model also judges the --proposed / --equation
|
|
210
|
+
// overlay junctions, which are not edges and which `filterEdges` cannot see.
|
|
211
|
+
// One predicate, two callers: they cannot disagree about what a filter
|
|
212
|
+
// selects, only about how much they were asked to count.
|
|
213
|
+
const { kept: graph, stats: edgeStats } = api.filterEdges(fullGraph, filterOpts);
|
|
214
|
+
const edgeLegend = api.formatFilterLegend(edgeStats);
|
|
121
215
|
const fmtValues = args.flags.get('format');
|
|
122
216
|
const fmt = fmtValues && fmtValues.length > 0 ? fmtValues[fmtValues.length - 1] : 'text';
|
|
123
217
|
const isJson = args.flags.has('json');
|
|
@@ -126,6 +220,7 @@ async function run(ctx) {
|
|
|
126
220
|
}
|
|
127
221
|
// --equation injects a user-supplied "TARGET = EXPR" as a 'user' junction.
|
|
128
222
|
let user = null;
|
|
223
|
+
let comparisons = [];
|
|
129
224
|
const equationValues = args.flags.get('equation');
|
|
130
225
|
const equation = equationValues && equationValues.length > 0 ? equationValues[equationValues.length - 1] : null;
|
|
131
226
|
if (equation != null) {
|
|
@@ -133,7 +228,7 @@ async function run(ctx) {
|
|
|
133
228
|
throw new UsageError('upt: --equation requires "TARGET = EXPR"');
|
|
134
229
|
}
|
|
135
230
|
try {
|
|
136
|
-
user = await analyzeEquation(api, equation, graph); // throws UserEquationError on malformed structure
|
|
231
|
+
({ user, comparisons } = await analyzeEquation(api, equation, graph)); // throws UserEquationError on malformed structure
|
|
137
232
|
}
|
|
138
233
|
catch (e) {
|
|
139
234
|
throw new UsageError('upt: ' + (e && e.message ? e.message : String(e)));
|
|
@@ -142,8 +237,24 @@ async function run(ctx) {
|
|
|
142
237
|
throw new UsageError('upt: ' + user.parseError); // dimensionally malformed RHS
|
|
143
238
|
}
|
|
144
239
|
}
|
|
240
|
+
// A user equation whose dimension mismatches, or that differs from its
|
|
241
|
+
// canonical equation, is a failed check: exit 3 (persona finding F2). A
|
|
242
|
+
// mismatch counts only when every name resolved: an unknown name is checked
|
|
243
|
+
// as a dimensionless placeholder, so its "mismatch" is not a real check.
|
|
244
|
+
const exitCode = user !== null &&
|
|
245
|
+
((user.consistent === false && (user.hints ?? []).length === 0) ||
|
|
246
|
+
comparisons.some((c) => c.kind === 'factor' || c.kind === 'form'))
|
|
247
|
+
? EXIT_CHECK_FAILED
|
|
248
|
+
: 0;
|
|
145
249
|
const overlay = (extra) => [
|
|
146
|
-
|
|
250
|
+
// Ranked from the UNFILTERED graph: the proposal set is a property of the
|
|
251
|
+
// whole catalog, and the model then judges each overlay junction under the
|
|
252
|
+
// same filter as every other junction.
|
|
253
|
+
...(args.flags.has('proposed') ? proposedJunctions(api, fullGraph, args.flags) : []),
|
|
254
|
+
// The poster enters as an overlay for exactly the reason the design note
|
|
255
|
+
// gives: an overlay is FILTERED, clustered and legended like every other
|
|
256
|
+
// junction, so a poster source cannot quietly bypass --relation/--evidence.
|
|
257
|
+
...(posterMode ? api.posterJunctions(api.POSTER_GRAPH) : []),
|
|
147
258
|
...extra,
|
|
148
259
|
];
|
|
149
260
|
if (isJson) {
|
|
@@ -151,9 +262,10 @@ async function run(ctx) {
|
|
|
151
262
|
let landing;
|
|
152
263
|
let userEquation;
|
|
153
264
|
if (user) {
|
|
154
|
-
const model = api.buildVizModel(
|
|
265
|
+
const model = api.buildVizModel(fullGraph, {
|
|
155
266
|
title: `UPT physics map — ${label}`,
|
|
156
267
|
extraJunctions: overlay([user.junction]),
|
|
268
|
+
...filterOpts,
|
|
157
269
|
});
|
|
158
270
|
landing = api.equationLanding(model, 'user-equation');
|
|
159
271
|
userEquation = {
|
|
@@ -162,20 +274,27 @@ async function run(ctx) {
|
|
|
162
274
|
rhsDimension: user.rhsDimension,
|
|
163
275
|
targetDimension: user.targetDimension,
|
|
164
276
|
hints: user.hints,
|
|
277
|
+
canonicalComparisons: comparisons,
|
|
165
278
|
};
|
|
166
279
|
}
|
|
167
280
|
emitJson({
|
|
168
281
|
command: 'map',
|
|
169
282
|
source,
|
|
170
|
-
result: {
|
|
283
|
+
result: {
|
|
284
|
+
linkage,
|
|
285
|
+
...(posterMode ? { poster: { note: posterNote, ...posterValidation } } : {}),
|
|
286
|
+
...(edgeLegend !== null ? { filter: edgeStats } : {}),
|
|
287
|
+
...(user ? { landing, userEquation } : {}),
|
|
288
|
+
},
|
|
171
289
|
}, write);
|
|
172
|
-
return
|
|
290
|
+
return exitCode;
|
|
173
291
|
}
|
|
174
292
|
if (fmt === 'mermaid' || fmt === 'dot' || fmt === 'svg') {
|
|
175
293
|
const extraJunctions = overlay(user ? [user.junction] : []);
|
|
176
|
-
const model = api.buildVizModel(
|
|
294
|
+
const model = api.buildVizModel(fullGraph, {
|
|
177
295
|
title: `UPT physics map — ${label}`,
|
|
178
296
|
extraJunctions,
|
|
297
|
+
...filterOpts,
|
|
179
298
|
});
|
|
180
299
|
// svg is the dot layout rendered by the optional @viz-js/viz peer.
|
|
181
300
|
let src;
|
|
@@ -207,20 +326,51 @@ async function run(ctx) {
|
|
|
207
326
|
else {
|
|
208
327
|
write(src);
|
|
209
328
|
}
|
|
210
|
-
//
|
|
329
|
+
// Legend and landing report go to stderr so stdout/--out stays pure diagram
|
|
330
|
+
// source. The diagram itself also carries the legend (see `buildVizModel`).
|
|
331
|
+
if (posterNote !== null)
|
|
332
|
+
err(`upt: ${posterNote}`);
|
|
333
|
+
if (model.filterLegend !== null)
|
|
334
|
+
err(`upt: ${model.filterLegend}`);
|
|
211
335
|
if (user)
|
|
212
|
-
printEquationReport(api, model, user, err);
|
|
213
|
-
return
|
|
336
|
+
printEquationReport(api, model, user, err, comparisons);
|
|
337
|
+
return exitCode;
|
|
214
338
|
}
|
|
215
339
|
if (fmt !== 'text') {
|
|
216
340
|
throw new CliError(`upt: unknown --format='${fmt}' (expected: text | mermaid | dot | svg)`);
|
|
217
341
|
}
|
|
342
|
+
if (posterMode) {
|
|
343
|
+
const model = api.buildVizModel(fullGraph, {
|
|
344
|
+
title: `UPT physics map — ${label}`,
|
|
345
|
+
extraJunctions: overlay(user ? [user.junction] : []),
|
|
346
|
+
...filterOpts,
|
|
347
|
+
});
|
|
348
|
+
out(`
|
|
349
|
+
Poster index — statements and the derivations between them [source: ${label}]`);
|
|
350
|
+
out(` ${posterNote}`);
|
|
351
|
+
out(` (${model.junctions.length} junctions over ${model.clusters.length} clusters; ` +
|
|
352
|
+
`${api.POSTER_GRAPH.derivations.length} derivations, ` +
|
|
353
|
+
`${api.POSTER_GRAPH.associations.length} associations)`);
|
|
354
|
+
if (model.filterLegend !== null)
|
|
355
|
+
out(` ${model.filterLegend}`);
|
|
356
|
+
for (const d of posterValidation.dangling) {
|
|
357
|
+
out(` ⚠ '${d.derivation}' names '${d.missing}' as a ${d.role}, and nothing defines it.`);
|
|
358
|
+
}
|
|
359
|
+
if (user) {
|
|
360
|
+
out(`
|
|
361
|
+
Your equation: ${user.junction.label}`);
|
|
362
|
+
printEquationReport(api, model, user, out, comparisons);
|
|
363
|
+
}
|
|
364
|
+
return exitCode;
|
|
365
|
+
}
|
|
218
366
|
const m = api.linkageMap(graph);
|
|
219
367
|
const mix = (s) => Object.entries(s)
|
|
220
368
|
.map(([k, v]) => `${v} ${k}`)
|
|
221
369
|
.join(', ');
|
|
222
370
|
out(`\nLinkage map — how the equations connect via shared quantities [source: ${label}]`);
|
|
223
371
|
out(`(${m.componentCount} components over ${graph.length} edges; ${m.compositions} compose into chains)\n`);
|
|
372
|
+
if (edgeLegend !== null)
|
|
373
|
+
out(` ${edgeLegend}`);
|
|
224
374
|
for (const c of m.clusters.filter((x) => x.size > 1)) {
|
|
225
375
|
out(` ● cluster of ${c.size}${c.anchored ? ' [ANCHORED to known physics]' : ''}`);
|
|
226
376
|
out(` edges: ${c.edges.join(', ')}`);
|
|
@@ -232,14 +382,15 @@ async function run(ctx) {
|
|
|
232
382
|
out('\n (a structural map — shared-quantity connectivity, NOT a credibility signal)');
|
|
233
383
|
// --equation: where does the user's equation land in this graph?
|
|
234
384
|
if (user) {
|
|
235
|
-
const model = api.buildVizModel(
|
|
385
|
+
const model = api.buildVizModel(fullGraph, {
|
|
236
386
|
title: `UPT physics map — ${label}`,
|
|
237
387
|
extraJunctions: overlay([user.junction]),
|
|
388
|
+
...filterOpts,
|
|
238
389
|
});
|
|
239
390
|
out(`\nYour equation: ${user.junction.label}`);
|
|
240
|
-
printEquationReport(api, model, user, out);
|
|
391
|
+
printEquationReport(api, model, user, out, comparisons);
|
|
241
392
|
}
|
|
242
|
-
return
|
|
393
|
+
return exitCode;
|
|
243
394
|
}
|
|
244
395
|
export const command = {
|
|
245
396
|
name: 'map',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../../src/cli/commands/map.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../../src/cli/commands/map.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/path.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAiQ/E,eAAO,MAAM,OAAO,EAAE,OAAsE,CAAC"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { registerCommand } from '../command.js';
|
|
2
|
+
import { CliError, EXIT_CHECK_FAILED } from '../errors.js';
|
|
3
|
+
import { emitJson } from '../output.js';
|
|
4
|
+
import { parseAt, resolveAtPoint, showInequality } from './regime.js';
|
|
5
|
+
const FLAGS = [
|
|
6
|
+
{ name: '--at', valueStyle: 'either', repeatable: true },
|
|
7
|
+
{ name: '--json', valueStyle: 'none' },
|
|
8
|
+
];
|
|
9
|
+
const HELP = `upt path <from> <to> [--at group=value ...] [--json]
|
|
10
|
+
The chain of bridges from one model to another, the relation the chain
|
|
11
|
+
composes to, the composed (K, delta) with the norm it holds in,
|
|
12
|
+
whether every bridge's REGIME holds at --at (the bound is claimed only
|
|
13
|
+
inside it), and whether every horizon still holds (pass t=<time> plus
|
|
14
|
+
the parameters, e.g. --at theta0=0.2 T0=1 t=10).
|
|
15
|
+
When the composition table declines to compose the relations, the path
|
|
16
|
+
carries NO bound: the command prints 'no composite claim' and exits 0.
|
|
17
|
+
That refusal is the answer, and no number is invented in its place.
|
|
18
|
+
e.g. upt path model-pendulum model-spring --at theta0=0.2 T0=1 t=10`;
|
|
19
|
+
const EPISTEMICS = 'a path EXISTING is not a warrant: the bound is the warrant. A no-claim carries no number, ' +
|
|
20
|
+
'and none is synthesized for it.';
|
|
21
|
+
/** The literal phrase the no-composite-claim case must print. */
|
|
22
|
+
const NO_COMPOSITE_PHRASE = 'no composite claim';
|
|
23
|
+
async function run(ctx) {
|
|
24
|
+
const { args, api, out } = ctx;
|
|
25
|
+
const wantJson = args.flags.has('json');
|
|
26
|
+
const endpoints = args.positionals.filter((p) => !p.includes('='));
|
|
27
|
+
const assignments = [...(args.flags.get('at') ?? []), ...args.positionals.filter((p) => p.includes('='))];
|
|
28
|
+
if (endpoints.length !== 2) {
|
|
29
|
+
throw new CliError(`upt path: exactly two model ids are required (got ${endpoints.length}); e.g. ` +
|
|
30
|
+
'`upt path model-pendulum model-spring`');
|
|
31
|
+
}
|
|
32
|
+
const [from, to] = endpoints;
|
|
33
|
+
const point = parseAt(assignments, 'path');
|
|
34
|
+
const t = point['t'];
|
|
35
|
+
// The family is read off the endpoints — this used to be the oscillator
|
|
36
|
+
// family, hard-coded, so no path in the diffusion or wave families could be
|
|
37
|
+
// asked for. A route stays inside ONE family (findPath's scope); two
|
|
38
|
+
// endpoints in different families are reported as exactly that.
|
|
39
|
+
const familyOf = (id) => api.ATLAS_FAMILIES.find((f) => f.models.some((m) => m.id === id))?.family;
|
|
40
|
+
const fromFamily = familyOf(from);
|
|
41
|
+
const toFamily = familyOf(to);
|
|
42
|
+
if (fromFamily !== undefined && toFamily !== undefined && fromFamily !== toFamily) {
|
|
43
|
+
throw new CliError(`upt path: '${from}' is in family '${fromFamily}' and '${to}' in '${toFamily}'; ` +
|
|
44
|
+
'routes are searched within one family, and cross-family routes are not supported');
|
|
45
|
+
}
|
|
46
|
+
const family = fromFamily ?? toFamily ?? api.ATLAS_FAMILIES[0].family;
|
|
47
|
+
let bridges;
|
|
48
|
+
try {
|
|
49
|
+
bridges = api.findPath(family, from, to);
|
|
50
|
+
}
|
|
51
|
+
catch (e) {
|
|
52
|
+
// RangeError: an unknown endpoint. Reported as a CliError (exit 1) rather
|
|
53
|
+
// than surfaced as a crash — and NOT as `null`, which would be
|
|
54
|
+
// indistinguishable from a genuinely disconnected pair.
|
|
55
|
+
throw new CliError(`upt path: ${e instanceof Error ? e.message : String(e)}`);
|
|
56
|
+
}
|
|
57
|
+
if (bridges === null) {
|
|
58
|
+
if (wantJson) {
|
|
59
|
+
emitJson({ command: 'path', epistemics: EPISTEMICS, options: { from, to, at: point }, result: { path: null } }, ctx.write);
|
|
60
|
+
return 0;
|
|
61
|
+
}
|
|
62
|
+
out(`\nupt path ${from} → ${to}`);
|
|
63
|
+
out(' no chain of bridges connects these models; there is nothing to compose.');
|
|
64
|
+
return 0;
|
|
65
|
+
}
|
|
66
|
+
if (bridges.length === 0) {
|
|
67
|
+
if (wantJson) {
|
|
68
|
+
emitJson({ command: 'path', epistemics: EPISTEMICS, options: { from, to, at: point }, result: { path: [] } }, ctx.write);
|
|
69
|
+
return 0;
|
|
70
|
+
}
|
|
71
|
+
out(`\nupt path ${from} → ${to}`);
|
|
72
|
+
out(' the endpoints are the same model: the path is empty and composes nothing.');
|
|
73
|
+
return 0;
|
|
74
|
+
}
|
|
75
|
+
const result = api.boundPath(bridges);
|
|
76
|
+
const horizons = bridges
|
|
77
|
+
.filter((b) => b.bound !== undefined)
|
|
78
|
+
.map((b) => ({
|
|
79
|
+
bridgeId: b.id,
|
|
80
|
+
horizon: b.bound.horizon,
|
|
81
|
+
holds: t === undefined ? null : b.bound.horizonHolds(t, point),
|
|
82
|
+
}));
|
|
83
|
+
const allHold = horizons.every((h) => h.holds === true);
|
|
84
|
+
// The same --at resolution as `upt regime`: group spellings, and groups derived
|
|
85
|
+
// from their parameters. Unknown keys are not reported here, because horizon
|
|
86
|
+
// parameters such as T0 and t are legitimate --at keys on a path.
|
|
87
|
+
const { values: resolved } = resolveAtPoint(point, bridges.map((b) => b.regime));
|
|
88
|
+
const regimes = bridges.map((b) => {
|
|
89
|
+
const check = api.regimeHolds(b.regime, resolved);
|
|
90
|
+
return {
|
|
91
|
+
bridgeId: b.id,
|
|
92
|
+
ok: check.ok,
|
|
93
|
+
violated: check.violated.map(showInequality),
|
|
94
|
+
unchecked: check.unchecked.map(showInequality),
|
|
95
|
+
};
|
|
96
|
+
});
|
|
97
|
+
const allRegimesHold = regimes.some((r) => r.ok === false)
|
|
98
|
+
? false
|
|
99
|
+
: regimes.some((r) => r.ok === 'unknown')
|
|
100
|
+
? 'unknown'
|
|
101
|
+
: true;
|
|
102
|
+
// The bound AT the --at point (persona finding L9). Printed only when it is
|
|
103
|
+
// PROVEN: every regime holds, every step has a closed-form deltaAt (the exact
|
|
104
|
+
// error), and every value is finite. It is composed by the same rule as the
|
|
105
|
+
// domain supremum, by substituting each step's point value for its delta.
|
|
106
|
+
let pointBound = null;
|
|
107
|
+
let pointBoundReason = null;
|
|
108
|
+
if (result.kind === 'bound' && Object.keys(point).length > 0) {
|
|
109
|
+
const steps = bridges.filter((b) => b.bound !== undefined);
|
|
110
|
+
const numerical = steps.find((b) => b.bound.deltaAtBasis !== 'closed-form');
|
|
111
|
+
if (allRegimesHold !== true) {
|
|
112
|
+
pointBoundReason = 'a regime on the path is violated or unchecked';
|
|
113
|
+
}
|
|
114
|
+
else if (steps.length === 0) {
|
|
115
|
+
pointBoundReason = 'no step carries a bound';
|
|
116
|
+
}
|
|
117
|
+
else if (numerical !== undefined) {
|
|
118
|
+
pointBoundReason =
|
|
119
|
+
numerical.bound.deltaAt === undefined
|
|
120
|
+
? `${numerical.id} states no point bound`
|
|
121
|
+
: `${numerical.id}'s point bound is numerically supported, not proven`;
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
const atPoint = bridges.map((b) => b.bound === undefined ? b : { ...b, bound: { ...b.bound, delta: b.bound.deltaAt(point) } });
|
|
125
|
+
const composed = atPoint.every((b) => b.bound === undefined || Number.isFinite(b.bound.delta))
|
|
126
|
+
? api.boundPath(atPoint)
|
|
127
|
+
: null;
|
|
128
|
+
if (composed !== null && composed.kind === 'bound')
|
|
129
|
+
pointBound = composed.bound;
|
|
130
|
+
else
|
|
131
|
+
pointBoundReason = 'a parameter the point bound needs was not supplied';
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// A violated regime or horizon is a failed check: exit 3 (persona finding F2).
|
|
135
|
+
// UNKNOWN, where a coordinate or t was not supplied, is not a failure.
|
|
136
|
+
const exitCode = allRegimesHold === false || (t !== undefined && !allHold) ? EXIT_CHECK_FAILED : 0;
|
|
137
|
+
if (wantJson) {
|
|
138
|
+
emitJson({
|
|
139
|
+
command: 'path',
|
|
140
|
+
epistemics: EPISTEMICS,
|
|
141
|
+
options: { from, to, at: point },
|
|
142
|
+
result: {
|
|
143
|
+
path: bridges.map((b) => ({ id: b.id, relation: b.relation, from: b.premises[0], to: b.conclusion })),
|
|
144
|
+
// A no-claim has no `bound` key at all — the type refuses it, and so
|
|
145
|
+
// does this envelope.
|
|
146
|
+
...(result.kind === 'bound'
|
|
147
|
+
? {
|
|
148
|
+
kind: 'bound',
|
|
149
|
+
relation: result.relation,
|
|
150
|
+
bound: result.bound,
|
|
151
|
+
norm: result.norm,
|
|
152
|
+
terminal: result.terminal,
|
|
153
|
+
}
|
|
154
|
+
: { kind: 'no-claim', reason: result.reason, detail: result.detail, phrase: NO_COMPOSITE_PHRASE }),
|
|
155
|
+
regimes,
|
|
156
|
+
allRegimesHold,
|
|
157
|
+
pointBound,
|
|
158
|
+
...(pointBoundReason !== null ? { pointBoundReason } : {}),
|
|
159
|
+
horizons,
|
|
160
|
+
horizonsEvaluated: t !== undefined,
|
|
161
|
+
allHorizonsHold: t === undefined ? null : allHold,
|
|
162
|
+
},
|
|
163
|
+
}, ctx.write);
|
|
164
|
+
return exitCode;
|
|
165
|
+
}
|
|
166
|
+
out(`\nupt path ${from} → ${to}`);
|
|
167
|
+
out(` ${bridges.length} bridge(s):`);
|
|
168
|
+
for (const b of bridges)
|
|
169
|
+
out(` ${b.premises[0]} --[${b.relation}]--> ${b.conclusion} (${b.id})`);
|
|
170
|
+
out('');
|
|
171
|
+
if (result.kind === 'bound') {
|
|
172
|
+
out(` composite relation: ${result.relation}`);
|
|
173
|
+
out(` composed bound: K = ${result.bound.K} · delta = ${result.bound.delta}`);
|
|
174
|
+
out(` norm: ${result.norm ?? '(none stated — the claim is the vacuous identity)'}`);
|
|
175
|
+
if (result.terminal)
|
|
176
|
+
out(' terminal: the last step states no Lipschitz constant; the claim ends there');
|
|
177
|
+
if (pointBound !== null) {
|
|
178
|
+
out(` bound at this point: K = ${pointBound.K} · delta = ${pointBound.delta} (closed-form: the exact error; ` +
|
|
179
|
+
"the composed bound above is the supremum over the bridge's domain)");
|
|
180
|
+
}
|
|
181
|
+
else if (pointBoundReason !== null) {
|
|
182
|
+
out(` bound at this point: none — ${pointBoundReason}`);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
out(` composite relation: ${NO_COMPOSITE_PHRASE}`);
|
|
187
|
+
out(` bound: ${NO_COMPOSITE_PHRASE} — reason '${result.reason}'`);
|
|
188
|
+
out(` ${result.detail}`);
|
|
189
|
+
}
|
|
190
|
+
out('');
|
|
191
|
+
if (allRegimesHold === false) {
|
|
192
|
+
out(' regimes at --at: VIOLATED — no bound on this path is claimed at this point');
|
|
193
|
+
}
|
|
194
|
+
else if (allRegimesHold === 'unknown') {
|
|
195
|
+
out(' regimes at --at: UNKNOWN (a coordinate was not supplied); an unchecked regime is not a passing one');
|
|
196
|
+
}
|
|
197
|
+
else if (bridges.every((b) => b.regime.inequalities.length === 0)) {
|
|
198
|
+
out(' regimes: VACUOUS — no bridge on this path states an inequality; nothing was checked');
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
out(' regimes at --at: all hold');
|
|
202
|
+
}
|
|
203
|
+
for (const r of regimes) {
|
|
204
|
+
if (r.ok === false)
|
|
205
|
+
out(` ${r.bridgeId}: VIOLATED — ${r.violated.join('; ')}`);
|
|
206
|
+
else if (r.ok === 'unknown')
|
|
207
|
+
out(` ${r.bridgeId}: unknown — unchecked: ${r.unchecked.join('; ')}`);
|
|
208
|
+
}
|
|
209
|
+
if (horizons.length === 0) {
|
|
210
|
+
out(' horizons: none on this path (no step carries a bound)');
|
|
211
|
+
}
|
|
212
|
+
else if (t === undefined) {
|
|
213
|
+
out(' horizons: NOT EVALUATED (no t= supplied via --at); an unevaluated horizon is not a passing one');
|
|
214
|
+
for (const h of horizons)
|
|
215
|
+
out(` ${h.bridgeId}: ${h.horizon}`);
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
out(` horizons at t=${t}: ${allHold ? 'all hold' : 'NOT all hold'}`);
|
|
219
|
+
for (const h of horizons) {
|
|
220
|
+
out(` ${h.bridgeId}: ${h.holds ? 'holds' : 'VIOLATED'} — ${h.horizon}`);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
out(` (${EPISTEMICS})`);
|
|
224
|
+
return exitCode;
|
|
225
|
+
}
|
|
226
|
+
export const command = { name: 'path', aliases: [], flags: FLAGS, help: HELP, run };
|
|
227
|
+
registerCommand(command);
|
|
228
|
+
//# sourceMappingURL=path.js.map
|