paper-with-me

홈 › Papers

The Hitchhiker's Guide to Program Analysis: A Journey with Large Language Models

2023-08-01 · Haonan Li, Yu Hao, Yizhuo Zhai, Zhiyun Qian

Static analysis is a widely used technique in software engineering for identifying and mitigating bugs. However, a significant hurdle lies in achieving a delicate balance between precision and scalability. Large Language Models (LLMs) offer a promising alternative, as recent advances demonstrate remarkable capabilities in comprehending, generating, and even debugging code. Yet, the logic of bugs can be complex and require sophisticated reasoning and a large analysis scope spanning multiple functions. Therefore, at this point, LLMs are better used in an assistive role to complement static analysis. In this paper, we take a deep dive into the open space of LLM-assisted static analysis, using use-before-initialization (UBI) bugs as a case study. To this end, we develop LLift, a fully automated framework that interfaces with both a static analysis tool and an LLM. By carefully designing the framework and the prompts, we are able to overcome a number of challenges, including bug-specific modeling, the large problem scope, the non-deterministic nature of LLMs, etc. Tested in a real-world scenario analyzing nearly a thousand potential UBI bugs produced by static analysis, LLift demonstrates a potent capability, showcasing a reasonable precision (50%) and appearing to have no missing bugs. It even identified 13 previously unknown UBI bugs in the Linux kernel. This research paves the way for new opportunities and methodologies in using LLMs for bug discovery in extensive, real-world datasets.

📄 PDF Abstract BibTeX arXiv:2308.00245

Code (0)

등록된 구현이 없습니다.

Similar Papers 제목 키워드 기반

The final solution of the Hitchhiker's problem #5

2025-05-20 · Matjaž Omladič, Martin Vuk, Aljaž Zalar

A recent survey, nicknamed "Hitchhiker's Guide", J.J. Arias-Garc{\i}a, R. Mesiar, and B. De Baets, A hitchhiker's guide to quasi-copulas, Fuzzy Sets and Systems 393 (2020) 1-28, has raised the rating of quasi-copula prob…

The Hitchhiker's Guide to Program Analysis, Part II: Deep Thoughts by LLMs

2025-04-16 · Haonan Li, Hang Zhang, Kexin Pei, Zhiyun Qian

Static analysis plays a crucial role in software vulnerability detection, yet faces a persistent precision-scalability tradeoff. In large codebases like the Linux kernel, traditional static analysis tools often generate …

Vulnerability Detection

The Hitchhikers Guide to Production-ready Trustworthy Foundation Model powered Software (FMware)

2025-05-15 · Kirill Vasilevski, Benjamin Rombaut, Gopi Krishnan Rajbahadur, Gustavo A. Oliva 외

Foundation Models (FMs) such as Large Language Models (LLMs) are reshaping the software industry by enabling FMware, systems that integrate these FMs as core components. In this KDD 2025 tutorial, we present a comprehens…

WavJourney: Compositional Audio Creation with Large Language Models

2023-07-26 · Xubo Liu, Zhongkai Zhu, Haohe Liu, Yi Yuan 외

Despite breakthroughs in audio generation models, their capabilities are often confined to domain-specific conditions such as speech transcriptions and audio captions. However, real-world audio creation aims to generate …

Audio Generation

A Hitchhiker's Guide to Statistical Comparisons of Reinforcement Learning Algorithms

2019-04-15 · Cédric Colas, Olivier Sigaud, Pierre-Yves Oudeyer

Consistently checking the statistical significance of experimental results is the first mandatory step towards reproducible science. This paper presents a hitchhiker's guide to rigorous comparisons of reinforcement learn…

reinforcement-learningReinforcement LearningReinforcement Learning (RL)