この記事には複数の問題があります。改善にご協力いただくか、トークページでこれらの問題について議論してください。(これらのメッセージを削除する方法とタイミングについてはこちらをご覧ください)
|
知識ベースに適用される「完全性」という用語は、2 つの異なる概念を指します。
形式論理において、知識ベースKBは、KB⊭αかつKB⊭¬αとなるような式αが存在しない 場合に完全である
不完全な知識を含む知識ベースの例:
KB := { A ∨ B }
すると、KB ⊭ A と KB ⊭ ¬A となります。
場合によっては、閉世界仮定、つまり含意されないリテラルをすべて否定として知識ベースに追加することで、一貫性のある知識ベースを完成させることができます。しかし、上記の例では、知識ベースに矛盾が生じるため、この方法は機能しません。
KB' = { A ∨ B, ¬A, ¬B }
KB := { P(a), Q(a), Q(b) } の場合、 KB ⊭ P(b) かつ KB ⊭ ¬P(b) となるため、閉世界仮定を用いると、 KB' = { P(a), ¬P(b), Q(a), Q(b) } となり、KB' ⊨ ¬P(b) となる。
データ管理において、完全性とは、完全性アサーションを介してKBの一部についてアサートできるメタ知識です。 [ 1 ] [ 2 ]
たとえば、知識ベースには述語R と S の完全な情報が含まれていますが、述語 T については何もアサートされていません。次のクエリを検討してください。
Q1 :- R(x), S(x) Q2 :- R(x), T(x)
クエリ1の場合、それ自体が完全な述語のみが交差されるため、知識ベースは完全な回答を返します。クエリ2の場合、述語Tは潜在的に不完全であるため、そのような結論は導き出せません。