Logic programmingとは? わかりやすく解説

Weblio 辞書 > 学問 > OR事典 > Logic programmingの意味・解説 

論理プログラミング

読み方ろんりぷろぐらみんぐ
【英】:logic programming

概要

知識森羅万象因果関係論理記号と非論理記号使って形式的に記述したものは論理式呼ばれる. この中で一階述語論理式と呼ばれ, "それを成り立つようにするには, いくつかのそれぞれ異な条件満たされればよい" ことを記述する論理式集合の処理を対象として, ある論理式成り立つかどうか検証過程計算過程みなしたコンピュータプログラム論理プログラム, このような計算原理に基づくプログラム法を論理プログラミングという.

詳説

 論理とは「推理仕方, 論証筋道」を意味し, 論理学とは「正し認識を得るための規範となるべき思惟法則及び形式研究する学問一般」をいう. その中で 記号論理学 (symbolic logic) とは「論理対象となる思考終局的要素とその基本的な関係を数学の記号類するもので表現し, 論理的操作数学演算類する操作で行う論理学であって, 論理計算, 数学的論理学と大体同義であるとされる [1]. 従って, 記号論理論理推論 (logical reasoning) 分野属し, その研究はわれわれの興味対象要素(思考終局的要素)と対象間の論理的関係を操作し, 論証道筋検証し, 正し認識を得ることに関する方法論探究意味する.

 このことはわれわれが計算機使って計算を行う, 問題を解く, あるいは, 対象計算機制御するなどの諸計算行為多く類似点をもつ. しかし, こうした (数値的) 計算行為には, 使用するプログラム言語のもつ諸規則 (文法など) や計算順序などを勘案しつつアルゴリズム構築しプログラミングを行うことが要求されるため, こうした方法では, 知識としての論理対象となる思考終局的要素とその基本的な関係を, 直接表現し利用することは, 従来, 困難であった. 近年, 知識工学 (knowledge engineering) と呼称され, 知識計算行為対象, すなわち知識処理を対象とする分野展開されてきた. これは知識約束に従って記号化し, いわゆる知識ベースとして計算機中にこれを蓄え, これらを利用しつつ, 対象問題 (ここでは命題) を解こうとする研究分野であって, 記号論理学その理論的基礎を成す.

 さて, 知識工学では, 理論実用両面わたって特に多く研究システム開発が, 一階述語論理(first-order predicate logic)を利用して行われている. 一階述語論理に基づく場合, 知識記号列で表現され, 知識操作は, 短い列から長い列を生成する構文的規則(syntax), 与えられ記号列を解釈する意味論的規則 (semantics), 構文的規則に基づく推論規則 (rule of inference) および系全体に関する公理 (axiom) に基づいて行われる. これは例え言えば, アルファベットから単語構成され, 単語群から文節構成され文節群から文が構成される仕組である. 文法相当するものとして構文的規則があり, 文字列としての単語文節, 文章の意味解釈相当する操作意味論的規則則って用意される.

 記号論理的に見ると一階述語論理記号列は, 論理記号 (結合子, 限定記号など) と非論理記号 (定数, 変数, 述語, 関数) からなり, 非論理記号固有の意味を与えたとき, その解釈一意的に決まる. このことを, 一階言語定めたという. またここで言う述語 (predicate) は, その引き数である定数変数の状態や性状 (つまり, ~である;~する, など) を記述する. 述語解釈としての論理的意味付けには, ブール代数では0か1, 二値論理では真か偽, ファジィ論理では数値的真理値言語的(linguistic)真理値割り当てる. 変数定数, さらに, 変数定数すべての引数代入した関数を項 (term) と呼ぶ. n\, 変数述語の各引数に項を代入した論理式原子論理式 (atomic formula) といい, これらを論理記号結合したものも論理式という. さらに, 論理式同士論理記号結合したものも論理式という. 代表的論理式同士の関係を意味づけしたものいわゆる真理値表 (truth table) を構成する.

 論理式 \phi\, を真とするある解釈と項への値割り当て存在するならば, この論理式充足可能 (satisfiable) であるという. さらに論理式集合\Gamma\, 充足する任意の解釈割り当てがある論理式 \phi\, 充足するとき, この論理式 \phi\, 論理式集合 \Gamma\, 論理的帰結呼ばれる. ゲーデルの完全性定理 (completeness theorem) によれば, ある論理式 \phi\, 論理式集合 \Gamma\, 論理的帰結であるならば, 論理式集合 \Gamma\, からその論理式 \phi\, を導く有限長さ記号列を生成できる. これは論理式集合から有限回のステップ機械的に論理的帰結を導くことができるアルゴリズム存在言明している. ここから一階述語論理推論規則として唯一定義されるモーダス・ポーネスが提示される. すなわち, "二つ論理式 \phi\, \psi\, があり, 論理式 \phi\, 論理式集合 \Gamma\, 論理的帰結かつ「\phi\, ならば \psi \, 」も \Gamma\, 論理的帰結ならば, \psi\, \Gamma\, 論理的帰結である. "これは連続値を扱うファジィ推論 (fuzzyinference) [3] の場合にも前提, 条件および近似帰結として成り立つ推論規則である.

 次に, 論理プログラミング (logic programming) において重要な証明」の概念述べる. 論理式の列 \phi_\iota (\iota=1, 2, . . n)\, 存在し, 全ての \phi_\iota\, 公理か, 論理式集合 \Gamma\, の元か, または列のそれ以前位置する他の論理式からモーダ・ポーネスによって導かれたか, のいずれか成り立つとする. この時, 論理式の列 \phi_\iota\, 論理式 \phi_n\, の証明呼ばれ, 論理式 \phi_n\, 論理式集合 \Gamma\, から証明可能である, といわれる.

 以上の議論結果として形式的知識表現としての論理式プログラムに, その推論過程としての証明計算対応することが理解できる. 現実的視点から一階述語論理のある制限されクラスのみを対象としてプログラミング環境実現したものを論理プログラミングという. そのような制限されクラスとしてホーン節がある. 一般に論理プログラミングでは, 与えられ論理式否定(\phi_1\, )からトップダウン的またはボトムアップ的に導出原理利用して演繹的に空節(\phi_n\, )を導くという証明の手続き利用される. このようにして \phi_1\, 充足不可能性を証明することによって, 元の論理式が真であることを証明するのである. 論理プログラミングにおける代表的プログラム言語PROLOGであり, わが国第5世代コンピュータ計画はじめとして知識工学, 人工知能分野多く影響与えている.

 論理プログラミングの直接的応用としてはパズル, 定理証明などが知られているが, その実際的応用いわゆる各種エキスパートシステム (expert system) の構築にある. エキスパートシステムでは, 事実専門家知識論理式, 特にホーン節形式表現して知識ベースとして蓄え, 知識ベース内容論理式集合 \Gamma\, として, 与えられ問題 (論理式) に対して論理的帰結自動的に得る手続きを論理プログラミングが受け持つ [4]. 論理プログラミングによる証明解釈そのものが, エキスパートシステムにおいては人間への自動説明機能となる. このようなエキスパートシステムの持つ宿命的課題必要十分知識をいかに獲得するかである. 知識獲得 (knowledge acquisition) の方法として人手による方法ばかりではなく自律的学習機能導入する研究なされている. さらに, 実用上の問題として蓄えた知識の上推論の非単調性 (non-monotonicity) の問題, すなわち新しく入力され知識以前知識矛盾するような結果引き起こす現象がしばしば起こることが指摘されている. これに対す有力な方法未だに確立されていないが, 実際にこのような場合でも非単調推論 (non-monotonic reasoning) と呼ばれる方法利用される.

 論理プログラミングが人の論理的知識蓄積し利用しようとするものであるに対して, 定性推論 (qualitative inference) は物理法則基づいた因果関係基本として, 対象とする系の動的挙動定性的推論し, 理解しようとする [5]. 通常微分方程式で表わされ解析され理解されるところの物理現象を, 素朴に理解しようとするものと考えることができるが, 計算機数値計算能力依存する部分がある. 定性推論物理現象に対して素直に抱く疑問「なぜ?」, 「こうなったどうなる?」に答えるのに有効な推論方式考えられる.

 ここで取り上げた伝統的な記号論理推論に基づく論理プログラミング, 曖昧さ導入したファジィ推論, あるいは知識直接利用狙ったエキスパートシステム, さらには, 物理現象動的振る舞い対象とする定性推論有機的に結合することにより, 真に有効な人工知能実現されることを期待したい.



