universal-physics-tensor 0.45.2 → 0.46.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 +28 -27
- 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 +324 -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 +227 -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 +342 -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 +308 -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 +223 -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 +265 -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.js.map +1 -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 -1
- package/dist/bridges/bridge-equations.d.ts.map +1 -1
- package/dist/bridges/bridge-equations.js +3 -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/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 +88 -58
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -1
- package/dist/bridges/equations/be-35-conformal-bootstrap.js +102 -62
- 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/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/confront.js.map +1 -1
- package/dist/cli/commands/coverage.js +3 -3
- 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 +161 -27
- 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 +145 -0
- package/dist/cli/commands/path.js.map +1 -0
- 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 +14 -0
- package/dist/cli/commands/regime.d.ts.map +1 -0
- package/dist/cli/commands/regime.js +189 -0
- package/dist/cli/commands/regime.js.map +1 -0
- package/dist/cli/errors.d.ts.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 +22 -0
- 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 +16 -0
- package/dist/cli-api.d.ts.map +1 -1
- package/dist/cli-api.js +18 -0
- 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-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/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.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.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/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/limits.js.map +1 -1
- package/dist/composition/probe/pipeline.js.map +1 -1
- package/dist/composition/probe/problem.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/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/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 +121 -104
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 6, S6.4 — the versioned export: one combined JSON artifact for
|
|
3
|
+
* every family, and a JSON-LD projection with stable ids, QUDT quantity kinds
|
|
4
|
+
* where they genuinely resolve, and PROV-O-shaped provenance.
|
|
5
|
+
*
|
|
6
|
+
* Design note: `docs/planning/Atlas-Phase-6-Design.md` §2.
|
|
7
|
+
*
|
|
8
|
+
* Pure: no I/O. The QUDT resolution table (`data/atlas/qudt-resolution.json`) is
|
|
9
|
+
* passed IN by the emitter, so this module cannot drift from the table it was
|
|
10
|
+
* given and never reads the tree.
|
|
11
|
+
*
|
|
12
|
+
* ## Why the QUDT table is keyed by (model, parameter), never by name
|
|
13
|
+
*
|
|
14
|
+
* `kappa` is a SPRING CONSTANT in `model-chain` and a THERMAL CONDUCTIVITY in
|
|
15
|
+
* `model-heat`. A name-keyed table would assign one of them the other's
|
|
16
|
+
* quantity kind — a notation collision in the atlas's own data.
|
|
17
|
+
*
|
|
18
|
+
* ## Schema version
|
|
19
|
+
*
|
|
20
|
+
* The combined artifact keeps `schemaVersion: '0'`. Phase 4 added one OPTIONAL
|
|
21
|
+
* field (`formalRef`); an additive optional field is not a breaking change, and
|
|
22
|
+
* the plan bumps to `v1` only on one.
|
|
23
|
+
*
|
|
24
|
+
* @module atlas/export
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
import { toAtlasJson } from './serialize.js';
|
|
28
|
+
/** The stable id namespace. A URN, so no id depends on a host that could move. @internal */
|
|
29
|
+
export const ATLAS_ID_PREFIX = 'urn:upt:atlas:';
|
|
30
|
+
const modelIri = (id) => `${ATLAS_ID_PREFIX}model:${id}`;
|
|
31
|
+
const bridgeIri = (id) => `${ATLAS_ID_PREFIX}bridge:${id}`;
|
|
32
|
+
/** The combined artifact: every family's record under one version stamp. @internal */
|
|
33
|
+
export function toCombinedAtlasJson(families, packageVersion) {
|
|
34
|
+
return {
|
|
35
|
+
schemaVersion: '0',
|
|
36
|
+
packageVersion,
|
|
37
|
+
families: families.map((f) => {
|
|
38
|
+
const { packageVersion: _dropped, ...record } = toAtlasJson(f, packageVersion);
|
|
39
|
+
return record;
|
|
40
|
+
}),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The JSON-LD projection.
|
|
45
|
+
*
|
|
46
|
+
* @throws Error when a model parameter has NO entry in the resolution table — an
|
|
47
|
+
* unlisted parameter is a gap in the table, and exporting it silently blank
|
|
48
|
+
* would be indistinguishable from a deliberate "no QUDT kind resolves".
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
export function toAtlasJsonLd(families, packageVersion, qudt) {
|
|
52
|
+
const graph = [];
|
|
53
|
+
for (const family of families) {
|
|
54
|
+
for (const m of family.models) {
|
|
55
|
+
graph.push({
|
|
56
|
+
'@id': modelIri(m.id),
|
|
57
|
+
'@type': 'upt:Model',
|
|
58
|
+
'upt:family': family.family,
|
|
59
|
+
'upt:dynamics': m.dynamics,
|
|
60
|
+
'upt:parameter': m.parameters.map((p) => {
|
|
61
|
+
const key = `${m.id}/${p.name}`;
|
|
62
|
+
if (!(key in qudt.entries)) {
|
|
63
|
+
throw new Error(`toAtlasJsonLd: no QUDT resolution entry for ${key}`);
|
|
64
|
+
}
|
|
65
|
+
const kind = qudt.entries[key];
|
|
66
|
+
return {
|
|
67
|
+
'upt:symbol': p.name,
|
|
68
|
+
'upt:dimension': [p.dim.L, p.dim.M, p.dim.T, p.dim.I, p.dim.Theta, p.dim.N, p.dim.J],
|
|
69
|
+
...(kind === null ? {} : { 'qudt:hasQuantityKind': { '@id': kind } }),
|
|
70
|
+
};
|
|
71
|
+
}),
|
|
72
|
+
...(m.canonicalRefs.length === 0 ? {} : { 'upt:canonicalRef': [...m.canonicalRefs] }),
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
for (const b of family.bridges) {
|
|
76
|
+
graph.push({
|
|
77
|
+
'@id': bridgeIri(b.id),
|
|
78
|
+
'@type': ['upt:Bridge', 'prov:Entity'],
|
|
79
|
+
'upt:relation': b.relation,
|
|
80
|
+
'upt:premise': b.premises.map((p) => ({ '@id': modelIri(p) })),
|
|
81
|
+
'upt:conclusion': { '@id': modelIri(b.conclusion) },
|
|
82
|
+
// PROV-O shape: the bridge's claim is derived from its premises, and
|
|
83
|
+
// its sources are the citations it states.
|
|
84
|
+
'prov:wasDerivedFrom': b.premises.map((p) => ({ '@id': modelIri(p) })),
|
|
85
|
+
'dcterms:source': [...b.citations],
|
|
86
|
+
'upt:reviewStatus': b.reviewStatus,
|
|
87
|
+
'upt:witness': b.witnesses.map((w) => ({ 'upt:id': w.id, 'upt:kind': w.kind, 'upt:test': w.test })),
|
|
88
|
+
...(b.formalRef === undefined
|
|
89
|
+
? {}
|
|
90
|
+
: { 'upt:formalRef': { 'upt:statement': b.formalRef.statement, 'upt:fidelity': b.formalRef.fidelity } }),
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
'@context': {
|
|
96
|
+
upt: `${ATLAS_ID_PREFIX}vocab:`,
|
|
97
|
+
prov: 'http://www.w3.org/ns/prov#',
|
|
98
|
+
qudt: 'http://qudt.org/schema/qudt/',
|
|
99
|
+
dcterms: 'http://purl.org/dc/terms/',
|
|
100
|
+
},
|
|
101
|
+
'@id': `${ATLAS_ID_PREFIX}release:${packageVersion}`,
|
|
102
|
+
'upt:qudtProbedAt': qudt.probedAt,
|
|
103
|
+
'@graph': graph,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/atlas/export.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Every registered atlas family, in the order they were built.
|
|
3
|
+
*
|
|
4
|
+
* Gates that must cover the WHOLE atlas (the evidence rule, admission, the
|
|
5
|
+
* JSON artifacts) iterate this list rather than naming one family, so a new
|
|
6
|
+
* family is checked the moment it is registered here. A gate that named
|
|
7
|
+
* `OSCILLATOR_FAMILY` directly would pass forever over a family it never read.
|
|
8
|
+
*
|
|
9
|
+
* @module atlas/families
|
|
10
|
+
*/
|
|
11
|
+
import type { AtlasFamily } from './oscillators/index.js';
|
|
12
|
+
/** All atlas families. @internal */
|
|
13
|
+
export declare const ATLAS_FAMILIES: readonly AtlasFamily[];
|
|
14
|
+
//# sourceMappingURL=families.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"families.d.ts","sourceRoot":"","sources":["../../src/atlas/families.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,oCAAoC;AACpC,eAAO,MAAM,cAAc,EAAE,SAAS,WAAW,EAIhD,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Every registered atlas family, in the order they were built.
|
|
3
|
+
*
|
|
4
|
+
* Gates that must cover the WHOLE atlas (the evidence rule, admission, the
|
|
5
|
+
* JSON artifacts) iterate this list rather than naming one family, so a new
|
|
6
|
+
* family is checked the moment it is registered here. A gate that named
|
|
7
|
+
* `OSCILLATOR_FAMILY` directly would pass forever over a family it never read.
|
|
8
|
+
*
|
|
9
|
+
* @module atlas/families
|
|
10
|
+
*/
|
|
11
|
+
import { DIFFUSION_FAMILY } from './diffusion/index.js';
|
|
12
|
+
import { OSCILLATOR_FAMILY } from './oscillators/index.js';
|
|
13
|
+
import { WAVES_FAMILY } from './waves/index.js';
|
|
14
|
+
/** All atlas families. @internal */
|
|
15
|
+
export const ATLAS_FAMILIES = [
|
|
16
|
+
OSCILLATOR_FAMILY,
|
|
17
|
+
DIFFUSION_FAMILY,
|
|
18
|
+
WAVES_FAMILY,
|
|
19
|
+
];
|
|
20
|
+
//# sourceMappingURL=families.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"families.js","sourceRoot":"","sources":["../../src/atlas/families.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,oCAAoC;AACpC,MAAM,CAAC,MAAM,cAAc,GAA2B;IACpD,iBAAiB;IACjB,gBAAgB;IAChB,YAAY;CACb,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 0 barrel — the oscillator pilot.
|
|
3
|
+
*
|
|
4
|
+
* Reachable only through the `universal-physics-tensor/atlas` subpath. Not
|
|
5
|
+
* re-exported from the root `universal-physics-tensor` entry before Phase 6.
|
|
6
|
+
*
|
|
7
|
+
* All symbols are `@internal`: these are throwaway pilot types (design note
|
|
8
|
+
* §4), not a stability contract.
|
|
9
|
+
*
|
|
10
|
+
* ⚠ **THE INVARIANT IS: NEVER THE BARREL.** `src/bridges/` and
|
|
11
|
+
* `src/composition/` must not import THIS FILE — `src/atlas/` imports
|
|
12
|
+
* `bridges/*` and `composition/*`, so a barrel import closes a cycle that
|
|
13
|
+
* `bun run docs:deps` reports. Importing a leaf module (`./types.js`,
|
|
14
|
+
* `./regime.js`, `./composition-table.js`, …) is fine and the tree has always
|
|
15
|
+
* done it, VALUES INCLUDED: `bridges/index.ts:40`, `composition/compose.ts`,
|
|
16
|
+
* `composition/graph-viz.ts`.
|
|
17
|
+
*
|
|
18
|
+
* This comment used to say "TYPES ONLY, and only from `src/atlas/types.js`",
|
|
19
|
+
* which the tree HAS NEVER SATISFIED while `docs:deps` reported 0 cycles.
|
|
20
|
+
* A rule stricter than the invariant it protects gets silently violated by
|
|
21
|
+
* correct code, and the next reader either believes a false description of
|
|
22
|
+
* the tree or "fixes" code that was right. Corrected 2026-09-22 against the
|
|
23
|
+
* same measurement that corrected `CLAUDE.md`.
|
|
24
|
+
*
|
|
25
|
+
* @module atlas
|
|
26
|
+
*/
|
|
27
|
+
export type { RelationType, EvidenceTag, LimitCharacter, RegimeInequality, Regime, ApproximationBound, Witness, Counterexample, AtlasBridge, AtlasRejection, FormalFidelity, FormalRef, } from './types.js';
|
|
28
|
+
export { MissingHorizonError, MissingLipschitzError } from './types.js';
|
|
29
|
+
export { ALL_EVIDENCE_TAGS } from './types.js';
|
|
30
|
+
export { deriveEvidence, deriveEvidenceForVerdict, NO_PASSING_WITNESSES } from './derive-evidence.js';
|
|
31
|
+
export type { CounterexampleLike, EvidenceInput, MembershipVerdict, RejectionLike, WitnessLike, } from './derive-evidence.js';
|
|
32
|
+
export { composeRelation, COMPOSITION_TABLE, NO_COMPOSITE_CLAIM } from './composition-table.js';
|
|
33
|
+
export type { CompositionResult, NoCompositeClaim } from './composition-table.js';
|
|
34
|
+
export { boundPath, findPath } from './path-bound.js';
|
|
35
|
+
export type { NoClaimReason, PathBoundClaim, PathBoundResult, PathNoClaim } from './path-bound.js';
|
|
36
|
+
export type { AtlasModel, ModelId } from './model.js';
|
|
37
|
+
export { composeBounds, composeBoundPath, IDENTITY_BOUND } from './error-algebra.js';
|
|
38
|
+
export type { BoundPair, ComposedPath } from './error-algebra.js';
|
|
39
|
+
export { deriveRegimeGroups, regimeHolds } from './regime.js';
|
|
40
|
+
export type { RegimeCheck } from './regime.js';
|
|
41
|
+
export { CAPACITANCE, CUBIC_STIFFNESS, DAMPING, INDUCTANCE, RESISTANCE, SPRING_CONSTANT, } from './oscillators/dimensions.js';
|
|
42
|
+
export { ATLAS_MODELS, getAtlasModel } from './oscillators/models.js';
|
|
43
|
+
export { OSCILLATOR_FAMILY } from './oscillators/index.js';
|
|
44
|
+
export type { AtlasFamily } from './oscillators/index.js';
|
|
45
|
+
export { toAtlasJson, ATLAS_RECORD_SCHEMA_VERSION } from './serialize.js';
|
|
46
|
+
export type { AtlasRecordJson, JsonValue } from './serialize.js';
|
|
47
|
+
export { blockingFindings, checkApplicability, } from './applicability.js';
|
|
48
|
+
export type { ApplicabilityFinding, ApplicabilityFindingKind, ApplicabilityInput, ApplicabilitySeverity, } from './applicability.js';
|
|
49
|
+
export { passingWitnessIds } from './witness-result.js';
|
|
50
|
+
export type { UnresolvedReason, WitnessRunResult, WitnessStatus, } from './witness-result.js';
|
|
51
|
+
export { ATLAS_FAMILIES } from './families.js';
|
|
52
|
+
export { runLinkPrediction } from './link-prediction.js';
|
|
53
|
+
export { ATLAS_ID_PREFIX, toAtlasJsonLd, toCombinedAtlasJson } from './export.js';
|
|
54
|
+
export type { QudtResolution } from './export.js';
|
|
55
|
+
export type { LinkPredictionResult, LinkPredictionTrial } from './link-prediction.js';
|
|
56
|
+
export { DIFFUSION_FAMILY } from './diffusion/index.js';
|
|
57
|
+
export { BRIDGE_HEAT_DIFFUSION, BRIDGE_SCHRODINGER_DIFFUSION, BRIDGE_WALK_DIFFUSION, DIFFUSION_BRIDGES, } from './diffusion/bridges.js';
|
|
58
|
+
export { DIFFUSION_MODELS, getDiffusionModel } from './diffusion/models.js';
|
|
59
|
+
export { WAVES_FAMILY } from './waves/index.js';
|
|
60
|
+
export { BRIDGE_KLEIN_GORDON_WAVE, BRIDGE_SOUND_SPEED, BRIDGE_STRING_WAVE, BRIDGE_WAVE_DALEMBERT, WAVE_BRIDGES, } from './waves/bridges.js';
|
|
61
|
+
export { WAVE_MODELS } from './waves/models.js';
|
|
62
|
+
export { DIFFUSION_CLOSURE_BRIDGES } from './diffusion/bridges-closure.js';
|
|
63
|
+
export { WAVE_CLOSURE_BRIDGES } from './waves/bridges-closure.js';
|
|
64
|
+
export { FAILURE_KINDS, HELD_OUT_FAMILY, HELD_OUT_MARKERS } from './benchmark/types.js';
|
|
65
|
+
export type { Authorship, BenchmarkItem, BenchmarkSplit, FailureKind } from './benchmark/types.js';
|
|
66
|
+
export { checkRenamedVariants, findCrossSplitLeakage, leakageKey } from './benchmark/leakage.js';
|
|
67
|
+
export type { LeakageCollision, VariantProblem } from './benchmark/leakage.js';
|
|
68
|
+
export { ABLATION_CONFIGS, FULL_CONFIG, runAtlasCondition, runAtlasOnItem, } from './benchmark/run-atlas.js';
|
|
69
|
+
export type { AtlasRunConfig, AtlasVerdict } from './benchmark/run-atlas.js';
|
|
70
|
+
export { rankBySymbolOverlap, rankByStructure, rankByTextOverlap, recallAtK, } from './benchmark/baselines.js';
|
|
71
|
+
export type { CorpusRecord, Ranking, RetrievalQuery } from './benchmark/baselines.js';
|
|
72
|
+
export { parseBackendResponse } from './benchmark/backend-shapes.js';
|
|
73
|
+
export { cohensKappa, mcnemar, pairedDifferenceInterval, powerReport, wilsonInterval, Z95, } from './benchmark/stats.js';
|
|
74
|
+
export type { Interval, McNemarResult, PairedTable, PowerReport } from './benchmark/stats.js';
|
|
75
|
+
export { pairedRejection, scoreAblation, scoreCondition } from './benchmark/study.js';
|
|
76
|
+
export type { AblationRow, ConditionAnswer, ConditionMetrics, ItemLabel, PairedRejection, } from './benchmark/study.js';
|
|
77
|
+
export type { BackendShapeError, BenchmarkBackendRequest, BenchmarkBackendResponse, } from './benchmark/backend-shapes.js';
|
|
78
|
+
export { runWitnessRegistry, artifactPassingWitnessIds } from './witness-artifact.js';
|
|
79
|
+
export type { WitnessResultRecord, WitnessResultsArtifact } from './witness-artifact.js';
|
|
80
|
+
export { WITNESS_REGISTRY } from './witness-specs.js';
|
|
81
|
+
export type { RegisteredNumericWitness, RegisteredSymbolicWitness, RegisteredWitness, } from './witness-specs.js';
|
|
82
|
+
export { runSymbolicWitness } from './witness-symbolic.js';
|
|
83
|
+
export type { SymbolicSimplifier, SymbolicWitnessSpec } from './witness-symbolic.js';
|
|
84
|
+
export { runNumericWitness } from './witness-numeric.js';
|
|
85
|
+
export type { Convergence, NumericWitnessRunResult, NumericWitnessSpec, } from './witness-numeric.js';
|
|
86
|
+
export { contextUnion, statementContextUnion } from './statement.js';
|
|
87
|
+
export type { Context, ContextUnionFormed, ContextUnionRefused, ContextUnionResult, NoUnionReason, Statement, StatementId, } from './statement.js';
|
|
88
|
+
export { composeDerivations, composeDerivationsOrThrow, DerivationCompositionError, makeDerivation, } from './derivation.js';
|
|
89
|
+
export type { CompositeFormed, CompositeRefused, Derivation, DerivationCompositionResult, DerivationId, DerivationSpec, NoCompositeReason, } from './derivation.js';
|
|
90
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/atlas/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 0 barrel — the oscillator pilot.
|
|
3
|
+
*
|
|
4
|
+
* Reachable only through the `universal-physics-tensor/atlas` subpath. Not
|
|
5
|
+
* re-exported from the root `universal-physics-tensor` entry before Phase 6.
|
|
6
|
+
*
|
|
7
|
+
* All symbols are `@internal`: these are throwaway pilot types (design note
|
|
8
|
+
* §4), not a stability contract.
|
|
9
|
+
*
|
|
10
|
+
* ⚠ **THE INVARIANT IS: NEVER THE BARREL.** `src/bridges/` and
|
|
11
|
+
* `src/composition/` must not import THIS FILE — `src/atlas/` imports
|
|
12
|
+
* `bridges/*` and `composition/*`, so a barrel import closes a cycle that
|
|
13
|
+
* `bun run docs:deps` reports. Importing a leaf module (`./types.js`,
|
|
14
|
+
* `./regime.js`, `./composition-table.js`, …) is fine and the tree has always
|
|
15
|
+
* done it, VALUES INCLUDED: `bridges/index.ts:40`, `composition/compose.ts`,
|
|
16
|
+
* `composition/graph-viz.ts`.
|
|
17
|
+
*
|
|
18
|
+
* This comment used to say "TYPES ONLY, and only from `src/atlas/types.js`",
|
|
19
|
+
* which the tree HAS NEVER SATISFIED while `docs:deps` reported 0 cycles.
|
|
20
|
+
* A rule stricter than the invariant it protects gets silently violated by
|
|
21
|
+
* correct code, and the next reader either believes a false description of
|
|
22
|
+
* the tree or "fixes" code that was right. Corrected 2026-09-22 against the
|
|
23
|
+
* same measurement that corrected `CLAUDE.md`.
|
|
24
|
+
*
|
|
25
|
+
* @module atlas
|
|
26
|
+
*/
|
|
27
|
+
export { MissingHorizonError, MissingLipschitzError } from './types.js';
|
|
28
|
+
export { ALL_EVIDENCE_TAGS } from './types.js';
|
|
29
|
+
// The Phase 1–3 core. Absent from this barrel until the S6.7 API review found
|
|
30
|
+
// the gap: subpath users could not reach evidence derivation, the composition
|
|
31
|
+
// table or path bounding at all (tests/atlas/barrel-completeness.test.ts).
|
|
32
|
+
export { deriveEvidence, deriveEvidenceForVerdict, NO_PASSING_WITNESSES } from './derive-evidence.js';
|
|
33
|
+
export { composeRelation, COMPOSITION_TABLE, NO_COMPOSITE_CLAIM } from './composition-table.js';
|
|
34
|
+
export { boundPath, findPath } from './path-bound.js';
|
|
35
|
+
export { composeBounds, composeBoundPath, IDENTITY_BOUND } from './error-algebra.js';
|
|
36
|
+
export { deriveRegimeGroups, regimeHolds } from './regime.js';
|
|
37
|
+
export { CAPACITANCE, CUBIC_STIFFNESS, DAMPING, INDUCTANCE, RESISTANCE, SPRING_CONSTANT, } from './oscillators/dimensions.js';
|
|
38
|
+
export { ATLAS_MODELS, getAtlasModel } from './oscillators/models.js';
|
|
39
|
+
export { OSCILLATOR_FAMILY } from './oscillators/index.js';
|
|
40
|
+
export { toAtlasJson, ATLAS_RECORD_SCHEMA_VERSION } from './serialize.js';
|
|
41
|
+
export { blockingFindings, checkApplicability, } from './applicability.js';
|
|
42
|
+
export { passingWitnessIds } from './witness-result.js';
|
|
43
|
+
export { ATLAS_FAMILIES } from './families.js';
|
|
44
|
+
export { runLinkPrediction } from './link-prediction.js';
|
|
45
|
+
export { ATLAS_ID_PREFIX, toAtlasJsonLd, toCombinedAtlasJson } from './export.js';
|
|
46
|
+
export { DIFFUSION_FAMILY } from './diffusion/index.js';
|
|
47
|
+
export { BRIDGE_HEAT_DIFFUSION, BRIDGE_SCHRODINGER_DIFFUSION, BRIDGE_WALK_DIFFUSION, DIFFUSION_BRIDGES, } from './diffusion/bridges.js';
|
|
48
|
+
export { DIFFUSION_MODELS, getDiffusionModel } from './diffusion/models.js';
|
|
49
|
+
export { WAVES_FAMILY } from './waves/index.js';
|
|
50
|
+
export { BRIDGE_KLEIN_GORDON_WAVE, BRIDGE_SOUND_SPEED, BRIDGE_STRING_WAVE, BRIDGE_WAVE_DALEMBERT, WAVE_BRIDGES, } from './waves/bridges.js';
|
|
51
|
+
export { WAVE_MODELS } from './waves/models.js';
|
|
52
|
+
export { DIFFUSION_CLOSURE_BRIDGES } from './diffusion/bridges-closure.js';
|
|
53
|
+
export { WAVE_CLOSURE_BRIDGES } from './waves/bridges-closure.js';
|
|
54
|
+
// Phase 5 benchmark: the PURE parts only. `benchmark/loader.ts` reads files and is
|
|
55
|
+
// deliberately not re-exported, so importing this barrel never pulls in file I/O.
|
|
56
|
+
export { FAILURE_KINDS, HELD_OUT_FAMILY, HELD_OUT_MARKERS } from './benchmark/types.js';
|
|
57
|
+
export { checkRenamedVariants, findCrossSplitLeakage, leakageKey } from './benchmark/leakage.js';
|
|
58
|
+
export { ABLATION_CONFIGS, FULL_CONFIG, runAtlasCondition, runAtlasOnItem, } from './benchmark/run-atlas.js';
|
|
59
|
+
export { rankBySymbolOverlap, rankByStructure, rankByTextOverlap, recallAtK, } from './benchmark/baselines.js';
|
|
60
|
+
export { parseBackendResponse } from './benchmark/backend-shapes.js';
|
|
61
|
+
export { cohensKappa, mcnemar, pairedDifferenceInterval, powerReport, wilsonInterval, Z95, } from './benchmark/stats.js';
|
|
62
|
+
export { pairedRejection, scoreAblation, scoreCondition } from './benchmark/study.js';
|
|
63
|
+
export { runWitnessRegistry, artifactPassingWitnessIds } from './witness-artifact.js';
|
|
64
|
+
export { WITNESS_REGISTRY } from './witness-specs.js';
|
|
65
|
+
export { runSymbolicWitness } from './witness-symbolic.js';
|
|
66
|
+
export { runNumericWitness } from './witness-numeric.js';
|
|
67
|
+
export { contextUnion, statementContextUnion } from './statement.js';
|
|
68
|
+
export { composeDerivations, composeDerivationsOrThrow, DerivationCompositionError, makeDerivation, } from './derivation.js';
|
|
69
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/atlas/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 6, S6.3 — link prediction over the typed model graph: ONE result,
|
|
3
|
+
* stated as a hypothesis about the representation.
|
|
4
|
+
*
|
|
5
|
+
* Design note: `docs/planning/Atlas-Phase-6-Design.md` §1.
|
|
6
|
+
*
|
|
7
|
+
* The graph: every model in every registered family is a node; every
|
|
8
|
+
* premise→conclusion pair of every bridge is an undirected edge. The test is
|
|
9
|
+
* leave-one-bridge-out: remove a bridge's edges, then ask each predictor to rank
|
|
10
|
+
* the conclusion among every model not already adjacent to the premise. A hit is
|
|
11
|
+
* the held-out conclusion inside the top k.
|
|
12
|
+
*
|
|
13
|
+
* - **structural predictor** — common neighbours in the remaining graph, ties
|
|
14
|
+
* broken by sharing the premise's family, then by id;
|
|
15
|
+
* - **text baseline** — word-token overlap between the models' dynamics and
|
|
16
|
+
* state-space descriptions, ties broken by id.
|
|
17
|
+
*
|
|
18
|
+
* ⚠ **What this result cannot carry.** The graph is small (24 models, 22 pairs)
|
|
19
|
+
* and was curated by the same agent that runs the test, in-distribution. It is a
|
|
20
|
+
* statement about how this representation behaves on its own content — not a
|
|
21
|
+
* discovery claim, not a hub or gap claim, and not evidence about physics the
|
|
22
|
+
* atlas does not contain. ROADMAP Phase 6 asks for it as a hypothesis test, and
|
|
23
|
+
* that is its whole scope. Product A (`src/composition/discovery.ts`) is not
|
|
24
|
+
* touched: a test pins that nothing under `src/atlas/` imports it.
|
|
25
|
+
*
|
|
26
|
+
* @module atlas/link-prediction
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
import type { AtlasFamily } from './oscillators/index.js';
|
|
30
|
+
/** One held-out pair and whether each predictor recovered it. @internal */
|
|
31
|
+
export interface LinkPredictionTrial {
|
|
32
|
+
readonly bridgeId: string;
|
|
33
|
+
readonly premise: string;
|
|
34
|
+
readonly conclusion: string;
|
|
35
|
+
/** 1-based rank of the held-out conclusion; Infinity when it was not a candidate. */
|
|
36
|
+
readonly structuralRank: number;
|
|
37
|
+
readonly textRank: number;
|
|
38
|
+
/** How many candidates the conclusion competed against. */
|
|
39
|
+
readonly candidates: number;
|
|
40
|
+
}
|
|
41
|
+
/** The whole leave-one-bridge-out run. @internal */
|
|
42
|
+
export interface LinkPredictionResult {
|
|
43
|
+
readonly k: number;
|
|
44
|
+
readonly trials: readonly LinkPredictionTrial[];
|
|
45
|
+
/**
|
|
46
|
+
* Held-out pairs whose endpoints stay adjacent through ANOTHER bridge. Such a
|
|
47
|
+
* pair is not a missing link — the conclusion cannot even be a candidate — so
|
|
48
|
+
* it is excluded from the trials and counted here instead of silently.
|
|
49
|
+
*/
|
|
50
|
+
readonly stillConnected: number;
|
|
51
|
+
readonly structuralHits: number;
|
|
52
|
+
readonly textHits: number;
|
|
53
|
+
/**
|
|
54
|
+
* The hit rate a RANDOM ranking would get: the mean over trials of
|
|
55
|
+
* min(k, candidates)/candidates. On a small graph this is high, and a
|
|
56
|
+
* predictor's recall means nothing until it is read against it.
|
|
57
|
+
*/
|
|
58
|
+
readonly chanceRecall: number;
|
|
59
|
+
/** Mean reciprocal rank of the held-out conclusion. */
|
|
60
|
+
readonly structuralMrr: number;
|
|
61
|
+
readonly textMrr: number;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Run leave-one-bridge-out link prediction over the families' model graph.
|
|
65
|
+
*
|
|
66
|
+
* @param families - the atlas families (normally `ATLAS_FAMILIES`).
|
|
67
|
+
* @param k - the depth a hit must fall within (10, as pre-registered for recall).
|
|
68
|
+
* @internal
|
|
69
|
+
*/
|
|
70
|
+
export declare function runLinkPrediction(families: readonly AtlasFamily[], k?: number): LinkPredictionResult;
|
|
71
|
+
//# sourceMappingURL=link-prediction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-prediction.d.ts","sourceRoot":"","sources":["../../src/atlas/link-prediction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,2EAA2E;AAC3E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,qFAAqF;IACrF,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,oDAAoD;AACpD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAChD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,uDAAuD;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAsBD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,EAAE,CAAC,SAAK,GAAG,oBAAoB,CAkEhG"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 6, S6.3 — link prediction over the typed model graph: ONE result,
|
|
3
|
+
* stated as a hypothesis about the representation.
|
|
4
|
+
*
|
|
5
|
+
* Design note: `docs/planning/Atlas-Phase-6-Design.md` §1.
|
|
6
|
+
*
|
|
7
|
+
* The graph: every model in every registered family is a node; every
|
|
8
|
+
* premise→conclusion pair of every bridge is an undirected edge. The test is
|
|
9
|
+
* leave-one-bridge-out: remove a bridge's edges, then ask each predictor to rank
|
|
10
|
+
* the conclusion among every model not already adjacent to the premise. A hit is
|
|
11
|
+
* the held-out conclusion inside the top k.
|
|
12
|
+
*
|
|
13
|
+
* - **structural predictor** — common neighbours in the remaining graph, ties
|
|
14
|
+
* broken by sharing the premise's family, then by id;
|
|
15
|
+
* - **text baseline** — word-token overlap between the models' dynamics and
|
|
16
|
+
* state-space descriptions, ties broken by id.
|
|
17
|
+
*
|
|
18
|
+
* ⚠ **What this result cannot carry.** The graph is small (24 models, 22 pairs)
|
|
19
|
+
* and was curated by the same agent that runs the test, in-distribution. It is a
|
|
20
|
+
* statement about how this representation behaves on its own content — not a
|
|
21
|
+
* discovery claim, not a hub or gap claim, and not evidence about physics the
|
|
22
|
+
* atlas does not contain. ROADMAP Phase 6 asks for it as a hypothesis test, and
|
|
23
|
+
* that is its whole scope. Product A (`src/composition/discovery.ts`) is not
|
|
24
|
+
* touched: a test pins that nothing under `src/atlas/` imports it.
|
|
25
|
+
*
|
|
26
|
+
* @module atlas/link-prediction
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
const tokens = (text) => new Set(text.toLowerCase().split(/[^\p{L}\p{N}]+/u).filter((t) => t.length > 0));
|
|
30
|
+
const jaccard = (a, b) => {
|
|
31
|
+
if (a.size === 0 && b.size === 0)
|
|
32
|
+
return 0;
|
|
33
|
+
let inter = 0;
|
|
34
|
+
for (const x of a)
|
|
35
|
+
if (b.has(x))
|
|
36
|
+
inter++;
|
|
37
|
+
return inter / (a.size + b.size - inter);
|
|
38
|
+
};
|
|
39
|
+
/** Rank candidates by descending score list (lexicographic), then ascending id. */
|
|
40
|
+
function rank(candidates, score) {
|
|
41
|
+
return [...candidates].sort((x, y) => {
|
|
42
|
+
const sx = score(x);
|
|
43
|
+
const sy = score(y);
|
|
44
|
+
for (let i = 0; i < sx.length; i++)
|
|
45
|
+
if (sx[i] !== sy[i])
|
|
46
|
+
return sy[i] - sx[i];
|
|
47
|
+
return x < y ? -1 : x > y ? 1 : 0;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Run leave-one-bridge-out link prediction over the families' model graph.
|
|
52
|
+
*
|
|
53
|
+
* @param families - the atlas families (normally `ATLAS_FAMILIES`).
|
|
54
|
+
* @param k - the depth a hit must fall within (10, as pre-registered for recall).
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
export function runLinkPrediction(families, k = 10) {
|
|
58
|
+
const models = new Map();
|
|
59
|
+
for (const f of families)
|
|
60
|
+
for (const m of f.models)
|
|
61
|
+
models.set(m.id, m);
|
|
62
|
+
const bridges = families.flatMap((f) => f.bridges);
|
|
63
|
+
const edgesOf = (b) => b.premises.map((p) => [p, b.conclusion]);
|
|
64
|
+
const trials = [];
|
|
65
|
+
let stillConnected = 0;
|
|
66
|
+
for (const held of bridges) {
|
|
67
|
+
// The graph WITHOUT the held-out bridge.
|
|
68
|
+
const adj = new Map();
|
|
69
|
+
for (const id of models.keys())
|
|
70
|
+
adj.set(id, new Set());
|
|
71
|
+
for (const b of bridges) {
|
|
72
|
+
if (b === held)
|
|
73
|
+
continue;
|
|
74
|
+
for (const [u, v] of edgesOf(b)) {
|
|
75
|
+
adj.get(u)?.add(v);
|
|
76
|
+
adj.get(v)?.add(u);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
for (const [premise, conclusion] of edgesOf(held)) {
|
|
80
|
+
const pModel = models.get(premise);
|
|
81
|
+
if (pModel === undefined)
|
|
82
|
+
continue;
|
|
83
|
+
const neighbours = adj.get(premise) ?? new Set();
|
|
84
|
+
if (neighbours.has(conclusion)) {
|
|
85
|
+
stillConnected++;
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
const candidates = [...models.keys()].filter((id) => id !== premise && !neighbours.has(id));
|
|
89
|
+
const common = (id) => {
|
|
90
|
+
let n = 0;
|
|
91
|
+
for (const x of adj.get(id) ?? [])
|
|
92
|
+
if (neighbours.has(x))
|
|
93
|
+
n++;
|
|
94
|
+
return n;
|
|
95
|
+
};
|
|
96
|
+
const structural = rank(candidates, (id) => [common(id), models.get(id).family === pModel.family ? 1 : 0]);
|
|
97
|
+
const pText = tokens(`${pModel.dynamics} ${pModel.stateSpace}`);
|
|
98
|
+
const text = rank(candidates, (id) => {
|
|
99
|
+
const m = models.get(id);
|
|
100
|
+
return [jaccard(pText, tokens(`${m.dynamics} ${m.stateSpace}`))];
|
|
101
|
+
});
|
|
102
|
+
const at = (list) => {
|
|
103
|
+
const i = list.indexOf(conclusion);
|
|
104
|
+
return i < 0 ? Number.POSITIVE_INFINITY : i + 1;
|
|
105
|
+
};
|
|
106
|
+
trials.push({
|
|
107
|
+
bridgeId: held.id,
|
|
108
|
+
premise,
|
|
109
|
+
conclusion,
|
|
110
|
+
structuralRank: at(structural),
|
|
111
|
+
textRank: at(text),
|
|
112
|
+
candidates: candidates.length,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
const mean = (xs) => (xs.length === 0 ? Number.NaN : xs.reduce((a, b) => a + b, 0) / xs.length);
|
|
117
|
+
return {
|
|
118
|
+
k,
|
|
119
|
+
trials,
|
|
120
|
+
stillConnected,
|
|
121
|
+
structuralHits: trials.filter((t) => t.structuralRank <= k).length,
|
|
122
|
+
textHits: trials.filter((t) => t.textRank <= k).length,
|
|
123
|
+
chanceRecall: mean(trials.map((t) => Math.min(k, t.candidates) / t.candidates)),
|
|
124
|
+
structuralMrr: mean(trials.map((t) => 1 / t.structuralRank)),
|
|
125
|
+
textMrr: mean(trials.map((t) => 1 / t.textRank)),
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=link-prediction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-prediction.js","sourceRoot":"","sources":["../../src/atlas/link-prediction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `Model` record — Phase 3's promotion of the Phase 0 `AtlasModel`.
|
|
3
|
+
*
|
|
4
|
+
* ROADMAP Phase 3 makes the MODEL the unit rather than the equation: state
|
|
5
|
+
* space, dynamics, observables, parameters, boundary/initial data, symmetry
|
|
6
|
+
* group where known, regime. This module is the record's new home; the nine
|
|
7
|
+
* Phase 0 fields are carried over unchanged and three are added.
|
|
8
|
+
*
|
|
9
|
+
* **`boundaryData`, `initialData` and `symmetryGroup` are all OPTIONAL**
|
|
10
|
+
* (`docs/planning/Atlas-Phase-3-Design.md` §4, which supersedes the
|
|
11
|
+
* implementation plan's wording on the first two). No boundary or initial
|
|
12
|
+
* data is recorded for the nine oscillator models, so a required field would
|
|
13
|
+
* force either fabricated values or empty ones asserting "there are none".
|
|
14
|
+
* `oscillators/models.ts` refuses exactly that fabrication for `inequalities`.
|
|
15
|
+
* **An absent field says "not recorded"; a present empty one says "there are
|
|
16
|
+
* none", and only one of those is true here** — so the nine literals stay
|
|
17
|
+
* byte-identical and record nothing they do not have a source for.
|
|
18
|
+
*
|
|
19
|
+
* `src/atlas/serialize.ts` enumerates model fields explicitly, so a model
|
|
20
|
+
* carrying none of the three serializes byte-identically to Phase 0's
|
|
21
|
+
* committed `data/atlas/oscillators.json`.
|
|
22
|
+
*
|
|
23
|
+
* @module atlas/model
|
|
24
|
+
*/
|
|
25
|
+
import type { DimensionalVariable } from '../dimensional/buckingham.js';
|
|
26
|
+
import type { Regime } from './types.js';
|
|
27
|
+
/**
|
|
28
|
+
* One model in the atlas.
|
|
29
|
+
*
|
|
30
|
+
* The first nine fields are Phase 0's `AtlasModel` verbatim. The last three
|
|
31
|
+
* are the Phase 3 additions and are omitted, never emptied, when unrecorded.
|
|
32
|
+
*
|
|
33
|
+
* @public
|
|
34
|
+
*/
|
|
35
|
+
export interface AtlasModel {
|
|
36
|
+
/** `'model-spring'`, `'model-lc'`, … */
|
|
37
|
+
readonly id: string;
|
|
38
|
+
readonly family: string;
|
|
39
|
+
readonly stateSpace: string;
|
|
40
|
+
/** Display form of the ODE. */
|
|
41
|
+
readonly dynamics: string;
|
|
42
|
+
readonly observables: readonly string[];
|
|
43
|
+
/** Dimensioned parameters. */
|
|
44
|
+
readonly parameters: readonly DimensionalVariable[];
|
|
45
|
+
/** `'theta0'`, `'qa'` — declared with the zero dimension. */
|
|
46
|
+
readonly dimensionlessInputs: readonly string[];
|
|
47
|
+
/** `'CE-simple-harmonic-frequency'`, … — must resolve in `CANONICAL_EQUATIONS`. */
|
|
48
|
+
readonly canonicalRefs: readonly string[];
|
|
49
|
+
readonly regime: Regime;
|
|
50
|
+
/**
|
|
51
|
+
* Boundary conditions the model is posed with, each as its stated display
|
|
52
|
+
* form (`'u(0, t) = u(L, t) = 0'`). **Omit when none is recorded** — an
|
|
53
|
+
* empty array would claim the model has no boundary conditions.
|
|
54
|
+
*/
|
|
55
|
+
readonly boundaryData?: readonly string[];
|
|
56
|
+
/**
|
|
57
|
+
* Initial conditions the model is posed with (`'x(0) = x₀'`). Omit when
|
|
58
|
+
* none is recorded; see `boundaryData`.
|
|
59
|
+
*/
|
|
60
|
+
readonly initialData?: readonly string[];
|
|
61
|
+
/**
|
|
62
|
+
* The symmetry group where it is known, as stated (`'SO(2)'`,
|
|
63
|
+
* `'time translation'`). Omit when unknown — Phase 3 records only
|
|
64
|
+
* symmetries a source states.
|
|
65
|
+
*/
|
|
66
|
+
readonly symmetryGroup?: string;
|
|
67
|
+
}
|
|
68
|
+
/** A `Model`'s id, as `CanonicalEquation.model` references it. @internal */
|
|
69
|
+
export type ModelId = string;
|
|
70
|
+
//# sourceMappingURL=model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/atlas/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,+BAA+B;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,6DAA6D;IAC7D,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,mFAAmF;IACnF,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAGxB;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,4EAA4E;AAC5E,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC"}
|