Loading article…
コンピュータサイエンスにおいて、FO(.)(別名FOドット)は一階述語論理(FO)に基づく知識表現言語である。 [ 1 ] FOは、型、集約(集合に対する計数、加算、最大化など)、算術、帰納的定義、部分関数、および内包的オブジェクトでFOを拡張する。
FO(.)知識ベースは、それ自体では実行できません。これは、さまざまな汎用推論アルゴリズムへの入力として使用される「情報の袋」にすぎないためです。FO(.)を使用する推論エンジンには、IDP-Z3 [ 2 ] 、 IDP [ 3 ] [ 4 ]、およびFOLASP [ 5 ]などがあります。例として、IDPシステムでは、 FO(.)知識ベース上で、モデルの生成、集合クエリへの応答、2つの理論間の含意のチェック、充足可能性のチェックなど、さまざまな種類の推論が可能です。
FO(.)には4種類のステートメントがあります。
投票法では、市民は投票するために少なくとも18歳以上でなければならないと規定されています。さらに、投票法が規定的なものと解釈される場合、18歳以上であれば投票は義務となります。これはFO(.)では次のように表すことができます。
語彙 V { age: () → ℤ // 関数宣言 規範的、投票: () → 𝔹 // 述語宣言 } 理論 T:V { age() < 18 ⇒ ¬vote()。// 公理: 18 歳未満の場合は投票できません。 prescriptive() ⇒ (age() ≥ 18 ⇒ vote()). // 公理: prescriptive の場合: 18 歳以上であれば投票しなければならない } このコードでは、A →B はAからBへの関数を示します。は整数を表します。はブール値、¬は否定、 は実質条件⇒を表します。述語 < と ≥ は組み込みであり、通常の意味を持ちます。