toplogo
Kirjaudu sisään

プログラム合成における飽和


Keskeiset käsitteet
関数仕様を使用して再帰フリープログラムを合成するための自動推論フレームワークを紹介します。
Tiivistelmä

この記事は、再帰フリープログラムを合成するための自動推論フレームワークに焦点を当てています。関数仕様がファーストオーダー論理式としてエンコードされ、その正当性が確立され、プログラム断片が発見されます。計算可能な記号のみを含むプログラムを制限し、飽和ベースの定理証明法を使用して機能仕様の証明とコード構築を行います。アルゴリズムや推論システムについて詳細に説明し、実装と評価結果も提供します。

edit_icon

Mukauta tiivistelmää

edit_icon

Kirjoita tekoälyn avulla

edit_icon

Luo viitteet

translate_icon

Käännä lähde

visual_icon

Luo miellekartta

visit_icon

Siirry lähteeseen

Tilastot
1100行のC++コードで実装されました。 AMD Epyc 7502、2.5 GHz CPU、1 TB RAMで実験が実行されました。 合計5分間の時間制限が設定されました。
Lainaukset
"Given a functional specification encoded as a first-order logical formula, we use a first-order theorem prover to both establish validity of this formula and discover program fragments satisfying the specification." "We bring the next contributions solving the above challenges." "Our work supports the synthesis of more complex recursion-free programs."

Tärkeimmät oivallukset

by Petr... klo arxiv.org 03-01-2024

https://arxiv.org/pdf/2402.18962.pdf
Program Synthesis in Saturation

Syvällisempiä Kysymyksiä

他の合成ツールと比較した場合、Vampireのアプローチはどう異なりますか?

Vampireのアプローチは、飽和ベースの定理証明を使用してプログラム合成を行う点で他の合成ツールと異なります。一般的に、多くのプログラム合成ツールは制約充足問題や機械学習アルゴリズムを使用しており、形式仕様からコードを生成する方法が異なることがあります。Vampireでは、最初に関数仕様を述語論理式に変換し、それらを飽和法で処理して正当性を確認しながらプログラム断片を発見します。この過程で得られた証明から正しいプログラムも導出される点が特徴です。
0
star