Hakjoo Oh
Professor
Department of Computer Science and Engineering
College of Informatics, Korea University
T : +82.2.3290.4601
H : +82.10.9171.9547

B : hakjoo_oh@korea.ac.kr
E : https://prl.korea.ac.kr

Research Areas
Programming languages with applications to software engineering, security, and AI:▸ Program analysis for automatically detecting software bugs and vulnerabilities▸ Program repair for automatically fixing buggy or vulnerable software▸ Program synthesis for automatically writing programs on behalf of humans

Educational BackgroundPh.D. in Computer Science. Seoul National University
M.S. in Computer Science. Seoul National University
B.S. in Computer Science. KAISTSeoul Science High School

Mar 2007 – Feb 2012
Mar 2005 – Feb 2007
Mar 2001 – Feb 2005
Mar 1999 – Feb 2001

Employment History
Professor, Korea University
Associate Professor, Korea University
Assistant Professor, Korea University
Research Assistant Professor, Seoul National University
Postdoctoral Researcher, Seoul National University

Sep 2023 – PresentSep 2018 – Aug 2023
Mar 2015 – Aug 2018
Mar 2014 – Feb 2015
Mar 2012 – Feb 2014

Awards
1. ACM SIGSOFT Distinguished Paper Award at the ACM/IEEE International
Conference on Software Engineering (ICSE) for “SymTuner: Maximizing the Power ofSymbolic Execution by Adaptively Tuning External Parameters” , May 2022.
2. ACM SIGSOFT Distinguished Paper Award at the ACM SIGSOFT InternationalSymposium on Software Testing and Analysis (ISSTA) for “Effective White-box Testingof Deep Neural Networks with Adaptive Neuron-Selection Strategy”, July 2020.
3. ACM SIGSOFT Distinguished Paper Award at the ACM/IEEE International
Conference on Software Engineering (ICSE) for “Resource-aware Program Analysis via
Online Abstraction Coarsening” , May 2019.

1

4. Best Paper Award at the ACM SIGPLAN International Conference on Generative
Programming: Concepts and Experiences (GPCE) for “Synthesizing Regular Expressions
from Examples for Introductory Automata Assignments”, November 2016.
5. Outstanding Lecture Award, Korea University▸ 2021.04 (COSE 212 Programming Languages)▸ 2020.11 (COSE 312 Compilers)▸ 2019.10 (COSE 215 Theory of Computation)

Publications
Published papers on programming languages, software engineering, and security in premierconferences and journals such as POPL (2022), PLDI (2012, 2014, 2020, 2024), OOPSLA(2015, 2017a, 2017b, 2018a, 2018b, 2019, 2020, 2023), TOPLAS (2014, 2016, 2017, 2018,2019, 2023), ICSE (2017, 2018, 2019, 2020, 2021, 2022a, 2022b, 2023a, 2023b, 2023c), FSE(2018, 2019, 2020, 2021, 2022, 2023), ASE (2018), ISSTA (2020), TSE (2020), IEEE S&P(2017, 2020), USENIX Security (2021, 2023), and IJCAI (2017, 2018).
1. Minseok Jeon, Jihyeok Park, and Hakjoo Oh.
PL4XGL: A Programming Language Approach to Explainable Graph Learning
PLDI 2024: The 45th ACM SIGPLAN Conference on Programming Language Designand Implementation
2. Sunbeom So and Hakjoo Oh.
SmartFix: Fixing Vulnerable Smart Contracts by Accelerating Generate-and-Verify Repair using Statistical Models
ESEC/FSE 2023: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
3. Seunghoon Woo, Eunjin Choi, Heejo Lee, and Hakjoo Oh.
V1SCAN: Discovering 1-day Vulnerabilities in Reused C/C++ Open-source Software
Components Using Code Classification Techniques
Security 2023: 32nd USENIX Security Symposium
4. Dongkwon Lee, Woosuk Lee, Hakjoo Oh, and Kwangkeun Yi.
Optimizing Homomorphic Evaluation Circuits by Program Synthesis and Time-Bounded
Exhaustive Search
TOPLAS: ACM Transactions on Programming Languages and Systems. 2023
5. Chan Gu Kang and Hakjoo Oh.
Modular Component-based Quantum Circuit Synthesis.
OOPSLA 2023: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications. (conditional accept)
6. Jinkook Kim, Minseok Jeon, Sejeong Jang, and Hakjoo Oh.
Automating Endurance Test for Flash-based Storage Devices in Samsung Electronics.
ICST 2023: ICST 2023: IEEE International Conference on Software Testing, Verificationand Validation (Industry Track)2

