JPS6063640A - 述語論理型プログラム処理装置 - Google Patents
述語論理型プログラム処理装置Info
- Publication number
- JPS6063640A JPS6063640A JP17074883A JP17074883A JPS6063640A JP S6063640 A JPS6063640 A JP S6063640A JP 17074883 A JP17074883 A JP 17074883A JP 17074883 A JP17074883 A JP 17074883A JP S6063640 A JPS6063640 A JP S6063640A
- Authority
- JP
- Japan
- Prior art keywords
- predicate
- external
- name
- control means
- type program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
プログラムを実行する処理装置に関するものである。更
に詳細には、述語論理型プログラムにおいを区別できる
ようにし、外部述語名を持つ述語の処理を外部装置で実
行できるようにした述語論理型プログラム処理装置に係
る。
に詳細には、述語論理型プログラムにおいを区別できる
ようにし、外部述語名を持つ述語の処理を外部装置で実
行できるようにした述語論理型プログラム処理装置に係
る。
述語論理型言語の代表であるPrologでは、述語は
述語名(引数,引数、・・・、引数)
の形式を持ち、P,Q,・・・を述語とした時、事実(
assertinn )は 1ノ。
assertinn )は 1ノ。
Q。
14。
の形式で書き、述語P,Q,Rが真であることを表わす
。
。
又、規則( rule )は
P: − Q,R。
と書き、述語QとRが共に真の時には、述語Pが真であ
ることを表わす。
ることを表わす。
又、間合せ( Command )は
:−P,Q,l(、。
−夕をめることを示す。
第1図は事実と規則のプログラム例を示し、第2図は第
1図の事実と規則に対する間合せプログラムと出力結果
を示す。
1図の事実と規則に対する間合せプログラムと出力結果
を示す。
第1図に示したプログラム例は簡単なものであるが、具
体的な応用プログラムは更に複雑である。
体的な応用プログラムは更に複雑である。
例えば、第3図に示したように、植物、動物といった述
語を導入した場合には、プログラムが膨大な量に増加す
る。この時、耐3図に示した規則から述語植物を実行す
るとこれを満たすデータを事実から捜す処理を行う。こ
の処理を従来型の述語論理型プログラムを実行する装置
(英国ニシンバラ大学のデー愉ワレンらによるDRC8
y s (em−1Q Prolog : Perei
ra 、L、、Pereira、F、andWarre
n、D、 、User’s Guide to DBC
System −10Prolog ’ 、 Dept
、 AI Re5earch 。
語を導入した場合には、プログラムが膨大な量に増加す
る。この時、耐3図に示した規則から述語植物を実行す
るとこれを満たすデータを事実から捜す処理を行う。こ
の処理を従来型の述語論理型プログラムを実行する装置
(英国ニシンバラ大学のデー愉ワレンらによるDRC8
y s (em−1Q Prolog : Perei
ra 、L、、Pereira、F、andWarre
n、D、 、User’s Guide to DBC
System −10Prolog ’ 、 Dept
、 AI Re5earch 。
Edinburgh Univ、、 1978.) で
行うと、ユニイフィケーションメカニズムにより達成さ
れるため、多量のメモリと実行時間が要る。
行うと、ユニイフィケーションメカニズムにより達成さ
れるため、多量のメモリと実行時間が要る。
本発明は、このような欠点を解決し、第3図に示すよう
な述語論理型プログラムを高速に処理する装置を提供す
る。
な述語論理型プログラムを高速に処理する装置を提供す
る。
即ち、本発明によれば、内部述語名と外部述語名を区別
できる述語名とパラメータから成る述語を備え、内部述
語名を持つ述語の処理と外部述語名の述語の検出を行う
実行手段と、外部述語名の述語の処理を外部装置に依頼
し、該外部装置から受け取った処理結果を該実行手段へ
渡す制御を行う制御手段とを具備し、外部述語名の述語
の処理を外部装置で行うことを可能とした述語論理型プ
ログラム処理装置が得られる。
できる述語名とパラメータから成る述語を備え、内部述
語名を持つ述語の処理と外部述語名の述語の検出を行う
実行手段と、外部述語名の述語の処理を外部装置に依頼
し、該外部装置から受け取った処理結果を該実行手段へ
渡す制御を行う制御手段とを具備し、外部述語名の述語
の処理を外部装置で行うことを可能とした述語論理型プ
ログラム処理装置が得られる。
先ず、本述語論理型プログラム処理装置の概要について
述べる。
述べる。
本装置では、第3図に示すような量の多い事実を示す述
語は外部装置に格納する。この外部装置では、植物(花
、×)のような述語を実行するが、この外部装置は述語
論理型プログラムを実行する構造のものでは六<1例え
ば関係代数演算処理装置〔アール−エプスタイン:1う
pstein 、几、、et。
語は外部装置に格納する。この外部装置では、植物(花
、×)のような述語を実行するが、この外部装置は述語
論理型プログラムを実行する構造のものでは六<1例え
ば関係代数演算処理装置〔アール−エプスタイン:1う
pstein 、几、、et。
al、 : the IDM 500−Corrynu
nication Issueswith Backe
nd Processons 、COMPCON 。
nication Issueswith Backe
nd Processons 、COMPCON 。
PP、112−114 (1981))によって高速に
実行する。このため、外部装置に貯えた述語は外部述語
名として区別し、第3図に示した規則は第4図に示す規
則として表現する。即ち、第4図では。
実行する。このため、外部装置に貯えた述語は外部述語
名として区別し、第3図に示した規則は第4図に示す規
則として表現する。即ち、第4図では。
外部述語名は¥で始まる述語名によシ区別している。
第4図の規則において、述語M植物の実行は外部装置に
依頼し、高速に実行するものである。
依頼し、高速に実行するものである。
次に、実施例を用いて詳細に説明する。
第5図は本発明を用いた一実施例のブロック図を示す。
内部述語名の述語の処理と外部述語名の述語の検出を行
う実行手段1.外部述語名の処理を外部装置に依頼し外
部装置からの処理結果を実行手段1へ渡す制御を行う制
御手段2、述語プログラムを貯える貯蔵装置3、外部述
語名の処理を行う外部装置4から成っている。
う実行手段1.外部述語名の処理を外部装置に依頼し外
部装置からの処理結果を実行手段1へ渡す制御を行う制
御手段2、述語プログラムを貯える貯蔵装置3、外部述
語名の処理を行う外部装置4から成っている。
実行手段1は、述語論理型プログラムを処理すス抱暦ず
刊在 二治蛍f各もhイ書へ入rへr・層圧計算機に
よって実現できる。この時に従来方式と異なる機能とし
て述語名が内部述語名が外部述語名かを区別する情報を
述語名を示す内部データに備えることである。4−≦し
G丙1ヱ;J津−1暢シもがあ14又、この内部データ
が外部述語名でなければ従来と同様の述語論理型プログ
ラムの実行を行い、外部述語名を検出すると制御手段2
へ伝える。そして、制御手段2から処理結果が送られる
のを待つ。
刊在 二治蛍f各もhイ書へ入rへr・層圧計算機に
よって実現できる。この時に従来方式と異なる機能とし
て述語名が内部述語名が外部述語名かを区別する情報を
述語名を示す内部データに備えることである。4−≦し
G丙1ヱ;J津−1暢シもがあ14又、この内部データ
が外部述語名でなければ従来と同様の述語論理型プログ
ラムの実行を行い、外部述語名を検出すると制御手段2
へ伝える。そして、制御手段2から処理結果が送られる
のを待つ。
制御手段2け実行手段1から外部述語名の述語の実行を
要請されると、述語名、パラメータ付を外部装置4へ送
シ、実行を依頼する。そして、実行結果を外部装置4か
ら受け取り、実行手段1へ返す。制御手段2は汎用計算
機等で用いられる通常の制御回路により実現できる。
要請されると、述語名、パラメータ付を外部装置4へ送
シ、実行を依頼する。そして、実行結果を外部装置4か
ら受け取り、実行手段1へ返す。制御手段2は汎用計算
機等で用いられる通常の制御回路により実現できる。
貯蔵装置3はプログラムを貯えるもので、汎用計算機の
主記憶装置等で実現できる。
主記憶装置等で実現できる。
外部装置4は、述語名と複数個のパラメータからなる述
語を実行するもので、この述語を満たすパラメータ付を
高速にめる処理を行い、例えば、関係代数演算マシン等
で実現できる。
語を実行するもので、この述語を満たすパラメータ付を
高速にめる処理を行い、例えば、関係代数演算マシン等
で実現できる。
次に実施例を用いて本実施例の動作について説明する。
今、第4図のPrologプログラムに対して1間合せ
ニー 好き(太部、×)
を行い、第4図の第3番目の規則を実行したとする。第
6図は実行の制御に使用するデータ領域の変化、第7図
は第6図に対応する動作フロー図を示す。
6図は実行の制御に使用するデータ領域の変化、第7図
は第6図に対応する動作フロー図を示す。
先ず実行手段1は、好き(太部、×)の述語のためのデ
ータ領域を確保し、右辺の述語の実行に移る(第6図(
a)および第7図の10)。同様に、述語¥植物を実行
するためのデータ領域を確保しく第6図(blおよび第
7図の20)、述語¥植物が外部述語名であることを検
出し制御手段2に実行を依頼する。
ータ領域を確保し、右辺の述語の実行に移る(第6図(
a)および第7図の10)。同様に、述語¥植物を実行
するためのデータ領域を確保しく第6図(blおよび第
7図の20)、述語¥植物が外部述語名であることを検
出し制御手段2に実行を依頼する。
制御手段2は、述語Y植物(花、×)を受け取り、外部
装置4へ実行を起動すると、外部装置4はこれを実行す
る。外部装置4は第4図の事実に基づいてこれを満たす (花、菊)、(花、チー−リップ)、(花。
装置4へ実行を起動すると、外部装置4はこれを実行す
る。外部装置4は第4図の事実に基づいてこれを満たす (花、菊)、(花、チー−リップ)、(花。
朝顔)
を得て制御手段2へ送る。
実行手段1がこの結果を制御手段2を介して受ことがら
これを表わすデータ領域を作る(第6図(C)および第
7図の30)。
これを表わすデータ領域を作る(第6図(C)および第
7図の30)。
次に、最初のデータである(花、菊)を用いて、変数対
応づけ(Prologではユニイフィケーションと呼ぶ
)を行い、×として菊がめられ、出力される。その結果
のデータ領域を第6図(d)および第7図の30に示す
。
応づけ(Prologではユニイフィケーションと呼ぶ
)を行い、×として菊がめられ、出力される。その結果
のデータ領域を第6図(d)および第7図の30に示す
。
更に、結果が要求されると、次にチューリップ。
続いて朝顔がめられる。
以上のように、¥:植物という外部述語名の述語の実行
を外部装置で行うが、実行手段1で実行する内部述語名
を持つ述語と同様に処理できる。
を外部装置で行うが、実行手段1で実行する内部述語名
を持つ述語と同様に処理できる。
従って、外部装置として、大容量の記憶機能を持ち、高
速に処理できる関係代数演算システムを用いると非常に
高速な述語論理型プログラムの実行が可能になる。
速に処理できる関係代数演算システムを用いると非常に
高速な述語論理型プログラムの実行が可能になる。
以上、実施例を用いて本発明について説明した。
本実施例は単なる一例である。
従って、例えば、上記実施例では、実行手段1は制御手
段2から3個の結果を一度に貰う方式であったが、1個
づつ3回に分けて貰う方式でも可能である。
段2から3個の結果を一度に貰う方式であったが、1個
づつ3回に分けて貰う方式でも可能である。
又、制御手段2からの結果として、該当するデータが存
在しなかったことを示す結果(Prologではfai
l という)が送られることも可能である。
在しなかったことを示す結果(Prologではfai
l という)が送られることも可能である。
以上の例から明らかなように1本発明は機械訓訳の辞書
等をデータベースとして考え、述語論理型プログラムと
結合して動作させるのに有効である。
等をデータベースとして考え、述語論理型プログラムと
結合して動作させるのに有効である。
第1図はPrologプログラムの事実と規則の例を示
す図、第2図はPro logの問合せの例を示す図、
第3図は本発明が適用されるPrologプログラムの
事実と規則の例を示す図、第4図は本発明で適用される
実施例で用いるPrologプログラムの事実と規則の
例を示す図、第5図は本発明を用いた述語論理型プログ
ラム処理装置の実施例を示すブロック図、第6図(a)
〜(d)はPrologプログラムを実行する時のデー
タ領域を示す概念図、第7図は第6図に対応する動作フ
ローを示す図を各々示す。 図において、参照数字1は実行手段、2は制御手段、3
は貯蔵装置、4は外部装置を各々示す。 71 図 オ 2 図 73 図 74 図 75 図 76 図 (0) (b) (C) 71”7 図
す図、第2図はPro logの問合せの例を示す図、
第3図は本発明が適用されるPrologプログラムの
事実と規則の例を示す図、第4図は本発明で適用される
実施例で用いるPrologプログラムの事実と規則の
例を示す図、第5図は本発明を用いた述語論理型プログ
ラム処理装置の実施例を示すブロック図、第6図(a)
〜(d)はPrologプログラムを実行する時のデー
タ領域を示す概念図、第7図は第6図に対応する動作フ
ローを示す図を各々示す。 図において、参照数字1は実行手段、2は制御手段、3
は貯蔵装置、4は外部装置を各々示す。 71 図 オ 2 図 73 図 74 図 75 図 76 図 (0) (b) (C) 71”7 図
Claims (1)
- 内部述語名と外部述語名を区別できる述語名とパラメー
タから成る述語を備え、内部述語名を持つ述語の処理と
外部述語名の述語の検出を行う実行手段と、外部述語名
の述語の処理を外部装置に依頼し、該外部装置から受け
取った処理結果を該実行手段へ渡す制御を行う制御手段
とを具備し、外部述語名の述語の処理を外部装置で行う
ことを可能とした述語論理型プログラム処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17074883A JPS6063640A (ja) | 1983-09-16 | 1983-09-16 | 述語論理型プログラム処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17074883A JPS6063640A (ja) | 1983-09-16 | 1983-09-16 | 述語論理型プログラム処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6063640A true JPS6063640A (ja) | 1985-04-12 |
Family
ID=15910654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17074883A Pending JPS6063640A (ja) | 1983-09-16 | 1983-09-16 | 述語論理型プログラム処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6063640A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6426937A (en) * | 1987-07-23 | 1989-01-30 | Mitsubishi Electric Corp | Execution system for logical language |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58103039A (ja) * | 1981-12-16 | 1983-06-18 | Toshiba Corp | デ−タベ−スシステム |
-
1983
- 1983-09-16 JP JP17074883A patent/JPS6063640A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58103039A (ja) * | 1981-12-16 | 1983-06-18 | Toshiba Corp | デ−タベ−スシステム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6426937A (en) * | 1987-07-23 | 1989-01-30 | Mitsubishi Electric Corp | Execution system for logical language |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO1989001203A1 (en) | Mimd computer system | |
JPS6063640A (ja) | 述語論理型プログラム処理装置 | |
JPH0724013B2 (ja) | ベクトルプロセツサ | |
KR920002853B1 (ko) | 논리형언어의 데이타 처리방법 | |
JPS60107137A (ja) | タグ付デ−タ処理装置 | |
JP2727023B2 (ja) | 情報処理装置 | |
JP2585780B2 (ja) | 入出力ライブラリにおけるdoループ最適化処理方式 | |
JPS60142744A (ja) | 多重言語処理システム | |
Neuhold | Coupling knowledge based systems with large data stores | |
JPS62182931A (ja) | デ−タ分離方式 | |
JPS6063639A (ja) | 述語論理型プログラム記憶制御装置 | |
JP3122988B2 (ja) | キー値の問い合わせシステム | |
JPS63263527A (ja) | 情報処理装置 | |
JPS60220468A (ja) | ベクトル演算制御方式 | |
JPH0223429A (ja) | 平方根逆数の最適化処理方法 | |
JPS63205733A (ja) | 並列推論マシンのゴ−ル管理方式 | |
JPS55154634A (en) | Function selecting method for software processing | |
JPH05216668A (ja) | データ処理方式 | |
JPH04266127A (ja) | 学習型ファジィ推論装置 | |
JPS6223898B2 (ja) | ||
JPH01166223A (ja) | 情報処理方式 | |
JPH05334359A (ja) | 統合データ抽出方式 | |
JPH0470966A (ja) | データベース処理機構 | |
JPS62113240A (ja) | プロログ処理装置 | |
JPS63303433A (ja) | 論理型言語のデ−タベ−ス方式 |