論文の概要: Mostly Automatic Translation of Language Interpreters from C to Safe Rust
- arxiv url: http://arxiv.org/abs/2606.27122v1
- Date: Thu, 25 Jun 2026 14:59:08 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-06-26 18:46:32.326267
- Title: Mostly Automatic Translation of Language Interpreters from C to Safe Rust
- Title(参考訳): Cから安全ラストへの言語インタープリタの自動翻訳
- Abstract要約: 本稿では,現実のインタプリタプログラムをCから安全なRustに変換する手法であるRebootを紹介する。
我々は6つのインタプリタを6kから23k行のCコードから安全なRustに翻訳しました。
すべての翻訳は提供されるテストスイートの100%をパスし、62%--92%のパスレートを別々に作成した検証テストで達成する。
- 参考スコア(独自算出の注目度): 9.34230791716657
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Translating C programs to safe Rust is challenging owing to significant differences in typing constraints, ownership, and borrowing rules. Interpreter programs are particularly important targets for such translation, as they often handle untrusted inputs and suffer from memory-related vulnerabilities. We present Reboot, a mostly-automatic technique that translates real-world interpreter programs from C to safe Rust. Using Reboot, we have translated six interpreters ranging from 6k to 23k lines of C code to safe Rust, with each translation requiring only 1 to 11 brief user interventions. All translations pass 100% of the provided test suites, and achieve 62%--92% pass rates on separately created validation tests that were never exposed to the system. A security case study on mujs shows that memory vulnerabilities such as heap buffer overflows and use-after-free present in C are eliminated in the safe Rust translation. Two ideas underpin Reboot. First, feature reduction decomposes the translation by program features, creating a sequence of milestones where each is a complete, testable program; the translation starts from the simplest version and incrementally restores features, with each milestone validated before proceeding. Second, a multi-agent architecture orchestrates inherently unreliable coding agents through automated validation and feedback, keeping long-running translation workflows on track with minimal human involvement. An ablation study confirms that feature reduction improves translation correctness compared to using multi-agent translation alone, with 6%--20% improvements in pass rates on validation test suites.
- Abstract(参考訳): Rustを安全にするためのCプログラムの翻訳は、型付けの制約やオーナシップ、借用ルールに大きな違いがあるため、難しい。
インタープリタプログラムは、信頼できない入力を処理し、メモリ関連の脆弱性に悩まされることが多いため、このような翻訳にとって特に重要なターゲットである。
Rebootは、現実世界のインタプリタプログラムをCから安全なRustに変換する、ほぼ自動のテクニックです。
Rebootを使って、6kから23kまでの6つのインタプリタをRustの安全性に変換しました。
すべての翻訳は提供されるテストスイートの100%をパスし、62%--92%のパスレートを達成した。
mujsのセキュリティケーススタディでは、安全なRust変換において、ヒープバッファオーバーフローやCでの使用後不要な存在などのメモリ脆弱性が排除されていることが示されている。
2つの考えがRebootを支えている。
まず、機能削減は、プログラム機能による翻訳を分解し、それぞれが完全でテスト可能なプログラムである一連のマイルストーンを作成します。
第二に、マルチエージェントアーキテクチャは、自動検証とフィードバックを通じて本質的に信頼性の低いコーディングエージェントをオーケストレーションし、人間の関与を最小限に抑えながら、長期にわたる翻訳ワークフローを軌道に乗せる。
アブレーション研究では、機能低下は、マルチエージェント翻訳のみを使用する場合と比較して翻訳精度を向上し、検証テストスイートのパスレートが6%--20%改善したことを確認した。
関連論文リスト
- Defending Jailbreak Attacks on Large Language Models via Manifold Trajectory Kinetics [50.36375380196006]
ジェイルブレイクプロンプトは、大規模な言語モデルにおけるアライメントガードレールをバイパスすることができる。
先行検出アプローチは固定距離空間に大きく依存する。
この仮定は,意図によって無視されるが,安全関連キーワードを含む疑似悪質なプロンプトの下で破られることを示す。
本稿では, LLM を入力を出力に変換する運動系として扱う Manifold Trajectory Kinetics (MTK) を提案する。
論文 参考訳(メタデータ) (2026-06-05T14:49:26Z) - Finding a Crab in the C: Assured Translation via Comparative Symbolic Execution [0.0]
cozyは、"安全でない"ソースコードからコンパイルされたバイナリと、ソースコードのメモリセーフ言語への変換からコンパイルされたバイナリを分析する、比較バイナリ分析ツールである。
cozyは2つのバイナリの動作の差異を開発者に向かって歩き、それぞれの違いを示し、ユーザがその違いが意図的(良い)かどうかを判断するように求めます。
Cozyは自動翻訳、バグ修正、コードレビュー、オペレーション認可、自動翻訳に応用できる。
論文 参考訳(メタデータ) (2026-05-12T20:33:33Z) - Translating Large-Scale C Repositories to Idiomatic Rust [12.221834497939897]
既存のC to Rustの変換テクニックでは、品質とスケーラビリティのバランスが取れない。
本稿では、効率的なリポジトリレベルのCから慣用的な安全なRust翻訳のための、完全に自動化されたパイプラインであるRustineを提案する。
論文 参考訳(メタデータ) (2025-11-25T18:42:46Z) - EffiReasonTrans: RL-Optimized Reasoning for Code Translation [48.862761776440635]
EffiReasonTransは、推論レイテンシのバランスを保ちながら翻訳精度を向上させるために設計されたトレーニングフレームワークである。
EffiReasonTransは、生成トークンの数を減らしながら、翻訳精度(ベースモデルと比較して+49.2% CAと+27.8% CodeBLEU)を一貫して改善している。
論文 参考訳(メタデータ) (2025-10-21T17:55:39Z) - Adversarial Agent Collaboration for C to Rust Translation [13.65848262530917]
ACToRは、我々のベンチマークで考慮された63の現実世界のコマンドラインユーティリティを全て翻訳します。
テストパス率は90%を超え、人間の介入はゼロである。
このスケールのCプログラムを確実に翻訳する最初のシステムである。
論文 参考訳(メタデータ) (2025-10-04T17:08:36Z) - SafeTrans: LLM-assisted Transpilation from C to Rust [5.6274106543826585]
Rustは、Cの"システム"プログラミング言語としてのメモリセーフな代替として、強力な競争相手である。
本稿では,大規模な言語モデル(LLM)がRustへのCコードの自動コンパイルを実現する可能性を評価する。
SafeTrans は LLM を使って,C コードを Rust にトランスパイルするフレームワークである。
論文 参考訳(メタデータ) (2025-05-15T21:05:33Z) - 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) - LLM-Driven Multi-step Translation from C to Rust using Static Analysis [27.122409727034192]
レガシー言語で書かれたソフトウェアをCからRustなどのモダン言語に翻訳することは、メモリ安全性を改善する上で大きなメリットがある。
LLM駆動型C-to-Rustゼロショット変換ツールであるSACTORを2段階の翻訳手法を用いて提案する。
SACTORは、既存の方法と比較して、より自然でRustに準拠した翻訳を生成する。
論文 参考訳(メタデータ) (2025-03-16T14:05:26Z) - RustRepoTrans: Repository-level Code Translation Benchmark Targeting Rust [50.65321080814249]
RustRepoTransは、インクリメンタル翻訳をターゲットにした、最初のリポジトリレベルのコンテキストコード変換ベンチマークである。
複雑な翻訳シナリオの制約を評価するために, 7つの代表的なLLMを評価し, それらの誤差を分析した。
論文 参考訳(メタデータ) (2024-11-21T10:00:52Z) - Mitigating Hallucinations and Off-target Machine Translation with
Source-Contrastive and Language-Contrastive Decoding [53.84948040596055]
修正された復号化目標を用いて、障害ケースを緩和する2つの関連手法を提案する。
大規模多言語モデルM2M-100 (418M) とSMaLL-100の実験は、これらの手法が幻覚やターゲット外の翻訳を抑制することを示した。
論文 参考訳(メタデータ) (2023-09-13T17:15:27Z) - Zero-Shot Cross-lingual Semantic Parsing [56.95036511882921]
7つのテスト言語に対する並列データを持たないゼロショット問題として,言語間セマンティックパーシングについて検討した。
英文論理形式ペアデータのみを用いて解析知識を付加言語に転送するマルチタスクエンコーダデコーダモデルを提案する。
このシステムは、ゼロショット解析を潜時空間アライメント問題としてフレーム化し、事前訓練されたモデルを改善し、最小のクロスリンガル転送ペナルティで論理形式を生成することができる。
論文 参考訳(メタデータ) (2021-04-15T16:08:43Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。