7. Myungho Lee, Sooyoung Cha, and Hakjoo Oh.
Learning Seed-Adaptive Mutation Strategies for Greybox Fuzzing.
ICSE 2023: International Conference on Software Engineering
8. Jongwook Kim, Sunbeom So, and Hakjoo Oh.
Diver: Oracle-Guided SMT Solver Testing with Unrestricted Random Mutations.
ICSE 2023: International Conference on Software Engineering
9. Yoonseok Ko and Hakjoo Oh.
Learning to Boost Disjunctive Static Bug-Finders.
ICSE 2023: International Conference on Software Engineering
10. Wonseok Oh and Hakjoo Oh.
PyTER: Effective Program Repair for Python Type Errors.
ESEC/FSE 2022: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
11. Sooyoung Cha, Myungho Lee, Seokhyun Lee, and Hakjoo Oh.
SymTuner: Maximizing the Power of Symbolic Execution by Adaptively Tuning ExternalParameters.
ICSE 2022: International Conference on Software Engineering. (ACM SIGSOFTDistinguished Paper Award)
12. Junhee Lee*, Seongjoon Hong*, and Hakjoo Oh (* contributed equally)
NPEX: Repairing Java Null Pointer Exceptions without Tests.
ICSE 2022: International Conference on Software Engineering
13. Minseok Jeon and Hakjoo Oh.
Return of CFA: Call-Site Sensitivity Can Be Superior to Object Sensitivity Even for
Object-Oriented Programs.
POPL 2022: The 49th ACM SIGPLAN Symposium on Principles of Programming Languages
14. Sooyoung Cha, Seongjoon Hong, Jiseong Bak, Jingyoung Kim, Junhee Lee, Hakjoo Oh.
Enhancing Dynamic Symbolic Execution by Automatically Learning Search Heuristics.
TSE: IEEE Transactions on Software Engineering. 2021 (accepted)
15. Dowon Song, Woosuk Lee, and Hakjoo Oh.
Context-Aware and Data-Driven Feedback Generation for Programming Assignments.
ESEC/FSE 2021: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
16. Donghoon Jeon, Minseok Jeon, and Hakjoo Oh.
A Practical Algorithm for Learning Disjunctive Abstraction Heuristics in Static ProgramAnalysis.
IST: Information and Software Technology.
17. Sunbeom So, Seongjoon Hong, and Hakjoo Oh.
SmarTest: Effectively Hunting Vulnerable Transaction Sequences in Smart Contractsthrough Language Model-Guided Symbolic Execution.
Security 2021: The 30th USENIX Security Symposium
18. Seunghoon Woo, Sunghan Park, Seulbae Kim, Heejo Lee, and Hakjoo Oh.
CENTRIS: A Precise and Scalable Approach for Identifying Modified Open-Source Software Reuse.
ICSE 2021: The 43rd ACM/IEEE International Conference on Software Engineering.
319. Minseok Jeon, Myungho Lee, and Hakjoo Oh.
Learning Graph-based Heuristics for Pointer Analysis without Handcrafting ApplicationSpecific Features.
OOPSLA 2020: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications.
20. Sooyoung Cha and Hakjoo Oh.
Making Symbolic Execution Promising by Learning Aggressive State-Pruning Strategy.
ESEC/FSE 2020: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
21. Seokhyun Lee, Sooyoung Cha, Dain Lee, and Hakjoo Oh.
Effective White-box Testing of Deep Neural Networks with Adaptive Neuron-Selection
Strategy.
ISSTA 2020: The ACM SIGSOFT International Symposium on Software Testing andAnalysis. (ACM SIGSOFT Distinguished Paper Award)
22. Dongkwon Lee, Woosuk Lee, Hakjoo Oh, and Kwangkeun Yi.
Optimizing Homomorphic Evaluation Circuits by Program Synthesis and Term Rewriting.
PLDI 2020: The 41st ACM SIGPLAN Conference on Programming Language Designand Implementation
23. Seongjoon Hong*, Junhee Lee*, Jeongsoo Lee, and Hakjoo Oh (* contributed equally)
SAVER: Scalable, Precise, and Safe Memory-Error Repair.
ICSE 2020: The 42nd ACM/IEEE International Conference on Software Engineering.
24. Sunbeom So, Myungho Lee, Jisu Park, Heejo Lee, and Hakjoo Oh.
VeriSmart: A Highly Precise Safety Verifier for Ethereum Smart Contracts.
S&P 2020: The 41st IEEE Symposium on Security and Privacy.
25. Dowon Song, Myungho Lee, and Hakjoo Oh.
Automatic and Scalable Detection of Logical Errors in Functional Programming Assignments.
OOPSLA 2019: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications.
26. Sooyoung Cha and Hakjoo Oh.
Concolic Testing with Adaptively Changing Search Heuristics.
ESEC/FSE 2019: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
27. Kihong Heo, Hakjoo Oh, and Hongseok Yang.
Resource-aware Program Analysis via Online Abstraction Coarsening.
ICSE 2019: The 40th ACM/IEEE International Conference on Software Engineering.
May, 2019. (ACM SIGSOFT Distinguished Paper Award)
28. Minseok Jeon, Sehun Jeong, Sungdeok Cha, and Hakjoo Oh.
A Machine-Learning Algorithm with Disjunctive Model for Data-Driven Program Analysis.
TOPLAS: ACM Transactions on Programming Languages and Systems. 201929. Sooyoung Cha, Seonho Lee, and Hakjoo Oh.
Template-Guided Concolic Testing via Online Learning.
ASE 2018: IEEE/ACM International Conference on Automated Software Engineering.
September 20184

