論文の概要: SLICEMATE: Accurate and Scalable Static Program Slicing via LLM-Powered Agents
- arxiv url: http://arxiv.org/abs/2507.18957v1
- Date: Fri, 25 Jul 2025 04:51:47 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-07-28 16:16:48.826859
- Title: SLICEMATE: Accurate and Scalable Static Program Slicing via LLM-Powered Agents
- Title(参考訳): SLICEMATE: LLMエージェントによる高精度でスケーラブルな静的プログラムスライシング
- Authors: Jianming Chang, Jieke Shi, Yunbo Lyu, Xin Zhou, Lulu Wang, Zhou Yang, Bixin Li, David Lo,
- Abstract要約: SliceMateはLarge Language Model (LLM)エージェントを利用した新しい静的プログラムスライシングソリューションである。
明示的な依存グラフ構築の必要性を回避し、より優れたスライシング精度を実現する。
厳密な評価のために,2200のJavaプログラムとPythonプログラムを手動でアノテートした新しい高品質ベンチマークであるSliceBenchを構築した。
- 参考スコア(独自算出の注目度): 11.069304685402642
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Static program slicing, which extracts the executable portions of a program that affect the values at a specific location, supports many software analysis tasks such as debugging and security auditing. However, traditional slicing tools rely on computationally expensive reachability analysis over dependency graphs, which struggle to scale to large programs and often fail to handle code with incomplete syntax. Recently emerged learning-based methods, while more robust to such cases, still fall short of achieving comparable performance to traditional methods on well-formed code. In this work, we propose SliceMate, a novel static program slicing solution powered by Large Language Model (LLM) agents. It bypasses the need for explicit dependency graph construction and achieving superior slicing accuracy. Concretely, SliceMate integrates three specialized agents: (1) a synthesis agent that produces candidate slices by incrementally expanding the scan scope across functions and files guided by LLM-inferred dependencies; (2) a verification agent that performs conciseness and completeness checks of the candidate slices, detecting missing or irrelevant statements; and (3) a refinement agent that repairs the slices with minimal edits in accordance with the verification results. These agents are orchestrated by a control module that ensures timely convergence and outputs high-quality slices without manual intervention. For rigorous evaluation, we construct a new and high-quality benchmark, SliceBench, comprising 2,200 manually annotated Java and Python programs, with program lengths ranging from 5 to 8,577 lines, significantly larger than those in existing slicing benchmarks. Experimental results show that SliceMate greatly outperforms both traditional and learning-based slicing tools.
- Abstract(参考訳): 静的プログラムスライシングは、特定の場所の値に影響を与えるプログラムの実行可能な部分を抽出し、デバッグやセキュリティ監査といった多くのソフトウェア解析タスクをサポートする。
しかし、従来のスライシングツールは、大きなプログラムにスケールするのに苦労し、不完全な構文でコードを扱うのに失敗する依存性グラフよりも、計算的に高価なリーチビリティ分析に依存している。
最近出現した学習ベースのメソッドは、そのようなケースに対してより堅牢であるが、それでも、十分に整ったコードで従来のメソッドに匹敵するパフォーマンスを達成するには至っていない。
本研究では,Large Language Model (LLM) エージェントを利用した新しい静的プログラムスライシングソリューションであるSliceMateを提案する。
明示的な依存グラフの構築の必要性を回避し、より優れたスライシング精度を実現する。
具体的には,(1) LLM-InferredDependency によって誘導される機能やファイルのスキャン範囲を段階的に拡大して候補スライスを生成する合成エージェント,(2) 候補スライスを簡潔かつ完全にチェックし,欠落や無関係な文を検出する検証エージェント,(3) 検証結果に応じて最小限の編集でスライスを修復する精製エージェント,の3つの特殊エージェントを統合した。
これらのエージェントは、タイムリーな収束を保証する制御モジュールによって編成され、手動で介入することなく高品質なスライスを出力する。
厳密な評価のために,2,200のJavaおよびPythonプログラムを手動でアノテートし,プログラム長を5行から8,577行としており,既存のスライシングベンチマークよりもはるかに大きい,新しい高品質のベンチマークであるSliceBenchを構築した。
実験の結果、SliceMateは従来のスライシングツールと学習ベースのスライシングツールの両方で大幅に優れていた。
関連論文リスト
- Training Language Models to Generate Quality Code with Program Analysis Feedback [66.0854002147103]
大規模言語モデル(LLM)によるコード生成は、ますます本番環境で採用されているが、コード品質の保証には失敗している。
実運用品質のコードを生成するためにLLMにインセンティブを与える強化学習フレームワークであるREALを提案する。
論文 参考訳(メタデータ) (2025-05-28T17:57:47Z) - CompileAgent: Automated Real-World Repo-Level Compilation with Tool-Integrated LLM-based Agent System [52.048087777953064]
リポジトリレベルのコンパイル専用のエージェントフレームワークであるCompileAgentを提案する。
CompileAgentは5つのツールとフローベースのエージェント戦略を統合し、コンパイル命令検索とエラー解決のためのソフトウェアアーチファクトとのインタラクションを可能にする。
提案手法は,10%から71%の範囲で,コンパイル成功率を大幅に向上することを示す。
論文 参考訳(メタデータ) (2025-05-07T08:59:14Z) - Acting Less is Reasoning More! Teaching Model to Act Efficiently [87.28134636548705]
ツール統合推論は、タスクを解決するために外部ツールを呼び出す機能によって、大きな言語モデルを拡張します。
現在のアプローチは、外部ツールの使用効率や必要性を考慮せずに、最終的な正確性のためにのみ最適化されている。
最小限のツールコールで正確な回答をモデルに提示するフレームワークを提案する。
このアプローチでは,ツールコールを最大68.3%削減し,ツールの生産性を最大215.4%向上すると同時に,同等の回答精度を維持している。
論文 参考訳(メタデータ) (2025-04-21T05:40:05Z) - Program Slicing in the Era of Large Language Models [7.990456190723922]
プログラムスライシングはソフトウェア工学において重要なテクニックであり、開発者は関連するコードの部分を分離することができる。
本研究では,大規模言語モデル(LLM)の静的スライシングおよび動的プログラムスライシングへの応用について検討する。
論文 参考訳(メタデータ) (2024-09-19T00:07:56Z) - Scaling Symbolic Execution to Large Software Systems [0.0]
シンボル実行は、プログラム検証とバグ検出ソフトウェアの両方で使用される一般的な静的解析手法である。
我々は、Clang Static Analyzerと呼ばれるエラー検出フレームワークと、その周辺に構築されたインフラストラクチャーであるCodeCheckerに焦点を当てた。
論文 参考訳(メタデータ) (2024-08-04T02:54:58Z) - LLMDFA: Analyzing Dataflow in Code with Large Language Models [8.92611389987991]
本稿では,コンパイル不要でカスタマイズ可能なデータフロー解析フレームワークLLMDFAを提案する。
問題をいくつかのサブタスクに分解し、一連の新しい戦略を導入する。
LLMDFAは平均87.10%の精度と80.77%のリコールを達成し、F1スコアを最大0.35に向上させた。
論文 参考訳(メタデータ) (2024-02-16T15:21:35Z) - ControlLLM: Augment Language Models with Tools by Searching on Graphs [97.62758830255002]
我々は,大規模言語モデル(LLM)が実世界のタスクを解くためのマルチモーダルツールを利用できる新しいフレームワークであるControlLLMを提案する。
フレームワークは,(1)複雑なタスクを明確なサブタスクに分割し,入力と出力を適切に定義したサブタスクに分解するtextittask Decomposer,(2)構築済みのツールグラフ上で最適なソリューションパスを探索する textitThoughts-on-Graph(ToG)パラダイム,(3)ソリューションパスを解釈して実行するリッチなツールボックスを備えた textitexecution Engine,の3つの主要なコンポーネントから構成される。
論文 参考訳(メタデータ) (2023-10-26T21:57:21Z) - Guess & Sketch: Language Model Guided Transpilation [59.02147255276078]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - ART: Automatic multi-step reasoning and tool-use for large language
models [105.57550426609396]
大規模言語モデル(LLM)は、数秒とゼロショットの設定で複雑な推論を行うことができる。
各推論ステップは、コアLLM機能を超えて計算をサポートする外部ツールに依存することができる。
プログラムとして中間推論ステップを自動生成するために凍結LDMを使用するフレームワークであるART(Automatic Reasoning and Tool-use)を導入する。
論文 参考訳(メタデータ) (2023-03-16T01:04:45Z) - Top-Down Synthesis for Library Learning [46.285220926554345]
コーパス誘導トップダウン合成は、プログラムのコーパスから共通機能をキャプチャするライブラリ関数を合成するメカニズムである。
本稿では,この手法をStitchと呼ばれるツールに実装し,DreamCoderの最先端の推論ライブラリ学習アルゴリズムに対して評価する。
論文 参考訳(メタデータ) (2022-11-29T21:57:42Z) - Comparative Code Structure Analysis using Deep Learning for Performance
Prediction [18.226950022938954]
本稿では,アプリケーションの静的情報(抽象構文木やASTなど)を用いてコード構造の変化に基づいて性能変化を予測することの実現可能性を評価することを目的とする。
組込み学習手法の評価により,木系長短メモリ(LSTM)モデルでは,ソースコードの階層構造を利用して遅延表現を発見し,最大84%(個人的問題)と73%(複数の問題を含む組み合わせデータセット)の精度で性能変化を予測できることが示された。
論文 参考訳(メタデータ) (2021-02-12T16:59:12Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。