参考文献

[1] 新村出編, 『広辞苑(第5版)』, 岩波書店, 1998.

[2] 森下真一, 『知識推論』, 情報数学講座10, 共立出版, 1997.

[3] 水本雅晴, 『ファジィ理論とその応用』, サイエンス社, 1988.

[4] 安部憲広, 滝寛和, 『エキスパート・システム入門』, 共立出版, 1987.

[5] 溝口文雄, 古川康一, 安西祐一郎, 『定性推論』, 知識情報処理シリーズ別巻1, 共立出版, 1989.

「OR事典」の他の用語
近似・知能・感覚的手法:  知識表現  縮約  記号論理学  論理プログラミング  論理推論  識別不能性  近似アルゴリズム

論理プログラミング

(Logic programming から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/19 16:42 UTC 版)

論理プログラミング(Logic Programming)とは、数理論理学(記号論理学)を基礎にしたプログラミングパラダイム、または数理論理学コンピュータプログラミングへの応用である。形式論理論理式ソースコードの書式に投影することが基本になる。プログラミングに適用するための幅広い解釈が加えられており、研究対象としての論理プログラミングは非常に多様である。


  1. ^ Alain Colmerauer and Philippe Roussel, The birth of Prolog
  2. ^ Robert Kowalski. The Early Years of Logic Programming
  3. ^ Robert Kowalski. The Early Years of Logic Programming
  4. ^ R.A.Kowalski (July 1979). “Algorithm=Logic + Control”. Communications of the ACM 22 (7): 424–436. doi:10.1145/359131.359136. 
  5. ^ Kenneth Kahn, and Viyaj Saraswat, Actors as a Special Case of Concurrent Constraint Programming


「論理プログラミング」の続きの解説一覧

「logic programming」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Logic programming」の関連用語

Logic programmingのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Logic programmingのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本オペレーションズ・リサーチ学会日本オペレーションズ・リサーチ学会
Copyright (C) 2024 (社)日本オペレーションズ・リサーチ学会 All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの論理プログラミング (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2024 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2024 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2024 GRAS Group, Inc.RSS