30. Sooyoung Cha, Sehun Jeong, and Hakjoo Oh.
A Scalable Learning Algorithm for Data-Driven Program Analysis.
IST: Information and Software Technology. 201831. Minseok Jeon, Sehun Jeong, and Hakjoo Oh.
Precise and Scalable Points-to Analysis via Data-Driven Context Tunneling.
OOPSLA 2018: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications. November 201832. Junho Lee, Dowon Song, Sunbeom So, and Hakjoo Oh.
Automatic Diagnosis and Correction of Logical Errors for Functional Programming Assignments .
OOPSLA 2018: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications. November 201833. Junhee Lee*, Seongjoon Hong*, and Hakjoo Oh. (* contributed equally)
MemFix: Static Analysis-Based Repair of Memory Deallocation Errors for C.
ESEC/FSE 2018: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
34. Sunbeom So and Hakjoo Oh.
Synthesizing Pattern Programs from Examples.
IJCAI 2018: International Joint Conference on Artificial Intelligence. June 201835. Sooyoung Cha, Seongjoon Hong, Junhee Lee, and Hakjoo Oh.
Automatically Generating Search Heuristics for Concolic Testing.
ICSE 2018: The 39th ACM/IEEE International Conference on Software Engineering.
May 2018
36. Kihong Heo, Hakjoo Oh, Hongseok Yang, Kwangkeun Yi.
Adapting Static Analysis via Learning with Bayesian Optimization.
TOPLAS: ACM Transactions on Programming Languages and Systems. 2018
37. Kihong Heo, Hakjoo Oh, and Hongseok Yang.
Learning Analysis Strategies for Octagon and Context Sensitivity from Labeled Data
Generated by Static Analyses.
FMSD: Formal Methods in System Design. 2018
38. Woosuk Lee, Wonchan Lee, Dongok Kang, Kihong Heo, Hakjoo Oh, Kwangkeun Yi.
Sound Non-Statistical Clustering of Static Analysis Alarms.
TOPLAS: ACM Transactions on Programming Languages and Systems. 201739. Sehun Jeong, Minseok Jeon, Sungdeok Cha, and Hakjoo Oh.
Data-Driven Context-Sensitivity for Points-to Analysis.
OOPSLA 2017: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, October 2017.
40. Kwonsoo Chae, Hakjoo Oh, Kihong Heo, Hongseok Yang.
Automatically Generating Features for Learning Program Analysis Heuristics for C-likeLanguages.
OOPSLA 2017: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, October 2017.
41. Sunbeom So and Hakjoo Oh.
Synthesizing Imperative Programs from Examples Guided by Static Analysis.
SAS 2017: Static Analysis Symposium. 20175

