CRISPE: Semantic-Guided Execution Planning and Dynamic Reasoning for Enhancing Code Coverage Prediction
While LLMs excel in understanding source code and descriptive texts for tasks like code generation, code completion, etc., they exhibit weaknesses in predicting dynamic program behavior, such as code coverage and runtime error detection, which typically require program execution. Aiming to advance the capability of LLMs in reasoning and predicting the program behavior at runtime, we present CRISPE (short for Coverage Rationalization and Intelligent Selection ProcedurE), a novel approach for code coverage prediction that guides an LLM in simulating program execution via an execution plan based on two key factors: (1) program semantics of each statement type, and (2) the observation of current set of covered statements at the current “execution” step relative to all feasible code coverage options. We frame code coverage prediction as a process of semantic-guided execution-based planning, where feasible coverage options are utilized to assess whether the LLM is heading in the correct reasoning. We enhance the traditional generative task with the retrieval-based framework on feasible options of code coverage. Our experiments on real-world data show that CRISPE achieves high accuracy in coverage prediction in terms of both exact-match and statement-match coverage metrics, improving over the baselines. We also show that with semantic-guiding and dynamic reasoning from CRISPE, the LLM generates more correct planning steps. To demonstrate CRISPE’s usefulness, we used it in the downstream task of predicting runtime error(s) for the given inputs of incomplete code snippets.
Wed 25 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
11:00 - 12:20 | Program Analysis 3Research Papers / Demonstrations / Industry Papers at Cosmos 3D Chair(s): Earl T. Barr University College London | ||
11:00 10mTalk | MITHRAS: A Dynamic Analysis Framework for the Mobile-IoT Ecosystem Demonstrations Francesco Pagano University of Verona, Mariano Ceccato University of Verona, Alessio Merlo CASD - School of Advanced Defense Studies, Paolo Tonella USI Lugano | ||
11:10 10mTalk | Refactoring Detection in C++ Programs with RefactoringMiner++ Demonstrations Benjamin Ritz Graz University of Technology, Aleksandar Karakaš Carinthia University of Applied Sciences, Denis Helic Graz University of Technology | ||
11:20 20mTalk | Codellm-Devkit: A Framework for Contextualizing Code LLMs with Program Analysis Insights Industry Papers Rahul Krishna IBM Research, Rangeet Pan IBM Research, Saurabh Sinha IBM Research, Srikanth Tamilselvam IBM Research, Raju Pavuluri IBM T.J. Watson Research Center, Maja Vukovic IBM Research | ||
11:40 20mTalk | Towards Diverse Program Transformations for Program Simplification Research Papers Haibo Wang Concordia University, Zezhong Xing Southern University of Science and Technology, Chengnian Sun University of Waterloo, Zheng Wang University of Leeds, Shin Hwei Tan Concordia University DOI | ||
12:00 20mTalk | CRISPE: Semantic-Guided Execution Planning and Dynamic Reasoning for Enhancing Code Coverage Prediction Research Papers Hridya Dhulipala University of Texas at Dallas, Aashish Yadavally University of Texas at Dallas, Smit Soneshbhai Patel University of Texas at Dallas, Tien N. Nguyen University of Texas at Dallas DOI |
Cosmos 3D is the fourth room in the Cosmos 3 wing.
When facing the main Cosmos Hall, access to the Cosmos 3 wing is on the left, close to the stairs. The area is accessed through a large door with the number “3”, which will stay open during the event.