PH.D DEFENCE - PUBLIC SEMINAR

Representing and Understanding Programs for Semantic-based Analysis

Speaker
Mr. Liu Jiahao
Advisor
Dr Liang Zhenkai, Associate Professor, School of Computing


25 Nov 2025 Tuesday, 02:00 PM to 03:30 PM

MR1, COM1-03-19

Abstract:

Researchers and developers have explored various approaches to enhance the effectiveness of program analysis for system maintenance and security analysis such as log generation, code similarity detection, and user behavior analysis. At their core, these approaches share one common practice: they rely on representing and understanding program semantics - the intrinsic meaning and behavior of programs, which define how they execute and interact with their environment - to improve analysis outcomes. However, effectively representing and distilling essential program semantics is non-trivial, as it necessitates appropriate representations and learning strategies capable of capturing the critical characteristics of programs that are relevant to the analysis tasks at hand. In this thesis, we examine program semantics at multiple levels of abstraction, investigating how effective code representations and advanced learning strategies can enhance program analysis. At the block level, we present an end-to-end framework that models code block semantics to provide log level suggestions to developers. At the function level, we leverage deep graph-structured code features and a Code Property Graph (CPG)-based learning strategy to improve code similarity detection by exploring function-level semantics. At the behavior level, we distill the semantics of UI widgets by analyzing their backend code contexts and incorporating the mutual relationships among various behaviors. Collectively, our work sheds light on designing effective code representations and learning approaches to advance program analysis tasks that rely on program semantics.