42. Min-je Choi, Sehun Jeong, Hakjoo Oh, and Jaegul Choo.
End-to-End Prediction of Buffer Overruns from Raw Source Code via Neural Memory
Networks.
IJCAI 2017: International Joint Conference on Artificial Intelligence. August 2017.
43. Seulbae Kim, Seunghoon Woo, Heejo Lee, and Hakjoo Oh.
VUDDY: A Scalable Approach for Vulnerable Code Clone Discovery.
S&P 2017: IEEE Symposium on Security and Privacy. May 2017.
44. Kihong Heo, Hakjoo Oh, and Kwangkeun Yi.
Machine-Learning-Guided Selectively Unsound Static Analysis.
ICSE 2017: 38th ACM/IEEE International Conference on Software Engineering, May2017
45. Kihong Heo, Hakjoo Oh, and Kwangkeun Yi.
Selective Conjunction of Context-Sensitivity and Octagon Domain toward Scalable andPrecise Global Static Analysis.
SP&E: Software: Practice and Experience. 201746. Hakjoo Oh, Wonchan Lee, Kihong Heo, Hongseok Yang, and Kwangkeun Yi.
Selective X-Sensitive Analysis Guided by Impact Pre-Analysis.
TOPLAS: ACM Transactions on Programming Languages and Systems, vol. 38, Issue
2, 2016
47. Kihong Heo, Hakjoo Oh, and Hongseok Yang.
Learning a Variable-Clustering Strategy for Octagon from Labeled Data Generated by aStatic Analysis.
SAS 2016: Static Analysis Symposium. 2016
48. Mina Lee, Sunbeom So, and Hakjoo Oh.
Synthesizing Regular Expressions from Examples for Introductory Automata Assignments.
GPCE 2016: ACM SIGPLAN International Conference on Generative Programming:
Concepts and Experiences. 2016 (Best Paper Award)
49. Sooyoung Cha, Sehun Jeong, and Hakjoo Oh.
Learning a Strategy for Choosing Widening Thresholds from a Large Codebase.
APLAS 2016: Asian Symposium on Programming Languages and Systems. 2016
50. Sol Kim, Kihong Heo, Hakjoo Oh, and Kwangkeun Yi.
Widening with Thresholds via Binary Search.
SP&E: Software: Practice and Experience 2016
51. Hongzhe Li, Jaesang Oh, Hakjoo Oh, Heejo Lee.
Automated Source Code Instrumentation for Verifying Potential Vulnerabilities.
IFIP SEC: 31st International Information Security and Privacy Conference. 201652. Hakjoo Oh, Hongseok Yang, and Kwangkeun Yi.
Learning a Strategy for Adapting a Program Analysis via Bayesian Optimisation.
OOPSLA 2015: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, October 2015.
53. Hakjoo Oh, Wonchan Lee, Kihong Heo, Hongseok Yang, and Kwangkeun Yi.
Selective Context-Sensitivity Guided by Impact Pre-Analysis.
PLDI 2014: The 35th ACM SIGPLAN Conference on Programming Language Designand Implementation, June 2014.
6

