universal-physics-tensor 9.0.0 → 11.0.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 +21 -17
- package/bin/upt.mjs +13 -1
- package/data/atlas/atlas.json +79 -68
- package/data/atlas/atlas.jsonld +1 -1
- package/data/atlas/diffusion.json +24 -23
- package/data/atlas/oscillators.json +21 -16
- package/data/atlas/waves.json +36 -31
- package/data/atlas/witness-results.json +11 -11
- package/data/bridge-catalog.json +1192 -1636
- package/data/bridge-catalog.schema.json +390 -135
- package/data/quantities.json +53 -19
- package/data/schemas/atlas-record.v0.json +184 -46
- package/data/units.json +33 -4
- package/dist/atlas/applicability.d.ts.map +1 -1
- package/dist/atlas/applicability.js +35 -18
- package/dist/atlas/applicability.js.map +1 -1
- package/dist/atlas/association.js.map +1 -1
- package/dist/atlas/benchmark/backend-shapes.d.ts.map +1 -1
- package/dist/atlas/benchmark/backend-shapes.js +5 -1
- package/dist/atlas/benchmark/backend-shapes.js.map +1 -1
- package/dist/atlas/benchmark/baselines.d.ts.map +1 -1
- package/dist/atlas/benchmark/baselines.js +8 -0
- package/dist/atlas/benchmark/baselines.js.map +1 -1
- package/dist/atlas/benchmark/hybrid-retrieval.d.ts +12 -3
- package/dist/atlas/benchmark/hybrid-retrieval.d.ts.map +1 -1
- package/dist/atlas/benchmark/hybrid-retrieval.js +30 -21
- package/dist/atlas/benchmark/hybrid-retrieval.js.map +1 -1
- package/dist/atlas/benchmark/leakage.js.map +1 -1
- package/dist/atlas/benchmark/loader.js +2 -2
- package/dist/atlas/benchmark/loader.js.map +1 -1
- package/dist/atlas/benchmark/run-atlas.d.ts.map +1 -1
- package/dist/atlas/benchmark/run-atlas.js +14 -2
- package/dist/atlas/benchmark/run-atlas.js.map +1 -1
- package/dist/atlas/benchmark/stats.d.ts +3 -3
- package/dist/atlas/benchmark/stats.d.ts.map +1 -1
- package/dist/atlas/benchmark/stats.js +16 -8
- package/dist/atlas/benchmark/stats.js.map +1 -1
- package/dist/atlas/benchmark/study.js.map +1 -1
- package/dist/atlas/benchmark/types.js.map +1 -1
- package/dist/atlas/bridge-record.d.ts +4 -4
- package/dist/atlas/bridge-record.d.ts.map +1 -1
- package/dist/atlas/bridge-record.js +6 -6
- package/dist/atlas/bridge-record.js.map +1 -1
- package/dist/atlas/catalog-formal-ref.d.ts +26 -3
- package/dist/atlas/catalog-formal-ref.d.ts.map +1 -1
- package/dist/atlas/catalog-formal-ref.js +52 -5
- package/dist/atlas/catalog-formal-ref.js.map +1 -1
- package/dist/atlas/chain-pipeline.d.ts +0 -11
- package/dist/atlas/chain-pipeline.d.ts.map +1 -1
- package/dist/atlas/chain-pipeline.js +12 -24
- package/dist/atlas/chain-pipeline.js.map +1 -1
- package/dist/atlas/composition-table.js.map +1 -1
- package/dist/atlas/conventions.js.map +1 -1
- package/dist/atlas/coverage.d.ts +2 -2
- package/dist/atlas/coverage.js.map +1 -1
- package/dist/atlas/derivation.js.map +1 -1
- package/dist/atlas/derive-evidence.d.ts +6 -4
- package/dist/atlas/derive-evidence.d.ts.map +1 -1
- package/dist/atlas/derive-evidence.js +7 -2
- package/dist/atlas/derive-evidence.js.map +1 -1
- package/dist/atlas/diffusion/bridges-closure.d.ts +0 -4
- package/dist/atlas/diffusion/bridges-closure.d.ts.map +1 -1
- package/dist/atlas/diffusion/bridges-closure.js +8 -17
- package/dist/atlas/diffusion/bridges-closure.js.map +1 -1
- package/dist/atlas/diffusion/bridges.d.ts.map +1 -1
- package/dist/atlas/diffusion/bridges.js +27 -42
- package/dist/atlas/diffusion/bridges.js.map +1 -1
- package/dist/atlas/diffusion/dimensions.d.ts +6 -14
- package/dist/atlas/diffusion/dimensions.d.ts.map +1 -1
- package/dist/atlas/diffusion/dimensions.js +8 -16
- package/dist/atlas/diffusion/dimensions.js.map +1 -1
- package/dist/atlas/diffusion/index.d.ts +1 -1
- package/dist/atlas/diffusion/index.d.ts.map +1 -1
- package/dist/atlas/diffusion/index.js.map +1 -1
- package/dist/atlas/diffusion/models.d.ts +3 -3
- package/dist/atlas/diffusion/models.d.ts.map +1 -1
- package/dist/atlas/diffusion/models.js +5 -10
- package/dist/atlas/diffusion/models.js.map +1 -1
- package/dist/atlas/diffusion/numerics.d.ts +16 -4
- package/dist/atlas/diffusion/numerics.d.ts.map +1 -1
- package/dist/atlas/diffusion/numerics.js +38 -24
- package/dist/atlas/diffusion/numerics.js.map +1 -1
- package/dist/atlas/error-algebra.d.ts +6 -0
- package/dist/atlas/error-algebra.d.ts.map +1 -1
- package/dist/atlas/error-algebra.js +26 -0
- package/dist/atlas/error-algebra.js.map +1 -1
- package/dist/atlas/export.d.ts +18 -2
- package/dist/atlas/export.d.ts.map +1 -1
- package/dist/atlas/export.js +9 -3
- package/dist/atlas/export.js.map +1 -1
- package/dist/atlas/families.d.ts +19 -2
- package/dist/atlas/families.d.ts.map +1 -1
- package/dist/atlas/families.js +26 -3
- package/dist/atlas/families.js.map +1 -1
- package/dist/atlas/family.d.ts +27 -0
- package/dist/atlas/family.d.ts.map +1 -0
- package/dist/atlas/family.js +12 -0
- package/dist/atlas/family.js.map +1 -0
- package/dist/atlas/index.d.ts +3 -2
- package/dist/atlas/index.d.ts.map +1 -1
- package/dist/atlas/index.js +2 -1
- package/dist/atlas/index.js.map +1 -1
- package/dist/atlas/link-prediction.d.ts +107 -4
- package/dist/atlas/link-prediction.d.ts.map +1 -1
- package/dist/atlas/link-prediction.js +212 -66
- package/dist/atlas/link-prediction.js.map +1 -1
- package/dist/atlas/model.js.map +1 -1
- package/dist/atlas/oscillators/bridges-coarse.d.ts.map +1 -1
- package/dist/atlas/oscillators/bridges-coarse.js +7 -12
- package/dist/atlas/oscillators/bridges-coarse.js.map +1 -1
- package/dist/atlas/oscillators/bridges-exact.d.ts.map +1 -1
- package/dist/atlas/oscillators/bridges-exact.js +6 -10
- package/dist/atlas/oscillators/bridges-exact.js.map +1 -1
- package/dist/atlas/oscillators/bridges-limits.d.ts +3 -16
- package/dist/atlas/oscillators/bridges-limits.d.ts.map +1 -1
- package/dist/atlas/oscillators/bridges-limits.js +23 -36
- package/dist/atlas/oscillators/bridges-limits.js.map +1 -1
- package/dist/atlas/oscillators/dimensions.d.ts +9 -21
- package/dist/atlas/oscillators/dimensions.d.ts.map +1 -1
- package/dist/atlas/oscillators/dimensions.js +9 -21
- package/dist/atlas/oscillators/dimensions.js.map +1 -1
- package/dist/atlas/oscillators/index.d.ts +1 -16
- package/dist/atlas/oscillators/index.d.ts.map +1 -1
- package/dist/atlas/oscillators/index.js.map +1 -1
- package/dist/atlas/oscillators/limit-witnesses.d.ts +2 -2
- package/dist/atlas/oscillators/limit-witnesses.d.ts.map +1 -1
- package/dist/atlas/oscillators/limit-witnesses.js +17 -15
- package/dist/atlas/oscillators/limit-witnesses.js.map +1 -1
- package/dist/atlas/oscillators/models.d.ts.map +1 -1
- package/dist/atlas/oscillators/models.js +2 -6
- package/dist/atlas/oscillators/models.js.map +1 -1
- package/dist/atlas/oscillators/norm-transport-witness.js.map +1 -1
- package/dist/atlas/oscillators/norm-transport.js.map +1 -1
- package/dist/atlas/oscillators/norms.js.map +1 -1
- package/dist/atlas/oscillators/pendulum-motion.d.ts +29 -6
- package/dist/atlas/oscillators/pendulum-motion.d.ts.map +1 -1
- package/dist/atlas/oscillators/pendulum-motion.js +60 -40
- package/dist/atlas/oscillators/pendulum-motion.js.map +1 -1
- package/dist/atlas/oscillators/phase-carriage.js.map +1 -1
- package/dist/atlas/oscillators/phase-translation.d.ts +0 -11
- package/dist/atlas/oscillators/phase-translation.d.ts.map +1 -1
- package/dist/atlas/oscillators/phase-translation.js +3 -4
- package/dist/atlas/oscillators/phase-translation.js.map +1 -1
- package/dist/atlas/oscillators/position-translation.d.ts +68 -7
- package/dist/atlas/oscillators/position-translation.d.ts.map +1 -1
- package/dist/atlas/oscillators/position-translation.js +123 -12
- package/dist/atlas/oscillators/position-translation.js.map +1 -1
- package/dist/atlas/oscillators/rejections.d.ts +0 -2
- package/dist/atlas/oscillators/rejections.d.ts.map +1 -1
- package/dist/atlas/oscillators/rejections.js +0 -7
- package/dist/atlas/oscillators/rejections.js.map +1 -1
- package/dist/atlas/path-bound.js.map +1 -1
- package/dist/atlas/physjs-entries.generated.d.ts +25 -24
- package/dist/atlas/physjs-entries.generated.d.ts.map +1 -1
- package/dist/atlas/physjs-entries.generated.js +25 -24
- package/dist/atlas/physjs-entries.generated.js.map +1 -1
- package/dist/atlas/physjs-ref.d.ts +107 -70
- package/dist/atlas/physjs-ref.d.ts.map +1 -1
- package/dist/atlas/physjs-ref.js +184 -101
- package/dist/atlas/physjs-ref.js.map +1 -1
- package/dist/atlas/physjs-reviewed.d.ts +31 -0
- package/dist/atlas/physjs-reviewed.d.ts.map +1 -0
- package/dist/atlas/physjs-reviewed.js +194 -0
- package/dist/atlas/physjs-reviewed.js.map +1 -0
- package/dist/atlas/poster/associations.js.map +1 -1
- package/dist/atlas/poster/derivations.js.map +1 -1
- package/dist/atlas/poster/statements.d.ts +0 -19
- package/dist/atlas/poster/statements.d.ts.map +1 -1
- package/dist/atlas/poster/statements.js +1 -1
- package/dist/atlas/poster/statements.js.map +1 -1
- package/dist/atlas/proof-target.d.ts +1 -1
- package/dist/atlas/proof-target.js +1 -1
- package/dist/atlas/proof-target.js.map +1 -1
- package/dist/atlas/public.d.ts +2 -1
- package/dist/atlas/public.d.ts.map +1 -1
- package/dist/atlas/public.js +2 -1
- package/dist/atlas/public.js.map +1 -1
- package/dist/atlas/regime.d.ts +1 -1
- package/dist/atlas/regime.d.ts.map +1 -1
- package/dist/atlas/regime.js +1 -1
- package/dist/atlas/regime.js.map +1 -1
- package/dist/atlas/serialize.d.ts +18 -12
- package/dist/atlas/serialize.d.ts.map +1 -1
- package/dist/atlas/serialize.js +28 -18
- package/dist/atlas/serialize.js.map +1 -1
- package/dist/atlas/statement.js.map +1 -1
- package/dist/atlas/text-overlap.d.ts +23 -0
- package/dist/atlas/text-overlap.d.ts.map +1 -0
- package/dist/atlas/text-overlap.js +41 -0
- package/dist/atlas/text-overlap.js.map +1 -0
- package/dist/atlas/translation-registry.js.map +1 -1
- package/dist/atlas/translation.js.map +1 -1
- package/dist/atlas/types.d.ts +9 -2
- package/dist/atlas/types.d.ts.map +1 -1
- package/dist/atlas/types.js +1 -1
- package/dist/atlas/types.js.map +1 -1
- package/dist/atlas/waves/bridges-closure.d.ts.map +1 -1
- package/dist/atlas/waves/bridges-closure.js +2 -9
- package/dist/atlas/waves/bridges-closure.js.map +1 -1
- package/dist/atlas/waves/bridges.d.ts.map +1 -1
- package/dist/atlas/waves/bridges.js +32 -52
- package/dist/atlas/waves/bridges.js.map +1 -1
- package/dist/atlas/waves/index.d.ts +1 -1
- package/dist/atlas/waves/index.d.ts.map +1 -1
- package/dist/atlas/waves/index.js.map +1 -1
- package/dist/atlas/waves/models.d.ts +5 -6
- package/dist/atlas/waves/models.d.ts.map +1 -1
- package/dist/atlas/waves/models.js +7 -13
- package/dist/atlas/waves/models.js.map +1 -1
- package/dist/atlas/waves/numerics.d.ts.map +1 -1
- package/dist/atlas/waves/numerics.js +10 -3
- package/dist/atlas/waves/numerics.js.map +1 -1
- package/dist/atlas/witness-artifact.js.map +1 -1
- package/dist/atlas/witness-dominance.d.ts +4 -3
- package/dist/atlas/witness-dominance.d.ts.map +1 -1
- package/dist/atlas/witness-dominance.js +15 -5
- package/dist/atlas/witness-dominance.js.map +1 -1
- package/dist/atlas/witness-numeric.d.ts +38 -4
- package/dist/atlas/witness-numeric.d.ts.map +1 -1
- package/dist/atlas/witness-numeric.js +80 -2
- package/dist/atlas/witness-numeric.js.map +1 -1
- package/dist/atlas/witness-result.d.ts +7 -1
- package/dist/atlas/witness-result.d.ts.map +1 -1
- package/dist/atlas/witness-result.js.map +1 -1
- package/dist/atlas/witness-specs.d.ts.map +1 -1
- package/dist/atlas/witness-specs.js +19 -0
- package/dist/atlas/witness-specs.js.map +1 -1
- package/dist/atlas/witness-symbolic.d.ts +75 -3
- package/dist/atlas/witness-symbolic.d.ts.map +1 -1
- package/dist/atlas/witness-symbolic.js +116 -10
- package/dist/atlas/witness-symbolic.js.map +1 -1
- package/dist/atlas/witnesses/quantum-support.js.map +1 -1
- package/dist/bridges/caller-table.d.ts +1 -1
- package/dist/bridges/caller-table.d.ts.map +1 -1
- package/dist/bridges/caller-table.js.map +1 -1
- package/dist/bridges/carrier-sign.d.ts.map +1 -1
- package/dist/bridges/carrier-sign.js +8 -3
- package/dist/bridges/carrier-sign.js.map +1 -1
- package/dist/bridges/catalog-adapter.d.ts +12 -3
- package/dist/bridges/catalog-adapter.d.ts.map +1 -1
- package/dist/bridges/catalog-adapter.js +17 -9
- package/dist/bridges/catalog-adapter.js.map +1 -1
- package/dist/bridges/catalog-load.d.ts +12 -2
- package/dist/bridges/catalog-load.d.ts.map +1 -1
- package/dist/bridges/catalog-load.js +181 -13
- package/dist/bridges/catalog-load.js.map +1 -1
- package/dist/bridges/catalog-types.d.ts +74 -26
- package/dist/bridges/catalog-types.d.ts.map +1 -1
- package/dist/bridges/catalog-types.js +11 -1
- package/dist/bridges/catalog-types.js.map +1 -1
- package/dist/bridges/coefficient-statement.js +1 -5
- package/dist/bridges/coefficient-statement.js.map +1 -1
- package/dist/bridges/confrontation-coverage.js.map +1 -1
- package/dist/bridges/confrontations.d.ts +1 -1
- package/dist/bridges/confrontations.d.ts.map +1 -1
- package/dist/bridges/confrontations.js +1 -1
- package/dist/bridges/confrontations.js.map +1 -1
- package/dist/bridges/evaluation-errors.d.ts +46 -3
- package/dist/bridges/evaluation-errors.d.ts.map +1 -1
- package/dist/bridges/evaluation-errors.js +40 -4
- package/dist/bridges/evaluation-errors.js.map +1 -1
- package/dist/bridges/evaluator-inputs.d.ts.map +1 -1
- package/dist/bridges/evaluator-inputs.js +7 -5
- package/dist/bridges/evaluator-inputs.js.map +1 -1
- package/dist/bridges/evaluators.d.ts +17 -2
- package/dist/bridges/evaluators.d.ts.map +1 -1
- package/dist/bridges/evaluators.js +76 -28
- package/dist/bridges/evaluators.js.map +1 -1
- package/dist/bridges/expr-parse.d.ts +38 -4
- package/dist/bridges/expr-parse.d.ts.map +1 -1
- package/dist/bridges/expr-parse.js +101 -12
- package/dist/bridges/expr-parse.js.map +1 -1
- package/dist/bridges/holds.d.ts +40 -4
- package/dist/bridges/holds.d.ts.map +1 -1
- package/dist/bridges/holds.js +128 -19
- package/dist/bridges/holds.js.map +1 -1
- package/dist/bridges/index.d.ts +15 -14
- package/dist/bridges/index.d.ts.map +1 -1
- package/dist/bridges/index.js +14 -15
- package/dist/bridges/index.js.map +1 -1
- package/dist/bridges/input-contract.js.map +1 -1
- package/dist/bridges/membership.d.ts +5 -3
- package/dist/bridges/membership.d.ts.map +1 -1
- package/dist/bridges/membership.js +5 -6
- package/dist/bridges/membership.js.map +1 -1
- package/dist/bridges/notices.d.ts.map +1 -1
- package/dist/bridges/notices.js +5 -5
- package/dist/bridges/notices.js.map +1 -1
- package/dist/bridges/observations/types.js.map +1 -1
- package/dist/bridges/rejected.d.ts +11 -17
- package/dist/bridges/rejected.d.ts.map +1 -1
- package/dist/bridges/rejected.js +13 -68
- package/dist/bridges/rejected.js.map +1 -1
- package/dist/bridges/relation-eval.d.ts +6 -7
- package/dist/bridges/relation-eval.d.ts.map +1 -1
- package/dist/bridges/relation-eval.js +20 -50
- package/dist/bridges/relation-eval.js.map +1 -1
- package/dist/bridges/rhs-registry.js.map +1 -1
- package/dist/bridges/sensitivity.d.ts +11 -3
- package/dist/bridges/sensitivity.d.ts.map +1 -1
- package/dist/bridges/sensitivity.js +27 -13
- package/dist/bridges/sensitivity.js.map +1 -1
- package/dist/bridges/tensor-index.js.map +1 -1
- package/dist/bridges/types.d.ts +1 -7
- package/dist/bridges/types.d.ts.map +1 -1
- package/dist/bridges/types.js +1 -4
- package/dist/bridges/types.js.map +1 -1
- package/dist/bridges/validity.d.ts +33 -0
- package/dist/bridges/validity.d.ts.map +1 -0
- package/dist/bridges/validity.js +67 -0
- package/dist/bridges/validity.js.map +1 -0
- package/dist/canonical/canonical-equation.js.map +1 -1
- package/dist/canonical/dimensional-fields.js.map +1 -1
- package/dist/canonical/entries/_l1-build.js.map +1 -1
- package/dist/canonical/entries/atomic.js +1 -3
- package/dist/canonical/entries/atomic.js.map +1 -1
- package/dist/canonical/entries/condensed-matter.d.ts.map +1 -1
- package/dist/canonical/entries/condensed-matter.js +8 -9
- package/dist/canonical/entries/condensed-matter.js.map +1 -1
- package/dist/canonical/entries/dimensional-classics.d.ts.map +1 -1
- package/dist/canonical/entries/dimensional-classics.js +5 -6
- package/dist/canonical/entries/dimensional-classics.js.map +1 -1
- package/dist/canonical/entries/electromagnetism.d.ts.map +1 -1
- package/dist/canonical/entries/electromagnetism.js +6 -12
- package/dist/canonical/entries/electromagnetism.js.map +1 -1
- package/dist/canonical/entries/fluids-waves.d.ts.map +1 -1
- package/dist/canonical/entries/fluids-waves.js +3 -7
- package/dist/canonical/entries/fluids-waves.js.map +1 -1
- package/dist/canonical/entries/mechanics.d.ts.map +1 -1
- package/dist/canonical/entries/mechanics.js +4 -6
- package/dist/canonical/entries/mechanics.js.map +1 -1
- package/dist/canonical/entries/nonmonomial.d.ts.map +1 -1
- package/dist/canonical/entries/nonmonomial.js +38 -39
- package/dist/canonical/entries/nonmonomial.js.map +1 -1
- package/dist/canonical/entries/relativity.d.ts.map +1 -1
- package/dist/canonical/entries/relativity.js +6 -6
- package/dist/canonical/entries/relativity.js.map +1 -1
- package/dist/canonical/entries/statistical-mechanics.js +5 -5
- package/dist/canonical/entries/statistical-mechanics.js.map +1 -1
- package/dist/canonical/entries/thermo-nuclear-cosmo.d.ts.map +1 -1
- package/dist/canonical/entries/thermo-nuclear-cosmo.js +6 -10
- package/dist/canonical/entries/thermo-nuclear-cosmo.js.map +1 -1
- package/dist/canonical/fixed-points.d.ts +94 -0
- package/dist/canonical/fixed-points.d.ts.map +1 -0
- package/dist/canonical/fixed-points.js +81 -0
- package/dist/canonical/fixed-points.js.map +1 -0
- package/dist/canonical/linkage.d.ts +29 -4
- package/dist/canonical/linkage.d.ts.map +1 -1
- package/dist/canonical/linkage.js +47 -64
- package/dist/canonical/linkage.js.map +1 -1
- package/dist/canonical/normal-form.d.ts +0 -8
- package/dist/canonical/normal-form.d.ts.map +1 -1
- package/dist/canonical/normal-form.js +22 -23
- package/dist/canonical/normal-form.js.map +1 -1
- package/dist/canonical/registry.js.map +1 -1
- package/dist/canonical/residual.js.map +1 -1
- package/dist/canonical/seed-l-layer.d.ts +7 -1
- package/dist/canonical/seed-l-layer.d.ts.map +1 -1
- package/dist/canonical/seed-l-layer.js +7 -1
- package/dist/canonical/seed-l-layer.js.map +1 -1
- package/dist/canonical/structural.d.ts +42 -21
- package/dist/canonical/structural.d.ts.map +1 -1
- package/dist/canonical/structural.js +64 -23
- package/dist/canonical/structural.js.map +1 -1
- package/dist/cases/brownian-sphere.d.ts +3 -3
- package/dist/cases/brownian-sphere.d.ts.map +1 -1
- package/dist/cases/brownian-sphere.js +10 -9
- package/dist/cases/brownian-sphere.js.map +1 -1
- package/dist/cases/damped-resonator.d.ts.map +1 -1
- package/dist/cases/damped-resonator.js +8 -11
- package/dist/cases/damped-resonator.js.map +1 -1
- package/dist/cases/index.js.map +1 -1
- package/dist/cases/kepler-rv.d.ts +1 -1
- package/dist/cases/kepler-rv.d.ts.map +1 -1
- package/dist/cases/kepler-rv.js +3 -2
- package/dist/cases/kepler-rv.js.map +1 -1
- package/dist/cases/lumped-cooling.d.ts +8 -3
- package/dist/cases/lumped-cooling.d.ts.map +1 -1
- package/dist/cases/lumped-cooling.js +22 -24
- package/dist/cases/lumped-cooling.js.map +1 -1
- package/dist/cases/quadrature.d.ts +7 -9
- package/dist/cases/quadrature.d.ts.map +1 -1
- package/dist/cases/quadrature.js +28 -32
- package/dist/cases/quadrature.js.map +1 -1
- package/dist/cases/resistor-noise.js +7 -7
- package/dist/cases/resistor-noise.js.map +1 -1
- package/dist/cases/skin-depth.d.ts +0 -4
- package/dist/cases/skin-depth.d.ts.map +1 -1
- package/dist/cases/skin-depth.js +3 -7
- package/dist/cases/skin-depth.js.map +1 -1
- package/dist/cases/types.js.map +1 -1
- package/dist/cli/args.d.ts +30 -3
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +47 -9
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/bindings.d.ts +13 -0
- package/dist/cli/bindings.d.ts.map +1 -0
- package/dist/cli/bindings.js +33 -0
- package/dist/cli/bindings.js.map +1 -0
- package/dist/cli/closed-form-range.js.map +1 -1
- package/dist/cli/command.d.ts +8 -1
- package/dist/cli/command.d.ts.map +1 -1
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/commands/_atlas-map.d.ts +2 -11
- package/dist/cli/commands/_atlas-map.d.ts.map +1 -1
- package/dist/cli/commands/_atlas-map.js +50 -35
- package/dist/cli/commands/_atlas-map.js.map +1 -1
- package/dist/cli/commands/_atlas-route.d.ts.map +1 -1
- package/dist/cli/commands/_atlas-route.js +6 -2
- package/dist/cli/commands/_atlas-route.js.map +1 -1
- package/dist/cli/commands/_discovery-opts.d.ts.map +1 -1
- package/dist/cli/commands/_discovery-opts.js +48 -14
- package/dist/cli/commands/_discovery-opts.js.map +1 -1
- package/dist/cli/commands/atlas.d.ts.map +1 -1
- package/dist/cli/commands/atlas.js +9 -8
- package/dist/cli/commands/atlas.js.map +1 -1
- package/dist/cli/commands/audit.d.ts.map +1 -1
- package/dist/cli/commands/audit.js +20 -20
- package/dist/cli/commands/audit.js.map +1 -1
- package/dist/cli/commands/axes.d.ts.map +1 -1
- package/dist/cli/commands/axes.js +20 -1
- package/dist/cli/commands/axes.js.map +1 -1
- package/dist/cli/commands/candidates.d.ts.map +1 -1
- package/dist/cli/commands/candidates.js +16 -8
- package/dist/cli/commands/candidates.js.map +1 -1
- package/dist/cli/commands/canonical.js.map +1 -1
- package/dist/cli/commands/chain.js +1 -1
- package/dist/cli/commands/chain.js.map +1 -1
- package/dist/cli/commands/confront.d.ts.map +1 -1
- package/dist/cli/commands/confront.js +22 -20
- package/dist/cli/commands/confront.js.map +1 -1
- package/dist/cli/commands/connectors.js.map +1 -1
- package/dist/cli/commands/coverage.js.map +1 -1
- package/dist/cli/commands/derive.d.ts.map +1 -1
- package/dist/cli/commands/derive.js +60 -35
- 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 +20 -10
- package/dist/cli/commands/discover.js.map +1 -1
- package/dist/cli/commands/eval.d.ts.map +1 -1
- package/dist/cli/commands/eval.js +14 -10
- package/dist/cli/commands/eval.js.map +1 -1
- package/dist/cli/commands/evaluate.d.ts.map +1 -1
- package/dist/cli/commands/evaluate.js +108 -58
- 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 +16 -8
- package/dist/cli/commands/explain.js.map +1 -1
- package/dist/cli/commands/frontier.js.map +1 -1
- package/dist/cli/commands/ground.d.ts.map +1 -1
- package/dist/cli/commands/ground.js +41 -10
- package/dist/cli/commands/ground.js.map +1 -1
- 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 +155 -92
- package/dist/cli/commands/map.js.map +1 -1
- package/dist/cli/commands/metric.d.ts.map +1 -1
- package/dist/cli/commands/metric.js +58 -20
- package/dist/cli/commands/metric.js.map +1 -1
- package/dist/cli/commands/path.d.ts +10 -0
- package/dist/cli/commands/path.d.ts.map +1 -1
- package/dist/cli/commands/path.js +29 -7
- package/dist/cli/commands/path.js.map +1 -1
- package/dist/cli/commands/predict.js.map +1 -1
- package/dist/cli/commands/priority.js.map +1 -1
- package/dist/cli/commands/probe.d.ts.map +1 -1
- package/dist/cli/commands/probe.js +105 -38
- package/dist/cli/commands/probe.js.map +1 -1
- package/dist/cli/commands/recover.js +1 -1
- package/dist/cli/commands/recover.js.map +1 -1
- package/dist/cli/commands/regime.d.ts +5 -4
- package/dist/cli/commands/regime.d.ts.map +1 -1
- package/dist/cli/commands/regime.js +25 -26
- package/dist/cli/commands/regime.js.map +1 -1
- package/dist/cli/commands/retrieve.d.ts.map +1 -1
- package/dist/cli/commands/retrieve.js +23 -14
- package/dist/cli/commands/retrieve.js.map +1 -1
- package/dist/cli/commands/search.d.ts.map +1 -1
- package/dist/cli/commands/search.js +9 -4
- package/dist/cli/commands/search.js.map +1 -1
- package/dist/cli/commands/symbolic.js +31 -36
- package/dist/cli/commands/symbolic.js.map +1 -1
- package/dist/cli/commands/testplan.d.ts.map +1 -1
- package/dist/cli/commands/testplan.js +5 -3
- package/dist/cli/commands/testplan.js.map +1 -1
- package/dist/cli/conventions.js.map +1 -1
- package/dist/cli/determination.js.map +1 -1
- package/dist/cli/errors.js.map +1 -1
- package/dist/cli/euler-guard.js.map +1 -1
- package/dist/cli/eval-numbers.js.map +1 -1
- package/dist/cli/expr-print.d.ts +28 -3
- package/dist/cli/expr-print.d.ts.map +1 -1
- package/dist/cli/expr-print.js +42 -22
- package/dist/cli/expr-print.js.map +1 -1
- package/dist/cli/flag-help.js.map +1 -1
- package/dist/cli/graphs.js.map +1 -1
- package/dist/cli/library-defaults.d.ts +19 -0
- package/dist/cli/library-defaults.d.ts.map +1 -0
- package/dist/cli/library-defaults.js +22 -0
- package/dist/cli/library-defaults.js.map +1 -0
- package/dist/cli/main.d.ts +7 -0
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +25 -6
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/map-evidence.js.map +1 -1
- package/dist/cli/numeric-flag.d.ts +12 -0
- package/dist/cli/numeric-flag.d.ts.map +1 -0
- package/dist/cli/numeric-flag.js +44 -0
- package/dist/cli/numeric-flag.js.map +1 -0
- package/dist/cli/output.d.ts +23 -6
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js +15 -0
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/published-url.js.map +1 -1
- package/dist/cli/record-reach.d.ts +6 -0
- package/dist/cli/record-reach.d.ts.map +1 -1
- package/dist/cli/record-reach.js +17 -11
- package/dist/cli/record-reach.js.map +1 -1
- package/dist/cli/record-tables.d.ts.map +1 -1
- package/dist/cli/record-tables.js +7 -6
- package/dist/cli/record-tables.js.map +1 -1
- package/dist/cli/record.d.ts +1 -5
- package/dist/cli/record.d.ts.map +1 -1
- package/dist/cli/record.js +40 -20
- package/dist/cli/record.js.map +1 -1
- package/dist/cli/search-index.d.ts +5 -0
- package/dist/cli/search-index.d.ts.map +1 -1
- package/dist/cli/search-index.js +19 -7
- package/dist/cli/search-index.js.map +1 -1
- package/dist/cli/statuses.d.ts +0 -2
- package/dist/cli/statuses.d.ts.map +1 -1
- package/dist/cli/statuses.js +0 -7
- package/dist/cli/statuses.js.map +1 -1
- package/dist/cli/stored-results.d.ts +7 -0
- package/dist/cli/stored-results.d.ts.map +1 -0
- package/dist/cli/stored-results.js +23 -0
- package/dist/cli/stored-results.js.map +1 -0
- package/dist/cli/top-level-help.js.map +1 -1
- package/dist/cli/version.d.ts.map +1 -1
- package/dist/cli/version.js +7 -5
- package/dist/cli/version.js.map +1 -1
- package/dist/cli-api.d.ts +49 -14
- package/dist/cli-api.d.ts.map +1 -1
- package/dist/cli-api.js +42 -17
- package/dist/cli-api.js.map +1 -1
- package/dist/composition/adjudication.js.map +1 -1
- package/dist/composition/algebraic-equivalence.d.ts +43 -0
- package/dist/composition/algebraic-equivalence.d.ts.map +1 -0
- package/dist/composition/algebraic-equivalence.js +115 -0
- package/dist/composition/algebraic-equivalence.js.map +1 -0
- package/dist/composition/aliases.js.map +1 -1
- package/dist/composition/audit-coverage.d.ts +2 -0
- package/dist/composition/audit-coverage.d.ts.map +1 -1
- package/dist/composition/audit-coverage.js.map +1 -1
- package/dist/composition/axes.d.ts +6 -0
- package/dist/composition/axes.d.ts.map +1 -1
- package/dist/composition/axes.js +18 -6
- package/dist/composition/axes.js.map +1 -1
- package/dist/composition/axis-audit.d.ts +47 -20
- package/dist/composition/axis-audit.d.ts.map +1 -1
- package/dist/composition/axis-audit.js +82 -9
- package/dist/composition/axis-audit.js.map +1 -1
- package/dist/composition/bridge-analysis.d.ts +14 -15
- package/dist/composition/bridge-analysis.d.ts.map +1 -1
- package/dist/composition/bridge-analysis.js +148 -91
- package/dist/composition/bridge-analysis.js.map +1 -1
- package/dist/composition/bridge-prediction.d.ts +5 -1
- package/dist/composition/bridge-prediction.d.ts.map +1 -1
- package/dist/composition/bridge-prediction.js +12 -16
- package/dist/composition/bridge-prediction.js.map +1 -1
- package/dist/composition/buckingham-filter.js.map +1 -1
- package/dist/composition/canonical-compare.d.ts +40 -0
- package/dist/composition/canonical-compare.d.ts.map +1 -1
- package/dist/composition/canonical-compare.js +134 -26
- package/dist/composition/canonical-compare.js.map +1 -1
- package/dist/composition/canonical-graph.d.ts +9 -10
- package/dist/composition/canonical-graph.d.ts.map +1 -1
- package/dist/composition/canonical-graph.js +33 -102
- package/dist/composition/canonical-graph.js.map +1 -1
- package/dist/composition/canonical-json.js +2 -2
- package/dist/composition/canonical-json.js.map +1 -1
- package/dist/composition/canonical-prefactors.js.map +1 -1
- package/dist/composition/catalog-graph.d.ts.map +1 -1
- package/dist/composition/catalog-graph.js +8 -25
- package/dist/composition/catalog-graph.js.map +1 -1
- package/dist/composition/chain-candidate.d.ts +10 -0
- package/dist/composition/chain-candidate.d.ts.map +1 -1
- package/dist/composition/chain-candidate.js +11 -2
- package/dist/composition/chain-candidate.js.map +1 -1
- package/dist/composition/chain-match.d.ts +6 -3
- package/dist/composition/chain-match.d.ts.map +1 -1
- package/dist/composition/chain-match.js +4 -1
- package/dist/composition/chain-match.js.map +1 -1
- package/dist/composition/chain-regime.js.map +1 -1
- package/dist/composition/chain-result.d.ts.map +1 -1
- package/dist/composition/chain-result.js +2 -14
- package/dist/composition/chain-result.js.map +1 -1
- package/dist/composition/compose-surface.js.map +1 -1
- package/dist/composition/compose-symbolic.d.ts.map +1 -1
- package/dist/composition/compose-symbolic.js +3 -2
- package/dist/composition/compose-symbolic.js.map +1 -1
- package/dist/composition/compose.d.ts.map +1 -1
- package/dist/composition/compose.js +166 -41
- package/dist/composition/compose.js.map +1 -1
- package/dist/composition/composition-recovery.d.ts.map +1 -1
- package/dist/composition/composition-recovery.js +4 -7
- package/dist/composition/composition-recovery.js.map +1 -1
- package/dist/composition/consequence.d.ts.map +1 -1
- package/dist/composition/consequence.js +15 -6
- package/dist/composition/consequence.js.map +1 -1
- package/dist/composition/consistency.js.map +1 -1
- package/dist/composition/descriptor.d.ts +1 -1
- package/dist/composition/descriptor.d.ts.map +1 -1
- package/dist/composition/descriptor.js.map +1 -1
- package/dist/composition/dimension-adjacency.js.map +1 -1
- package/dist/composition/discovery.d.ts +77 -11
- package/dist/composition/discovery.d.ts.map +1 -1
- package/dist/composition/discovery.js +194 -80
- package/dist/composition/discovery.js.map +1 -1
- package/dist/composition/edge.d.ts +40 -10
- package/dist/composition/edge.d.ts.map +1 -1
- package/dist/composition/edge.js +47 -12
- package/dist/composition/edge.js.map +1 -1
- package/dist/composition/enumerate.d.ts +2 -2
- package/dist/composition/enumerate.d.ts.map +1 -1
- package/dist/composition/enumerate.js +18 -3
- package/dist/composition/enumerate.js.map +1 -1
- package/dist/composition/evaluate-relation.d.ts +35 -11
- package/dist/composition/evaluate-relation.d.ts.map +1 -1
- package/dist/composition/evaluate-relation.js +60 -39
- package/dist/composition/evaluate-relation.js.map +1 -1
- package/dist/composition/explain.d.ts +5 -9
- package/dist/composition/explain.d.ts.map +1 -1
- package/dist/composition/explain.js +38 -18
- package/dist/composition/explain.js.map +1 -1
- package/dist/composition/expr-eval.d.ts.map +1 -1
- package/dist/composition/expr-eval.js +2 -11
- package/dist/composition/expr-eval.js.map +1 -1
- package/dist/composition/expr-simplify.d.ts +16 -0
- package/dist/composition/expr-simplify.d.ts.map +1 -1
- package/dist/composition/expr-simplify.js +24 -59
- package/dist/composition/expr-simplify.js.map +1 -1
- package/dist/composition/expr-subst.js.map +1 -1
- package/dist/composition/formula-shape.d.ts +28 -0
- package/dist/composition/formula-shape.d.ts.map +1 -1
- package/dist/composition/formula-shape.js +96 -2
- package/dist/composition/formula-shape.js.map +1 -1
- package/dist/composition/frontier-account.d.ts +3 -2
- package/dist/composition/frontier-account.d.ts.map +1 -1
- package/dist/composition/frontier-account.js +7 -3
- package/dist/composition/frontier-account.js.map +1 -1
- package/dist/composition/graph-structure.d.ts +98 -0
- package/dist/composition/graph-structure.d.ts.map +1 -0
- package/dist/composition/graph-structure.js +167 -0
- package/dist/composition/graph-structure.js.map +1 -0
- package/dist/composition/graph-viz-svg.d.ts.map +1 -1
- package/dist/composition/graph-viz-svg.js +1 -1
- package/dist/composition/graph-viz-svg.js.map +1 -1
- package/dist/composition/graph-viz.d.ts.map +1 -1
- package/dist/composition/graph-viz.js +8 -37
- package/dist/composition/graph-viz.js.map +1 -1
- package/dist/composition/grounding.js.map +1 -1
- package/dist/composition/identifiability.d.ts +91 -4
- package/dist/composition/identifiability.d.ts.map +1 -1
- package/dist/composition/identifiability.js +363 -6
- package/dist/composition/identifiability.js.map +1 -1
- package/dist/composition/index.d.ts +14 -8
- package/dist/composition/index.d.ts.map +1 -1
- package/dist/composition/index.js +7 -5
- package/dist/composition/index.js.map +1 -1
- package/dist/composition/mathts-quiet.d.ts +29 -0
- package/dist/composition/mathts-quiet.d.ts.map +1 -0
- package/dist/composition/mathts-quiet.js +57 -0
- package/dist/composition/mathts-quiet.js.map +1 -0
- package/dist/composition/mathts-scalar-symbols.d.ts.map +1 -1
- package/dist/composition/mathts-scalar-symbols.js +20 -35
- package/dist/composition/mathts-scalar-symbols.js.map +1 -1
- package/dist/composition/not-composable-seeds.d.ts +3 -1
- package/dist/composition/not-composable-seeds.d.ts.map +1 -1
- package/dist/composition/not-composable-seeds.js +2 -0
- package/dist/composition/not-composable-seeds.js.map +1 -1
- package/dist/composition/probe/backend-protocol.js.map +1 -1
- package/dist/composition/probe/candidate-store.js.map +1 -1
- package/dist/composition/probe/corpus.d.ts +4 -2
- package/dist/composition/probe/corpus.d.ts.map +1 -1
- package/dist/composition/probe/corpus.js +20 -9
- package/dist/composition/probe/corpus.js.map +1 -1
- package/dist/composition/probe/dataset.d.ts +17 -0
- package/dist/composition/probe/dataset.d.ts.map +1 -1
- package/dist/composition/probe/dataset.js +95 -50
- package/dist/composition/probe/dataset.js.map +1 -1
- package/dist/composition/probe/experiment-design.d.ts +5 -1
- package/dist/composition/probe/experiment-design.d.ts.map +1 -1
- package/dist/composition/probe/experiment-design.js +44 -24
- package/dist/composition/probe/experiment-design.js.map +1 -1
- package/dist/composition/probe/expression-gaps.js.map +1 -1
- package/dist/composition/probe/falsify.d.ts +14 -3
- package/dist/composition/probe/falsify.d.ts.map +1 -1
- package/dist/composition/probe/falsify.js +16 -27
- package/dist/composition/probe/falsify.js.map +1 -1
- package/dist/composition/probe/fingerprint.js.map +1 -1
- package/dist/composition/probe/fit.d.ts +7 -1
- package/dist/composition/probe/fit.d.ts.map +1 -1
- package/dist/composition/probe/fit.js +48 -23
- package/dist/composition/probe/fit.js.map +1 -1
- package/dist/composition/probe/frontier.d.ts.map +1 -1
- package/dist/composition/probe/frontier.js +33 -15
- package/dist/composition/probe/frontier.js.map +1 -1
- package/dist/composition/probe/generator.d.ts +27 -1
- package/dist/composition/probe/generator.d.ts.map +1 -1
- package/dist/composition/probe/generator.js +53 -30
- package/dist/composition/probe/generator.js.map +1 -1
- package/dist/composition/probe/index.d.ts +18 -2
- package/dist/composition/probe/index.d.ts.map +1 -1
- package/dist/composition/probe/index.js +10 -2
- package/dist/composition/probe/index.js.map +1 -1
- package/dist/composition/probe/limits.d.ts +24 -1
- package/dist/composition/probe/limits.d.ts.map +1 -1
- package/dist/composition/probe/limits.js +53 -11
- package/dist/composition/probe/limits.js.map +1 -1
- package/dist/composition/probe/metadata.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 +22 -9
- package/dist/composition/probe/pipeline.js.map +1 -1
- package/dist/composition/probe/power-law.d.ts +121 -0
- package/dist/composition/probe/power-law.d.ts.map +1 -0
- package/dist/composition/probe/power-law.js +255 -0
- package/dist/composition/probe/power-law.js.map +1 -0
- package/dist/composition/probe/problem.d.ts +12 -1
- package/dist/composition/probe/problem.d.ts.map +1 -1
- package/dist/composition/probe/problem.js +242 -48
- package/dist/composition/probe/problem.js.map +1 -1
- package/dist/composition/probe/report.js +1 -1
- package/dist/composition/probe/report.js.map +1 -1
- package/dist/composition/probe/residual.d.ts +6 -1
- package/dist/composition/probe/residual.d.ts.map +1 -1
- package/dist/composition/probe/residual.js +9 -7
- package/dist/composition/probe/residual.js.map +1 -1
- package/dist/composition/probe/run-manifest.js +2 -2
- package/dist/composition/probe/run-manifest.js.map +1 -1
- package/dist/composition/probe/scoring.d.ts +2 -1
- package/dist/composition/probe/scoring.d.ts.map +1 -1
- package/dist/composition/probe/scoring.js +21 -7
- package/dist/composition/probe/scoring.js.map +1 -1
- package/dist/composition/probe/search-budget.js.map +1 -1
- package/dist/composition/probe/serialize.js.map +1 -1
- package/dist/composition/probe/structure.d.ts +82 -17
- package/dist/composition/probe/structure.d.ts.map +1 -1
- package/dist/composition/probe/structure.js +129 -55
- package/dist/composition/probe/structure.js.map +1 -1
- package/dist/composition/probe/study.d.ts +35 -12
- package/dist/composition/probe/study.d.ts.map +1 -1
- package/dist/composition/probe/study.js +241 -184
- package/dist/composition/probe/study.js.map +1 -1
- package/dist/composition/probe/t-tail.d.ts +17 -0
- package/dist/composition/probe/t-tail.d.ts.map +1 -0
- package/dist/composition/probe/t-tail.js +32 -0
- package/dist/composition/probe/t-tail.js.map +1 -0
- package/dist/composition/probe/types.d.ts +6 -1
- package/dist/composition/probe/types.d.ts.map +1 -1
- package/dist/composition/probe/types.js +2 -0
- package/dist/composition/probe/types.js.map +1 -1
- package/dist/composition/proposed-bridges.d.ts +51 -13
- package/dist/composition/proposed-bridges.d.ts.map +1 -1
- package/dist/composition/proposed-bridges.js +110 -58
- package/dist/composition/proposed-bridges.js.map +1 -1
- package/dist/composition/quantities.d.ts +0 -4
- package/dist/composition/quantities.d.ts.map +1 -1
- package/dist/composition/quantities.js +5 -5
- package/dist/composition/quantities.js.map +1 -1
- package/dist/composition/quantity-clusters.d.ts +48 -0
- package/dist/composition/quantity-clusters.d.ts.map +1 -0
- package/dist/composition/quantity-clusters.js +98 -0
- package/dist/composition/quantity-clusters.js.map +1 -0
- package/dist/composition/quantity.d.ts +18 -2
- package/dist/composition/quantity.d.ts.map +1 -1
- package/dist/composition/quantity.js +35 -6
- package/dist/composition/quantity.js.map +1 -1
- package/dist/composition/rational-exponent.d.ts +40 -0
- package/dist/composition/rational-exponent.d.ts.map +1 -0
- package/dist/composition/rational-exponent.js +65 -0
- package/dist/composition/rational-exponent.js.map +1 -0
- package/dist/composition/representative-values.d.ts +22 -0
- package/dist/composition/representative-values.d.ts.map +1 -1
- package/dist/composition/representative-values.js +23 -0
- package/dist/composition/representative-values.js.map +1 -1
- package/dist/composition/retrodiction.d.ts +16 -6
- package/dist/composition/retrodiction.d.ts.map +1 -1
- package/dist/composition/retrodiction.js +36 -10
- package/dist/composition/retrodiction.js.map +1 -1
- package/dist/composition/uncertainty.js.map +1 -1
- package/dist/composition/user-equation.d.ts.map +1 -1
- package/dist/composition/user-equation.js +2 -2
- package/dist/composition/user-equation.js.map +1 -1
- package/dist/core/assignment.d.ts +19 -0
- package/dist/core/assignment.d.ts.map +1 -0
- package/dist/core/assignment.js +19 -0
- package/dist/core/assignment.js.map +1 -0
- package/dist/core/axes-registry.d.ts +8 -5
- package/dist/core/axes-registry.d.ts.map +1 -1
- package/dist/core/axes-registry.js.map +1 -1
- package/dist/core/cell.js.map +1 -1
- package/dist/core/compare.d.ts +32 -0
- package/dist/core/compare.d.ts.map +1 -0
- package/dist/core/compare.js +46 -0
- package/dist/core/compare.js.map +1 -0
- package/dist/core/constants.d.ts +35 -35
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +52 -37
- package/dist/core/constants.js.map +1 -1
- package/dist/core/data-file.d.ts +7 -0
- package/dist/core/data-file.d.ts.map +1 -1
- package/dist/core/data-file.js +17 -0
- package/dist/core/data-file.js.map +1 -1
- package/dist/core/flux-rules.js +1 -1
- package/dist/core/flux-rules.js.map +1 -1
- package/dist/core/format.d.ts +36 -0
- package/dist/core/format.d.ts.map +1 -0
- package/dist/core/format.js +39 -0
- package/dist/core/format.js.map +1 -0
- package/dist/core/hash.d.ts +14 -0
- package/dist/core/hash.d.ts.map +1 -0
- package/dist/core/hash.js +17 -0
- package/dist/core/hash.js.map +1 -0
- package/dist/core/json-schema.d.ts +3 -1
- package/dist/core/json-schema.d.ts.map +1 -1
- package/dist/core/json-schema.js +41 -16
- package/dist/core/json-schema.js.map +1 -1
- package/dist/core/labeled-tensor.d.ts +6 -1
- package/dist/core/labeled-tensor.d.ts.map +1 -1
- package/dist/core/labeled-tensor.js +18 -16
- package/dist/core/labeled-tensor.js.map +1 -1
- package/dist/core/mathts-read.d.ts +25 -0
- package/dist/core/mathts-read.d.ts.map +1 -0
- package/dist/core/mathts-read.js +51 -0
- package/dist/core/mathts-read.js.map +1 -0
- package/dist/core/regime-registry.d.ts +6 -2
- package/dist/core/regime-registry.d.ts.map +1 -1
- package/dist/core/regime-registry.js.map +1 -1
- package/dist/core/regime-rule-install.js.map +1 -1
- package/dist/core/regimes-builtins.js.map +1 -1
- package/dist/core/tensor.d.ts +7 -4
- package/dist/core/tensor.d.ts.map +1 -1
- package/dist/core/tensor.js +64 -8
- package/dist/core/tensor.js.map +1 -1
- package/dist/core/types.d.ts +5 -5
- package/dist/core/types.js.map +1 -1
- package/dist/core/universal-index.js.map +1 -1
- package/dist/diff/bridge-ast-gradient.d.ts +4 -5
- package/dist/diff/bridge-ast-gradient.d.ts.map +1 -1
- package/dist/diff/bridge-ast-gradient.js +10 -6
- package/dist/diff/bridge-ast-gradient.js.map +1 -1
- package/dist/diff/bridge-gradient.d.ts +43 -86
- package/dist/diff/bridge-gradient.d.ts.map +1 -1
- package/dist/diff/bridge-gradient.js +40 -109
- package/dist/diff/bridge-gradient.js.map +1 -1
- package/dist/diff/bridge-specs.d.ts +16 -5
- package/dist/diff/bridge-specs.d.ts.map +1 -1
- package/dist/diff/bridge-specs.js +19 -4
- package/dist/diff/bridge-specs.js.map +1 -1
- package/dist/dimensional/algebra.d.ts +18 -0
- package/dist/dimensional/algebra.d.ts.map +1 -1
- package/dist/dimensional/algebra.js +41 -1
- package/dist/dimensional/algebra.js.map +1 -1
- package/dist/dimensional/ast-builders.d.ts +12 -4
- package/dist/dimensional/ast-builders.d.ts.map +1 -1
- package/dist/dimensional/ast-builders.js +17 -5
- package/dist/dimensional/ast-builders.js.map +1 -1
- package/dist/dimensional/ast-leaves.d.ts +81 -0
- package/dist/dimensional/ast-leaves.d.ts.map +1 -0
- package/dist/dimensional/ast-leaves.js +146 -0
- package/dist/dimensional/ast-leaves.js.map +1 -0
- package/dist/dimensional/ast-types.js.map +1 -1
- package/dist/dimensional/bridge-check.js.map +1 -1
- package/dist/dimensional/buckingham.d.ts.map +1 -1
- package/dist/dimensional/buckingham.js +15 -27
- package/dist/dimensional/buckingham.js.map +1 -1
- package/dist/dimensional/connection-validators.d.ts +2 -1
- package/dist/dimensional/connection-validators.d.ts.map +1 -1
- package/dist/dimensional/connection-validators.js.map +1 -1
- package/dist/dimensional/connection.js.map +1 -1
- package/dist/dimensional/constant-rows.d.ts.map +1 -1
- package/dist/dimensional/constant-rows.js +17 -13
- package/dist/dimensional/constant-rows.js.map +1 -1
- package/dist/dimensional/constants.d.ts +5 -6
- package/dist/dimensional/constants.d.ts.map +1 -1
- package/dist/dimensional/constants.js +5 -6
- package/dist/dimensional/constants.js.map +1 -1
- package/dist/dimensional/curvature-composite.js.map +1 -1
- package/dist/dimensional/curvature-invariants.js.map +1 -1
- package/dist/dimensional/curvature.js.map +1 -1
- package/dist/dimensional/dimension-inference.d.ts.map +1 -1
- package/dist/dimensional/dimension-inference.js +1 -2
- package/dist/dimensional/dimension-inference.js.map +1 -1
- package/dist/dimensional/dimension-spec.d.ts +13 -7
- package/dist/dimensional/dimension-spec.d.ts.map +1 -1
- package/dist/dimensional/dimension-spec.js +49 -23
- package/dist/dimensional/dimension-spec.js.map +1 -1
- package/dist/dimensional/einstein-equation.js.map +1 -1
- package/dist/dimensional/errors.d.ts +4 -2
- package/dist/dimensional/errors.d.ts.map +1 -1
- package/dist/dimensional/errors.js +3 -17
- package/dist/dimensional/errors.js.map +1 -1
- package/dist/dimensional/exact-scale.d.ts +0 -17
- package/dist/dimensional/exact-scale.d.ts.map +1 -1
- package/dist/dimensional/exact-scale.js +8 -8
- package/dist/dimensional/exact-scale.js.map +1 -1
- package/dist/dimensional/field-equation-helpers.js.map +1 -1
- package/dist/dimensional/formula-names.js.map +1 -1
- package/dist/dimensional/fresh-label.js.map +1 -1
- package/dist/dimensional/friedmann-equation.d.ts +3 -3
- package/dist/dimensional/friedmann-equation.js +3 -3
- package/dist/dimensional/friedmann-equation.js.map +1 -1
- package/dist/dimensional/gauge-field.d.ts +2 -3
- package/dist/dimensional/gauge-field.d.ts.map +1 -1
- package/dist/dimensional/gauge-field.js +2 -3
- package/dist/dimensional/gauge-field.js.map +1 -1
- package/dist/dimensional/hyphen-names.d.ts +12 -2
- package/dist/dimensional/hyphen-names.d.ts.map +1 -1
- package/dist/dimensional/hyphen-names.js +45 -12
- package/dist/dimensional/hyphen-names.js.map +1 -1
- package/dist/dimensional/killing-validators.js.map +1 -1
- package/dist/dimensional/klein-gordon-equation.js.map +1 -1
- package/dist/dimensional/metric-validators.d.ts +2 -1
- package/dist/dimensional/metric-validators.d.ts.map +1 -1
- package/dist/dimensional/metric-validators.js.map +1 -1
- package/dist/dimensional/metric.d.ts.map +1 -1
- package/dist/dimensional/metric.js +0 -1
- package/dist/dimensional/metric.js.map +1 -1
- package/dist/dimensional/natural-units.js.map +1 -1
- package/dist/dimensional/quantity-registry.d.ts +13 -0
- package/dist/dimensional/quantity-registry.d.ts.map +1 -1
- package/dist/dimensional/quantity-registry.js +14 -6
- package/dist/dimensional/quantity-registry.js.map +1 -1
- package/dist/dimensional/rg-flow.js.map +1 -1
- package/dist/dimensional/stress-energy-validators.js.map +1 -1
- package/dist/dimensional/symbolic-constants.d.ts +9 -0
- package/dist/dimensional/symbolic-constants.d.ts.map +1 -1
- package/dist/dimensional/symbolic-constants.js +20 -3
- package/dist/dimensional/symbolic-constants.js.map +1 -1
- package/dist/dimensional/tensor-trace.js.map +1 -1
- package/dist/dimensional/tensor.js.map +1 -1
- package/dist/dimensional/types.d.ts +36 -0
- package/dist/dimensional/types.d.ts.map +1 -1
- package/dist/dimensional/types.js +45 -7
- package/dist/dimensional/types.js.map +1 -1
- package/dist/dimensional/unit-convention.d.ts +0 -2
- package/dist/dimensional/unit-convention.d.ts.map +1 -1
- package/dist/dimensional/unit-convention.js +2 -2
- package/dist/dimensional/unit-convention.js.map +1 -1
- package/dist/dimensional/unit-data.d.ts.map +1 -1
- package/dist/dimensional/unit-data.js +11 -7
- package/dist/dimensional/unit-data.js.map +1 -1
- package/dist/dimensional/units.d.ts.map +1 -1
- package/dist/dimensional/units.js +38 -20
- package/dist/dimensional/units.js.map +1 -1
- package/dist/dimensional/validator-registry.js.map +1 -1
- package/dist/dimensional/validator.d.ts +0 -16
- package/dist/dimensional/validator.d.ts.map +1 -1
- package/dist/dimensional/validator.js +65 -29
- package/dist/dimensional/validator.js.map +1 -1
- package/dist/dimensional/weyl-validators.js.map +1 -1
- package/dist/index.d.ts +59 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -24
- package/dist/index.js.map +1 -1
- package/dist/numerical/bianchi-residual.js.map +1 -1
- package/dist/numerical/binding-value.d.ts +11 -6
- package/dist/numerical/binding-value.d.ts.map +1 -1
- package/dist/numerical/binding-value.js +126 -122
- package/dist/numerical/binding-value.js.map +1 -1
- package/dist/numerical/christoffel-flat.d.ts.map +1 -1
- package/dist/numerical/christoffel-flat.js +3 -2
- package/dist/numerical/christoffel-flat.js.map +1 -1
- package/dist/numerical/connection-lowering-helpers.js.map +1 -1
- package/dist/numerical/covariant-eikonal.d.ts.map +1 -1
- package/dist/numerical/covariant-eikonal.js +36 -13
- package/dist/numerical/covariant-eikonal.js.map +1 -1
- package/dist/numerical/curvature-lowering-helpers.d.ts +20 -0
- package/dist/numerical/curvature-lowering-helpers.d.ts.map +1 -1
- package/dist/numerical/curvature-lowering-helpers.js +9 -5
- package/dist/numerical/curvature-lowering-helpers.js.map +1 -1
- package/dist/numerical/derivative-lowering.js.map +1 -1
- package/dist/numerical/einstein-equation.js.map +1 -1
- package/dist/numerical/engine-registry.js.map +1 -1
- package/dist/numerical/errors.d.ts +7 -3
- package/dist/numerical/errors.d.ts.map +1 -1
- package/dist/numerical/errors.js +5 -8
- package/dist/numerical/errors.js.map +1 -1
- package/dist/numerical/evaluator-uncertainty.d.ts.map +1 -1
- package/dist/numerical/evaluator-uncertainty.js +19 -2
- package/dist/numerical/evaluator-uncertainty.js.map +1 -1
- package/dist/numerical/finite-difference.d.ts +22 -0
- package/dist/numerical/finite-difference.d.ts.map +1 -0
- package/dist/numerical/finite-difference.js +27 -0
- package/dist/numerical/finite-difference.js.map +1 -0
- package/dist/numerical/formula-contract.d.ts +63 -7
- package/dist/numerical/formula-contract.d.ts.map +1 -1
- package/dist/numerical/formula-contract.js +61 -42
- package/dist/numerical/formula-contract.js.map +1 -1
- package/dist/numerical/formula-dimension.d.ts +8 -7
- package/dist/numerical/formula-dimension.d.ts.map +1 -1
- package/dist/numerical/formula-dimension.js +58 -36
- package/dist/numerical/formula-dimension.js.map +1 -1
- package/dist/numerical/formula-mathts.d.ts.map +1 -1
- package/dist/numerical/formula-mathts.js +5 -2
- package/dist/numerical/formula-mathts.js.map +1 -1
- package/dist/numerical/formula-registry.d.ts +13 -3
- package/dist/numerical/formula-registry.d.ts.map +1 -1
- package/dist/numerical/formula-registry.js +7 -2
- package/dist/numerical/formula-registry.js.map +1 -1
- package/dist/numerical/geodesic-integrator.d.ts.map +1 -1
- package/dist/numerical/geodesic-integrator.js +22 -14
- package/dist/numerical/geodesic-integrator.js.map +1 -1
- package/dist/numerical/geometrized.d.ts.map +1 -1
- package/dist/numerical/geometrized.js +0 -1
- package/dist/numerical/geometrized.js.map +1 -1
- package/dist/numerical/gl4-integrator.d.ts +28 -27
- package/dist/numerical/gl4-integrator.d.ts.map +1 -1
- package/dist/numerical/gl4-integrator.js +41 -42
- package/dist/numerical/gl4-integrator.js.map +1 -1
- package/dist/numerical/grid-field.js.map +1 -1
- package/dist/numerical/index.js.map +1 -1
- package/dist/numerical/input-validation.d.ts +3 -6
- package/dist/numerical/input-validation.d.ts.map +1 -1
- package/dist/numerical/input-validation.js +4 -8
- package/dist/numerical/input-validation.js.map +1 -1
- package/dist/numerical/killing.d.ts +8 -5
- package/dist/numerical/killing.d.ts.map +1 -1
- package/dist/numerical/killing.js.map +1 -1
- package/dist/numerical/klein-gordon.js.map +1 -1
- package/dist/numerical/kretschmann.js.map +1 -1
- package/dist/numerical/lowering-utils.js.map +1 -1
- package/dist/numerical/lowering.d.ts.map +1 -1
- package/dist/numerical/lowering.js +7 -17
- package/dist/numerical/lowering.js.map +1 -1
- package/dist/numerical/mathts-engine.d.ts.map +1 -1
- package/dist/numerical/mathts-engine.js +16 -25
- package/dist/numerical/mathts-engine.js.map +1 -1
- package/dist/numerical/metric-inverse.d.ts.map +1 -1
- package/dist/numerical/metric-inverse.js +83 -46
- package/dist/numerical/metric-inverse.js.map +1 -1
- package/dist/numerical/null-ic.js.map +1 -1
- package/dist/numerical/null-ray-integrator.d.ts +2 -1
- package/dist/numerical/null-ray-integrator.d.ts.map +1 -1
- package/dist/numerical/null-ray-integrator.js +12 -12
- package/dist/numerical/null-ray-integrator.js.map +1 -1
- package/dist/numerical/painleve-gullstrand-metric.js +2 -2
- package/dist/numerical/painleve-gullstrand-metric.js.map +1 -1
- package/dist/numerical/pderiv.d.ts.map +1 -1
- package/dist/numerical/pderiv.js +9 -2
- package/dist/numerical/pderiv.js.map +1 -1
- package/dist/numerical/perihelion-finder.d.ts +0 -36
- package/dist/numerical/perihelion-finder.d.ts.map +1 -1
- package/dist/numerical/perihelion-finder.js +41 -87
- package/dist/numerical/perihelion-finder.js.map +1 -1
- package/dist/numerical/quadrature.d.ts +5 -2
- package/dist/numerical/quadrature.d.ts.map +1 -1
- package/dist/numerical/quadrature.js +19 -4
- package/dist/numerical/quadrature.js.map +1 -1
- package/dist/numerical/rk4-trajectory.d.ts +10 -0
- package/dist/numerical/rk4-trajectory.d.ts.map +1 -0
- package/dist/numerical/rk4-trajectory.js +37 -0
- package/dist/numerical/rk4-trajectory.js.map +1 -0
- package/dist/numerical/schwarzschild.d.ts +14 -0
- package/dist/numerical/schwarzschild.d.ts.map +1 -0
- package/dist/numerical/schwarzschild.js +17 -0
- package/dist/numerical/schwarzschild.js.map +1 -0
- package/dist/numerical/spacetime-metrics.d.ts +25 -19
- package/dist/numerical/spacetime-metrics.d.ts.map +1 -1
- package/dist/numerical/spacetime-metrics.js +180 -286
- package/dist/numerical/spacetime-metrics.js.map +1 -1
- package/dist/numerical/statistics.d.ts +24 -0
- package/dist/numerical/statistics.d.ts.map +1 -0
- package/dist/numerical/statistics.js +52 -0
- package/dist/numerical/statistics.js.map +1 -0
- package/dist/numerical/strides.js.map +1 -1
- package/dist/numerical/tensor-engine.d.ts +30 -5
- package/dist/numerical/tensor-engine.d.ts.map +1 -1
- package/dist/numerical/tensor-engine.js +12 -0
- package/dist/numerical/tensor-engine.js.map +1 -1
- package/dist/numerical/types.js.map +1 -1
- package/dist/numerical/weyl-lowering.js.map +1 -1
- package/dist/relations/category.js.map +1 -1
- package/dist/relations/composition-table.d.ts +4 -4
- package/dist/relations/composition-table.js +4 -4
- package/dist/relations/composition-table.js.map +1 -1
- package/dist/relations/conventions.js.map +1 -1
- package/dist/relations/domain-regimes.js.map +1 -1
- package/dist/relations/regime-registration.js.map +1 -1
- package/dist/relations/regime-vocabularies.js.map +1 -1
- package/dist/relations/regime.d.ts +28 -8
- package/dist/relations/regime.d.ts.map +1 -1
- package/dist/relations/regime.js +44 -15
- package/dist/relations/regime.js.map +1 -1
- package/dist/relations/types.d.ts +18 -5
- package/dist/relations/types.d.ts.map +1 -1
- package/dist/relations/types.js +5 -3
- package/dist/relations/types.js.map +1 -1
- package/package.json +16 -20
- package/dist/bridges/registry.d.ts +0 -60
- package/dist/bridges/registry.d.ts.map +0 -1
- package/dist/bridges/registry.js +0 -87
- package/dist/bridges/registry.js.map +0 -1
- package/dist/cli/poster-source.d.ts +0 -154
- package/dist/cli/poster-source.d.ts.map +0 -1
- package/dist/cli/poster-source.js +0 -184
- package/dist/cli/poster-source.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bridges/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,GACX,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bridges/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGtD,iEAAiE;AACjE,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB;;;;;;;;GAQG;AACH,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,wBAAwB,EACxB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,yDAAyD;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,8DAA8D;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,wCAAwC;AACxC,eAAO,MAAM,gBAAgB,EAAE,SAAS,mBAAmB,EAAqB,CAAC"}
|
package/dist/bridges/index.js
CHANGED
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Bridge catalog projection.
|
|
2
|
+
* Bridge catalog projection. The rows are loaded from
|
|
3
3
|
* `data/bridge-catalog.json`. This module does not declare an equation.
|
|
4
4
|
*
|
|
5
5
|
* @module bridges
|
|
6
6
|
*/
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
import { catalogEntries } from './catalog-load.js';
|
|
8
|
+
/**
|
|
9
|
+
* Derived constants of the catalog's closed forms, re-exported for callers
|
|
10
|
+
* who want the number by name. A catalog expression reads `m_p` and
|
|
11
|
+
* `sigma_T` through the constant registry (`dimensional/constant-rows.ts`),
|
|
12
|
+
* which carries `M_PROTON_SI`, `THOMSON_CROSS_SECTION_SI` and
|
|
13
|
+
* `LANE_EMDEN_OMEGA3`; the von Klitzing, Josephson, Lorenz and BCS-gap
|
|
14
|
+
* values are not read by any expression and are the catalog's documented
|
|
15
|
+
* reference numbers.
|
|
16
|
+
*/
|
|
10
17
|
export { BCS_GAP_RATIO, JOSEPHSON_CONSTANT_SI, LANE_EMDEN_OMEGA3, LORENZ_NUMBER_SI, M_PROTON_SI, THOMSON_CROSS_SECTION_SI, VON_KLITZING_SI, } from '../core/constants.js';
|
|
11
18
|
/** Thrown when two carrier roles have opposite signs. */
|
|
12
19
|
export { CarrierSignError } from './carrier-sign.js';
|
|
13
|
-
|
|
14
|
-
|
|
20
|
+
/** Thrown when a caller input names a registered constant. */
|
|
21
|
+
export { ConstantInputError } from './evaluation-errors.js';
|
|
22
|
+
/** Catalog rows in id order. @public */
|
|
15
23
|
export const BRIDGE_EQUATIONS = catalogEntries();
|
|
16
|
-
/** The regime recorded on a catalog row, when the row has one. */
|
|
17
|
-
export function catalogRegime(id) {
|
|
18
|
-
return catalogEntry(id)?.regime;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Dimensionless groups at the points the gravitational confrontations used.
|
|
22
|
-
* Keys are catalog ids. Values are group formula → number.
|
|
23
|
-
*/
|
|
24
|
-
export const SPINE_CONFRONTATION_POINTS = bridgeCatalog().spine;
|
|
25
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bridges/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bridges/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAWnD;;;;;;;;GAQG;AACH,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,wBAAwB,EACxB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,yDAAyD;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,8DAA8D;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAmC,cAAc,EAAE,CAAC","sourcesContent":["/**\n * Bridge catalog projection. The rows are loaded from\n * `data/bridge-catalog.json`. This module does not declare an equation.\n *\n * @module bridges\n */\n\nimport type { BridgeEquationEntry } from './types.js';\nimport { catalogEntries } from './catalog-load.js';\n\n/** The catalog row and its status, issue and severity unions. */\nexport type {\n BridgeEquationEntry,\n BridgeEquationStatus,\n BridgeIssueFixable,\n BridgeIssueSeverity,\n KnownIssue,\n} from './types.js';\n\n/**\n * Derived constants of the catalog's closed forms, re-exported for callers\n * who want the number by name. A catalog expression reads `m_p` and\n * `sigma_T` through the constant registry (`dimensional/constant-rows.ts`),\n * which carries `M_PROTON_SI`, `THOMSON_CROSS_SECTION_SI` and\n * `LANE_EMDEN_OMEGA3`; the von Klitzing, Josephson, Lorenz and BCS-gap\n * values are not read by any expression and are the catalog's documented\n * reference numbers.\n */\nexport {\n BCS_GAP_RATIO,\n JOSEPHSON_CONSTANT_SI,\n LANE_EMDEN_OMEGA3,\n LORENZ_NUMBER_SI,\n M_PROTON_SI,\n THOMSON_CROSS_SECTION_SI,\n VON_KLITZING_SI,\n} from '../core/constants.js';\n/** Thrown when two carrier roles have opposite signs. */\nexport { CarrierSignError } from './carrier-sign.js';\n/** Thrown when a caller input names a registered constant. */\nexport { ConstantInputError } from './evaluation-errors.js';\n\n/** Catalog rows in id order. @public */\nexport const BRIDGE_EQUATIONS: readonly BridgeEquationEntry[] = catalogEntries();\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-contract.js","sourceRoot":"","sources":["../../src/bridges/input-contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"input-contract.js","sourceRoot":"","sources":["../../src/bridges/input-contract.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * The one check of a binding record against an id's declared inputs.\n *\n * Every evaluation runs it before any domain check: `evaluateRelation`, the\n * CLI's `upt evaluate`, an evaluator's `run`, the uncertainty probes that\n * call `run`, and an applied case. It refuses an unknown key, a non-number, a\n * number that is not finite and a key given twice, converts a declared\n * alternate onto its key, and names every absent required input, in that\n * order.\n *\n * A spelling binds one slot. {@link inputContract} builds a contract and\n * refuses one whose spellings or alternates name two slots, so an ambiguous\n * key fails when the contract is built, not when a caller happens to use it.\n *\n * What is required depends on what the caller asks for. A slot is read by the\n * value (it owns a source of the relation) or only by the extra outputs. A\n * caller who wants the value alone (`evaluateRelation`, the graph edge) need\n * not give an output-only input; a caller who wants every output must.\n *\n * @module bridges/input-contract\n */\n\nimport {\n DuplicateInputError,\n InputTypeError,\n MissingInputError,\n NonFiniteInputError,\n UnknownInputError,\n} from './evaluation-errors.js';\n\n/** A second key that converts into a slot's key by a factor. @public */\nexport interface ContractAlternate {\n readonly key: string;\n readonly toKey: number;\n}\n\n/** One declared input: the key the evaluation reads, and every spelling that binds it. @public */\nexport interface InputSlot {\n readonly key: string;\n /** Spellings that bind this slot as given (the key, its quantity, its source and aliases). */\n readonly spellings: readonly string[];\n readonly alternates: readonly ContractAlternate[];\n readonly optional: boolean;\n /** `'value'` when the relation's value reads this slot; `'outputs'` when only an extra output does. */\n readonly readBy: 'value' | 'outputs';\n /** Listed in a message as one of \"the inputs\". A constant a caller may override is not. */\n readonly listed: boolean;\n}\n\n/** What the caller wants back: the relation's value alone, or the value and every extra output. @public */\nexport type EvaluationWant = 'value' | 'all';\n\n/** The declared inputs of one id. @public */\nexport interface InputContract {\n readonly id: string;\n readonly slots: readonly InputSlot[];\n}\n\n/** Spelling → the slot it binds and the factor onto the slot's key. */\ntype SpellingIndex = ReadonlyMap<string, { readonly slot: InputSlot; readonly factor: number }>;\n\nconst INDEX = new WeakMap<InputContract, SpellingIndex>();\n\n/**\n * Every spelling and alternate of `contract`, each onto its one slot.\n * @throws Error when one spelling names two slots.\n */\nfunction spellingIndex(contract: InputContract): SpellingIndex {\n const cached = INDEX.get(contract);\n if (cached !== undefined) return cached;\n const index = new Map<string, { slot: InputSlot; factor: number }>();\n const bind = (spelling: string, slot: InputSlot, factor: number): void => {\n const earlier = index.get(spelling);\n if (earlier !== undefined && earlier.slot !== slot) {\n throw new Error(\n `${contract.id}: input contract spells '${spelling}' for both '${earlier.slot.key}' and '${slot.key}'`,\n );\n }\n if (earlier === undefined) index.set(spelling, { slot, factor });\n };\n for (const slot of contract.slots) for (const spelling of slot.spellings) bind(spelling, slot, 1);\n for (const slot of contract.slots) for (const alt of slot.alternates) bind(alt.key, slot, alt.toKey);\n INDEX.set(contract, index);\n return index;\n}\n\n/**\n * A contract for `id` with `slots`, checked once here: every spelling and\n * alternate binds exactly one slot.\n *\n * @throws Error when a spelling or an alternate names two slots.\n * @public\n */\nexport function inputContract(id: string, slots: readonly InputSlot[]): InputContract {\n const contract: InputContract = { id, slots };\n spellingIndex(contract);\n return contract;\n}\n\n/**\n * `bindings` keyed by slot key, after the contract's checks.\n *\n * @throws UnknownInputError a key no slot spells.\n * @throws InputTypeError a value that is not a number.\n * @throws NonFiniteInputError a number that is `NaN`, `Infinity` or `-Infinity`.\n * @throws DuplicateInputError one slot bound under two spellings.\n * @throws MissingInputError a required slot left unbound (every one is named).\n * With `want` `'value'`, a slot only an extra output reads is not required.\n */\nexport function checkInputs(\n contract: InputContract,\n bindings: Readonly<Record<string, unknown>>,\n want: EvaluationWant = 'all',\n): Record<string, number> {\n const listed = contract.slots.filter((slot) => slot.listed).map((slot) => slot.key);\n const bySpelling = spellingIndex(contract);\n const out: Record<string, number> = {};\n const givenAs = new Map<string, string>();\n for (const [key, value] of Object.entries(bindings)) {\n const found = bySpelling.get(key);\n if (found === undefined) throw new UnknownInputError(contract.id, key, listed);\n if (typeof value !== 'number') throw new InputTypeError(contract.id, key, typeof value);\n if (!Number.isFinite(value)) throw new NonFiniteInputError(contract.id, key, value);\n const earlier = givenAs.get(found.slot.key);\n if (earlier !== undefined) throw new DuplicateInputError(contract.id, found.slot.key, [earlier, key]);\n givenAs.set(found.slot.key, key);\n out[found.slot.key] = value * found.factor;\n }\n const required = (slot: InputSlot): boolean => !slot.optional && (want === 'all' || slot.readBy === 'value');\n const missing = contract.slots.filter((slot) => required(slot) && !givenAs.has(slot.key)).map((slot) => slot.key);\n if (missing.length > 0) throw new MissingInputError(contract.id, missing, listed);\n return out;\n}\n"]}
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* not yet graph-encoded — the `bridges: [a, b]` tuple is the proxy.
|
|
9
9
|
*
|
|
10
10
|
* Adjudication precedence (design r2-4): the negative catalog
|
|
11
|
-
* (`
|
|
11
|
+
* (the `rejections` ledger of `data/bridge-catalog.json`, projected by
|
|
12
|
+
* `rejected.ts`) overlays the tuple proxy — an id listed there is
|
|
12
13
|
* `'not-a-bridge'` regardless of its tuple (the repo's
|
|
13
14
|
* `['unknown','unknown']` convention historically marked NOT-A-BRIDGE
|
|
14
15
|
* entries, so the tuple alone cannot distinguish "rejected" from
|
|
@@ -18,6 +19,7 @@
|
|
|
18
19
|
* @module bridges/membership
|
|
19
20
|
*/
|
|
20
21
|
import type { BridgeEquationEntry } from './index.js';
|
|
22
|
+
import { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS, type RejectedBridgeAdjudication } from './rejected.js';
|
|
21
23
|
/** Adjudication verdict for a catalog entry. @public */
|
|
22
24
|
export type BridgeVerdict = 'bridge' | 'not-a-bridge' | 'unadjudicated';
|
|
23
25
|
/**
|
|
@@ -39,6 +41,6 @@ export interface CatalogAdjudicationReport {
|
|
|
39
41
|
* @public
|
|
40
42
|
*/
|
|
41
43
|
export declare function adjudicateCatalog(catalog: ReadonlyArray<BridgeEquationEntry>): CatalogAdjudicationReport;
|
|
42
|
-
export { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS }
|
|
43
|
-
export type { RejectedBridgeAdjudication }
|
|
44
|
+
export { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS };
|
|
45
|
+
export type { RejectedBridgeAdjudication };
|
|
44
46
|
//# sourceMappingURL=membership.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"membership.d.ts","sourceRoot":"","sources":["../../src/bridges/membership.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"membership.d.ts","sourceRoot":"","sources":["../../src/bridges/membership.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,KAAK,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAEpH,wDAAwD;AACxD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,cAAc,GAAG,eAAe,CAAC;AAExE;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,mBAAmB,GAAG,aAAa,CAK/E;AAED,iDAAiD;AACjD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC/C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,aAAa,CAAC,mBAAmB,CAAC,GAC1C,yBAAyB,CAW3B;AAGD,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,CAAC;AAC9D,YAAY,EAAE,0BAA0B,EAAE,CAAC"}
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* not yet graph-encoded — the `bridges: [a, b]` tuple is the proxy.
|
|
9
9
|
*
|
|
10
10
|
* Adjudication precedence (design r2-4): the negative catalog
|
|
11
|
-
* (`
|
|
11
|
+
* (the `rejections` ledger of `data/bridge-catalog.json`, projected by
|
|
12
|
+
* `rejected.ts`) overlays the tuple proxy — an id listed there is
|
|
12
13
|
* `'not-a-bridge'` regardless of its tuple (the repo's
|
|
13
14
|
* `['unknown','unknown']` convention historically marked NOT-A-BRIDGE
|
|
14
15
|
* entries, so the tuple alone cannot distinguish "rejected" from
|
|
@@ -17,7 +18,7 @@
|
|
|
17
18
|
*
|
|
18
19
|
* @module bridges/membership
|
|
19
20
|
*/
|
|
20
|
-
import { REJECTED_BRIDGE_IDS } from './rejected.js';
|
|
21
|
+
import { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS } from './rejected.js';
|
|
21
22
|
/**
|
|
22
23
|
* Apply the membership criterion to one catalog entry (tuple proxy +
|
|
23
24
|
* rejected-registry overlay).
|
|
@@ -52,8 +53,6 @@ export function adjudicateCatalog(catalog) {
|
|
|
52
53
|
}
|
|
53
54
|
return { bridges, notABridges, unadjudicated };
|
|
54
55
|
}
|
|
55
|
-
// Re-exports: the negative catalog travels with the criterion it
|
|
56
|
-
|
|
57
|
-
// barrel indirection).
|
|
58
|
-
export { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS } from './rejected.js';
|
|
56
|
+
// Re-exports: the negative catalog travels with the criterion it overlays.
|
|
57
|
+
export { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS };
|
|
59
58
|
//# sourceMappingURL=membership.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"membership.js","sourceRoot":"","sources":["../../src/bridges/membership.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"membership.js","sourceRoot":"","sources":["../../src/bridges/membership.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAmC,MAAM,eAAe,CAAC;AAKpH;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAA0B;IAC9D,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAAE,OAAO,cAAc,CAAC;IAC7D,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,eAAe,CAAC;IAC/D,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC7C,CAAC;AASD;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAA2C;IAE3C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,OAAO,KAAK,QAAQ;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aAC5C,IAAI,OAAO,KAAK,cAAc;YAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;;YAC3D,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACjD,CAAC;AAED,2EAA2E;AAC3E,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,CAAC","sourcesContent":["/**\n * Bridge-membership criterion (v0.8.0 G-2) — the computable form.\n *\n * **Criterion:** *a bridge is an edge whose endpoint quantities differ\n * in at least one regime attribute; a law is an edge whose endpoints\n * share all stated regime attributes.* For graph edges this is\n * `regimesDiffer` (src/composition/quantity.ts). For catalog entries —\n * not yet graph-encoded — the `bridges: [a, b]` tuple is the proxy.\n *\n * Adjudication precedence (design r2-4): the negative catalog\n * (the `rejections` ledger of `data/bridge-catalog.json`, projected by\n * `rejected.ts`) overlays the tuple proxy — an id listed there is\n * `'not-a-bridge'` regardless of its tuple (the repo's\n * `['unknown','unknown']` convention historically marked NOT-A-BRIDGE\n * entries, so the tuple alone cannot distinguish \"rejected\" from\n * \"never adjudicated\"). Only after the overlay does an\n * `'unknown'`-containing tuple mean `'unadjudicated'`.\n *\n * @module bridges/membership\n */\n\nimport type { BridgeEquationEntry } from './index.js';\nimport { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS, type RejectedBridgeAdjudication } from './rejected.js';\n\n/** Adjudication verdict for a catalog entry. @public */\nexport type BridgeVerdict = 'bridge' | 'not-a-bridge' | 'unadjudicated';\n\n/**\n * Apply the membership criterion to one catalog entry (tuple proxy +\n * rejected-registry overlay).\n *\n * @public\n */\nexport function adjudicateBridgeEntry(entry: BridgeEquationEntry): BridgeVerdict {\n if (REJECTED_BRIDGE_IDS.has(entry.id)) return 'not-a-bridge';\n const [a, b] = entry.bridges;\n if (a === 'unknown' || b === 'unknown') return 'unadjudicated';\n return a === b ? 'not-a-bridge' : 'bridge';\n}\n\n/** Whole-catalog adjudication report. @public */\nexport interface CatalogAdjudicationReport {\n readonly bridges: ReadonlyArray<number>;\n readonly notABridges: ReadonlyArray<number>;\n readonly unadjudicated: ReadonlyArray<number>;\n}\n\n/**\n * Adjudicate every entry of a catalog under the membership criterion.\n *\n * @public\n */\nexport function adjudicateCatalog(\n catalog: ReadonlyArray<BridgeEquationEntry>,\n): CatalogAdjudicationReport {\n const bridges: number[] = [];\n const notABridges: number[] = [];\n const unadjudicated: number[] = [];\n for (const entry of catalog) {\n const verdict = adjudicateBridgeEntry(entry);\n if (verdict === 'bridge') bridges.push(entry.id);\n else if (verdict === 'not-a-bridge') notABridges.push(entry.id);\n else unadjudicated.push(entry.id);\n }\n return { bridges, notABridges, unadjudicated };\n}\n\n// Re-exports: the negative catalog travels with the criterion it overlays.\nexport { REJECTED_BRIDGE_ADJUDICATIONS, REJECTED_BRIDGE_IDS };\nexport type { RejectedBridgeAdjudication };\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notices.d.ts","sourceRoot":"","sources":["../../src/bridges/notices.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"notices.d.ts","sourceRoot":"","sources":["../../src/bridges/notices.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1D,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,EAAE,CAQnE"}
|
package/dist/bridges/notices.js
CHANGED
|
@@ -6,16 +6,16 @@
|
|
|
6
6
|
* @module bridges/notices
|
|
7
7
|
*/
|
|
8
8
|
import { constantNotes } from '../dimensional/symbolic-constants.js';
|
|
9
|
-
|
|
10
|
-
function identifiers(expression) {
|
|
11
|
-
return [...new Set(expression.match(/[A-Za-z_][A-Za-z0-9_]*/g) ?? [])];
|
|
12
|
-
}
|
|
9
|
+
import { expressionNames } from './expr-parse.js';
|
|
13
10
|
/** The caveats to print beside `relation`'s value. @internal */
|
|
14
11
|
export function relationNotices(relation) {
|
|
15
12
|
const notes = [];
|
|
16
13
|
if (relation.notice !== undefined)
|
|
17
14
|
notes.push(relation.notice.text);
|
|
18
|
-
|
|
15
|
+
// The names are read after the kebab rewrite: a bare identifier regex read be-39's
|
|
16
|
+
// `truncation-coefficient-b` as the constant `b`. A `reduced-planck-constant` spelling is
|
|
17
|
+
// `hbar` (tests/bridges/expression-names.test.ts).
|
|
18
|
+
for (const note of constantNotes(expressionNames(relation.expression)))
|
|
19
19
|
notes.push(`note: ${note}`);
|
|
20
20
|
return notes;
|
|
21
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notices.js","sourceRoot":"","sources":["../../src/bridges/notices.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"notices.js","sourceRoot":"","sources":["../../src/bridges/notices.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,gEAAgE;AAChE,MAAM,UAAU,eAAe,CAAC,QAAyB;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpE,mFAAmF;IACnF,0FAA0F;IAC1F,mDAAmD;IACnD,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACpG,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["/**\n * The caveats printed beside a relation's value: the record's own notice, and\n * the note of every registered constant its expression names. No caller\n * switches on a notice; the text is the record's or the constant's.\n *\n * @module bridges/notices\n */\n\nimport { constantNotes } from '../dimensional/symbolic-constants.js';\nimport type { CatalogRelation } from './catalog-types.js';\nimport { expressionNames } from './expr-parse.js';\n\n/** The caveats to print beside `relation`'s value. @internal */\nexport function relationNotices(relation: CatalogRelation): string[] {\n const notes: string[] = [];\n if (relation.notice !== undefined) notes.push(relation.notice.text);\n // The names are read after the kebab rewrite: a bare identifier regex read be-39's\n // `truncation-coefficient-b` as the constant `b`. A `reduced-planck-constant` spelling is\n // `hbar` (tests/bridges/expression-names.test.ts).\n for (const note of constantNotes(expressionNames(relation.expression))) notes.push(`note: ${note}`);\n return notes;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/bridges/observations/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwKH,kEAAkE;AAClE,MAAM,UAAU,eAAe,CAAC,SAAiB,EAAE,QAAgB,EAAE,KAAa;IAChF,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,UAAU,CAAC,+CAA+C,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC;AAChD,CAAC;AAeD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,CAAyD;IAEzD,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,UAAU,CAAC,6DAA6D,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;IACtE,MAAM,cAAc,GAAG,CAAC,CAAC,eAAe,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,MAAM,UAAU,GAAG,oCAA6C,CAAC;IACjE,IAAI,CAAC,CAAC,WAAW,KAAK,aAAa,EAAE,CAAC;QACpC,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,UAAU,CAAC,iEAAiE,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,kCAAkC,EAAE,WAAW,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;IAChJ,CAAC;IACD,OAAO;QACL,kBAAkB;QAClB,UAAU;QACV,cAAc;QACd,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC;QACvE,WAAW,EAAE,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,cAAc;KAC7F,CAAC;AACJ,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,mBAAmB,CAAC,UAAqC;IACvE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,UAAU,CAAC,kDAAkD,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/bridges/observations/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwKH,kEAAkE;AAClE,MAAM,UAAU,eAAe,CAAC,SAAiB,EAAE,QAAgB,EAAE,KAAa;IAChF,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,UAAU,CAAC,+CAA+C,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC;AAChD,CAAC;AAeD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,CAAyD;IAEzD,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,UAAU,CAAC,6DAA6D,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;IACtE,MAAM,cAAc,GAAG,CAAC,CAAC,eAAe,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,MAAM,UAAU,GAAG,oCAA6C,CAAC;IACjE,IAAI,CAAC,CAAC,WAAW,KAAK,aAAa,EAAE,CAAC;QACpC,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,UAAU,CAAC,iEAAiE,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,kCAAkC,EAAE,WAAW,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;IAChJ,CAAC;IACD,OAAO;QACL,kBAAkB;QAClB,UAAU;QACV,cAAc;QACd,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC;QACvE,WAAW,EAAE,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,cAAc;KAC7F,CAAC;AACJ,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,mBAAmB,CAAC,UAAqC;IACvE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,UAAU,CAAC,kDAAkD,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC","sourcesContent":["/**\n * Typed observation + confrontation-outcome layer for `upt confront`.\n * The outcome is a discriminated union on `kind` so each confrontation\n * carries only the fields it can honestly populate (no NaN placeholders).\n *\n * @module bridges/observations/types\n */\n\n/** Provenance every observation record must carry. @public */\nexport interface ObservationProvenance {\n /** Paper + locus, e.g. \"Bertotti-Iess-Tortora 2003, Nature 425:374\". */\n readonly citation: string;\n readonly year: number;\n /** ISO date the value was transcribed into the repo. */\n readonly retrieved: string;\n /** Caveats: what was digitized, unit conversions, model conventions. */\n readonly note?: string;\n}\n\n/** One named uncertainty component (e.g. statistical vs systematic). @public */\nexport interface SigmaComponent {\n readonly label: string;\n readonly value: number;\n}\n\n/** How the observation constrains the prediction. @public */\nexport type ObservationKind = 'value' | 'upper-bound' | 'consistency' | 'table';\n\n/**\n * Where in this repository the support for a recorded statement is written:\n * a path from the repository root, and either a verbatim `quote` that must\n * occur in that file or a `symbol` the file must declare. A reference that\n * resolves shows only that the cited text exists; it does not show that the\n * statement it supports is true, nor that the text covers every clause.\n *\n * @public\n */\nexport type SourceRef =\n | { readonly file: string; readonly quote: string }\n | { readonly file: string; readonly symbol: string };\n\n/** One or more references; a statement is never sourced by nothing. @public */\nexport type SourceRefs = readonly [SourceRef, ...SourceRef[]];\n\n/**\n * What was done to the source's number before it reached the comparison\n * (averaging, selection, conversion, encoding of a stated agreement).\n * `source` names what supports the statement. `not-recorded` means the record\n * states nothing — it is not \"no preprocessing\".\n *\n * @public\n */\nexport type ConfrontationPreprocessing =\n | { readonly state: 'recorded'; readonly statement: string; readonly source: SourceRefs }\n | { readonly state: 'not-recorded' };\n\n/**\n * Whether the prediction is independent of the measurement it is compared\n * with. Separate from goodness of fit: a record can agree within 1σ and still\n * share an input with its prediction. `no-fitted-parameter`: the prediction\n * takes no parameter fitted to this measurement. `shares-input`: prediction\n * and observation share `shared` (a constant, calibration, baseline, or the\n * value itself). `not-recorded`: the record states neither.\n *\n * @public\n */\nexport type ConfrontationIndependence =\n | { readonly state: 'no-fitted-parameter'; readonly statement: string; readonly source: SourceRefs }\n | {\n readonly state: 'shares-input';\n readonly shared: string;\n readonly statement: string;\n readonly source: SourceRefs;\n }\n | { readonly state: 'not-recorded' };\n\n/** Data-handling fields every confrontation outcome carries. @public */\nexport interface ConfrontationDataHandling {\n readonly preprocessing: ConfrontationPreprocessing;\n readonly independence: ConfrontationIndependence;\n}\n\n/**\n * Normalized confrontation result — discriminated on `kind`. Each arm\n * carries only the fields it can honestly populate.\n *\n * @public\n */\nexport type ConfrontationOutcome = ConfrontationDataHandling & (\n | {\n readonly kind: 'value';\n readonly predicted: number;\n readonly observed: number;\n readonly sigma: number;\n readonly residualInSigma: number;\n readonly withinObserved: boolean;\n readonly units: string;\n readonly provenance: ObservationProvenance;\n /**\n * Present when `observed` is DERIVED from a different measured quantity\n * rather than measured itself. BE-51's \"observed\" deflection is the\n * prediction times (1 + γ)/2: VLBI measured γ, not a solar-limb\n * deflection to 16 digits. The report shows this measurement, and labels\n * `observed` as derived by `derivation`.\n */\n readonly measured?: {\n readonly quantity: string;\n readonly value: number;\n readonly sigma: number;\n readonly source: string;\n readonly derivation: string;\n };\n }\n | {\n readonly kind: 'upper-bound';\n readonly predicted: number;\n /** The observed upper limit. */\n readonly bound: number;\n readonly satisfied: boolean;\n /**\n * What `predicted` is. `'point'` (the default when absent): a predicted\n * value, satisfied when it lies at or below the observed limit.\n * `'encoded-bound'`: the bridge's own claim is a range `|x| ≤ predicted`,\n * satisfied when the observed limit lies inside it (BE-36). The two are\n * different comparisons and are displayed as such.\n */\n readonly predictedIs?: 'point' | 'encoded-bound';\n /**\n * Optional honesty caveat surfaced in the confront summary line — e.g. a\n * one-sided pass where only part of an asymmetric observed interval was\n * tested against a symmetric encoded bound (BE-36).\n */\n readonly caveat?: string;\n readonly units: string;\n readonly provenance: ObservationProvenance;\n }\n | {\n readonly kind: 'consistency';\n readonly predicted: number;\n readonly approaches: number;\n /** Holds what `fractionalGapIs` says; the name predates that split. */\n readonly fractionalGap: number;\n /**\n * `'agreement-bound'`: `fractionalGap` is the record's stated tolerance\n * on |observed − predicted|/|predicted|, NOT a measured difference.\n * `'observed-difference'`: it is the difference itself, and the outcome\n * carries no agreement bound. `consistencyComparison` computes the\n * difference either way.\n */\n readonly fractionalGapIs: 'agreement-bound' | 'observed-difference';\n /**\n * What `predicted` is. `'reference'` (the default when absent): a reference value the\n * observation is compared with. `'lower-limit'`: the bridge claims the range\n * `x ≥ predicted` (BE-21's KSS bound η/s ≥ 1/(4π)), decided by observed ≥ predicted. A lower\n * limit carries no agreement bound, so it requires `fractionalGapIs: 'observed-difference'`.\n */\n readonly predictedIs?: 'reference' | 'lower-limit';\n readonly units: string;\n readonly provenance: ObservationProvenance;\n }\n | {\n readonly kind: 'table';\n readonly rows: ReadonlyArray<{\n readonly label: string;\n readonly predicted: number;\n readonly observed: number;\n readonly sigma: number;\n readonly residualInSigma: number;\n }>;\n readonly units: string;\n readonly provenance: ObservationProvenance;\n }\n);\n\n/** |predicted − observed| in units of the observed 1σ. @public */\nexport function residualInSigma(predicted: number, observed: number, sigma: number): number {\n if (!(Number.isFinite(sigma) && sigma > 0)) {\n throw new RangeError('residualInSigma: sigma must be finite and > 0');\n }\n return Math.abs(predicted - observed) / sigma;\n}\n\n/** A consistency outcome's actual difference, kept apart from its agreement bound. @public */\nexport interface ConsistencyComparison {\n /** (observed − predicted) / predicted, signed; \"observed\" is the outcome's `approaches`. */\n readonly relativeDifference: number;\n readonly definition: '(observed − predicted) / predicted';\n /** The record's stated tolerance on |relativeDifference|; null when the outcome carries none. */\n readonly agreementBound: number | null;\n /** The rule the decision applies; null when the outcome states none. */\n readonly rule: '|difference| ≤ agreement bound' | 'observed ≥ predicted lower limit' | null;\n /** The decision under `rule`: compatible (true) or not (false); null when there is no rule. */\n readonly withinBound: boolean | null;\n}\n\n/**\n * The actual difference of a consistency outcome, computed from its own\n * predicted and observed values, and the compatibility decision: against its\n * agreement bound when it has one, or observed ≥ predicted when the prediction\n * is a lower limit.\n *\n * @public\n */\nexport function consistencyComparison(\n o: Extract<ConfrontationOutcome, { kind: 'consistency' }>,\n): ConsistencyComparison {\n if (!(Number.isFinite(o.predicted) && o.predicted !== 0)) {\n throw new RangeError('consistencyComparison: predicted must be finite and nonzero');\n }\n const relativeDifference = (o.approaches - o.predicted) / o.predicted;\n const agreementBound = o.fractionalGapIs === 'agreement-bound' ? o.fractionalGap : null;\n const definition = '(observed − predicted) / predicted' as const;\n if (o.predictedIs === 'lower-limit') {\n if (agreementBound !== null) {\n throw new RangeError('consistencyComparison: a lower limit carries no agreement bound');\n }\n return { relativeDifference, definition, agreementBound, rule: 'observed ≥ predicted lower limit', withinBound: o.approaches >= o.predicted };\n }\n return {\n relativeDifference,\n definition,\n agreementBound,\n rule: agreementBound === null ? null : '|difference| ≤ agreement bound',\n withinBound: agreementBound === null ? null : Math.abs(relativeDifference) <= agreementBound,\n };\n}\n\n/** Combined 1σ from named components (root-sum-square). @public */\nexport function combineInQuadrature(components: readonly SigmaComponent[]): number {\n if (components.length === 0) {\n throw new RangeError('combineInQuadrature: need at least one component');\n }\n return Math.sqrt(components.reduce((acc, c) => acc + c.value * c.value, 0));\n}\n"]}
|
|
@@ -1,19 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Negative catalog
|
|
3
|
-
*
|
|
2
|
+
* Negative catalog — NOT-A-BRIDGE adjudications, projected from the
|
|
3
|
+
* `rejections` ledger of `data/bridge-catalog.json`.
|
|
4
4
|
*
|
|
5
|
-
* Each
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* `membership.ts` — an id listed here reports `'not-a-bridge'`
|
|
5
|
+
* Each record is the outcome of applying the graph-native membership
|
|
6
|
+
* criterion (*a bridge is an edge whose endpoint quantities differ in at
|
|
7
|
+
* least one regime attribute*) to a catalog row, with the physics reason and
|
|
8
|
+
* a citation. Rejected rows REMAIN in `BRIDGE_EQUATIONS` (their formulas are
|
|
9
|
+
* still valid physics); this projection is the adjudication overlay
|
|
10
|
+
* `membership.ts` consumes — an id listed here reports `'not-a-bridge'`
|
|
12
11
|
* regardless of its `bridges` tuple (design r2-4 precedence).
|
|
13
12
|
*
|
|
14
|
-
* Recording rejections as data rather than audit-doc prose prevents
|
|
15
|
-
* re-litigation and documents the criterion by counterexample.
|
|
16
|
-
*
|
|
17
13
|
* @module bridges/rejected
|
|
18
14
|
*/
|
|
19
15
|
/** A NOT-A-BRIDGE adjudication record. @public */
|
|
@@ -26,11 +22,9 @@ export interface RejectedBridgeAdjudication {
|
|
|
26
22
|
readonly citation: string;
|
|
27
23
|
}
|
|
28
24
|
/**
|
|
29
|
-
* The negative catalog. Adjudicated 2026-06-11 (v0.8.0
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* catalog entry and `docs/architecture/v0.8.0-catalog-adjudication.md`);
|
|
33
|
-
* BE-44/46/50 remain contested/unadjudicated (same doc, with reasons).
|
|
25
|
+
* The negative catalog, in ledger order. Adjudicated 2026-06-11 (v0.8.0
|
|
26
|
+
* Phase 4); BE-42 was REVERSED to a bridge and BE-44/46/50 remain contested
|
|
27
|
+
* (`docs/architecture/v0.8.0-catalog-adjudication.md`).
|
|
34
28
|
*
|
|
35
29
|
* @public
|
|
36
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rejected.d.ts","sourceRoot":"","sources":["../../src/bridges/rejected.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"rejected.d.ts","sourceRoot":"","sources":["../../src/bridges/rejected.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,kDAAkD;AAClD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,0BAA0B,CAEnF,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAEnD,CAAC"}
|
package/dist/bridges/rejected.js
CHANGED
|
@@ -1,81 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Negative catalog
|
|
3
|
-
*
|
|
2
|
+
* Negative catalog — NOT-A-BRIDGE adjudications, projected from the
|
|
3
|
+
* `rejections` ledger of `data/bridge-catalog.json`.
|
|
4
4
|
*
|
|
5
|
-
* Each
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* `membership.ts` — an id listed here reports `'not-a-bridge'`
|
|
5
|
+
* Each record is the outcome of applying the graph-native membership
|
|
6
|
+
* criterion (*a bridge is an edge whose endpoint quantities differ in at
|
|
7
|
+
* least one regime attribute*) to a catalog row, with the physics reason and
|
|
8
|
+
* a citation. Rejected rows REMAIN in `BRIDGE_EQUATIONS` (their formulas are
|
|
9
|
+
* still valid physics); this projection is the adjudication overlay
|
|
10
|
+
* `membership.ts` consumes — an id listed here reports `'not-a-bridge'`
|
|
12
11
|
* regardless of its `bridges` tuple (design r2-4 precedence).
|
|
13
12
|
*
|
|
14
|
-
* Recording rejections as data rather than audit-doc prose prevents
|
|
15
|
-
* re-litigation and documents the criterion by counterexample.
|
|
16
|
-
*
|
|
17
13
|
* @module bridges/rejected
|
|
18
14
|
*/
|
|
15
|
+
import { catalogRejections } from './catalog-load.js';
|
|
19
16
|
/**
|
|
20
|
-
* The negative catalog. Adjudicated 2026-06-11 (v0.8.0
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
* catalog entry and `docs/architecture/v0.8.0-catalog-adjudication.md`);
|
|
24
|
-
* BE-44/46/50 remain contested/unadjudicated (same doc, with reasons).
|
|
17
|
+
* The negative catalog, in ledger order. Adjudicated 2026-06-11 (v0.8.0
|
|
18
|
+
* Phase 4); BE-42 was REVERSED to a bridge and BE-44/46/50 remain contested
|
|
19
|
+
* (`docs/architecture/v0.8.0-catalog-adjudication.md`).
|
|
25
20
|
*
|
|
26
21
|
* @public
|
|
27
22
|
*/
|
|
28
|
-
export const REJECTED_BRIDGE_ADJUDICATIONS =
|
|
29
|
-
{
|
|
30
|
-
beId: 28,
|
|
31
|
-
name: 'Maximum Entropy Production Principle',
|
|
32
|
-
verdict: 'not-a-bridge',
|
|
33
|
-
reason: 'The encoded σ = Σᵢ Jᵢ Xᵢ is the definiendum of entropy ' +
|
|
34
|
-
'production within nonequilibrium thermodynamics — fluxes, ' +
|
|
35
|
-
'forces, and σ all live in the same classical statistical ' +
|
|
36
|
-
'regime. The variational MEPP claim (which might bridge) is ' +
|
|
37
|
-
'not what is encoded (see the catalog entry’s ⚠ warning).',
|
|
38
|
-
citation: 'Martyushev & Seleznev 2006 Phys. Rep. 426:1',
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
beId: 29,
|
|
42
|
-
name: 'Jarzynski free-energy equality (canonical 1997 form)',
|
|
43
|
-
verdict: 'not-a-bridge',
|
|
44
|
-
reason: '⟨e^(−βW)⟩ = e^(−βΔF) relates a nonequilibrium work ' +
|
|
45
|
-
'distribution to an equilibrium free energy, both within ' +
|
|
46
|
-
'classical statistical mechanics. Equilibrium-vs-nonequilibrium ' +
|
|
47
|
-
'status is not one of the regime axes — the endpoints share ' +
|
|
48
|
-
'scale and force attributes.',
|
|
49
|
-
citation: 'Jarzynski 1997 PRL 78:2690',
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
beId: 32,
|
|
53
|
-
name: 'Quantum Reference Frame Transformation',
|
|
54
|
-
verdict: 'not-a-bridge',
|
|
55
|
-
reason: 'A transformation between quantum descriptions relative to ' +
|
|
56
|
-
'different reference frames — both endpoints are quantum-scale ' +
|
|
57
|
-
'quantities; the relation is internal to quantum theory.',
|
|
58
|
-
citation: 'Giacomini, Castro-Ruiz & Brukner 2019 Nat. Commun. 10:494',
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
beId: 35,
|
|
62
|
-
name: 'Conformal Bootstrap - Physical Operator Equation',
|
|
63
|
-
verdict: 'not-a-bridge',
|
|
64
|
-
reason: 'The crossing-symmetry constraint is internal to a CFT’s ' +
|
|
65
|
-
'operator algebra — a consistency condition within one QFT ' +
|
|
66
|
-
'regime, not a relation between regimes.',
|
|
67
|
-
citation: 'Rattazzi, Rychkov, Tonni & Vichi 2008 JHEP 0812:031',
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
beId: 40,
|
|
71
|
-
name: 'Composite Higgs Potential',
|
|
72
|
-
verdict: 'not-a-bridge',
|
|
73
|
-
reason: 'The SILH effective potential V(h) is a single-regime ' +
|
|
74
|
-
'electroweak-QFT object; its endpoints (field value, potential ' +
|
|
75
|
-
'energy density) share scale and force attributes.',
|
|
76
|
-
citation: 'Giudice, Grojean, Pomarol & Rattazzi 2007 JHEP 0706:045',
|
|
77
|
-
},
|
|
78
|
-
];
|
|
23
|
+
export const REJECTED_BRIDGE_ADJUDICATIONS = catalogRejections().map((row) => ({ beId: row.catalogId, name: row.name, verdict: 'not-a-bridge', reason: row.reason, citation: row.citation }));
|
|
79
24
|
/** The rejected ids as a Set, for overlay lookups. @public */
|
|
80
25
|
export const REJECTED_BRIDGE_IDS = new Set(REJECTED_BRIDGE_ADJUDICATIONS.map((r) => r.beId));
|
|
81
26
|
//# sourceMappingURL=rejected.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rejected.js","sourceRoot":"","sources":["../../src/bridges/rejected.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"rejected.js","sourceRoot":"","sources":["../../src/bridges/rejected.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAYtD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAA8C,iBAAiB,EAAE,CAAC,GAAG,CAC7G,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CACxH,CAAC;AAEF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAC7D,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACjD,CAAC","sourcesContent":["/**\n * Negative catalog — NOT-A-BRIDGE adjudications, projected from the\n * `rejections` ledger of `data/bridge-catalog.json`.\n *\n * Each record is the outcome of applying the graph-native membership\n * criterion (*a bridge is an edge whose endpoint quantities differ in at\n * least one regime attribute*) to a catalog row, with the physics reason and\n * a citation. Rejected rows REMAIN in `BRIDGE_EQUATIONS` (their formulas are\n * still valid physics); this projection is the adjudication overlay\n * `membership.ts` consumes — an id listed here reports `'not-a-bridge'`\n * regardless of its `bridges` tuple (design r2-4 precedence).\n *\n * @module bridges/rejected\n */\n\nimport { catalogRejections } from './catalog-load.js';\n\n/** A NOT-A-BRIDGE adjudication record. @public */\nexport interface RejectedBridgeAdjudication {\n readonly beId: number;\n readonly name: string;\n readonly verdict: 'not-a-bridge';\n /** Why the endpoints do NOT differ in regime attributes. */\n readonly reason: string;\n readonly citation: string;\n}\n\n/**\n * The negative catalog, in ledger order. Adjudicated 2026-06-11 (v0.8.0\n * Phase 4); BE-42 was REVERSED to a bridge and BE-44/46/50 remain contested\n * (`docs/architecture/v0.8.0-catalog-adjudication.md`).\n *\n * @public\n */\nexport const REJECTED_BRIDGE_ADJUDICATIONS: ReadonlyArray<RejectedBridgeAdjudication> = catalogRejections().map(\n (row) => ({ beId: row.catalogId, name: row.name, verdict: 'not-a-bridge', reason: row.reason, citation: row.citation }),\n);\n\n/** The rejected ids as a Set, for overlay lookups. @public */\nexport const REJECTED_BRIDGE_IDS: ReadonlySet<number> = new Set(\n REJECTED_BRIDGE_ADJUDICATIONS.map((r) => r.beId),\n);\n"]}
|
|
@@ -6,18 +6,17 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { CarrierSignError } from './carrier-sign.js';
|
|
8
8
|
import type { CatalogRelation } from './catalog-types.js';
|
|
9
|
+
import { type ConditionDomain } from './validity.js';
|
|
9
10
|
/** Thrown when two carrier roles have opposite signs. */
|
|
10
11
|
export { CarrierSignError };
|
|
11
|
-
/**
|
|
12
|
-
|
|
12
|
+
/**
|
|
13
|
+
* The relation's validity domain, read from its `holds`: the predicate, the
|
|
14
|
+
* description and the violated conditions all come from that one text.
|
|
15
|
+
*/
|
|
16
|
+
export declare function relationDomain(rel: CatalogRelation): ConditionDomain;
|
|
13
17
|
/**
|
|
14
18
|
* The relation's number at `inputs`. The caller has already checked the
|
|
15
19
|
* validity condition. Opposite carrier signs throw {@link CarrierSignError}.
|
|
16
20
|
*/
|
|
17
21
|
export declare function evaluateCatalogRelation(rel: CatalogRelation, inputs: Readonly<Record<string, number>>): number;
|
|
18
|
-
/**
|
|
19
|
-
* Recover the one missing finite input that makes the relation equal `target`.
|
|
20
|
-
* A bracket that does not change sign has no root and throws.
|
|
21
|
-
*/
|
|
22
|
-
export declare function solveCatalogRelation(rel: CatalogRelation, known: Readonly<Record<string, number>>, unknown: string, target?: number): number;
|
|
23
22
|
//# sourceMappingURL=relation-eval.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-eval.d.ts","sourceRoot":"","sources":["../../src/bridges/relation-eval.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"relation-eval.d.ts","sourceRoot":"","sources":["../../src/bridges/relation-eval.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAA0B,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAEtE,yDAAyD;AACzD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AA8D5B;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,eAAe,GAAG,eAAe,CAMpE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACvC,MAAM,CAiBR"}
|
|
@@ -5,9 +5,10 @@
|
|
|
5
5
|
* @module bridges/relation-eval
|
|
6
6
|
*/
|
|
7
7
|
import { quantityRecord } from '../dimensional/quantity-registry.js';
|
|
8
|
+
import { withinSymmetric } from '../core/compare.js';
|
|
8
9
|
import { applyCarrierSignPolicy, CarrierSignError } from './carrier-sign.js';
|
|
9
10
|
import { evaluateFormula, formulaNames, formulaScope } from './expr-parse.js';
|
|
10
|
-
import {
|
|
11
|
+
import { conditionDomain } from './validity.js';
|
|
11
12
|
/** Thrown when two carrier roles have opposite signs. */
|
|
12
13
|
export { CarrierSignError };
|
|
13
14
|
const parityCache = new Map();
|
|
@@ -41,17 +42,17 @@ function classify(rel) {
|
|
|
41
42
|
let pos;
|
|
42
43
|
let neg;
|
|
43
44
|
try {
|
|
44
|
-
pos = evaluateFormula(rel.expression, { ...base, [name]: magnitude });
|
|
45
|
-
neg = evaluateFormula(rel.expression, { ...base, [name]: -magnitude });
|
|
45
|
+
pos = evaluateFormula(rel.expression, { ...base, [name]: magnitude }, rel.sources);
|
|
46
|
+
neg = evaluateFormula(rel.expression, { ...base, [name]: -magnitude }, rel.sources);
|
|
46
47
|
}
|
|
47
48
|
catch {
|
|
48
49
|
continue;
|
|
49
50
|
}
|
|
50
51
|
if (!Number.isFinite(pos) || !Number.isFinite(neg))
|
|
51
52
|
continue;
|
|
52
|
-
|
|
53
|
-
const isEven =
|
|
54
|
-
const isOdd =
|
|
53
|
+
// The scale is max(|pos|, |neg|, 1): relative far from one, absolute near zero.
|
|
54
|
+
const isEven = withinSymmetric(pos, neg, 1e-8, 1);
|
|
55
|
+
const isOdd = withinSymmetric(pos, -neg, 1e-8, 1);
|
|
55
56
|
if (isEven && !isOdd)
|
|
56
57
|
even.push(name);
|
|
57
58
|
if (isOdd && !isEven) {
|
|
@@ -72,16 +73,18 @@ function classify(rel) {
|
|
|
72
73
|
parityCache.set(rel.id, found);
|
|
73
74
|
return found;
|
|
74
75
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
76
|
+
const domainCache = new Map();
|
|
77
|
+
/**
|
|
78
|
+
* The relation's validity domain, read from its `holds`: the predicate, the
|
|
79
|
+
* description and the violated conditions all come from that one text.
|
|
80
|
+
*/
|
|
81
|
+
export function relationDomain(rel) {
|
|
82
|
+
const hit = domainCache.get(rel.id);
|
|
83
|
+
if (hit !== undefined)
|
|
84
|
+
return hit;
|
|
85
|
+
const domain = conditionDomain(rel.holds, formulaNames, formulaScope, rel.sources);
|
|
86
|
+
domainCache.set(rel.id, domain);
|
|
87
|
+
return domain;
|
|
85
88
|
}
|
|
86
89
|
/**
|
|
87
90
|
* The relation's number at `inputs`. The caller has already checked the
|
|
@@ -98,39 +101,6 @@ export function evaluateCatalogRelation(rel, inputs) {
|
|
|
98
101
|
left: named(rel, pair.charge),
|
|
99
102
|
right: named(rel, pair.mobility),
|
|
100
103
|
});
|
|
101
|
-
return evaluateFormula(rel.expression, adjusted);
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Recover the one missing finite input that makes the relation equal `target`.
|
|
105
|
-
* A bracket that does not change sign has no root and throws.
|
|
106
|
-
*/
|
|
107
|
-
export function solveCatalogRelation(rel, known, unknown, target = 0) {
|
|
108
|
-
const f = (value) => evaluateCatalogRelation(rel, { ...known, [unknown]: value }) - target;
|
|
109
|
-
let lo = 1e-6;
|
|
110
|
-
let hi = 1;
|
|
111
|
-
let flo = f(lo);
|
|
112
|
-
let fhi = f(hi);
|
|
113
|
-
for (let i = 0; i < 60 && flo * fhi > 0; i += 1) {
|
|
114
|
-
lo /= 2;
|
|
115
|
-
hi *= 2;
|
|
116
|
-
flo = f(lo);
|
|
117
|
-
fhi = f(hi);
|
|
118
|
-
}
|
|
119
|
-
if (!(flo * fhi <= 0)) {
|
|
120
|
-
throw new Error(`solveCatalogRelation: ${rel.id} has no root for ${unknown}`);
|
|
121
|
-
}
|
|
122
|
-
for (let i = 0; i < 80; i += 1) {
|
|
123
|
-
const mid = (lo + hi) / 2;
|
|
124
|
-
const fmid = f(mid);
|
|
125
|
-
if (flo * fmid <= 0) {
|
|
126
|
-
hi = mid;
|
|
127
|
-
fhi = fmid;
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
lo = mid;
|
|
131
|
-
flo = fmid;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
return (lo + hi) / 2;
|
|
104
|
+
return evaluateFormula(rel.expression, adjusted, rel.sources);
|
|
135
105
|
}
|
|
136
106
|
//# sourceMappingURL=relation-eval.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-eval.js","sourceRoot":"","sources":["../../src/bridges/relation-eval.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"relation-eval.js","sourceRoot":"","sources":["../../src/bridges/relation-eval.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Evaluate one catalog relation: validity condition, carrier-sign policy,\n * and the parsed expression. No per-equation branch.\n *\n * @module bridges/relation-eval\n */\n\nimport { quantityRecord } from '../dimensional/quantity-registry.js';\nimport { withinSymmetric } from '../core/compare.js';\nimport { applyCarrierSignPolicy, CarrierSignError } from './carrier-sign.js';\nimport type { CatalogRelation } from './catalog-types.js';\nimport { evaluateFormula, formulaNames, formulaScope } from './expr-parse.js';\nimport { conditionDomain, type ConditionDomain } from './validity.js';\n\n/** Thrown when two carrier roles have opposite signs. */\nexport { CarrierSignError };\n\nconst parityCache = new Map<string, { readonly even: readonly string[]; readonly pair?: { readonly charge: string; readonly mobility: string } }>();\n\nfunction named(rel: CatalogRelation, name: string): string {\n const alias = rel.aliases[name]?.[0];\n return alias === undefined ? name : `${name} (${alias})`;\n}\n\nfunction signRole(name: string): 'charge' | 'mobility' | undefined {\n return quantityRecord(name)?.signRole;\n}\n\nfunction sampleInputs(rel: CatalogRelation): Record<string, number> | null {\n if (rel.reference !== undefined) return { ...rel.reference.inputs };\n if (rel.sources.length === 0) return {};\n return null;\n}\n\nfunction classify(rel: CatalogRelation): { even: readonly string[]; pair?: { charge: string; mobility: string } } {\n const cached = parityCache.get(rel.id);\n if (cached !== undefined) return cached;\n const base = sampleInputs(rel);\n const even: string[] = [];\n const odd: { charge: string[]; mobility: string[] } = { charge: [], mobility: [] };\n if (base !== null) {\n for (const name of rel.sources) {\n const x = base[name];\n if (x === undefined || x === 0 || !Number.isFinite(x)) continue;\n const magnitude = Math.abs(x);\n let pos: number;\n let neg: number;\n try {\n pos = evaluateFormula(rel.expression, { ...base, [name]: magnitude }, rel.sources);\n neg = evaluateFormula(rel.expression, { ...base, [name]: -magnitude }, rel.sources);\n } catch {\n continue;\n }\n if (!Number.isFinite(pos) || !Number.isFinite(neg)) continue;\n // The scale is max(|pos|, |neg|, 1): relative far from one, absolute near zero.\n const isEven = withinSymmetric(pos, neg, 1e-8, 1);\n const isOdd = withinSymmetric(pos, -neg, 1e-8, 1);\n if (isEven && !isOdd) even.push(name);\n if (isOdd && !isEven) {\n const role = signRole(name);\n if (role === 'charge') odd.charge.push(name);\n if (role === 'mobility') odd.mobility.push(name);\n }\n }\n }\n const charge = odd.charge[0];\n const mobility = odd.mobility[0];\n const found = {\n even,\n ...(charge !== undefined && mobility !== undefined ? { pair: { charge, mobility } } : {}),\n };\n parityCache.set(rel.id, found);\n return found;\n}\n\nconst domainCache = new Map<string, ConditionDomain>();\n\n/**\n * The relation's validity domain, read from its `holds`: the predicate, the\n * description and the violated conditions all come from that one text.\n */\nexport function relationDomain(rel: CatalogRelation): ConditionDomain {\n const hit = domainCache.get(rel.id);\n if (hit !== undefined) return hit;\n const domain = conditionDomain(rel.holds, formulaNames, formulaScope, rel.sources);\n domainCache.set(rel.id, domain);\n return domain;\n}\n\n/**\n * The relation's number at `inputs`. The caller has already checked the\n * validity condition. Opposite carrier signs throw {@link CarrierSignError}.\n */\nexport function evaluateCatalogRelation(\n rel: CatalogRelation,\n inputs: Readonly<Record<string, number>>,\n): number {\n const policy = classify(rel);\n const pair = policy.pair;\n const adjusted = applyCarrierSignPolicy(\n null,\n inputs,\n new Set(policy.even),\n pair === undefined\n ? undefined\n : {\n a: inputs[pair.charge] ?? Number.NaN,\n b: inputs[pair.mobility] ?? Number.NaN,\n left: named(rel, pair.charge),\n right: named(rel, pair.mobility),\n },\n );\n return evaluateFormula(rel.expression, adjusted, rel.sources);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rhs-registry.js","sourceRoot":"","sources":["../../src/bridges/rhs-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,iGAAiG;AACjG,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAkC,IAAI,GAAG,CACpE,cAAc,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;IACjC,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,KAAK,CAAC,gBAAgB,CAAC;IACnF,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACxC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAU,CAAC,CAAC;AACnE,CAAC,CAAC,CACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"rhs-registry.js","sourceRoot":"","sources":["../../src/bridges/rhs-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,iGAAiG;AACjG,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAkC,IAAI,GAAG,CACpE,cAAc,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;IACjC,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,KAAK,CAAC,gBAAgB,CAAC;IACnF,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACxC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAU,CAAC,CAAC;AACnE,CAAC,CAAC,CACH,CAAC","sourcesContent":["/**\n * Right-hand side of each catalog id that has a relation, projected from\n * that relation's expression.\n *\n * @module bridges/rhs-registry\n */\n\nimport type { ExprNode } from '../dimensional/ast-types.js';\nimport { catalogEntries, parseBridgeId, primaryRelation } from './catalog-load.js';\nimport { parseCatalogExpression } from './expr-parse.js';\n\n/** Parse `42`, `be-42`, or `BE-42` into a catalog id. This module re-exports the only parser. */\nexport { parseBridgeId };\n\n/** Catalog id → expression tree of its primary relation. */\nexport const BRIDGE_RHS_BY_ID: ReadonlyMap<number, ExprNode> = new Map(\n catalogEntries().flatMap((entry) => {\n const expression = primaryRelation(entry.id)?.expression ?? entry.scalarExpression;\n if (expression === undefined) return [];\n return [[entry.id, parseCatalogExpression(expression)] as const];\n }),\n);\n"]}
|