grammar-inference-engine/experiments/results/flask_file_path_k2.json
tobjend b516b2985d feat: implement Reduce algorithm (Algorithm 4, TODS 2010)
- bex/reduce.py: Faithful implementation of Reduce with support-weighted
  SOA edit distance, adjunction, iterative merging, and Minimize
- experiments/context_eval.py: Multi-codebase support (RAGSAK + Flask),
  Reduce experiments with thresholds 0.05-0.4
- tests/test_reduce.py: 24 tests covering all Reduce components
- Flask cloned to external_refs/flask for cross-validation

Results:
- RAGSAK: 12.0% coverage (First 3 symbols)
- Flask: 10.7% coverage (First 3 symbols)
- Reduce has minimal impact (1-2 merges per codebase at ε=0.3)
- Coverage ceiling appears to be ~10-12% for prefix-based grouping
2026-07-12 00:11:38 +02:00

90 lines
No EOL
2 KiB
JSON

{
"strategy": "Option A: File path k=2",
"total_contexts": 15,
"meaningful_contexts": 9,
"total_methods": 1391,
"methods_in_good_groups": 0,
"sore_successes": 0,
"sore_failures": 1,
"skip_reasons": {
"too_large": 3,
"large_alphabet": 1,
"too_diverse": 4
},
"groups": [
{
"context": "('tests',)",
"methods": 943,
"unique": 543,
"unique_ratio": 0.576,
"sore": "SKIP(too_large)",
"sore_success": false
},
{
"context": "('src', 'flask')",
"methods": 207,
"unique": 192,
"unique_ratio": 0.928,
"sore": "SKIP(too_large)",
"sore_success": false
},
{
"context": "('flask', 'sansio')",
"methods": 102,
"unique": 82,
"unique_ratio": 0.804,
"sore": "SKIP(too_large)",
"sore_success": false
},
{
"context": "('flask', 'json')",
"methods": 49,
"unique": 39,
"unique_ratio": 0.796,
"sore": "SKIP(large_alphabet)",
"sore_success": false
},
{
"context": "('tutorial', 'tests')",
"methods": 23,
"unique": 22,
"unique_ratio": 0.957,
"sore": "SKIP(too_diverse)",
"sore_success": false
},
{
"context": "('tests', 'type_check')",
"methods": 23,
"unique": 9,
"unique_ratio": 0.391,
"sore": "\u2205",
"sore_success": false
},
{
"context": "('tutorial', 'flaskr')",
"methods": 18,
"unique": 18,
"unique_ratio": 1.0,
"sore": "SKIP(too_diverse)",
"sore_success": false
},
{
"context": "('src', 'task_app')",
"methods": 11,
"unique": 11,
"unique_ratio": 1.0,
"sore": "SKIP(too_diverse)",
"sore_success": false
},
{
"context": "('javascript', 'tests')",
"methods": 4,
"unique": 4,
"unique_ratio": 1.0,
"sore": "SKIP(too_diverse)",
"sore_success": false
}
],
"coverage": 0.0,
"elapsed_seconds": 0.02
}