Publications

Conference Papers

  1. Boosting Static Analysis Accuracy With Instrumented Test Executions
    Tianyi Chen, Kihong Heo, and Mukund Raghothaman
    ESEC/FSE 2021: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2021
    [paper]

  2. Synthesizing Datalog programs using numerical relaxation
    Xujie Si, Mukund Raghothaman, Kihong Heo, and Mayur Naik
    IJCAI 2019: International Joint Conferences on Artificial Intelligence, 2019
    [paper]

  3. Continuously Reasoning about Programs via Differential Bayesian Inference
    Kihong Heo, Mukund Raghothaman, Xujie Si, and Mayur Naik
    🏆 Distinguished Paper Award
    PLDI 2019: Programming Language Design and Implementation, 2019
    [paper]

  4. Resource-aware Program Analysis via Online Abstraction Coarsening
    Kihong Heo, Hakjoo Oh, and Hongseok Yang
    🏆 Distinguished Paper Award
    ICSE 2019: 41st ACM/IEEE International Conference on Software Engineering, 2019
    [paper] [slides]

  5. Effective Program Debloating via Reinforcement Learning
    Kihong Heo, Woosuk Lee, Pardis Pashakhanloo, and Mayur Naik
    CCS 2018: ACM Conference on Computer and Communications Security, 2018
    [paper] [slides] [video] [code]

  6. User-Guided Program Reasoning using Bayesian Inference
    Mukund Raghothaman, Sulekha Kulkarni, Kihong Heo, and Mayur Naik
    PLDI 2018: Programming Language Design and Implementation, 2018
    [paper] [full-version] [bib]

  7. Accelerating Search-Based Program Synthesis Using Learned Probabilistic Models
    Woosuk Lee, Kihong Heo, Rajeev Alur, and Mayur Naik
    PLDI 2018: Programming Language Design and Implementation, 2018
    [paper] [bib] [code]

  8. Machine-Learning-Guided Selectively Unsound Static Analysis
    Kihong Heo, Hakjoo Oh, and Kwangkeun Yi
    ICSE 2017: The 39th International Conference on Software Engineering, 2017
    [paper] [bib] [slides]

  9. Automatically Generating Features for Learning Program Analysis Heuristics for C-Like Languages
    Kwonsoo Chae, Hakjoo Oh, Kihong Heo, and Hongseok Yang
    OOPSLA 2017: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, 2017
    [paper] [bib]

  10. Learning a Variable-Clustering Strategy for Octagon from Labeled Data Generated by a Static Analysis
    Kihong Heo, Hakjoo Oh, and Hongseok Yang
    SAS 2016: The 23rd Static Analysis Symposium, 2016
    [paper] [bib] [slides]

  11. Selective Context-Sensitivity Guided by Impact Pre-Analysis
    Hakjoo Oh, Wonchan Lee, Kihong Heo, Hongseok Yang, and Kwangkeun Yi
    PLDI 2014: The 35th ACM SIGPLAN Conference of Programming Language Design and Implementation, 2014
    [paper] [full-version] [bib]

  12. Design and Implementation of Sparse Global Analyses for C-like Languages
    Hakjoo Oh, Kihong Heo, Wonchan Lee, Woosuk Lee, and Kwangkeun Yi
    PLDI 2012: The 33rd ACM SIGPLAN Conference of Programming Language Design and Implementation, 2012
    [paper] [bib]

Journal Papers

  1. Learning Analysis Strategies for Octagon and Context Sensitivity from Labeled Data Generated by Static Analyses
    Kihong Heo, Hakjoo Oh, and Hongseok Yang
    Invited Paper
    FMSD: Formal Methods in System Design, 2018
    [paper]

  2. Adapting Static Analysis via Learning with Bayesian Optimization
    Kihong Heo, Hakjoo Oh, Hongseok Yang, and Kwangkeun Yi
    TOPLAS: ACM Transactions on Programming Languages and Systems, 2018
    [paper]

  3. Selective Conjunction of Context-sensitivity and Octagon Domain toward Scalable and Precise Global Static Analysis
    Kihong Heo, Hakjoo Oh, and Kwangkeun Yi
    SP&E: Software-Practice and Experience, 2017
    [paper] [bib]

  4. Sound Non-Statistical Clustering of Static Analysis Alarms
    Woosuk Lee, Wonchan Lee, Dongok Kang, Kihong Heo, Hakjoo Oh, and Kwangkeun Yi
    TOPLAS: ACM Transactions on Programming Languages and Systems, 2017
    [paper] [bib]

  5. Selective X-Sensitive Analysis Guided by Impact Pre-Analysis
    Hakjoo Oh, Wonchan Lee, Kihong Heo, Hongseok Yang, and Kwangkeun Yi
    TOPLAS: ACM Transactions on Programming Languages and Systems, 2016
    [paper] [bib]

  6. Widening with Thresholds via Binary Search
    Sol Kim, Kihong Heo, Hakjoo Oh, and Kwangkeun Yi
    SP&E: Software-Practice and Experience, 2016
    [paper] [bib]

  7. Global Sparse Analysis Framework
    Hakjoo Oh, Kihong Heo, Wonchan Lee, Woosuk Lee, Daejun Park, Jeehoon Kang, and Kwangkeun Yi
    TOPLAS: ACM Transactions on Programming Languages and Systems, 2014
    [paper] [bib]

  8. A Sparse Evaluation Technique for Detailed Semantic Analyses
    Yoonseok Ko, Kihong Heo, and Hakjoo Oh
    Computer Languages, Systems, & Structures, 2014
    [paper] [bib]

Workshop Papers

  1. Difflog: Beyond Deductive Methods in Program Analysis
    Mukund Raghothaman, Sulekha Kulkarni, Richard Zhang, Xujie Si, Kihong Heo, Woosuk Lee, and Mayur Naik
    ML4P: 1st Workshop on Machine Learning for Programming, 2018
    [paper]