Enhancing APR with PRISM: A Semantic-Based Approach to Overfitting Patch Detection
summary
PRISM builds a custom static analyzer that extracts 11 semantic properties (defs/uses, memory values, exceptions) and represents patches as a semantic feature vector, then learns a compact boolean formula to filter overfitting patches. Evaluated on ranked patches from 10 APR tools and 1,829 labeled patches, PRISM finds nine additional correct fixes while cutting 72 manual reviews versus baseline, and consistently removes more incorrect patches than prior APCC methods at equal correct-patch preservation rates.
AI-written summary · about
chapters (10)
- 0:00Automatic program repair overfitting
- 1:49Why pruning techniques fail
- 3:38Limitations of prior methods
- 5:08PRISM's semantic approach
- 6:56PRISM's semantic features
- 7:59Patch classification algorithm
- 8:42PRISM evaluation with L-APR
- 9:47PRISM overfitting results
- 10:29PRISM summary
- 11:16Q&A
related talks
12mAutomating Code Fixes with SonarQube Remediation Agent
12mAutomatic Grammar Repair
45mAutomating away bugs with Error Prone in practice
01h 01m"Looks Good to Me": A Practical Guide to Handling AI-Generated Code
16mIncremental Predicate Analysis for Regression Verification
40mStreamlining Large-Scale Java Development Using Error Prone
04mFTFY: Research advances in automatic bug repair
18mPreview: Verification (Correctness & Debugging)
