graphbox 1.2.2 → 1.3.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 +98 -41
- package/dist/__tests__/integration/cliquewidth.integration.test.d.ts +8 -0
- package/dist/__tests__/integration/cliquewidth.integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration/modular.integration.test.d.ts +8 -0
- package/dist/__tests__/integration/modular.integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration/pathwidth.integration.test.d.ts +8 -0
- package/dist/__tests__/integration/pathwidth.integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration/planar.integration.test.d.ts +3 -3
- package/dist/__tests__/integration/ptolemaic.integration.test.d.ts +8 -0
- package/dist/__tests__/integration/ptolemaic.integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration/quasiline.integration.test.d.ts +8 -0
- package/dist/__tests__/integration/quasiline.integration.test.d.ts.map +1 -0
- package/dist/algorithms/clustering/louvain.d.ts +22 -6
- package/dist/algorithms/clustering/louvain.d.ts.map +1 -1
- package/dist/algorithms/extraction/forbidden-subgraphs.d.ts +211 -0
- package/dist/algorithms/extraction/forbidden-subgraphs.d.ts.map +1 -0
- package/dist/algorithms/pathfinding/path-ranking.d.ts.map +1 -1
- package/dist/algorithms/pathfinding/random-path-sampling.d.ts +31 -0
- package/dist/algorithms/pathfinding/random-path-sampling.d.ts.map +1 -0
- package/dist/algorithms/pathfinding/shortest-path-ranking.d.ts +28 -0
- package/dist/algorithms/pathfinding/shortest-path-ranking.d.ts.map +1 -0
- package/dist/algorithms/traversal/bidirectional-bfs.d.ts +15 -0
- package/dist/algorithms/traversal/bidirectional-bfs.d.ts.map +1 -1
- package/dist/algorithms/traversal/degree-prioritised-expansion-intersection.unit.test.d.ts +13 -0
- package/dist/algorithms/traversal/degree-prioritised-expansion-intersection.unit.test.d.ts.map +1 -0
- package/dist/algorithms/traversal/degree-prioritised-expansion.d.ts +34 -2
- package/dist/algorithms/traversal/degree-prioritised-expansion.d.ts.map +1 -1
- package/dist/algorithms/traversal/entropy-guided-expansion.d.ts +172 -0
- package/dist/algorithms/traversal/entropy-guided-expansion.d.ts.map +1 -0
- package/dist/algorithms/traversal/entropy-guided-expansion.unit.test.d.ts +2 -0
- package/dist/algorithms/traversal/entropy-guided-expansion.unit.test.d.ts.map +1 -0
- package/dist/algorithms/traversal/heterogeneity-aware-expansion.d.ts +199 -0
- package/dist/algorithms/traversal/heterogeneity-aware-expansion.d.ts.map +1 -0
- package/dist/algorithms/traversal/heterogeneity-aware-expansion.unit.test.d.ts +2 -0
- package/dist/algorithms/traversal/heterogeneity-aware-expansion.unit.test.d.ts.map +1 -0
- package/dist/algorithms/traversal/index.d.ts +14 -0
- package/dist/algorithms/traversal/index.d.ts.map +1 -1
- package/dist/algorithms/traversal/intelligent-delayed-termination.d.ts +221 -0
- package/dist/algorithms/traversal/intelligent-delayed-termination.d.ts.map +1 -0
- package/dist/algorithms/traversal/intelligent-delayed-termination.unit.test.d.ts +2 -0
- package/dist/algorithms/traversal/intelligent-delayed-termination.unit.test.d.ts.map +1 -0
- package/dist/algorithms/traversal/multi-frontier-adaptive-expansion.d.ts +245 -0
- package/dist/algorithms/traversal/multi-frontier-adaptive-expansion.d.ts.map +1 -0
- package/dist/algorithms/traversal/multi-frontier-adaptive-expansion.unit.test.d.ts +2 -0
- package/dist/algorithms/traversal/multi-frontier-adaptive-expansion.unit.test.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/frontier-state.d.ts +25 -0
- package/dist/algorithms/traversal/overlap-based/frontier-state.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/index.d.ts +71 -0
- package/dist/algorithms/traversal/overlap-based/index.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/overlap-based-expansion.d.ts +182 -0
- package/dist/algorithms/traversal/overlap-based/overlap-based-expansion.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/overlap-result.d.ts +82 -0
- package/dist/algorithms/traversal/overlap-based/overlap-result.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/between-graph-strategy.d.ts +42 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/between-graph-strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/minimal-paths.strategy.d.ts +41 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/minimal-paths.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/salience-preserving.strategy.d.ts +82 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/salience-preserving.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/truncated-component.strategy.d.ts +59 -0
- package/dist/algorithms/traversal/overlap-based/strategies/between-graph/truncated-component.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/n1-handling/coverage-threshold.strategy.d.ts +57 -0
- package/dist/algorithms/traversal/overlap-based/strategies/n1-handling/coverage-threshold.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/n1-handling/n1-handling-strategy.d.ts +25 -0
- package/dist/algorithms/traversal/overlap-based/strategies/n1-handling/n1-handling-strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/overlap-detection-strategy.d.ts +26 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/overlap-detection-strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/physical-meeting.strategy.d.ts +35 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/physical-meeting.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/sphere-intersection.strategy.d.ts +69 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/sphere-intersection.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/threshold-sharing.strategy.d.ts +72 -0
- package/dist/algorithms/traversal/overlap-based/strategies/overlap-detection/threshold-sharing.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/common-convergence.strategy.d.ts +45 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/common-convergence.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/full-pairwise.strategy.d.ts +43 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/full-pairwise.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/termination-strategy.d.ts +40 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/termination-strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/transitive-connectivity.strategy.d.ts +45 -0
- package/dist/algorithms/traversal/overlap-based/strategies/termination/transitive-connectivity.strategy.d.ts.map +1 -0
- package/dist/algorithms/traversal/path-preserving-expansion.d.ts +197 -0
- package/dist/algorithms/traversal/path-preserving-expansion.d.ts.map +1 -0
- package/dist/algorithms/traversal/priority-calculator.d.ts +135 -0
- package/dist/algorithms/traversal/priority-calculator.d.ts.map +1 -0
- package/dist/algorithms/traversal/priority-queue.d.ts +6 -0
- package/dist/algorithms/traversal/priority-queue.d.ts.map +1 -1
- package/dist/algorithms/traversal/retrospective-salience-expansion.d.ts +173 -0
- package/dist/algorithms/traversal/retrospective-salience-expansion.d.ts.map +1 -0
- package/dist/algorithms/traversal/retrospective-salience-expansion.unit.test.d.ts +5 -0
- package/dist/algorithms/traversal/retrospective-salience-expansion.unit.test.d.ts.map +1 -0
- package/dist/algorithms/traversal/salience-prioritised-expansion.d.ts +149 -0
- package/dist/algorithms/traversal/salience-prioritised-expansion.d.ts.map +1 -0
- package/dist/algorithms/types/clustering-types.d.ts +2 -2
- package/dist/algorithms/types/clustering-types.d.ts.map +1 -1
- package/dist/algorithms/utils/csr.d.ts.map +1 -1
- package/dist/analyzer/advanced-props.d.ts.map +1 -1
- package/dist/analyzer/forbidden-subgraph.d.ts +59 -0
- package/dist/analyzer/forbidden-subgraph.d.ts.map +1 -0
- package/dist/analyzer/geometric.d.ts +21 -0
- package/dist/analyzer/geometric.d.ts.map +1 -0
- package/dist/analyzer/geometric.unit.test.d.ts +5 -0
- package/dist/analyzer/geometric.unit.test.d.ts.map +1 -0
- package/dist/analyzer/helpers.d.ts +2 -0
- package/dist/analyzer/helpers.d.ts.map +1 -1
- package/dist/analyzer/intersection.d.ts +17 -0
- package/dist/analyzer/intersection.d.ts.map +1 -0
- package/dist/analyzer/main.d.ts +22 -0
- package/dist/analyzer/main.d.ts.map +1 -1
- package/dist/analyzer/perfect-variants.d.ts +49 -0
- package/dist/analyzer/perfect-variants.d.ts.map +1 -0
- package/dist/analyzer/perfect-variants.unit.test.d.ts +5 -0
- package/dist/analyzer/perfect-variants.unit.test.d.ts.map +1 -0
- package/dist/analyzer/predicates.d.ts +30 -3
- package/dist/analyzer/predicates.d.ts.map +1 -1
- package/dist/analyzer/probe.d.ts +15 -0
- package/dist/analyzer/probe.d.ts.map +1 -0
- package/dist/analyzer/structural.d.ts +13 -0
- package/dist/analyzer/structural.d.ts.map +1 -0
- package/dist/analyzer/structure.d.ts.map +1 -1
- package/dist/analyzer/width.d.ts +33 -0
- package/dist/analyzer/width.d.ts.map +1 -0
- package/dist/analyzer/width.unit.test.d.ts +5 -0
- package/dist/analyzer/width.unit.test.d.ts.map +1 -0
- package/dist/cli-commands/analyze.d.ts +30 -0
- package/dist/cli-commands/analyze.d.ts.map +1 -0
- package/dist/cli-commands/evaluate.d.ts +64 -0
- package/dist/cli-commands/evaluate.d.ts.map +1 -0
- package/dist/cli-commands/generate.d.ts +34 -0
- package/dist/cli-commands/generate.d.ts.map +1 -0
- package/dist/cli-commands/validate.d.ts +32 -0
- package/dist/cli-commands/validate.d.ts.map +1 -0
- package/dist/cli-utils/arg-parser.d.ts +55 -0
- package/dist/cli-utils/arg-parser.d.ts.map +1 -0
- package/dist/cli-utils/arg-parser.unit.test.d.ts +5 -0
- package/dist/cli-utils/arg-parser.unit.test.d.ts.map +1 -0
- package/dist/cli-utils/error-formatter.d.ts +27 -0
- package/dist/cli-utils/error-formatter.d.ts.map +1 -0
- package/dist/cli-utils/format-detection.d.ts +25 -0
- package/dist/cli-utils/format-detection.d.ts.map +1 -0
- package/dist/cli-utils/format-detection.unit.test.d.ts +5 -0
- package/dist/cli-utils/format-detection.unit.test.d.ts.map +1 -0
- package/dist/cli-utils/graph-converter.d.ts +32 -0
- package/dist/cli-utils/graph-converter.d.ts.map +1 -0
- package/dist/cli-utils/graph-converter.unit.test.d.ts +5 -0
- package/dist/cli-utils/graph-converter.unit.test.d.ts.map +1 -0
- package/dist/cli-utils/graph-loader.d.ts +30 -0
- package/dist/cli-utils/graph-loader.d.ts.map +1 -0
- package/dist/cli-utils/spec-utils.d.ts +30 -0
- package/dist/cli-utils/spec-utils.d.ts.map +1 -0
- package/dist/cli.js +11416 -15
- package/dist/domain/claims.d.ts +56 -0
- package/dist/domain/claims.d.ts.map +1 -0
- package/dist/domain/index.d.ts +8 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/tables.d.ts +66 -0
- package/dist/domain/tables.d.ts.map +1 -0
- package/dist/experiments/baselines/betweenness-ranking.d.ts +38 -0
- package/dist/experiments/baselines/betweenness-ranking.d.ts.map +1 -0
- package/dist/experiments/baselines/cross-seed-affinity.d.ts +141 -0
- package/dist/experiments/baselines/cross-seed-affinity.d.ts.map +1 -0
- package/dist/experiments/baselines/degree-sum-ranking.d.ts +38 -0
- package/dist/experiments/baselines/degree-sum-ranking.d.ts.map +1 -0
- package/dist/experiments/baselines/degree-surprise.d.ts +134 -0
- package/dist/experiments/baselines/degree-surprise.d.ts.map +1 -0
- package/dist/experiments/baselines/delayed-termination.d.ts +138 -0
- package/dist/experiments/baselines/delayed-termination.d.ts.map +1 -0
- package/dist/experiments/baselines/ensemble-expansion.d.ts +123 -0
- package/dist/experiments/baselines/ensemble-expansion.d.ts.map +1 -0
- package/dist/experiments/baselines/frontier-balanced.d.ts +3 -0
- package/dist/experiments/baselines/frontier-balanced.d.ts.map +1 -1
- package/dist/experiments/baselines/index.d.ts +16 -0
- package/dist/experiments/baselines/index.d.ts.map +1 -1
- package/dist/experiments/baselines/jaccard-arithmetic-ranking.d.ts +38 -0
- package/dist/experiments/baselines/jaccard-arithmetic-ranking.d.ts.map +1 -0
- package/dist/experiments/baselines/pagerank-sum-ranking.d.ts +46 -0
- package/dist/experiments/baselines/pagerank-sum-ranking.d.ts.map +1 -0
- package/dist/experiments/baselines/random-path-ranking.d.ts +42 -0
- package/dist/experiments/baselines/random-path-ranking.d.ts.map +1 -0
- package/dist/experiments/baselines/random-priority.d.ts +3 -0
- package/dist/experiments/baselines/random-priority.d.ts.map +1 -1
- package/dist/experiments/baselines/retroactive-path-enum.d.ts +91 -0
- package/dist/experiments/baselines/retroactive-path-enum.d.ts.map +1 -0
- package/dist/experiments/baselines/shortest-path-ranking.d.ts +40 -0
- package/dist/experiments/baselines/shortest-path-ranking.d.ts.map +1 -0
- package/dist/experiments/baselines/standard-bfs.d.ts +7 -0
- package/dist/experiments/baselines/standard-bfs.d.ts.map +1 -1
- package/dist/experiments/evaluation/__tests__/harness/evaluation.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/harness/evaluation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/harness/evaluator.d.ts +55 -0
- package/dist/experiments/evaluation/__tests__/harness/evaluator.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/harness/fixtures.d.ts +45 -0
- package/dist/experiments/evaluation/__tests__/harness/fixtures.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/harness/index.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/harness/index.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/harness/types.d.ts +138 -0
- package/dist/experiments/evaluation/__tests__/harness/types.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/originality-correctness-significance.integration.test.d.ts +31 -0
- package/dist/experiments/evaluation/__tests__/originality-correctness-significance.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/thesis-validation.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/thesis-validation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/adapter-roundtrip.unit.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/adapter-roundtrip.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/canary-tests.integration.test.d.ts +17 -0
- package/dist/experiments/evaluation/__tests__/validation/canary-tests.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/baselines/high-degree-first.d.ts +26 -0
- package/dist/experiments/evaluation/__tests__/validation/common/baselines/high-degree-first.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/baselines/low-degree-first.d.ts +26 -0
- package/dist/experiments/evaluation/__tests__/validation/common/baselines/low-degree-first.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.d.ts +58 -0
- package/dist/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.unit.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/graph-generators.d.ts +51 -0
- package/dist/experiments/evaluation/__tests__/validation/common/graph-generators.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/instrumented-expander.d.ts +31 -0
- package/dist/experiments/evaluation/__tests__/validation/common/instrumented-expander.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/instrumented-expander.unit.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/common/instrumented-expander.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/path-ranking-helpers.d.ts +95 -0
- package/dist/experiments/evaluation/__tests__/validation/common/path-ranking-helpers.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/representativeness-helpers.d.ts +56 -0
- package/dist/experiments/evaluation/__tests__/validation/common/representativeness-helpers.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/statistical-functions.d.ts +78 -0
- package/dist/experiments/evaluation/__tests__/validation/common/statistical-functions.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/test-graph-expander.d.ts +32 -0
- package/dist/experiments/evaluation/__tests__/validation/common/test-graph-expander.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/common/test-graph-expander.unit.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/common/test-graph-expander.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/comparative-summary.exp.integration.test.d.ts +10 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/comparative-summary.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/execution-time.exp.integration.test.d.ts +7 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/execution-time.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/literature-review-metrics.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/literature-review-metrics.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/method-ranking.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/method-ranking.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/multi-method-comparison.exp.integration.test.d.ts +9 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/multi-method-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/novel-algorithm-comparison.exp.integration.test.d.ts +12 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/novel-algorithm-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/perturbation-consistency.exp.integration.test.d.ts +9 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/perturbation-consistency.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/validation-summary.exp.integration.test.d.ts +9 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/validation-summary.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/variability-injection.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/comparative/variability-injection.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/graph-adapters.property.unit.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/graph-adapters.property.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/classification/classification-evaluation.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/classification/classification-evaluation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/cora.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/cora.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/facebook.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/facebook.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/karate-club.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/karate-club.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/les-mis.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/benchmarks/les-mis.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/comparative/method-comparison.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/comparative/method-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/correctness/modularity-quality.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/community-detection/louvain/correctness/modularity-quality.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/cora.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/cora.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/facebook.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/facebook.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/karate-club.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/karate-club.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/les-mis.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/benchmarks/les-mis.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/comparative/core-periphery-analysis.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/comparative/core-periphery-analysis.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/correctness/nested-hierarchy.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/decomposition/k-core/correctness/nested-hierarchy.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/generation/generation-evaluation.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/generation/generation-evaluation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/citeseer.exp.integration.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/citeseer.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/cora.exp.integration.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/cora.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/facebook.exp.integration.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/facebook.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/iteration-scaling.exp.integration.test.d.ts +20 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/iteration-scaling.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/karate-club.exp.integration.test.d.ts +17 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/karate-club.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/les-mis.exp.integration.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/benchmarks/les-mis.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/comparative/multi-method-comparison.exp.integration.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/comparative/multi-method-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/comparative/ranking-correlation.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/comparative/ranking-correlation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/comparative/statistical-significance.exp.integration.test.d.ts +16 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/comparative/statistical-significance.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/formula-correctness.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/formula-correctness.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/geometric-mean-property.exp.integration.test.d.ts +11 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/geometric-mean-property.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/length-penalty.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/length-penalty.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/n-path-generalization.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/correctness/n-path-generalization.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/originality/mi-sensitivity.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/originality/mi-sensitivity.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/originality/path-diversity-benefit.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/originality/path-diversity-benefit.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/originality/ranking-difference.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/originality/ranking-difference.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/representativeness/__tests__/structural-coverage.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/representativeness/__tests__/structural-coverage.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/representativeness/__tests__/topological-representativeness.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/representativeness/__tests__/topological-representativeness.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/scenarios/multi-path-comparison.exp.integration.test.d.ts +12 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/scenarios/multi-path-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/scenarios/scale-free-ranking.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/scenarios/scale-free-ranking.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/scenarios/weak-link-paths.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/scenarios/weak-link-paths.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/significance/hub-avoidance.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/significance/hub-avoidance.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/significance/quality-improvement.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/significance/quality-improvement.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/significance/ranking-stability.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/path-salience/significance/ranking-stability.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/ranking-baseline-comparison.exp.integration.test.d.ts +21 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/ranking/ranking-baseline-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/citeseer.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/citeseer.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/cora.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/cora.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/facebook.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/facebook.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/karate-club.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/karate-club.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/les-mis.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/benchmarks/les-mis.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/n-seed-comparison.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/n-seed-comparison.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/validity-formula.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/validity-formula.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/validity-n-seed.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/validity-n-seed.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/validity-termination.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/correctness/validity-termination.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/double-star.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/double-star.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/expansion-order.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/expansion-order.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/metrics.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/metrics.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/multi-hub.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/multi-hub.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/scale-free.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/scale-free.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/star-graph.exp.integration.test.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/node-explosion/star-graph.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/originality/novelty-structural-difference.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/originality/novelty-structural-difference.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/aggregation.exp.integration.test.d.ts +5 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/aggregation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/between-graph-ground-truth.exp.integration.test.d.ts +5 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/between-graph-ground-truth.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/degree-distribution.exp.integration.test.d.ts +5 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/degree-distribution.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/ego-network-n1.exp.integration.test.d.ts +5 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/ego-network-n1.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/fixtures/index.d.ts +2 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/fixtures/index.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/fixtures/test-graph-expander.d.ts +56 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/fixtures/test-graph-expander.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/full-pipeline.exp.integration.test.d.ts +5 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/full-pipeline.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/path-diversity.exp.integration.test.d.ts +5 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/representativeness/path-diversity.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/significance/value-edge-efficiency.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/significance/value-edge-efficiency.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/significance/value-hub-mitigation.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/significance/value-hub-mitigation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/significance/value-representativeness.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/degree-prioritised/significance/value-representativeness.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/correctness/entropy-formula.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/correctness/entropy-formula.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/correctness/priority-formula.exp.integration.test.d.ts +18 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/correctness/priority-formula.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/correctness/termination-guarantee.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/correctness/termination-guarantee.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/originality/cross-boundary-discovery.exp.integration.test.d.ts +12 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/originality/cross-boundary-discovery.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/originality/entropy-ordering-difference.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/originality/entropy-ordering-difference.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/significance/hub-mitigation.exp.integration.test.d.ts +13 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/significance/hub-mitigation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/significance/type-diversity.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/entropy-guided/significance/type-diversity.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/overlap-based/overlap-based-expansion.integration.test.d.ts +7 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/overlap-based/overlap-based-expansion.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/correctness/early-termination.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/correctness/early-termination.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/correctness/path-potential-computation.exp.integration.test.d.ts +11 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/correctness/path-potential-computation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/correctness/priority-formula.exp.integration.test.d.ts +10 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/correctness/priority-formula.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/originality/frontier-divergence.exp.integration.test.d.ts +12 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/originality/frontier-divergence.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/originality/path-diversity-improvement.exp.integration.test.d.ts +12 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/originality/path-diversity-improvement.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/significance/frontier-balance.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/significance/frontier-balance.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/significance/path-overlap-reduction.exp.integration.test.d.ts +8 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/path-preserving/significance/path-overlap-reduction.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/correctness/jaccard-mi-estimation.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/correctness/jaccard-mi-estimation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/correctness/phase1-formula.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/correctness/phase1-formula.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/correctness/phase2-formula.exp.integration.test.d.ts +14 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/correctness/phase2-formula.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/originality/adaptive-priority.exp.integration.test.d.ts +17 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/originality/adaptive-priority.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/originality/two-phase-transition.exp.integration.test.d.ts +18 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/originality/two-phase-transition.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/significance/no-precomputation.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/significance/no-precomputation.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/significance/salience-coverage.exp.integration.test.d.ts +15 -0
- package/dist/experiments/evaluation/__tests__/validation/primary/traversal/retrospective-salience/significance/salience-coverage.exp.integration.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/claims/index.d.ts +7 -0
- package/dist/experiments/evaluation/claims/index.d.ts.map +1 -0
- package/dist/experiments/evaluation/claims/thesis-claims.d.ts +111 -0
- package/dist/experiments/evaluation/claims/thesis-claims.d.ts.map +1 -0
- package/dist/experiments/evaluation/classification/classification-evaluator.d.ts +44 -0
- package/dist/experiments/evaluation/classification/classification-evaluator.d.ts.map +1 -0
- package/dist/experiments/evaluation/classification/feature-extractor.d.ts +50 -0
- package/dist/experiments/evaluation/classification/feature-extractor.d.ts.map +1 -0
- package/dist/experiments/evaluation/classification/graph-classifier.d.ts +103 -0
- package/dist/experiments/evaluation/classification/graph-classifier.d.ts.map +1 -0
- package/dist/experiments/evaluation/classification/index.d.ts +11 -0
- package/dist/experiments/evaluation/classification/index.d.ts.map +1 -0
- package/dist/experiments/evaluation/fixtures/algorithm-validation.unit.test.d.ts +12 -0
- package/dist/experiments/evaluation/fixtures/algorithm-validation.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/fixtures/benchmark-datasets.d.ts +44 -3
- package/dist/experiments/evaluation/fixtures/benchmark-datasets.d.ts.map +1 -1
- package/dist/experiments/evaluation/fixtures/benchmark-datasets.unit.test.d.ts +0 -4
- package/dist/experiments/evaluation/fixtures/benchmark-datasets.unit.test.d.ts.map +1 -1
- package/dist/experiments/evaluation/generation/constrained-generator.d.ts +61 -0
- package/dist/experiments/evaluation/generation/constrained-generator.d.ts.map +1 -0
- package/dist/experiments/evaluation/generation/generation-evaluator.d.ts +56 -0
- package/dist/experiments/evaluation/generation/generation-evaluator.d.ts.map +1 -0
- package/dist/experiments/evaluation/generation/index.d.ts +10 -0
- package/dist/experiments/evaluation/generation/index.d.ts.map +1 -0
- package/dist/experiments/evaluation/ground-truth/importance-based.d.ts.map +1 -1
- package/dist/experiments/evaluation/loaders/decompress.d.ts +141 -33
- package/dist/experiments/evaluation/loaders/decompress.d.ts.map +1 -1
- package/dist/experiments/evaluation/loaders/edge-list-loader.d.ts +44 -0
- package/dist/experiments/evaluation/loaders/edge-list-loader.d.ts.map +1 -1
- package/dist/experiments/evaluation/loaders/index.d.ts +2 -2
- package/dist/experiments/evaluation/loaders/index.d.ts.map +1 -1
- package/dist/experiments/evaluation/metrics/index.d.ts +1 -0
- package/dist/experiments/evaluation/metrics/index.d.ts.map +1 -1
- package/dist/experiments/evaluation/metrics/metric-calculators.property.unit.test.d.ts +16 -0
- package/dist/experiments/evaluation/metrics/metric-calculators.property.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/metrics/metrics-boundary-conditions.unit.test.d.ts +2 -0
- package/dist/experiments/evaluation/metrics/metrics-boundary-conditions.unit.test.d.ts.map +1 -0
- package/dist/experiments/evaluation/metrics/salience-coverage.d.ts +147 -0
- package/dist/experiments/evaluation/metrics/salience-coverage.d.ts.map +1 -0
- package/dist/experiments/experiments/bidirectional-bfs.d.ts +42 -0
- package/dist/experiments/experiments/bidirectional-bfs.d.ts.map +1 -0
- package/dist/experiments/experiments/index.d.ts +10 -0
- package/dist/experiments/experiments/index.d.ts.map +1 -0
- package/dist/experiments/experiments/path-ranking.d.ts +29 -0
- package/dist/experiments/experiments/path-ranking.d.ts.map +1 -0
- package/dist/experiments/experiments/salience-coverage-comparison.d.ts +19 -0
- package/dist/experiments/experiments/salience-coverage-comparison.d.ts.map +1 -0
- package/dist/experiments/experiments/seeded-expansion.d.ts +43 -0
- package/dist/experiments/experiments/seeded-expansion.d.ts.map +1 -0
- package/dist/experiments/fixtures/mock-graph-expander.d.ts +2 -1
- package/dist/experiments/fixtures/mock-graph-expander.d.ts.map +1 -1
- package/dist/experiments/metrics/collector.d.ts +49 -0
- package/dist/experiments/metrics/collector.d.ts.map +1 -0
- package/dist/experiments/metrics/hub-avoidance-calculator.d.ts +97 -0
- package/dist/experiments/metrics/hub-avoidance-calculator.d.ts.map +1 -0
- package/dist/experiments/metrics/index.d.ts +10 -0
- package/dist/experiments/metrics/index.d.ts.map +1 -0
- package/dist/experiments/metrics/storage.d.ts +29 -0
- package/dist/experiments/metrics/storage.d.ts.map +1 -0
- package/dist/experiments/metrics/types.d.ts +362 -0
- package/dist/experiments/metrics/types.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/boundedness.unit.test.d.ts +10 -0
- package/dist/experiments/proofs/path-salience/boundedness.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/dpi-consistency.unit.test.d.ts +11 -0
- package/dist/experiments/proofs/path-salience/dpi-consistency.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/equal-length.unit.test.d.ts +11 -0
- package/dist/experiments/proofs/path-salience/equal-length.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/length-independence.unit.test.d.ts +11 -0
- package/dist/experiments/proofs/path-salience/length-independence.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/monotonicity.unit.test.d.ts +10 -0
- package/dist/experiments/proofs/path-salience/monotonicity.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/subpath-optimality.unit.test.d.ts +12 -0
- package/dist/experiments/proofs/path-salience/subpath-optimality.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/universality.unit.test.d.ts +15 -0
- package/dist/experiments/proofs/path-salience/universality.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/path-salience/weak-link.unit.test.d.ts +10 -0
- package/dist/experiments/proofs/path-salience/weak-link.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/seed-bounded/completeness.unit.test.d.ts +10 -0
- package/dist/experiments/proofs/seed-bounded/completeness.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/seed-bounded/degeneracy.unit.test.d.ts +16 -0
- package/dist/experiments/proofs/seed-bounded/degeneracy.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/seed-bounded/order-independence.unit.test.d.ts +10 -0
- package/dist/experiments/proofs/seed-bounded/order-independence.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/seed-bounded/termination.unit.test.d.ts +11 -0
- package/dist/experiments/proofs/seed-bounded/termination.unit.test.d.ts.map +1 -0
- package/dist/experiments/proofs/test-utils.d.ts +161 -0
- package/dist/experiments/proofs/test-utils.d.ts.map +1 -0
- package/dist/experiments/run-experiments.d.ts +19 -0
- package/dist/experiments/run-experiments.d.ts.map +1 -0
- package/dist/experiments/suts/degree-sum-ranking-sut.d.ts +52 -0
- package/dist/experiments/suts/degree-sum-ranking-sut.d.ts.map +1 -0
- package/dist/experiments/suts/index.d.ts +13 -0
- package/dist/experiments/suts/index.d.ts.map +1 -0
- package/dist/experiments/suts/jaccard-arithmetic-ranking-sut.d.ts +52 -0
- package/dist/experiments/suts/jaccard-arithmetic-ranking-sut.d.ts.map +1 -0
- package/dist/experiments/suts/pagerank-sum-ranking-sut.d.ts +52 -0
- package/dist/experiments/suts/pagerank-sum-ranking-sut.d.ts.map +1 -0
- package/dist/experiments/suts/path-salience-sut.d.ts +62 -0
- package/dist/experiments/suts/path-salience-sut.d.ts.map +1 -0
- package/dist/experiments/suts/random-ranking-sut.d.ts +52 -0
- package/dist/experiments/suts/random-ranking-sut.d.ts.map +1 -0
- package/dist/experiments/suts/shortest-ranking-sut.d.ts +51 -0
- package/dist/experiments/suts/shortest-ranking-sut.d.ts.map +1 -0
- package/dist/generation/generators/density-helpers.d.ts.map +1 -1
- package/dist/generation/generators/edge-generator.d.ts.map +1 -1
- package/dist/generation/generators/forbidden-subgraph.d.ts +83 -0
- package/dist/generation/generators/forbidden-subgraph.d.ts.map +1 -0
- package/dist/generation/generators/geometric.d.ts +10 -0
- package/dist/generation/generators/geometric.d.ts.map +1 -1
- package/dist/generation/generators/intersection.d.ts +21 -0
- package/dist/generation/generators/intersection.d.ts.map +1 -0
- package/dist/generation/generators/invariants.d.ts.map +1 -1
- package/dist/generation/generators/perfect-variants.d.ts +49 -0
- package/dist/generation/generators/perfect-variants.d.ts.map +1 -0
- package/dist/generation/generators/probe.d.ts +19 -0
- package/dist/generation/generators/probe.d.ts.map +1 -0
- package/dist/generation/generators/structural.d.ts +11 -0
- package/dist/generation/generators/structural.d.ts.map +1 -0
- package/dist/generation/generators/width.d.ts +37 -0
- package/dist/generation/generators/width.d.ts.map +1 -0
- package/dist/generation/graph-validator.d.ts.map +1 -1
- package/dist/generation/spec/core.d.ts +4 -0
- package/dist/generation/spec/core.d.ts.map +1 -1
- package/dist/generation/spec/forbidden-subgraph.d.ts +89 -0
- package/dist/generation/spec/forbidden-subgraph.d.ts.map +1 -0
- package/dist/generation/spec/geometric.d.ts +28 -9
- package/dist/generation/spec/geometric.d.ts.map +1 -1
- package/dist/generation/spec/index.d.ts +1 -1
- package/dist/generation/spec/index.d.ts.map +1 -1
- package/dist/generation/spec/intersection.d.ts +49 -0
- package/dist/generation/spec/intersection.d.ts.map +1 -0
- package/dist/generation/spec/new-classes-index.d.ts +15 -0
- package/dist/generation/spec/new-classes-index.d.ts.map +1 -0
- package/dist/generation/spec/perfect-variants.d.ts +39 -0
- package/dist/generation/spec/perfect-variants.d.ts.map +1 -0
- package/dist/generation/spec/probe.d.ts +29 -0
- package/dist/generation/spec/probe.d.ts.map +1 -0
- package/dist/generation/spec/structural.d.ts +12 -1
- package/dist/generation/spec/structural.d.ts.map +1 -1
- package/dist/generation/spec/width.d.ts +29 -0
- package/dist/generation/spec/width.d.ts.map +1 -0
- package/dist/generation/spec.d.ts +23 -4
- package/dist/generation/spec.d.ts.map +1 -1
- package/dist/index.cjs +31 -31
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6616 -4485
- package/dist/index.umd.js +33 -33
- package/dist/interfaces/graph-expander.d.ts +44 -2
- package/dist/interfaces/graph-expander.d.ts.map +1 -1
- package/dist/registries/index.d.ts +16 -0
- package/dist/registries/index.d.ts.map +1 -0
- package/dist/registries/register-cases.d.ts +91 -0
- package/dist/registries/register-cases.d.ts.map +1 -0
- package/dist/registries/register-overlap-suts.d.ts +28 -0
- package/dist/registries/register-overlap-suts.d.ts.map +1 -0
- package/dist/registries/register-ranking-cases.d.ts +36 -0
- package/dist/registries/register-ranking-cases.d.ts.map +1 -0
- package/dist/registries/register-ranking-suts.d.ts +83 -0
- package/dist/registries/register-ranking-suts.d.ts.map +1 -0
- package/dist/registries/register-suts.d.ts +55 -0
- package/dist/registries/register-suts.d.ts.map +1 -0
- package/dist/suts/degree-prioritised-v1.0.0.d.ts +56 -0
- package/dist/suts/degree-prioritised-v1.0.0.d.ts.map +1 -0
- package/dist/suts/entropy-guided-v1.0.0.d.ts +55 -0
- package/dist/suts/entropy-guided-v1.0.0.d.ts.map +1 -0
- package/dist/suts/heterogeneity-aware-v1.0.0.d.ts +57 -0
- package/dist/suts/heterogeneity-aware-v1.0.0.d.ts.map +1 -0
- package/dist/suts/multi-frontier-adaptive-v1.0.0.d.ts +56 -0
- package/dist/suts/multi-frontier-adaptive-v1.0.0.d.ts.map +1 -0
- package/dist/suts/path-preserving-v1.0.0.d.ts +58 -0
- package/dist/suts/path-preserving-v1.0.0.d.ts.map +1 -0
- package/dist/suts/path-salience-v1.0.0.d.ts +57 -0
- package/dist/suts/path-salience-v1.0.0.d.ts.map +1 -0
- package/dist/suts/random-ranking-v1.0.0.d.ts +50 -0
- package/dist/suts/random-ranking-v1.0.0.d.ts.map +1 -0
- package/dist/suts/retrospective-salience-v1.0.0.d.ts +57 -0
- package/dist/suts/retrospective-salience-v1.0.0.d.ts.map +1 -0
- package/dist/suts/shortest-ranking-v1.0.0.d.ts +49 -0
- package/dist/suts/shortest-ranking-v1.0.0.d.ts.map +1 -0
- package/dist/suts/standard-bfs-v1.0.0.d.ts +53 -0
- package/dist/suts/standard-bfs-v1.0.0.d.ts.map +1 -0
- package/dist/types/graph-core.d.ts +176 -0
- package/dist/types/graph-core.d.ts.map +1 -0
- package/dist/types/graph-core.unit.test.d.ts +5 -0
- package/dist/types/graph-core.unit.test.d.ts.map +1 -0
- package/dist/utils/graph-adapters.d.ts +101 -0
- package/dist/utils/graph-adapters.d.ts.map +1 -0
- package/dist/utils/graph-adapters.unit.test.d.ts +5 -0
- package/dist/utils/graph-adapters.unit.test.d.ts.map +1 -0
- package/dist/validation/forbidden-subgraph-helpers.d.ts +45 -0
- package/dist/validation/forbidden-subgraph-helpers.d.ts.map +1 -0
- package/dist/validation/forbidden-subgraph.d.ts +66 -0
- package/dist/validation/forbidden-subgraph.d.ts.map +1 -0
- package/dist/validation/index.d.ts +4 -0
- package/dist/validation/index.d.ts.map +1 -1
- package/dist/validation/intersection.d.ts +17 -0
- package/dist/validation/intersection.d.ts.map +1 -0
- package/dist/validation/network.d.ts.map +1 -1
- package/dist/validation/perfect-variants.d.ts +30 -0
- package/dist/validation/perfect-variants.d.ts.map +1 -0
- package/dist/validation/perfect-variants.unit.test.d.ts +5 -0
- package/dist/validation/perfect-variants.unit.test.d.ts.map +1 -0
- package/dist/validation/probe.d.ts +17 -0
- package/dist/validation/probe.d.ts.map +1 -0
- package/dist/validation/structural-class.d.ts.map +1 -1
- package/dist/validation/symmetry.d.ts.map +1 -1
- package/dist/validation/width.d.ts +27 -0
- package/dist/validation/width.d.ts.map +1 -0
- package/dist/validation/width.unit.test.d.ts +5 -0
- package/dist/validation/width.unit.test.d.ts.map +1 -0
- package/package.json +25 -2
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { GraphFixture } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Star graph: 1 hub + 50 spokes.
|
|
4
|
+
*
|
|
5
|
+
* Worst case for node explosion - expanding the hub immediately exposes all nodes.
|
|
6
|
+
* DP should defer hub expansion; BFS/FB expand hub immediately.
|
|
7
|
+
*/
|
|
8
|
+
export declare const starGraphFixture: GraphFixture;
|
|
9
|
+
/**
|
|
10
|
+
* Hub-spoke graph: 4 interconnected hubs with 15 leaves each.
|
|
11
|
+
*
|
|
12
|
+
* Tests degree prioritisation on multi-hub topology.
|
|
13
|
+
* DP should expand leaves before hubs; baselines converge through hubs.
|
|
14
|
+
*/
|
|
15
|
+
export declare const hubSpokeFixture: GraphFixture;
|
|
16
|
+
/**
|
|
17
|
+
* Scale-free graph with preferential attachment.
|
|
18
|
+
*
|
|
19
|
+
* Simulates real-world citation networks with power-law degree distribution.
|
|
20
|
+
* High-degree nodes emerge naturally; DP should avoid converging through them.
|
|
21
|
+
*/
|
|
22
|
+
export declare const scaleFreeFixture: GraphFixture;
|
|
23
|
+
/**
|
|
24
|
+
* Grid graph (lattice) with uniform degree.
|
|
25
|
+
*
|
|
26
|
+
* Baseline for comparison - all algorithms should behave similarly
|
|
27
|
+
* since there are no hubs to prioritize or avoid.
|
|
28
|
+
*/
|
|
29
|
+
export declare const gridFixture: GraphFixture;
|
|
30
|
+
/**
|
|
31
|
+
* Double-star graph: two hubs connected, each with spokes.
|
|
32
|
+
*
|
|
33
|
+
* Tests pathfinding when optimal path MUST go through hubs.
|
|
34
|
+
* Both algorithms will find the path, but DP explores more spokes first.
|
|
35
|
+
*/
|
|
36
|
+
export declare const doubleStarFixture: GraphFixture;
|
|
37
|
+
/**
|
|
38
|
+
* All fixtures exported as a map.
|
|
39
|
+
*/
|
|
40
|
+
export declare const fixtures: Record<string, GraphFixture>;
|
|
41
|
+
/**
|
|
42
|
+
* Get all fixtures as an array.
|
|
43
|
+
*/
|
|
44
|
+
export declare const allFixtures: () => GraphFixture[];
|
|
45
|
+
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../../src/experiments/evaluation/__tests__/harness/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,YAkB9B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,YA4B7B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,YAuD9B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,YA8BzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAuB/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAMjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,QAAO,YAAY,EAA6B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Algorithm evaluation harness.
|
|
3
|
+
*
|
|
4
|
+
* Provides a structured framework for comparing graph traversal algorithms
|
|
5
|
+
* based on behaviour rather than raw performance.
|
|
6
|
+
*
|
|
7
|
+
* Key principles:
|
|
8
|
+
* - Correctness: Do algorithms find valid paths?
|
|
9
|
+
* - Exploration efficiency: How many nodes/edges are expanded?
|
|
10
|
+
* - Search behaviour: How does traversal order differ?
|
|
11
|
+
* - Diversity: How varied are the discovered paths?
|
|
12
|
+
*/
|
|
13
|
+
export * from './evaluator';
|
|
14
|
+
export * from './fixtures';
|
|
15
|
+
export * from './types';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/experiments/evaluation/__tests__/harness/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified metrics types for algorithm evaluation harness
|
|
3
|
+
*
|
|
4
|
+
* Based on the principle that algorithm comparison should focus on:
|
|
5
|
+
* - Correctness: Does the algorithm find valid paths?
|
|
6
|
+
* - Exploration efficiency: How many nodes/edges expanded?
|
|
7
|
+
* - Search behaviour: How does traversal order differ?
|
|
8
|
+
* - Diversity: How varied are the discovered paths?
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Normalized statistics returned by all expansion algorithms.
|
|
12
|
+
*
|
|
13
|
+
* All algorithms (DP, BFS, Frontier-Balanced, Random) should return
|
|
14
|
+
* compatible metrics for fair comparison.
|
|
15
|
+
*/
|
|
16
|
+
export interface ExpansionMetrics {
|
|
17
|
+
/** Algorithm name */
|
|
18
|
+
algorithm: string;
|
|
19
|
+
/** Graph identifier */
|
|
20
|
+
graph: string;
|
|
21
|
+
/** Number of seed nodes (N) */
|
|
22
|
+
numSeeds: number;
|
|
23
|
+
/** Total nodes expanded (popped from frontiers) */
|
|
24
|
+
nodesExpanded: number;
|
|
25
|
+
/** Total edges traversed */
|
|
26
|
+
edgesTraversed: number;
|
|
27
|
+
/** Iterations (single node expansions) performed */
|
|
28
|
+
iterations: number;
|
|
29
|
+
/** Number of unique nodes in the sampled subgraph */
|
|
30
|
+
sampledNodes: number;
|
|
31
|
+
/** Number of unique edges in the sampled subgraph */
|
|
32
|
+
sampledEdges: number;
|
|
33
|
+
/** Number of paths found (N >= 2 only) */
|
|
34
|
+
pathsFound: number;
|
|
35
|
+
/** Degree distribution of expanded nodes */
|
|
36
|
+
degreeDistribution: Record<string, number>;
|
|
37
|
+
/** Hub-specific metrics (if applicable) */
|
|
38
|
+
hubMetrics?: {
|
|
39
|
+
/** Number of hub nodes expanded */
|
|
40
|
+
hubsExpanded: number;
|
|
41
|
+
/** Total nodes expanded */
|
|
42
|
+
totalExpanded: number;
|
|
43
|
+
/** Percentage of paths that traverse hub nodes */
|
|
44
|
+
hubTraversalRate: number;
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Path analysis metrics for diversity assessment.
|
|
49
|
+
*/
|
|
50
|
+
export interface PathMetrics {
|
|
51
|
+
/** Algorithm name */
|
|
52
|
+
algorithm: string;
|
|
53
|
+
/** Graph identifier */
|
|
54
|
+
graph: string;
|
|
55
|
+
/** Number of paths found */
|
|
56
|
+
pathCount: number;
|
|
57
|
+
/** Minimum path length */
|
|
58
|
+
minLength: number;
|
|
59
|
+
/** Maximum path length */
|
|
60
|
+
maxLength: number;
|
|
61
|
+
/** Mean path length */
|
|
62
|
+
meanLength: number;
|
|
63
|
+
/** Median path length */
|
|
64
|
+
medianLength: number;
|
|
65
|
+
/** Path diversity score (0-1, higher = more diverse) */
|
|
66
|
+
diversity: number;
|
|
67
|
+
/** Number of unique nodes across all paths */
|
|
68
|
+
uniqueNodes: number;
|
|
69
|
+
/** Jaccard dissimilarity between paths */
|
|
70
|
+
jaccardDissimilarity: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Combined result from a single algorithm run on a graph.
|
|
74
|
+
*/
|
|
75
|
+
export interface AlgorithmRunResult {
|
|
76
|
+
/** Expansion metrics */
|
|
77
|
+
metrics: ExpansionMetrics;
|
|
78
|
+
/** Path analysis (if paths were found) */
|
|
79
|
+
pathMetrics?: PathMetrics;
|
|
80
|
+
/** Raw result for validation */
|
|
81
|
+
raw: {
|
|
82
|
+
paths: Array<{
|
|
83
|
+
fromSeed: number;
|
|
84
|
+
toSeed: number;
|
|
85
|
+
nodes: string[];
|
|
86
|
+
}>;
|
|
87
|
+
sampledNodes: Set<string>;
|
|
88
|
+
sampledEdges: Set<string>;
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Comparison result between two algorithms on the same graph.
|
|
93
|
+
*/
|
|
94
|
+
export interface AlgorithmComparison {
|
|
95
|
+
/** Graph identifier */
|
|
96
|
+
graph: string;
|
|
97
|
+
/** Algorithm A name */
|
|
98
|
+
algorithmA: string;
|
|
99
|
+
/** Algorithm B name */
|
|
100
|
+
algorithmB: string;
|
|
101
|
+
/** Algorithm A metrics */
|
|
102
|
+
metricsA: ExpansionMetrics;
|
|
103
|
+
/** Algorithm B metrics */
|
|
104
|
+
metricsB: ExpansionMetrics;
|
|
105
|
+
/** Relative efficiency (A vs B) - negative means A expanded fewer nodes */
|
|
106
|
+
efficiencyDelta: number;
|
|
107
|
+
/** Path diversity delta */
|
|
108
|
+
diversityDelta: number;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Test fixture with known ground truth properties.
|
|
112
|
+
*/
|
|
113
|
+
export interface GraphFixture {
|
|
114
|
+
/** Unique identifier for this graph */
|
|
115
|
+
name: string;
|
|
116
|
+
/** Human-readable description */
|
|
117
|
+
description: string;
|
|
118
|
+
/** Total number of nodes */
|
|
119
|
+
nodeCount: number;
|
|
120
|
+
/** Expected optimal path length (for N=2 seeds from opposite ends) */
|
|
121
|
+
optimalPathLength?: number;
|
|
122
|
+
/** Number of hubs (nodes with degree > threshold) */
|
|
123
|
+
hubCount?: number;
|
|
124
|
+
/** Whether graph is sparse (affects connectivity) */
|
|
125
|
+
isSparse?: boolean;
|
|
126
|
+
/** Factory function to create the graph expander */
|
|
127
|
+
create: () => import('../../../../interfaces/graph-expander').GraphExpander<unknown>;
|
|
128
|
+
/** Default seeds for N=1, N=2, N=3 tests */
|
|
129
|
+
seeds: {
|
|
130
|
+
/** Single seed for ego-network test */
|
|
131
|
+
n1: string[];
|
|
132
|
+
/** Two seeds for bidirectional test */
|
|
133
|
+
n2: string[];
|
|
134
|
+
/** Three seeds for multi-seed test */
|
|
135
|
+
n3: string[];
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/experiments/evaluation/__tests__/harness/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAChC,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAElB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IAEd,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IAEtB,4BAA4B;IAC5B,cAAc,EAAE,MAAM,CAAC;IAEvB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;IAEnB,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IAErB,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IAErB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IAEnB,4CAA4C;IAC5C,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3C,2CAA2C;IAC3C,UAAU,CAAC,EAAE;QACZ,mCAAmC;QACnC,YAAY,EAAE,MAAM,CAAC;QACrB,2BAA2B;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,kDAAkD;QAClD,gBAAgB,EAAE,MAAM,CAAC;KACzB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAElB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IAEd,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAElB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAElB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAElB,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IAEnB,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;IAErB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IAEpB,0CAA0C;IAC1C,oBAAoB,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,wBAAwB;IACxB,OAAO,EAAE,gBAAgB,CAAC;IAE1B,0CAA0C;IAC1C,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,gCAAgC;IAChC,GAAG,EAAE;QACJ,KAAK,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;QACpE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;KAC1B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IAEd,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IAEnB,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IAEnB,0BAA0B;IAC1B,QAAQ,EAAE,gBAAgB,CAAC;IAE3B,0BAA0B;IAC1B,QAAQ,EAAE,gBAAgB,CAAC;IAE3B,2EAA2E;IAC3E,eAAe,EAAE,MAAM,CAAC;IAExB,2BAA2B;IAC3B,cAAc,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IAEb,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAC;IAEpB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAElB,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,oDAAoD;IACpD,MAAM,EAAE,MAAM,OAAO,kCAAkC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAEhF,4CAA4C;IAC5C,KAAK,EAAE;QACN,uCAAuC;QACvC,EAAE,EAAE,MAAM,EAAE,CAAC;QAEb,uCAAuC;QACvC,EAAE,EAAE,MAAM,EAAE,CAAC;QAEb,sCAAsC;QACtC,EAAE,EAAE,MAAM,EAAE,CAAC;KACb,CAAC;CACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Experimental Validation of Originality, Correctness, and Significance (OCS)
|
|
3
|
+
*
|
|
4
|
+
* This test suite provides experimental evidence for three quality dimensions
|
|
5
|
+
* derived from ACM's pre-publication evaluation criteria (originality, correctness,
|
|
6
|
+
* novelty, importance, clarity). OCS consolidates these into three claim types:
|
|
7
|
+
*
|
|
8
|
+
* 1. ORIGINALITY: Is seed-bounded expansion fundamentally different from existing methods?
|
|
9
|
+
* - Structural difference: Different subgraphs produced
|
|
10
|
+
* - Ordering difference: Different visitation sequences
|
|
11
|
+
* - Path discovery difference: Different paths found
|
|
12
|
+
*
|
|
13
|
+
* 2. CORRECTNESS: Does the algorithm correctly implement the thesis specification?
|
|
14
|
+
* - Formula correctness: Priority function matches Equation 4.106
|
|
15
|
+
* - N-seed generalization: Works for N=1, N=2, N>=3
|
|
16
|
+
* - Frontier exhaustion: Natural termination without depth limits
|
|
17
|
+
*
|
|
18
|
+
* 3. SIGNIFICANCE: Does the method provide practical benefits for the application?
|
|
19
|
+
* - Hub mitigation: Defers high-degree node expansion
|
|
20
|
+
* - Edge efficiency: Traverses fewer edges than BFS
|
|
21
|
+
* - Representativeness: Captures diverse graph regions
|
|
22
|
+
*
|
|
23
|
+
* Test methodology: Compare Degree-Prioritised Expansion against:
|
|
24
|
+
* - Standard BFS (baseline for correctness)
|
|
25
|
+
* - Frontier-Balanced (alternative priority)
|
|
26
|
+
* - Random Priority (random baseline)
|
|
27
|
+
*
|
|
28
|
+
* @see https://www.acm.org/publications/policies/pre-publication-evaluation
|
|
29
|
+
*/
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=originality-correctness-significance.integration.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"originality-correctness-significance.integration.test.d.ts","sourceRoot":"","sources":["../../../../src/experiments/evaluation/__tests__/originality-correctness-significance.integration.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thesis Validation Tests with Statistical Rigor
|
|
3
|
+
*
|
|
4
|
+
* Experimental validation for originality, correctness, and significance claims.
|
|
5
|
+
* Uses real-world benchmark datasets, statistical significance testing, and
|
|
6
|
+
* application-specific metrics.
|
|
7
|
+
*
|
|
8
|
+
* Test Structure:
|
|
9
|
+
* 1. Benchmark Dataset Tests - Real graphs (Karate Club, Les Misérables, Cora)
|
|
10
|
+
* 2. Statistical Tests - Significance testing, effect sizes, confidence intervals
|
|
11
|
+
* 3. Multi-Baseline Comparison - All 4 methods compared
|
|
12
|
+
* 4. Application Metrics - Literature review specific evaluation
|
|
13
|
+
*/
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=thesis-validation.exp.integration.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thesis-validation.exp.integration.test.d.ts","sourceRoot":"","sources":["../../../../src/experiments/evaluation/__tests__/thesis-validation.exp.integration.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Round-Trip Tests for Graph Adapters
|
|
3
|
+
*
|
|
4
|
+
* These tests verify that data transformations preserve expected properties
|
|
5
|
+
* when converting between different representations:
|
|
6
|
+
* - Graph → BenchmarkGraphExpander → toGraph()
|
|
7
|
+
* - Edge array → TestGraphExpander → edges
|
|
8
|
+
* - Benchmark → BenchmarkGraphExpander → metrics
|
|
9
|
+
*
|
|
10
|
+
* Round-trip tests catch data loss, duplicate edge handling, and
|
|
11
|
+
* structural corruption during format conversions.
|
|
12
|
+
*/
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=adapter-roundtrip.unit.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-roundtrip.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/experiments/evaluation/__tests__/validation/adapter-roundtrip.unit.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canary Integration Tests with Known Ground Truth
|
|
3
|
+
*
|
|
4
|
+
* These tests validate the entire pipeline (adapter → algorithm → metrics)
|
|
5
|
+
* against known-correct results. They serve as "canary in the coal mine"
|
|
6
|
+
* to detect pipeline-level bugs that unit tests miss.
|
|
7
|
+
*
|
|
8
|
+
* Purpose:
|
|
9
|
+
* - Catch bugs like the BenchmarkGraphExpander reverse edge issue
|
|
10
|
+
* - Validate end-to-end behavior with real-world graphs
|
|
11
|
+
* - Provide known ground truth baselines for regression testing
|
|
12
|
+
*
|
|
13
|
+
* Each test uses graphs with known structural properties and validates
|
|
14
|
+
* that algorithms produce expected results.
|
|
15
|
+
*/
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=canary-tests.integration.test.d.ts.map
|
package/dist/experiments/evaluation/__tests__/validation/canary-tests.integration.test.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canary-tests.integration.test.d.ts","sourceRoot":"","sources":["../../../../../src/experiments/evaluation/__tests__/validation/canary-tests.integration.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
|
package/dist/experiments/evaluation/__tests__/validation/common/baselines/high-degree-first.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { GraphExpander } from '../../../../../../interfaces/graph-expander';
|
|
2
|
+
export declare class HighDegreeFirstExpansion {
|
|
3
|
+
private expander;
|
|
4
|
+
private seeds;
|
|
5
|
+
private visited;
|
|
6
|
+
private sampledEdges;
|
|
7
|
+
private paths;
|
|
8
|
+
constructor(expander: GraphExpander<{
|
|
9
|
+
id: string;
|
|
10
|
+
}>, seeds: string[]);
|
|
11
|
+
run(): Promise<{
|
|
12
|
+
sampledNodes: Set<string>;
|
|
13
|
+
sampledEdges: Set<string>;
|
|
14
|
+
paths: Array<{
|
|
15
|
+
nodes: string[];
|
|
16
|
+
edges: string[];
|
|
17
|
+
}>;
|
|
18
|
+
stats: {
|
|
19
|
+
nodesExpanded: number;
|
|
20
|
+
edgesTraversed: number;
|
|
21
|
+
iterations: number;
|
|
22
|
+
};
|
|
23
|
+
}>;
|
|
24
|
+
private checkPaths;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=high-degree-first.d.ts.map
|
package/dist/experiments/evaluation/__tests__/validation/common/baselines/high-degree-first.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"high-degree-first.d.ts","sourceRoot":"","sources":["../../../../../../../src/experiments/evaluation/__tests__/validation/common/baselines/high-degree-first.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAEjF,qBAAa,wBAAwB;IACpC,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,KAAK,CAAmD;gBAEpD,QAAQ,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;IAQ9D,GAAG,IAAI,OAAO,CAAC;QACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,KAAK,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YAAC,KAAK,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;QACnD,KAAK,EAAE;YAAE,aAAa,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7E,CAAC;IAuEF,OAAO,CAAC,UAAU;CA0BlB"}
|
package/dist/experiments/evaluation/__tests__/validation/common/baselines/low-degree-first.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { GraphExpander } from '../../../../../../interfaces/graph-expander';
|
|
2
|
+
export declare class LowDegreeFirstExpansion {
|
|
3
|
+
private expander;
|
|
4
|
+
private seeds;
|
|
5
|
+
private visited;
|
|
6
|
+
private sampledEdges;
|
|
7
|
+
private paths;
|
|
8
|
+
constructor(expander: GraphExpander<{
|
|
9
|
+
id: string;
|
|
10
|
+
}>, seeds: string[]);
|
|
11
|
+
run(): Promise<{
|
|
12
|
+
sampledNodes: Set<string>;
|
|
13
|
+
sampledEdges: Set<string>;
|
|
14
|
+
paths: Array<{
|
|
15
|
+
nodes: string[];
|
|
16
|
+
edges: string[];
|
|
17
|
+
}>;
|
|
18
|
+
stats: {
|
|
19
|
+
nodesExpanded: number;
|
|
20
|
+
edgesTraversed: number;
|
|
21
|
+
iterations: number;
|
|
22
|
+
};
|
|
23
|
+
}>;
|
|
24
|
+
private checkPaths;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=low-degree-first.d.ts.map
|
package/dist/experiments/evaluation/__tests__/validation/common/baselines/low-degree-first.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"low-degree-first.d.ts","sourceRoot":"","sources":["../../../../../../../src/experiments/evaluation/__tests__/validation/common/baselines/low-degree-first.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAEjF,qBAAa,uBAAuB;IACnC,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,KAAK,CAAmD;gBAEpD,QAAQ,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;IAQ9D,GAAG,IAAI,OAAO,CAAC;QACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,KAAK,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YAAC,KAAK,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;QACnD,KAAK,EAAE;YAAE,aAAa,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7E,CAAC;IAiEF,OAAO,CAAC,UAAU;CAyBlB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Graph } from '../../../../../algorithms/graph/graph.js';
|
|
2
|
+
import { Edge, Node } from '../../../../../algorithms/types/graph.js';
|
|
3
|
+
import { GraphExpander, Neighbor } from '../../../../../interfaces/graph-expander';
|
|
4
|
+
export declare class BenchmarkGraphExpander implements GraphExpander<{
|
|
5
|
+
id: string;
|
|
6
|
+
}> {
|
|
7
|
+
private graph;
|
|
8
|
+
private adjacency;
|
|
9
|
+
private degrees;
|
|
10
|
+
private nodeIds;
|
|
11
|
+
private nodeIndex;
|
|
12
|
+
private edgesBySource;
|
|
13
|
+
private edgesByTarget?;
|
|
14
|
+
private adjacencyBuilt;
|
|
15
|
+
private directed;
|
|
16
|
+
constructor(graph: {
|
|
17
|
+
getAllNodes: () => Array<{
|
|
18
|
+
id: string;
|
|
19
|
+
}>;
|
|
20
|
+
getAllEdges: () => Array<{
|
|
21
|
+
source: string;
|
|
22
|
+
target: string;
|
|
23
|
+
}>;
|
|
24
|
+
}, directed: boolean);
|
|
25
|
+
getNeighbors(nodeId: string): Promise<Neighbor[]>;
|
|
26
|
+
getDegree(nodeId: string): number;
|
|
27
|
+
/**
|
|
28
|
+
* Build adjacency for a specific node on-demand using binary search.
|
|
29
|
+
* Only processes the subset of edges relevant to this node.
|
|
30
|
+
* @param nodeId
|
|
31
|
+
*/
|
|
32
|
+
private buildAdjacencyForNode;
|
|
33
|
+
getNode(nodeId: string): Promise<{
|
|
34
|
+
id: string;
|
|
35
|
+
} | null>;
|
|
36
|
+
addEdge(): void;
|
|
37
|
+
calculatePriority(nodeId: string, options?: {
|
|
38
|
+
nodeWeight?: number;
|
|
39
|
+
epsilon?: number;
|
|
40
|
+
}): number;
|
|
41
|
+
getNodeCount(): number;
|
|
42
|
+
getAllNodeIds(): string[];
|
|
43
|
+
/**
|
|
44
|
+
* Get the degree distribution for statistical analysis.
|
|
45
|
+
*/
|
|
46
|
+
getDegreeDistribution(): Map<number, number>;
|
|
47
|
+
getAllDegrees(): Map<string, number>;
|
|
48
|
+
/**
|
|
49
|
+
* Convert this expander to a Graph instance for use with algorithms.
|
|
50
|
+
*
|
|
51
|
+
* Creates a new Graph populated with nodes and edges from this expander.
|
|
52
|
+
* This allows using the expander with algorithms that expect Graph interface.
|
|
53
|
+
*
|
|
54
|
+
* @returns A Graph instance compatible with path ranking algorithms
|
|
55
|
+
*/
|
|
56
|
+
toGraph(): Promise<Graph<Node, Edge>>;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=benchmark-graph-expander.d.ts.map
|
package/dist/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark-graph-expander.d.ts","sourceRoot":"","sources":["../../../../../../src/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAC;AACjE,OAAO,KAAK,EAAE,IAAI,EAAC,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAExF,qBAAa,sBAAuB,YAAW,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;IAW1E,OAAO,CAAC,KAAK;IAVd,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,aAAa,CAA0C;IAC/D,OAAO,CAAC,aAAa,CAAC,CAA0C;IAChE,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAU;gBAGjB,KAAK,EAAE;QACd,WAAW,EAAE,MAAM,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACzC,WAAW,EAAE,MAAM,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC7D,EACD,QAAQ,EAAE,OAAO;IAgCZ,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAUvD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAKjC;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA8EvB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAI7D,OAAO,IAAI,IAAI;IAIf,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,MAAM;IAMlG,YAAY,IAAI,MAAM;IAItB,aAAa,IAAI,MAAM,EAAE;IAIzB;;OAEG;IACH,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAQ5C,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAIpC;;;;;;;OAOG;IACG,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;CAsC3C"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contract Tests for BenchmarkGraphExpander
|
|
3
|
+
*
|
|
4
|
+
* These tests verify that BenchmarkGraphExpander correctly implements
|
|
5
|
+
* the GraphExpander interface contract, with particular focus on:
|
|
6
|
+
* - Undirected graph edge handling (forward + reverse edges)
|
|
7
|
+
* - Binary search correctness for edge lookup
|
|
8
|
+
* - Lazy adjacency building
|
|
9
|
+
* - Degree calculation consistency
|
|
10
|
+
*
|
|
11
|
+
* Context: The BenchmarkGraphExpander bug (missing reverse edge lookup)
|
|
12
|
+
* caused universal false negatives in coverage metrics. These tests
|
|
13
|
+
* prevent similar bugs by validating adapter implementation correctness.
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=benchmark-graph-expander.unit.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark-graph-expander.unit.test.d.ts","sourceRoot":"","sources":["../../../../../../src/experiments/evaluation/__tests__/validation/common/benchmark-graph-expander.unit.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { TestGraphExpander } from './test-graph-expander';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a star graph - worst case for node explosion.
|
|
4
|
+
* Expanding the hub immediately exposes all nodes.
|
|
5
|
+
* @param numberSpokes - Number of spokes connected to the hub
|
|
6
|
+
*/
|
|
7
|
+
export declare const createStarGraph: (numberSpokes: number) => Array<[string, string]>;
|
|
8
|
+
/**
|
|
9
|
+
* Creates a double-star graph with two hubs connected.
|
|
10
|
+
* Tests behavior when path goes through hubs.
|
|
11
|
+
* @param spokesPerHub - Number of spokes per hub
|
|
12
|
+
*/
|
|
13
|
+
export declare const createDoubleStarGraph: (spokesPerHub: number) => Array<[string, string]>;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a hub-and-spoke network with multiple interconnected hubs.
|
|
16
|
+
* @param numberHubs - Number of hubs
|
|
17
|
+
* @param spokesPerHub - Number of spokes per hub
|
|
18
|
+
*/
|
|
19
|
+
export declare const createMultiHubGraph: (numberHubs: number, spokesPerHub: number) => Array<[string, string]>;
|
|
20
|
+
/**
|
|
21
|
+
* Creates a scale-free-like graph with power-law degree distribution.
|
|
22
|
+
* @param numberNodes - Number of nodes in the graph
|
|
23
|
+
* @param seed - Random seed for reproducibility
|
|
24
|
+
*/
|
|
25
|
+
export declare const createScaleFreeGraph: (numberNodes: number, seed?: number) => Array<[string, string]>;
|
|
26
|
+
/**
|
|
27
|
+
* Creates a star graph with a central hub connected to all other nodes.
|
|
28
|
+
* @param numSpokes
|
|
29
|
+
* @param numberSpokes
|
|
30
|
+
*/
|
|
31
|
+
export declare const createStarGraphExpander: (numberSpokes: number) => TestGraphExpander;
|
|
32
|
+
/**
|
|
33
|
+
* Creates a hub graph with multiple hubs connected to each other and to leaf nodes.
|
|
34
|
+
* @param numHubs
|
|
35
|
+
* @param numberHubs
|
|
36
|
+
* @param leavesPerHub
|
|
37
|
+
*/
|
|
38
|
+
export declare const createHubGraphExpander: (numberHubs: number, leavesPerHub: number) => TestGraphExpander;
|
|
39
|
+
/**
|
|
40
|
+
* Creates a grid graph (lattice) with uniform degree distribution.
|
|
41
|
+
* @param rows
|
|
42
|
+
* @param cols
|
|
43
|
+
*/
|
|
44
|
+
export declare const createGridGraphExpander: (rows: number, cols: number) => TestGraphExpander;
|
|
45
|
+
/**
|
|
46
|
+
* Creates a chain graph: A -- B -- C -- D -- ...
|
|
47
|
+
* @param length
|
|
48
|
+
*/
|
|
49
|
+
export declare const createChainGraphExpander: (length: number) => TestGraphExpander;
|
|
50
|
+
export { TestGraphExpander } from './test-graph-expander';
|
|
51
|
+
//# sourceMappingURL=graph-generators.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-generators.d.ts","sourceRoot":"","sources":["../../../../../../src/experiments/evaluation/__tests__/validation/common/graph-generators.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM1D;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,cAAc,MAAM,KAAG,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAM5E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,cAAc,MAAM,KAAG,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAclF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,YAAY,MAAM,EAAE,cAAc,MAAM,KAAG,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAgBpG,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,aAAa,MAAM,EAAE,aAAS,KAAG,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CA4C3F,CAAC;AAMF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,cAAc,MAAM,KAAG,iBAM9D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GAAI,YAAY,MAAM,EAAE,cAAc,MAAM,KAAG,iBAkBjF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,MAAM,MAAM,EAAE,MAAM,MAAM,KAAG,iBAkBpE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,KAAG,iBAMzD,CAAC;AAGF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { GraphExpander, Neighbor } from '../../../../../interfaces/graph-expander';
|
|
2
|
+
export interface TestNode {
|
|
3
|
+
id: string;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Graph expander that tracks which nodes were expanded and hub expansions.
|
|
7
|
+
*/
|
|
8
|
+
export declare class InstrumentedExpander implements GraphExpander<TestNode> {
|
|
9
|
+
private adjacency;
|
|
10
|
+
private degrees;
|
|
11
|
+
private nodes;
|
|
12
|
+
private expandedNodes;
|
|
13
|
+
private hubNodes;
|
|
14
|
+
private expansionOrder;
|
|
15
|
+
constructor(edges: Array<[string, string]>, hubPercentile?: number);
|
|
16
|
+
getNeighbors(nodeId: string): Promise<Neighbor[]>;
|
|
17
|
+
getDegree(nodeId: string): number;
|
|
18
|
+
getNode(nodeId: string): Promise<TestNode | null>;
|
|
19
|
+
addEdge(): void;
|
|
20
|
+
calculatePriority(nodeId: string, options?: {
|
|
21
|
+
nodeWeight?: number;
|
|
22
|
+
epsilon?: number;
|
|
23
|
+
}): number;
|
|
24
|
+
getExpandedNodes(): Set<string>;
|
|
25
|
+
getExpansionOrder(): string[];
|
|
26
|
+
getHubNodesExpanded(): number;
|
|
27
|
+
getHubNodes(): Set<string>;
|
|
28
|
+
reset(): void;
|
|
29
|
+
getAllDegrees(): Map<string, number>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=instrumented-expander.d.ts.map
|
package/dist/experiments/evaluation/__tests__/validation/common/instrumented-expander.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrumented-expander.d.ts","sourceRoot":"","sources":["../../../../../../src/experiments/evaluation/__tests__/validation/common/instrumented-expander.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAOxF,MAAM,WAAW,QAAQ;IACxB,EAAE,EAAE,MAAM,CAAC;CACX;AAMD;;GAEG;AACH,qBAAa,oBAAqB,YAAW,aAAa,CAAC,QAAQ,CAAC;IACnE,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,cAAc,CAAgB;gBAE1B,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,aAAa,SAAM;IA8BzD,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAQvD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI3B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAIvD,OAAO,IAAI,IAAI;IAIf,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,MAAM;IAOlG,gBAAgB,IAAI,GAAG,CAAC,MAAM,CAAC;IAI/B,iBAAiB,IAAI,MAAM,EAAE;IAI7B,mBAAmB,IAAI,MAAM;IAU7B,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;IAI1B,KAAK,IAAI,IAAI;IAKb,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAGpC"}
|
package/dist/experiments/evaluation/__tests__/validation/common/instrumented-expander.unit.test.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contract Tests for InstrumentedExpander
|
|
3
|
+
*
|
|
4
|
+
* These tests verify that InstrumentedExpander correctly implements
|
|
5
|
+
* the GraphExpander interface contract while also providing instrumentation
|
|
6
|
+
* features for tracking:
|
|
7
|
+
* - Node expansions
|
|
8
|
+
* - Expansion order
|
|
9
|
+
* - Hub node identification
|
|
10
|
+
* - Reset functionality
|
|
11
|
+
*
|
|
12
|
+
* InstrumentedExpander is used for testing algorithms that need to
|
|
13
|
+
* verify expansion behavior (e.g., hub-deferring properties).
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=instrumented-expander.unit.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrumented-expander.unit.test.d.ts","sourceRoot":"","sources":["../../../../../../src/experiments/evaluation/__tests__/validation/common/instrumented-expander.unit.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|