AI Chain on Large Language Model for Unsupervised Control Flow Graph Generation for Statically-Typed Partial Code
Qing Huang, Zhou Zou, Zhenchang Xing, Zhenkang Zuo, Xiwei Xu, Qinghua, Lu

TL;DR
This paper introduces a novel AI chain approach utilizing Large Language Models to generate control flow graphs for statically-typed partial code, outperforming traditional tools especially on incomplete or erroneous code.
Contribution
The paper presents a hierarchical AI chain method with explicit sub-steps for CFG generation, improving accuracy and robustness over single-pass prompts.
Findings
Outperforms existing CFG tools in node and edge coverage
Effective on incomplete or erroneous code
Validates AI chain design principles
Abstract
Control Flow Graphs (CFGs) are essential for visualizing, understanding and analyzing program behavior. For statically-typed programming language like Java, developers obtain CFGs by using bytecode-based methods for compilable code and Abstract Syntax Tree (AST)-based methods for partially uncompilable code. However, explicit syntax errors during AST construction and implicit semantic errors caused by bad coding practices can lead to behavioral loss and deviation of CFGs.To address the issue, we propose a novel approach that leverages the error-tolerant and understanding ability of pre-trained Large Language Models (LLMs) to generate CFGs. Our approach involves a Chain of Thought (CoT) with four steps: structure hierarchy extraction, nested code block extraction, CFG generation of nested code blocks, and fusion of all nested code blocks' CFGs. To address the limitations of the original…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Advanced Malware Detection Techniques
