[論文レビュー] A General Framework For Lazy Functional Logic Programming With Algebraic Polymorphic Types
本稿は、多相型、等式公理を伴う代数的データコンストラクタ、および非決定性をサポートする、遅延関数論理プログラミングの一般枠組みを提示する。Cに基づく書き換え計算体系とモデルを組み合わせた新規論理を導入し、整合性、完全性、型保存性を達成する。遅延ナローイング modulo C を用いた整合的かつ完全な目標解決手順を実現する。
We propose a general framework for first-order functional logic programming, supporting lazy functions, non-determinism and polymorphic datatypes whose data constructors obey a set C of equational axioms. On top of a given C, we specify a program as a set R of C-based conditional rewriting rules for defined functions. We argue that equational logic does not supply the proper semantics for such programs. Therefore, we present an alternative logic which includes C-based rewriting calculi and a notion of model. We get soundness and completeness for C-based rewriting w.r.t. models, existence of free models for all programs, and type preservation results. As operational semantics, we develop a sound and complete procedure for goal solving, which is based on the combination of lazy narrowing with unification modulo C. Our framework is quite expressive for many purposes, such as solving action and change problems, or realizing the GAMMA computation model.
研究の動機と目的
- 遅延関数言語の意味論を捉えるために等式論理が有する制限、特に無限値同士の等価性を扱えない点を是正すること。
- 遅延評価、非決定性、多相型をサポートする関数論理プログラミングの論理的基盤を提供すること。
- 等式論理における無限項の等価性が決定不能であるため、条件付きナローイングにおける不完全性を克服すること。
- Cに基づく書き換えとモデルに基づく形式的意味論を構築し、整合性と完全性を保証すること。
- 適切に型付けられた操作的手順を通じて、計算下でも型安全性と型保存性を確保すること。
提案手法
- フレームワークは、C(データコンストラクタを支配する等式理論)に基づく条件付き書き換え規則の集合としてプログラムを定義する。
- 等式論理を基礎から置き換えるために、Cに基づく書き換え計算体系とモデル理論的意味論を組み合わせた新規論理を導入する。
- Cに関するユニフィケーションを組み合わせた遅延ナローイングを用いた、整合的かつ完全な目標解決手順を開発する。
- フレームワークは多相型をサポートし、適切に型付けられた環境と型バージョンを用いて型保存性を保証する。
- 代数的等価性(≈)と厳密等価性(==)を区別し、遅延言語の意味論的意味と整合させる。
- モデル理論には、すべてのプログラムに対して自由モデルが存在し、意味的含意が論理的導出に対応することを保証する。
実験結果
リサーチクエスチョン
- RQ1無限値を捉え、非決定性をサポートするような、遅延関数論理プログラムの論理的意味論を定義できるか?
- RQ2等式論理をどのように拡張または置き換えることで、無限データ構造を有する遅延関数言語の意味論をサポートできるか?
- RQ3このような枠組みにおいて、目標解決のための整合的かつ完全な操作的手順を設計できるか?
- RQ4等式データコンストラクタと多相型を統合しながら、型安全性を維持できるか?
- RQ5モデル理論的意味論と、ナローイングに基づく操作的意味論の関係は何か?
主な発見
- 提案された論理は、モデルに関してCに基づく書き換えの整合性と完全性を保証し、堅固な意味論的基盤を提供する。
- すべてのプログラムに対して自由モデルが存在し、明確に定義された意味的意味論を保証する。
- フレームワークは型保存性を達成し、適切に型付けられたプログラムが計算中でも適切に型付けられたまま保たれることを保証する。
- 遅延ナローイング modulo C に基づく操作的手順は、目標解決に関して整合的かつ完全である。
- フレームワークはGAMMA計算モデルをサポートし、行動と変化を含む問題を解ける。
- 代数的等価性と厳密等価性の区別により、無限項に対する等式論理の決定不能性の問題が解消される。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。