これは、Z3 の Model-based Quantifier Instantiation (MBQI) と階層化された並べ替えフラグメントに関する以前の質問のフォローアップです(素早い回答をくれた Leonardo de Moura に再び感謝します)。
多ソート ロジックの決定可能なフラグメントに関する論文 [Abadi et al., Decidable fragment of many-sorted logic, LPAR 2007] で、著者は有限モデル プロパティで決定可能な多ソート ロジックのフラグメント St1 について説明しています。
このフラグメントでは、Z3 ドキュメントで説明されているように、並べ替えを階層化する必要があり、式 F が (スコーレム化された) プレネックス正規形である必要がありますが、追加の原子式を使用できます。
y in Im[f]
の「短縮形」である F で発生する
存在 x1 : A1, ..., xn : An . y = f(x1,...,xn)
ここで、f はシグネチャ f : A1 x ... x An -> B を持つ関数であり、f は範囲 B を持つ唯一の関数でなければなりません。したがって、St1 フラグメントは (非常に制限された方法で) 成層化に違反することを許可します。たとえば、f が全射であることを主張するためです。
これが未解決の研究課題であるかどうかはわかりません。Z3 の MBQI 決定手順が St1 フラグメントで完了しているかどうかを誰か知っていますか? Z3 は有限時間後に F に対して (理論的には) SAT または UNSAT を生成しますか?