論理型言語

更新日:

用語解説

論理型言語は、対象領域の事実と推論規則を宣言し、問合せを満たす値を論理推論と探索によって求めるプログラミング言語の分類です。

■ 試験で押さえるポイント

  • 代表的なPrologでは、述語論理に基づく事実・規則へ問合せを行い、単一化で変数を対応付け、後向き推論で解候補を探します。

  • ある選択が失敗するとバックトラッキングで以前の分岐へ戻り、別候補を試して条件を満たす解を列挙します。

  • 利用者は主に「何が成り立つか」を関係として記述し、手続型のような命令実行順の詳細を推論機構へ委ねます。

  • 規則の順序や探索空間は性能・停止性へ影響し、宣言的だから実行戦略を全く考えなくてよいわけではありません。

■ 選択肢での判断ポイント

事実、規則、問合せ、単一化、バックトラッキングが特徴です。Prologを代表例として手続型・関数型と区別します。

例: 「親(x,y)かつ親(y,z)なら祖父母(x,z)」という規則と親の事実へ「祖父母(A,C)は誰か」と問い合わせ、Aの候補を推論します。

音声で聞く

同じ分野の用語