54. Hakjoo Oh, Kihong Heo, Wonchan Lee, Woosuk Lee, Daejun Park, Jeehoon Kang, andKwangkeun Yi.
Global Sparse Analysis Framework.
TOPLAS: ACM Transactions on Programming Languages and Systems, vol. 36, Issue
3, 2014
55. Woosuk Lee, Hakjoo Oh, and Kwangkeun Yi.
A Progress Bar for Static Analyzers.
SAS 2014: Static Analysis Symposium, 2014
56. Yoonseok Ko, Kihong Heo, and Hakjoo Oh.
A Sparse Evaluation Technique for Detailed Semantic Analyses.
COMLAN: Computer Languages, Systems, and Structures, Vol. 40, Issues 3-4. 201457. Hakjoo Oh, and Kwangkeun Yi.
Access-based Abstract Memory Localization in Static Analysis.
SCP: Science of Computer Programming 78(9):1701-1727, 2013
58. Hakjoo Oh, Kihong Heo, Wonchan Lee, Woosuk Lee, and Kwangkeun Yi.
Design and Implementation of Sparse Global Analyses for C-like Languages.
PLDI 2012: The 33rd ACM SIGPLAN Conference on Programming Language Designand Implementation, June 2012 (First PLDI paper from Korea)
59. Hakjoo Oh, and Kwangkeun Yi.
Access-based Localization with Bypassing.
APLAS 2011: Asian Symposium on Programming Languages and Systems, December
2011
60. Hakjoo Oh, Lucas Brutschy, and Kwangkeun Yi.
Access-analysis-based Tight Localization of Abstract Memories.
VMCAI 2011: International Conference on Verification, Model Checking, and Abstract
Interpretation, Jan 201161. Hakjoo Oh, and Kwangkeun Yi.
An Algorithmic Mitigation of Large Spurious Interprocedural Cycles in Static Analysis.
SP&E: Software: Practice and Experience 40(8):585-603, 2010
62. Hakjoo Oh.
Large Spurious Cycles in Global Static Analysis and Its Algorithmic Mitigation.
APLAS 2009: Asian Symposium on Programming Languages and Systems, December
2009
63. Yungbum Jung, Hakjoo Oh, and Kwangkeun Yi.
Identifying Static Analysis Techniques for Finding Non-fix Hunks in Fix Revisions.
DSMM 2009: ACM Workshop on Data-intensive Software Management and Mining,
November 2009

ServiceProgram Committee (PC) members
1. POPL 2025: The 52nd ACM SIGPLAN Symposium on Principles of Programming Languages
7

2. ICSE 2025: The 47th International Conference on Software Engineering
3. PLDI 2024: ACM SIGPLAN Conference on Programming Language Design and Implementation
4. ISSTA 2024: ACM SIGSOFT International Symposium on Software Testing and Analysis
5. ICSE 2024: The 46th International Conference on Software Engineering
6. ISSTA 2023: ACM SIGSOFT International Symposium on Software Testing and Analysis
7. CC 2023: ACM SIGPLAN International Conference on Compiler Construction
8. OOPSLA 2022: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications
9. ISSTA 2022: ACM SIGSOFT International Symposium on Software Testing and Analysis
10. PLDI 2022: ACM SIGPLAN Conference on Programming Language Design and Implementation
11. APLAS 2021: The Asian Symposium on Programming Languages and Systems (PCchair)
12. OOPSLA 2021: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications
13. OCaml 2021: The OCaml Users and Developers Workshop
14. WoSCA 2021: International Workshop on Smart Contract Analysis
15. ECOOP 2021: The 35th European Conference on Object-Oriented Programming
16. ICSE 2021: The 43rd International Conference on Software Engineering
17. TAPAS 2020: The 11th Workshop on Tools for Automatic Program Analysis (PC CoChair)
18. APLAS 2020: The Asian Symposium on Programming Languages and Systems
19. WoSCA 2020: International Workshop on Smart Contract Analysis
20. OOPSLA 2020: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (External Review Committee)
21. LCTES 2020: The 21st ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems
22. ICSE-SEIP 2020: The 42nd International Conference on Software Engineering (SoftwareEngineering in Practice Track)
23. ATVA 2020: The 18th International Symposium on Automated Technology for Verification and Analysis
24. SAS 2019: The 25th Static Analysis Symposium (Artifact Evaluation Chair)825. CAV 2019: The 31st International Conference on Computer-Aided Verification
26. ATVA 2019: The 17th International Symposium on Automated Technology for Verification and Analysis
27. APLAS 2018: The 16th Asian Symposium on Programming Languages and Systems
28. SAS 2018: The 25th Static Analysis Symposium
29. OOPSLA 2018: ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications
30. APLAS 2017: The 15th Asian Symposium on Programming Languages and Systems
31. APLAS 2015: The 13th Asian Symposium on Programming Languages and Systems
32. SAC 2015: The 30th ACM Symposium on Applied Computing (Programming Languages
Track)
33. SAC 2014: The 29th ACM Symposium on Applied Computing (Programming Languages
Track)
34. APLAS 2013: The 11th Asian Symposium on Programming Languages and Systems

9