論文の概要: From C to Idiomatic Rust: A Ship-of-Theseus Agentic Translation
- arxiv url: http://arxiv.org/abs/2607.28835v1
- Date: Thu, 30 Jul 2026 21:00:27 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-08-03 14:29:40.481876
- Title: From C to Idiomatic Rust: A Ship-of-Theseus Agentic Translation
- Title(参考訳): CからIdiomatic Rust: テーマのエージェント翻訳
- Abstract要約: C言語はオペレーティングシステム、組み込みプラットフォーム、ネットワークインフラストラクチャを基盤としています。
Rustは静的オーナシップと借用モデルを通じて障害モードの大部分を排除し、メモリの安全性とコンパイル時の制約のエイリアスを強制する。
本稿では,まずセマンティクスを保存する非慣用的なRustベースラインを生成し,エージェントAIを用いてそれを慣用的なRustにインクリメンタルに書き換える移行手法を提案する。
- 参考スコア(独自算出の注目度): 0.13537117504260618
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: C underpins operating systems, embedded platforms, and network infrastructure because its abstractions map directly to machine behaviour. Its explicit memory model, predictable data representations, and minimal runtime allow compilers to generate fast, deterministic code. These properties also leave correctness and memory safety entirely to the programmer, making undefined behaviour, pointer misuse, and lifetime errors persistent sources of defects and security vulnerabilities in long-lived C codebases. Rust eliminates most of failure modes through a static ownership and borrowing model that enforces memory safety and aliasing constraints at compile time. However, mature C systems cannot be translated directly: implicit layout assumptions, aliasing patterns, and undefined behaviour must be reconstructed before safe Rust can be produced. This paper presents a migration methodology that first generates a semantics-preserving, non-idiomatic Rust baseline and then incrementally rewrites it into idiomatic Rust using agentic AI, validating each step through compilation and behavioural testing. Applied to iodine (12.5k SLOC), the approach demonstrates that reliable C-to-Rust migration is a structured transformation workflow rather than a single translation step.
- Abstract(参考訳): C言語はオペレーティングシステム、組み込みプラットフォーム、ネットワークインフラストラクチャを基盤としています。
その明示的なメモリモデル、予測可能なデータ表現、最小ランタイムにより、コンパイラは高速で決定論的なコードを生成することができる。
これらのプロパティはまた、修正性とメモリ安全性を完全にプログラマに委ねており、長い寿命のCコードベースで、未定義の振る舞い、ポインタ誤用、ライフタイムエラーを持続的に発生させる。
Rustは静的オーナシップと借用モデルを通じて障害モードの大部分を排除し、メモリの安全性とコンパイル時の制約のエイリアスを強制する。
しかし、成熟したCシステムは直接変換できない:暗黙のレイアウト仮定、エイリアスパターン、未定義の振る舞いは、安全なRustを生成する前に再構築する必要がある。
本稿では、まずセマンティクスを保存する非慣用的なRustベースラインを生成し、次にエージェントAIを使用して慣用的なRustにインクリメンタルに書き直し、コンパイルと振る舞いテストを通じて各ステップを検証するマイグレーション手法を提案する。
ヨウ素(12.5k SLOC)に適用すると、信頼できるC-to-Rust移行は単一の変換ステップではなく構造化変換ワークフローであることを示す。
関連論文リスト
- Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFT [32.52081475702783]
本報告では,Qwen3-27Bに適用した3段階の微調整カリキュラムについて述べる。
C2Rust(C2Rust)翻訳タスクのモデルを段階的に特殊化するように設計されている。
SACTORのエージェント的静的解析誘導検証フレームワークを用いて,結果モデルの評価を行った。
論文 参考訳(メタデータ) (2026-08-13T18:24:02Z) - Weave of Formal Thought [51.56484100374058]
WoFT(Weave of Formal Thought)は、厳密な構文的検証と学習された構造的表現を結合したパラダイムである。
本稿では,非終端文法記号を直接生成にインターリーブするために,言語モデルを訓練する潜時可変微調整法を提案する。
Pythonでは、RWS目的のStarCoder2-3Bを微調整することで、テキストのみのSFTベースラインと比較して、トーケン毎のクロスエントロピーが14.3%削減される。
論文 参考訳(メタデータ) (2026-06-24T15:58:11Z) - Securing LLM Agents Need Intent-to-Execution Integrity [49.490963596514185]
我々は, LLMエージェントの確保には, エージェントの実行がユーザの意図を忠実に反映した場合に規定するエンドツーエンドの正当性を定義する必要があると主張している。
LLMエージェントはコンパイラと構造的に類似しており、セキュリティ違反はユーザ意図を保存しない誤った実行に対応する。
emphTool整合性、emph命令整合性、emphJudgment整合性、emphData整合性。
論文 参考訳(メタデータ) (2026-05-16T12:53:31Z) - Context-Guided Decompilation: A Step Towards Re-executability [50.71992919223209]
バイナリ逆コンパイルは、ソフトウェアセキュリティ分析、リバースエンジニアリング、マルウェア理解において重要な役割を果たす。
大規模言語モデル (LLMs) の最近の進歩により、ニューラルデコンパイルが可能になったが、生成されたコードは一般的に意味論的にのみ使用可能である。
In-context Learning(ICL)を活用して,再実行可能なソースコードを生成するためのILC4Decompを提案する。
論文 参考訳(メタデータ) (2025-11-03T17:21:39Z) - Text2Mem: A Unified Memory Operation Language for Memory Operating System [59.082901444153684]
モデルエージェントのための統一メモリ操作言語であるText2Memを紹介する。
Text2Memは、自然な正確性を保証するための標準化されたパスを提供する。
論文 参考訳(メタデータ) (2025-09-14T07:30:09Z) - CRUST-Bench: A Comprehensive Benchmark for C-to-safe-Rust Transpilation [51.18863297461463]
CRUST-Benchは100のCリポジトリのデータセットで、それぞれが安全なRustとテストケースで手書きのインターフェースとペアリングされている。
我々は、このタスクで最先端の大規模言語モデル(LLM)を評価し、安全で慣用的なRust生成が依然として難しい問題であることを確認した。
最高のパフォーマンスモデルであるOpenAI o1は、ワンショット設定で15タスクしか解決できない。
論文 参考訳(メタデータ) (2025-04-21T17:33:33Z) - RustMap: Towards Project-Scale C-to-Rust Migration via Program Analysis and LLM [13.584956125542396]
Rustは、Cのパフォーマンスを維持しながら、優れたメモリ安全性を提供する。
C2Rustのような既存の自動翻訳ツールは、構文的、テンプレートベースの翻訳に依存しすぎている可能性がある。
本稿では,新しい依存誘導型大規模言語モデル (LLM) をベースとしたC-to-Rust変換手法であるRustMapを提案する。
論文 参考訳(メタデータ) (2025-03-22T11:57:45Z) - ReF Decompile: Relabeling and Function Call Enhanced Decompile [50.86228893636785]
逆コンパイルの目標は、コンパイルされた低レベルコード(アセンブリコードなど)を高レベルプログラミング言語に変換することである。
このタスクは、脆弱性識別、マルウェア分析、レガシーソフトウェアマイグレーションなど、さまざまなリバースエンジニアリングアプリケーションをサポートする。
論文 参考訳(メタデータ) (2025-02-17T12:38:57Z) - VERT: Verified Equivalent Rust Transpilation with Large Language Models as Few-Shot Learners [6.824327908701066]
Rustはメモリ安全性と低レベルのコントロールを組み合わせたプログラミング言語で、Cライクなパフォーマンスを提供する。
既存の作業はルールベースと大規模言語モデル(LLM)という2つのカテゴリに分類される。
私たちは、正式な正確性を保証する形で、可読性のあるRustトランスパイルを生成するツールであるVERTを紹介します。
論文 参考訳(メタデータ) (2024-04-29T16:45:03Z) - A Study of Undefined Behavior Across Foreign Function Boundaries in Rust Libraries [2.359557447960552]
Rustは、他の言語との相互運用に頻繁に使用される。
Miriは、これらのモデルに対してアプリケーションを検証できる唯一の動的解析ツールである。
Miriは、外部機能のバグ発見をサポートしておらず、Rustエコシステムに重大な正当性ギャップがあることを示唆している。
論文 参考訳(メタデータ) (2024-04-17T18:12:05Z) - Towards a Transpiler for C/C++ to Safer Rust [0.10993800728351737]
RustはMozillaが開発したプログラミング言語で、パフォーマンスと安全性に重点を置いている。
既存のC++コードベースをRustに変換する方法も注目されている。
論文 参考訳(メタデータ) (2024-01-16T10:35:59Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。