Publications

Conference Papers

  1. Evaluating Directed Fuzzers: Are We Heading in the Right Direction?
    Tae Eun Kim, Jaeseung Choi, Seongjae Im, Kihong Heo, and Sang Kil Cha
    FSE 2024: International Conference on the Foundations of Software Engineering, 2024
    [paper] [slides]

  2. Translation Validation for JIT Compiler in the V8 JavaScript Engine
    Seungwan Kwon, Jaeseong Kwon, Wooseok Kang, Juneyoung Lee, and Kihong Heo
    ICSE 2024: International Conference on Software Engineering, 2024
    [paper] [slides] [project page]

  3. DAFL: Directed Grey-box Fuzzing Guided by Data Dependency
    Tae Eun Kim, Jaeseung Choi, Kihong Heo, and Sang Kil Cha
    Security 2023: USENIX Security Symposium, 2023
    [paper] [slides] [video]

  4. Tracer: Signature-based Static Analysis for Detecting Recurring Vulnerabilities
    Wooseok Kang, Byoungho Son, and Kihong Heo
    CCS 2022: ACM Conference on Computer and Communications Security, 2022
    [paper] [slides] [project page]

  5. Learning Probabilistic Models for Static Analysis Alarms
    Hyunsu Kim, Mukund Raghothaman, and Kihong Heo
    🏆 Best Artifact Award
    ICSE 2022: International Conference on Software Engineering, 2022
    [paper] [video]

  6. PacJam: Securing Dependencies Continuously via Package-Oriented Debloating
    Pardis Pashakhanloo, Aravind Machiry, Hyonyoung Choi, Anthony Canino, Kihong Heo, Insup Lee, and Mayur Naik
    ASIACCS 2022: ACM ASIA Conference on Computer and Communications Security, 2022
    [paper]

  7. 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]

  8. 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]

  9. 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]

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

  11. 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]

  12. 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]

  13. 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]

  14. 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]

  15. 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]

  16. 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]

  17. 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]

  18. 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. Improving Fault Localization with External Oracle by using Counterfactual Execution
    Jongchan Park, Tae Eun Kim, Dongsun Kim, and Kihong Heo
    TOSEM: ACM Transactions on Software Engineering and Methodology, 2024
    [paper]

  2. 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]

  3. 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]

  4. 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]

  5. 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]

  6. 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]

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

  8. 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]

  9. 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]