Reliable software evolution and transformation

I study the reliability of software transformation tools, especially refactoring engines. My work investigates refactoring engine bugs in widely used IDEs such as Eclipse, IntelliJ IDEA, and NetBeans, and develops techniques for testing refactoring engines using historical bug reports and LLM-generated program variants. More broadly, I am interested in behavior-preserving program transformations, program simplification, refactoring precondition inference, and repository-scale refactoring support.