Semantic Patch Inference

Publication Type

Conference Paper

Publication Date



We propose a tool for inferring transformation specifications from a few examples of original and updated code. These transformation specifications may contain multiple code fragments from within a single function, all of which must be present for the transformation to apply. This makes the inferred transformations context sensitive. Our algorithm is based on depth-first search, with pruning. Because it is applied locally to a collection of functions that contain related changes, it is efficient in practice. We illustrate the approach on an example drawn from recent changes to the Linux kernel.


Software evolution, collateral evolution, semantic pat


Computer Sciences | Software Engineering


27th IEEE/ACM International Conference on Automated Software Engineering (ASE)