Satisfiability Modulo Theoriesについて正式に考える方法

これが熟考された質問ではない場合にはお詫び申し上げますが、定量化された配列と線形算術の理論でSMT式によって最終的に記述される問題を公式化することに興味があり、SMT式実用的な意味では有益ですが、論理/計算/型理論/カテゴリ理論の基礎について私が知っていることをSMT理論と数式の考え方にどのように適合させるのかについては良い意味がありません。何らかの形でSATインスタンスに変えることができるステートメントに関する一般的な理論について正式に言えるのは何ですか?

編集:SATソルバーは命題論理で動作し、SMTソルバーは一次論理の断片で動作することを理解していますが、「論理の断片」がどのようなもので、どのようにして一次論理?明らかに、私たちは線形算術とデータ型理論とで異なる述語と関数を持っていますが、正式なレベルでは、特定のステートメントを組み合わせることができ、他のステートメントを組み合わせることができない数学的な宇宙をどのように考え出すことができますか?

ベストアンサー

実際にSMTをタイプ理論的/論理的な論理アプローチに関連づけるのは驚くほど難しいです。この分野の結果は非常に最近です!これは、カテゴリ論理は主に
proofs のセマンティクスとして構想されており、SMTは provability
のセマンティクスである論理のモデル理論的見地から生じるからです。

SMTの式は、いくつかの理論よりも基本的なアサーションのブール型の組み合わせです。たとえば、線形算術の場合、次の項および基本式があります。

$$ newcommand{bnfalt}{;;|;;} array{ mbox{Terms} & t &
::= & x bnfalt n bnfalt t + t bnfalt -t \ mbox{Primitive
Formulas} & p & ::= & t leq t bnfalt t = t bnfalt t < t \
mbox{SMT Formulas} & phi & ::= & p bnfalt top bnfalt phi
land phi’ bnfalt lnot phi \ }$$

式$ phi
$が与えられると、SMTソルバは変数のための満足する代入を提供します。つまり、変数ごとにその数を代入する本当のブール式が得られます。つまり、$
phi $という式が満たされていないことがわかります。

これがすべて古典的論理で起こっているという事実は非常に重要です。
SMTソルバのアーキテクチャはこの事実に依存しています。基本的に、SMTソルバーは、理論式の純粋な結合から等価を導くソルバーと通信するDPLLベースのSATソルバーの組み合わせとして構築されます。さまざまな理論のソルバを組み合わせることができるさまざまな条件もあります。これは、特定の理論がうまく適合するかどうかを調べるための優れた
“API”を研究者に提供するため重要です。

SMTの標準的な見方は、Clark Ba​​rrettとCesare Tinelliのハンドブックの章 満足度モジュロ理論

実証理論の観点からSMTを解釈するための作業ははるかに新しいものです。基本的な考え方は、校正検索のためにDPLL(T)を「集束」または「偏極」計算に関連付けることです。焦点を絞った計算は、当初は校正検索を最適化するように設計されていたが、証明理論に根本的なアイデアが公開されているため、実用的だった。

Two good references to this are Mahfuza Farooque’s PhD thesis,
Automated reasoning techniques as proof-search
in sequent calculus
, in which she relates the actions of a
DPLL(T) algorithm to search in a particular focused calculus, and
Stéphane Graham-Lengrand’s habilitation thesis Polarities & Focussing: a journey from
Realisability to Automated Reasoning
, in which he gives a
broader perspective on this work (eg, by connecting it to work on
biorthogonality).

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です