JPH01156826A - 単一化候補項の選択装置 - Google Patents

単一化候補項の選択装置

Info

Publication number
JPH01156826A
JPH01156826A JP62314139A JP31413987A JPH01156826A JP H01156826 A JPH01156826 A JP H01156826A JP 62314139 A JP62314139 A JP 62314139A JP 31413987 A JP31413987 A JP 31413987A JP H01156826 A JPH01156826 A JP H01156826A
Authority
JP
Japan
Prior art keywords
term
address
index
target
unification
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.)
Granted
Application number
JP62314139A
Other languages
English (en)
Other versions
JPH0564809B2 (ja
Inventor
Isamu Yamazaki
勇 山崎
Shigeki Shibayama
柴山 茂樹
Hiroshi Sakai
浩 酒井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP62314139A priority Critical patent/JPH01156826A/ja
Publication of JPH01156826A publication Critical patent/JPH01156826A/ja
Publication of JPH0564809B2 publication Critical patent/JPH0564809B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 知識ベース処理における、単一化処理または単一化検索
に使用される単一化候補項の選択装置に関する。
(従来の技術) 知識情報処理言語の一つであるPrologでは、「項
」と呼ぶ形式を用いて表した述語の集合(項集合)から
なるプログラムに対し、目標となる項(目標類)が与え
られ、この目標類がプログラム中の項集合で満足させら
れるかどうかを調べて行くことを処理の基本にしている
が、この過程の中で、項と項との単一化(Unific
ation)が重要な役゛ 割を果たす(V、P、CI
ocksin/C,S、Mellish著、中村克彦訳
r Prologプログラミング」マイクロソフトウェ
ア刊:参照)。
二つの項tlとt2の単一化の成功・失敗は、■tiと
t2が全く同じであれば単一化成功、■11またはt2
に変数があるとき、(同一変数には同じ項を代入すると
して)その変数に適当な項を代入することによって、他
方と一致させることができれば単一化成功、これら■と
■とによって単一化成功でく方法を採ることが多い。し
かし、この方法では、項集合の中で目標類との単一化に
成功する項が少数であるのにも拘らず、処理として意味
のあるこれら少数の項との単一化を行うために、より多
くの失敗可能性のある単一化作業を行わねばならないと
いう欠点があった。その結果、従来、単一化の処理は時
間のかかるものであり% Prologのプログラムは
実行速度の点で、他の言語のプログラムより遅くなるこ
とが多かった。
(発明が解決しようとする問題点) このように、従来の単一化候補項の選択装置においては
、単一化の失敗可能性のある多くの項と目標類との単一
化作業を行なわなくてはならず、実行速度が遅くなると
いう問題があった。
本発明は、このような問題点を解決すべくなされたもの
で、複数の項を要素とする項集合の各項と、目標類との
間の単一化作業を高速に行ない得る単一化候補項の選択
装置を提供することを目的とする。
合の全ての項と単一化を試みるかわりに、単一化可能な
項が必ず含まれている部分類集合の各項とのみ単一化を
試みるようにしたものであり、換言すれば、単一化に失
敗する項のうちの大部分の項とは始めから単一化を試み
ないようにすることにより、全体の処理時間を短縮し、
実行速度を上げようとするものである。
複数の項を要素とする項集合から、その部分類集合とし
て単一化候補項集合を、目標項と単一化可能な項は必ず
含まれているように選びだすため、本発明は、以下に述
べる項集合記憶手段と、目標項入力手段と、汎項アドレ
ス生成手段と、等類アドレス生成手段と、索引記憶手段
と、登録手段と、検索・選択手段とを備えたことを特徴
としている。
項集合記憶手段は、検索の対象となる複数の項を要素と
する項集合を記憶するものである。
目標項入力手段と、目標項を入力するものである。
汎項アドレス生成手段は、前記項集合記憶手段又は前記
目標入力手段から任意の項が与えられる等類アドレス生
成手段は、前記与えられた任意の項の核から、その核を
特定するアドレスを生成・出力するものである。
索引記憶手段は、前記項集合記憶手段から任意の項が与
えられることにより、前記汎項アドレス ′生成手段が
生成したアドレスで指示される記憶場所に当該汎項に係
る項の識別子を汎項索引として記憶するとともに、前記
項集合記憶手段から任意の項が与えられることにより、
前記等項アドレス生成手段が生成したアドレスで指示さ
れる記憶場所に当該項の識別子を等項索引として記憶す
るものである。
登録手段は、前記項集合記憶手段から任意の項が与えら
れることにより、前記汎項アドレス生成手段が生成した
アドレスで指示される前記索引記憶手段の記憶場所に、
当該項の識別子を書込んで前記汎項索引を登録するとと
もに、前記項集合記憶手段から任意の項が与えられるこ
とにより、前記等項アドレス生成手段が生成したアドレ
スで指示される前記等項索引記憶手段の記憶場所に、当
生成手段が生成した各アドレスで前記索引記憶手段中の
前記等項索引を検索し、前記目標項入力手段から目標項
が与えられることにより、前記等項アドレス生成手段が
1成したアドレスで前記汎項索引を検索し、さらに前記
目標項入力手段から目標項が与えられることにより、前
記等項アドレス生成手段が生成したアドレスで前記等項
索引を検索し、登録されている項の識別子があった場合
にこれを単一化候補項として読み出すものである。
(作用) 本発明では、汎項アドレス生成手段が特に重要であるの
で、その働きを説明するが、その準備として汎項につい
て説明する。
「項」の表現は数学で用いる関数の表現と同様テアッテ
、例エバ、f’(gGa、b) 5h(X))などと表
現される。ここで、rやgやhなどは一種の関数記号で
あり、fとgにはそれぞれ2個の項を代入できる場所が
あって、この場合には、fにはg、hなる項が、gには
a、bなる項がそれぞれ入っている。
数)に対して、定数と呼ぶことにする。
いま」−記の項の例をtlとすると(tl−f’(g(
a、b)、h(X)) )、tlと単一化可能な項とし
ては、t2−1’(g(a、Y)浦(g(c、a)))
などがある。この場合、単一化は、X−g(C,a)l
  Y−bとおけば、tlもt2も、ともにf’(g(
a、b)、h(g(c、a)))となるので、成功する
。このようにtlと単一化可能な項は他にも、r(g(
a、b)、h(1’(d(b、h(c)、k)、Z))
)、1’(g(a、b)。
h(d(y、b、a)))、 ・・・・・−・・・・・
4(X、h(g(a、Y)))、 −などと、無数に存
在する。単一化はこのように、変数を含む項では、無数
の相手と成功し得るので、単純な一致検索のように、あ
らかじめハツシング・テーブルに登録をしておくことに
より、検索を、ゴ連化するという手法を使うことができ
ない。
ところで、項の表現として、上記の表現以外に、各定数
にそのarttyを対にしたものを、括弧“0”を使わ
ずに、その出現順に書き並べた、「線形表現」がある。
この表現によると、上記のtl、 t2は tl−f:2. g:2. a:0. b:0. h:
1. X:0閣と書かれる。このように(単一化によっ
て)変数に代入を行うと、線形表現では、その変数の位
置より左側だけが影響を受ける。
いま線形表現で項tを表したとき、左端がら見て行って
初めて変数が現れるまでの定数の列、または変数が現れ
なければ項全体をその項の「核」と定義し、K(t)書
く。また、項tの核に含まれる定数の個数を、その項の
「左定数長」と定義し、L(t)と書く。上記の例では
、各項の核と左定数長は、次の通りとなる。
項      核          左定数長tl−
f’:2. g:2. a:0. b:o、 h:1 
     ・=−5t2−f’:2. g:2. a:
0           ・・・−・−3t3・f’:
2. g:2. ago、 b:o、 h:l、 g:
2. c:0. ag。
・・・・・・8 [1]tlと12が単一化できるためには、tlとt2
の左定数長をそれぞれnl、 n2とすると、11と1
2の線形表現を比較して、左端からsin lnl、 
n21番目までの定数が完全に一致している必要がある
何故ならば、これらの項の単一化において、akin 
(nl、 n2) + 1番目以降に現れるどちらか、
あるいは両方の変数にどのように代入を行なっても、そ
れによって起きる項の変化は線形表現ではll1in 
(nl、 n2) + 1番目以降のみに影響があられ
れ、左端からakin (nl、 n21番目までは不
変なので、この部分に不一致があると、どのように代入
を行なっても不一致が解消できず、単一化ができない(
失敗)からである。
この必要条件を書き直すと次のように書ける。
[2]tlとt2が単一化できるためには、11とt2
の左定数長をそれぞれnl、 n2とすると、 (a)nl>n2ならば・・・・・・左端からn2番目
まで一致していること。つまり、tlの核のn2番目ま
での定数がt2の核と一致していること。
(b)nl<n2ならば・・・・・・左端からn1番目
まで一致していること。つまり、t2の核のn1番目ま
での定数がtlの核と一致していること。
(c)nl−n2ならば・・・・・・左端からnl(o
rn2)番目まで一致していること。つまり、K(tl
)とK(t2)が完全に一致していること。
が必要である。
ここで、上記必要条件のうち(a)が成立しているとき
、「t2は、tlの「汎項」である。」と定義し、「t
2は、11より「−殺性」が高いJと言うことにする。
また、(C)が成立している時、rt2は、【lのr等
項」である」と定義する。さらに、項tの汎項の全体を
、g☆tと書くことにする。
このように定義し、さらにtlとt2の単一化の必要条
件(上記[2])を調べることを考えてみると、次の3
 Pl+の場合を調べればよい。
[3]  (a)  X(g☆tl)のなかにK(t2
)と同じものがあるか? (b )  K(tl)と同じものがK(g☆t2)の
なかにあるか? (c )  K(tl)とK(t2)とが同じか?この
チエツクは、すべて等しいかどうかのチエツクであり、
かつK(g☆tl)とK(11)は有限個(L(tl)
個)であって、予め作ることができるので、ハツシング
テーブルあるいは索引表に登録しておいて高速に見付は
出す手法が使用できる。本発明はこのような事実に基づ
いている。
さて、汎項アドレス生成手段は、ある項が与えられると
、その項の(全ての)汎項の核(K(g☆tl))に対
して、その核から一定のアルゴリズムで索引記憶手段の
アドレスを出力する。
たとえば、前例のtiに対して、その汎項の核K(g☆
tl)は、 kll:      f 二2.g:2.a:0.b:
0−k12:   f:2.g:2.a:0−k13:
   f:2.g:2− k14:   f’:2− k15:   − の5個あるが、これらの各文字列を適当なハツシングに
よって、例えば0〜255の範囲のアドレA(k13)
−X’AB’ A(k14)−X’66゜ A(k15)−X’00゜ 等類アドレス生成手段は、ある項を与えられると、その
項の核から一定のアルゴリズムで索引記憶手段のアドレ
スを出力する。この時に用いるアルゴリズムは、汎項ア
ドレス生成手段で用いるアルゴリズムと、同じ記憶手段
に対しては同じものを用いる。例えば、前例のtlに対
しては、その核K(tl)は klo:   f’:2.g:2.a:O,b:O,h
:1.−であり、前とおなじハツシングアルゴリズムで
は、索引記憶手段に対するアドレスとして、次の数を出
力する。
A(klO) −X’74’ 本発明では、このようなアドレス生成手段を用いて任意
の項についての汎項索引と等項索引とを索引記憶手段に
登録しておき、目標項から求められる汎項アドレスと等
項アドレスとによって上記索引記憶手段を検索するよう
にしているので、単一の実施例について説明する。
第1図は本実施例に係る単一化候補項の選択装置の全体
構成図である。同図に示すように、本装置は、項集合記
憶手段10と、目標項入力手段20と汎項アドレス生成
手段30と、等類アドレス生成手段40と、汎項索引記
憶手段50と、等項索引記憶手段52と、登録手段60
と、検索・選択手段70とから構成されている。
項集合記憶手段10は、単一化の対象となる項を記憶し
ておく手段であり、第2図に示すように、項記憶部11
と項定義部12と項集合指定部13とから構成されてい
る。項記憶部11は、項を線形表現で表したときの各要
素を記憶するものである。項定義部12は、項記憶部l
l中の各要素を用いた各々の項の定義を記憶する。更に
項集合指定部13は、項定義部11中の複数の項定義に
対するポインタなどの項識別子の集合によつて項集合を
指定し記憶する。これらの具体的記憶形態については後
述する。
目標項入力手段20は、単一化の目標となる項を、この
装置外から入力する手段である。
憶手段50のアドレスを出力する手段である。
等類アドレス生成手段40は、ある項が与えられると、
その項の核から上記汎項アドレス生成手段30と同様の
ハツシングによって、等項索引記憶手段52のアドレス
を出力する手段である。
また、本実施例では、索引記憶手段として、汎項索引記
憶手段50と等項索引記憶手段52の2個の索引記憶手
段を備えている。これら検印記憶手段は、項集合の各項
に対してその項やその汎項の核に対する各々の特定の番
地にその項へのポインターなどの項識別子を記憶する手
段である。
登録手段60は、第3図に示すように、汎項登録部6■
と第1の等項登録部62と第2の等項登録部63とから
構成されている。第1の等項登録部62は、項集合記憶
手段IOに記憶されている指定された項集合の各項に対
して、等類アドレス生成手段4oが生成するアドレスで
指定された等項索引記憶手段52中の記憶場所に、項識
別子を書込む制御部である。また、第2の等項登録部6
1は、項集合記憶手さらに、検索・選択手段70は、第
4図に示すように、汎項検索・選択部71と第1の等項
検索・選択部72とからなる。第1の等項検索・選択部
72は、目標項入力手段20から入力される目標項に対
して、等類アドレス生成手段40が生成するアドレスで
指定された汎項索引記憶手段50中の記憶場所に記憶さ
れている項または項識別子を出力させる制御部である。
第5図は項集合記憶手段IOにおける項と項集合の記憶
方式を示した図である。項集合記憶手段lOの中の項記
憶部llは項の要素である定数や変数を定義・記憶する
ためにあり、名称記憶部14とシンボル定義部15とか
らなる。
名称記憶部14は1語32ビツトの記憶装置のN番地か
ら開始され、各シンボルの名称の綴りを格納する部分で
ある。1個のシンボルの名称の綴りは1個以上の文字か
らなるが、1語に4文字づつ区切って記憶する。1語の
なかでの余白には、綴りの終了または余白を表す記号(
1)で埋められと余白の“/l”を合せた“Iy//”
を格納している。
シンボル定義部15はやはり1語32ビツトの記憶装置
のA番地から開始され、項に使われる各シンボルのar
ltyと、そのシンボルのシンボル定義子とを対にして
記憶しておく部分である。なお、ここで上記シンボル定
義子とは、名称記憶部14中の当該シンボルが記憶され
ている記憶場所のNからの相対アドレスを示している。
例えば、前述の例における項11に現れる“f″なるシ
ンボルは、A+6番地に定義されており、arltyは
2、名称記憶部14でのその名称(“f”)の相対番地
は11であることを示している。また、変数の場合はそ
のarityは常に0であるので、arityのかわり
に、変数であるとを示すx’pp’を格納する。例えば
前記の例項11における変数“X”を表すシンボルはA
 +100番地に定義されており、その内容は、変数を
示すFFと、名称記憶部において“X′が格納されてい
る記憶場所の相対番地17とを示している。
分である。なお、ここで項要素定義子とは、シンボル定
義部15中の当該シンボルについてのシンボル定義子が
格納されている記憶場所のAからの相対アドレスを示し
ている。例えば、前記の例で項tiはT+25番地から
格納されていて11の線形表現: f’:2. g:2. a:0. b:0. h:l、
 X:0を表している。
なお、第5図では図示されていないが、項集合指定部1
3は、複数の項識別子を格納できる記憶装置で構成され
ている。項識別子は第5図に示されるように、その項に
含まれるシンボルの個数と項定義部12中の当該項が定
義されている記憶場所のTからの相対番地(その項への
ポインター)を含んでいる。例えば、前記の例tlの場
合には、項識別子は図中16に示すように、tlのシン
ボルの個数6と、tiの項定義部12中での相対番地2
5とを含んでいる。
第6図は本実施例での単一化候補項の選択の原理と動作
を示している。
本実施例では、前記(作用)で述べた単一化の必要条件
[3] (a)、(b)、(c)に合致する項を項集合
の中から高速に見つけだす動作を、登録手段60と検索
・選択手段70とによって制御する。すなわち、項集合
の中の1つの項を11.目標項をt2としたとき、 ■汎項登録部61と第1の等順検索・選択部72とによ
って、必要条件(a)に、 ■第1の等項登録部62と汎項検索・選択部71とによ
って、必要条件(b)に、 ■第2の等項登録部63と第1の等順検索・選択部72
とによって、必要条件(c)に゛それぞれ合致する項を
、直ちに選択する。
(at)まず、汎項登録部61の動作を説明する。
最初に、汎項登録部61はa端子から項集合記憶手段1
0に制御信号を送り、項集合指定部13に記憶されてい
る項集合の項識別子を順に読み出すよう要求する。
項集合記憶手段lOは項識別子を1個読みだす毎に、そ
の項識別子をPN端子から出力し、かつそのシンボル定
義子を、さらにそのシンボル定義子の指示する相対番地
を用いて、名称記憶部14から名称の綴りを読みだして
、DATA端子から順に出力する。例えば、第4図の1
6で示す項識別子が項集合指定部13から読み出される
と、この項識別子をPN端子から出力するとともに、こ
の項識別子が指示する項の項要素の数が6、項定義部1
2での項の格納開始番地が25であるので、項定義部1
2内のアドレスT+25からT+30までの6個の項要
素定義子を読み出し、次にこれらの項要素定義子が指示
する相対番地がそれぞれ8.7.1.2.8.100で
あるので、シンボル定義部15内のA+6.A+7.A
+1.A+2.A+8゜A+100に格納されているシ
ンボル定義子を読み出し、続いてこれらのシンボル定義
子が指示する、名称記憶部14の相対番地がそれぞれ1
1.14,3.6゜13.17であるので、名称記憶部
14から、Null。
N+14.N+3.N+6.N+13.N+17に格納
されている名称の文字列、f’、g、a、b、h、Xを
読み出しテDATA端子から送り、モの項の汎項アドレ
スを生成することを要求する。
汎項アドレス生成手段30はB端子からこの要求を受け
ると、DATA l端子から入力される項自身から、そ
の項の核を抽出し、その核の文字列から汎項の核を生成
し、各々の核の文字列からハツシングによって汎項アド
レスを生成する。
例えば、第5図の16なる項識別子から前記のようにし
て読み出された項の線形表現での文字列:f、g、a、
b、h、XがDATA 1端子から入力されると、汎項
アドレス生成手段30は最初に現れる変数(X)以下を
取除いてこの項の核: f、g、a、b、h、−、を得
て、これからこの項の汎項の核: f’、g、a、b、
−;1’、g、a、−; f’、g、−; r、−; 
−:  を求めて、この文字列からハツシング操作によ
って、X’OE゛、X’36°。
X’AB’、X’6B’、X’00’なるアドレスを作
る。なお、このハツシングは、対象とする文字列の各文
字のASCII codeを、a(1) 、a(2) 
==−、a(n) 、−、a(N)としたとき、次の斬
化式を用いている。
の方法によると、II(N−t)、n(t)、・・・、
 II (0)はそれぞれ汎項の核に対するハツシング
結果になっている。
次に、汎項登録部61は、汎項アドレス生成手段30が
上記のようにして汎項アドレスを1個生成するたびに、
d端子から汎項索引記憶手段50に制御信号を送って、
その汎項アドレスの指す記憶場所に、項集合記憶手段l
OのPN端子から出力されている項識別子を書込むよう
要求する。
汎項索引記憶手段50はVC端子からこの要求を受取る
と、VD端子から入力される項識別子を、ADI端子か
ら入力されるアドレスの指す記憶場所の語の空所に格納
する。汎項索引記憶手段5oの1語は16個の項識別子
を記憶できるビット数を持っている。但し、第6図では
、そのうちの最初の4個のみを示している。
例えば、第5図の16の処理の場合は、前記のように汎
項アドレス生成手段30から、汎項アドレスとして、X
’OE”、X’3B’、X’AB’、X’88°、x’
oo°なルアドレスが次々に生成されるので、これらの
アドレ段10に記憶されている項集合の全ての項に対し
て、その汎項の核(と同じ核を持つ項の核)からその項
の項識別子を直ちに検索するための索引表を、汎項索引
記憶手段50の中に作り出す。
(bl)次に、第1の等項登録部62の動作を説明する
最初に、第1の等項登録部62はC端子から項集合記憶
手段IOに制御信号を送って、項集合指定部11に記憶
されている項集合の項識別子を順に読み出すよう要求す
る。
このときの項集合記憶手段10の動作は前記(al)の
場合と全く同じであるので、説明を省略する。
次に第1の等項登録部62は項集合記憶手段IOが上記
のようにして項集合の中から項を1個読み出す度に、C
端子から等類アドレス生成手段40に制御信号を送って
、その項の等類アドレスを生成することを要求する。
等類アドレス生成手段40はC端子からこの要求を受け
ると、DATAI端子から人力される項自身から、その
項の核を抽出し、その核の文字列からハ項アドレス生成
手段40は最初に現れる変数(X)以下を取除いてこの
項の核: r、g、a、b、h、−、を得て、この文字
列からハツシング操作によって、X’74’なるアドレ
スを作る。このときのハツシングは、前記(at)と同
じものを用いている。
次に、第1の等項登録部62は、等類アドレス生成手段
40が上記のようにして等類アドレスを1個生成する度
に、C端子から等項索引記憶手段52に制御信号を送っ
て、その等類アドレスの指す記憶場所に、項集合記憶手
段lOのPN端子から出力されている項識別子を書込む
よう要求する。
等項索引記憶手段52はVC端子からこの要求を受取る
と、νD端子から入力される項識別子を、AD2端子か
ら人力されるアドレスの指す記憶場所の語の空所に格納
する。
例えば、第5図の16の処理の場合は、前記のように等
類アドレス生成手段40から、等類アドレスとして、x
°74°なるアドレスが生成されるので、このようにし
て、第1の等項登録部62は項・集合記憶手段10に記
憶されている項集合の全ての項に対して、その核(と同
じ核を持つ項の核)からその項の項識別子を直ちに検索
するための索引表を、等項索引記憶手段52の中に作り
出す。
(cl)次に、第2の等項登録部63の動作を説明する
最初に、第2の等項登録部63はC端子から項集合記憶
手段IOに制御信号を送って、項集合指定部13に記憶
されている項集合の項識別子を順に読み出すよう要求す
る。
このときの項集合記憶手段lOの動作は前記(al)の
場合と全く同じであるので、説明を省略する。
次に第2の等項登録部63は項集合記憶手段IOが上記
のようにして項集合の中から項を1個読み出す度に、C
端子から等類アドレス生成手段40に制御信号を送って
、その項の等類アドレスを生成することを要求する。
このときの等類アドレス生成手段40の動作は(bl)
の場合と全く同じであるので、説明を省略計 べ 次に、第2の等J6登鏝部63は、等項アドレス生生成
するたびに、d端子から汎項索引記憶手段50に制御信
号を送って、その等類アドレスの指す記憶場所に、項集
合記憶手段IOのPN端子から出力されている項識別子
を書込むよう要求する。
汎項索引記憶手段50はVC端子からこの要求を受取る
と、νDn端子ら入力される項識別子を、AD2端子か
ら入力されるアドレスの指す記憶場所の語の空所に格納
する。
例えば、第5図の16の処理の場合は、前記のように等
環アドレス生成手段40から、等類アドレスとして、X
’74’なるアドレスが生成されるので、このアドレス
の指す記憶場所の子16に含まれる項定義部12での相
対番地:  r25Jで示しである。
このようにして、第2の等項登録部63は項集合記憶手
段lOに記憶されている項集合の全ての項に対して、そ
の核(と同じ核を持つ項の核)からその項の項識別子を
直ちに検索するための索引表を、汎項索引記憶手段50
に追加する。
以上のようにして、登録手段60の制御によって(b2
)最初に、汎項検索・選択部71の動作を説明する。
まず汎項検索・選択部71は、j端子から制御信号を送
って、目標項入力手段20に対して、入力された目標項
をDATA端子から送り出すように、要求する。
目標項入力手段20はIC端子からこの要求を受取ると
、この装置の外部(図示せず)から入力された目標項か
ら、その線形表現による項要素の文字列を生成し、DA
TA端子から送り出す。
例えば、第6図中21で示した目標項が入力されていた
とすると、目標項人力手段20は、f’、g、a、Y。
h、p、−なる文字列をDATA端子から送り出す。
次に、汎項検索・選択部71は、k端子から汎項アドレ
ス生成手段30に制御信号を送って、目標項入力手段2
0から送り出された項の汎項アドレスを生成するよう要
求する。
汎項アドレス生成手段30はに端子からこの要求を受け
ると、DATA2端子から入力される項の文字あるが、
例えば、第6図の21なる目標項が入力される前記の場
合には、目標項入力手段20から送り出される目標項の
文字列がDATA2端子から入力されると、汎項アドレ
ス生成手段30は最初に現れる変数(Y)以下を取除い
てこの目標項の核:r、g、a、−を得て、これからこ
の目標項の汎項の核:r、g、−; r、−;−;を求
めて、この文字列からノ1ツシングニヨッテ、X’AB
’ 、X’66°、x’oo°なるアドレスを生成し、
ADR9端子から出力する。このとき用いるハツシング
は(al)でのものと同じである。
次に、汎項検索・選択部71は、汎項アドレス生成手段
30が上記のようにして汎項アドレスを1個生成するた
びに、n端子から等項索引記憶手段52に制御信号を送
って、その汎項アドレスの指す記憶場所に格納されてい
る項識別子を読み出すように要求する。
等項索引記憶手段52はRC端子からこの要求を受ける
と、MDI端子から入力されるアドレスの指す記憶場所
の語を読み出し、もしその語が空で゛なくX°66°、
x’oo°なるアドレスを出力するので、等項索引記憶
手段52はこれらのアドレスの指す記憶場所の語を読み
出す。第6図の場合にはこれらの語にはなにも登録され
て(書込まれて)いないので、単一化候補項は出力され
ない。
この動作は前記(作用)で述べたところの、目標項に対
して必要条件[3]の(b)に合致する項を項集合の中
から検索する結果になっている。
(ac2)次に、第1の等項検索・選択部72の動作を
説明する。
まず第1の等順検索・選択部72は、j端子から制御信
号を送って、目標類入力手段20に対して、入力された
目標類をDATA端子から送り出すように要求する。
目標類入力手段20はIC端子からこの要求を受取ると
、この装置の外部(図示せず)から入力された目標類か
ら、その線形表現による項要素の文字列を生成し、DA
TA端子から送り出す。
ら等類アドレス生成手段40に制御信号を送って、目標
類入力手段20から送り出された項の等類アドレスを生
成するよう要求する。
等類アドレス生成手段40はL端子からこの要求を受け
ると、DATA2端子から入力される項の文字列から、
その項の核を抽出し、その文字列からハツシングによっ
て等類アドレスを生成する。
この動作は基本的に(bl)におけるものと同じである
が、例えば、第6図の21なる目標類が入力される前記
の場合には、目標類入力手段20から送り出される目標
類の文字列が、DATA2端子から入力されると、等類
アドレス生成手段40は最初に現れる変数(Y)以下を
取除いてこの目標類の核:f’、g、a、−を得て、こ
の文字列からハツシングによってX’3B’なるアドレ
スを生成し、ADR3端子から出力する。このとき用い
るハツシングは(al)でのものと同じである。
次に、第1の等順検索・選択部72は、等類アドレス生
成手段40が上記のようにして等項アドレス汎項索引記
憶手段50はRC端子からこの要求を受けると、AD2
端子から入力されるアドレスの指す記憶場所の語を読み
出し、もしその語が空でなく項識別子が記入されていた
ら、その項識別子を単−化候補項として、RD端子から
出力する。
例えば、第6図の21なる目標類に対しては、前記の如
く等類アドレス生成手段40は、x°86°なるアドレ
スを出力するので、汎項索引記憶手段50はこれらのア
ドレスの指す記憶場所の語を読み出す。
第6図の場合にはこれらの語には2個の項識別子(25
,86)が登録されて(書込まれて)いるので、これら
の項識別子が単一化候補項として出力される。
この動作は前記(作用)で述べたところの、目標類に対
して必要条件[3]9の(a)と(e)に合致する項を
項集合の中から検索する結果になっている。
以上詳述したように、本実施例では、登録手段BOによ
り検索対象の項集合を汎項索引記憶手段50可能として
いる。
なお、本実施例では(cl)で述べた如く、第2の等項
登録部63によって、自身の核から項識別子を検索する
ための表を汎項索引記憶手段50に追加登録しているが
、(al)のステップで、汎項アドレス生成手段30が
、汎項の核に対するハツシング結果(II(0)〜It
(N−1))の生成の最後に、その項の核のハツシング
結果(H(N))をも容易に生成できるので、前記の追
加登録を(al)で同時に行い、(cl)を、従って第
2の等項登録部63を省略することもできる。
なお、本発明は上述した実施例に限定されるものではな
い。例えば、上記実施例では単一化の必要条件【3]の
(c)に合う項を表引きで検索するため、第2の等項登
録部63と第1の等順検索・選択部72によって行って
いるが、次のようにしてもよい。
すなわち、第7図に示すように第2の等項登録部63の
動作を削除し、代わりに第2の等順検索・録された項集
合の項識別子を、第2の等順検索・選択部73に゛よっ
て目標類の核から表引きにより検索することで行なう。
第8図に、この実施例における登録手段65を、また第
9図に、この実施例における検索・選択手段75をそれ
ぞれ示す。
登録手段65は、汎項登録部61と第1の等項登録部6
2とからなり、これらの動作は前記の(at) 。
(bl)と同じである。
また、検索・選択手段75は、汎項検索・選択部71と
第1の等順検索・選択部72の他に、′M2の等順検索
・選択部73を含む。汎項検索・選択部71の動作は前
記(b2)と全く同じである。また、第1の等順検索・
選択部72の動作は前記(ac2)と同じではあるが、
その結果検索される項識別子は単一化の必要条件[3]
(a)に合致するものだけである。
例えば、第7図の21なる目標類に対しては、等類アド
レス生成手段40は、X’8G’なるアドレスを出力す
るので、汎項索引記憶手段50はこのアドレスの指す記
憶場所の語を読み出し、単一化候補項とる。
まず第2の等順検索・選択部73は、j端子から制御信
号を送って、目標類入力手段20に対して、人力された
目標類をDATA端子から送り出すように、要求する。
目標類入力手段20の動作は前記(ac2)におけるも
のと同様である。
次に、第2の等順検索・選択部73は、l端子から等類
アドレス生成手段40に制御信号を送って、目標類入力
手段20から送り出された項の等類アドレスを生成する
よう要求する。この時の等類アドレス生成手段40の動
作は(ac2)におけるのと同様である。
次に、第2の等順検索・選択部73は、等類アドレス生
成手段40が上記のようにして等類アドレスを生成する
と、n端子から等項索引記憶手段52へ制御信号を送っ
て、その等類アドレスの指す記憶場所に格納されている
項識別子を読み出すよう要求する。
例えば、第7図の21なる目標類に対しては、等類アド
レス生成手段40は、X’3B’なるアドレスを出力す
るので、等項索引記憶手段52はこのアドレスの指す記
憶場所の語を読み出す。第7図の場合には項識別子とし
て、86が読み出される。
なお、この第2の実施例において、第2の等順検索・選
択部73の動作(c2)を、汎項検索・選択部71の動
作(b2)と同時に行わせることもできる。
以上の実施例において、索引記憶手段として、汎項索引
記憶手段50と等項索引記憶手段52の2種を設けてい
るのは、単一化の必要条件[3]の(a)と(b)の「
混合」、すなわちこれらの必要条件に合致する項の表引
き型検索動作において、不要な組合わせ: KCg☆1
1)とK(g*t2)  :による表引き結果が混じり
込むことを避けるためである。
この問題には次に述べるような別の解決法がある。
それを第3の実施例として説明する。
第10図は、第3の実施例の構成を示している。
この実施例では索引記憶手段が、1つの索引記憶手段5
8となっている。また、80は登録手段、90はからな
る。
この第3の実施例の動作を第13図に示す。この実施例
では、登録手段80が索引記憶手段58に項識別子を登
録する時に、それが汎項に対するものか、等項に対する
ものかを区別するために、フラグを添えて登録する。
第14図は、この登録の時のフラグと項識別子を示して
いる。先頭の1ビツトがフラグであって、これが1なら
汎項登録部81によって登録されたことを、0なら等項
登録部82によって登録されたことを、表している。
汎項検索・選択部91が目標項に対する単一化候補項を
求める動作は、前記第1の実施例の(b2)とほとんど
同じであるが、前記の「混合j問題を避けるため、この
とき読み出される項識別子のうち、0なるフラグを持つ
ものだけを単一化候補項とする。
また、等順検索・選択部92が目標項に対する単−化候
補項を求める動作は、前記第1の実施例の(ac2)と
全く同じであって、このときは読み出さ以上に詳述した
通り、本発明の単一化候補項の高速選択装置によれば、
多数の項を含む項集合の中から、目標項と単一化成功の
可能性のある単一化候補項を、極めて高速に選択するこ
とができる。
その結果、時間のかかる単一化操作を項集合の全ての項
との組合わせに対して行う場合に必要な時間の大部分を
節約することができる。
また、大部分の応用では、単一化の対象となる項集合は
固定的であるので、その索引記憶手段への登録をあらか
じめ行っておくことにより、単一化候補項の選択時間を
、考え得る方法のうちの最も短いものとすることができ
る。しかもこの選択時間は、項集合が含む項の数によら
ず、一定であるという、優れた性質がある。
【図面の簡単な説明】
第1図〜第6図は本発明の第1の実施例に係る単一化候
補項の選択装置を説明するための図で、第1図は全体構
成図、第2図は項集合記憶手段の構成図、第3図は登録
手段の構成図、第4図は検索・選択手段の構成図、第5
図は項集合記憶手段図で、第7図は動作の説明図、第8
図は登録手段の構成図、第9図は検索・選択手段の構成
図、第10図〜第14図は本発明の第3の実施例に係る
単一化候補項の選択装置を説明するための図で、第10
図は全体構成図、第11図は登録手段の構成図、第12
図は検索・選択手段の構成図、第13図は動作の説明図
、第14図は登録されたフラグと項識別子の形態を示す
図である。 lO・・・項集合記憶手段、20・・・目標項入力手段
、30・・・汎項アドレス゛生成手段、40・・・等類
アドレス生成手段、50・・・汎項索引記憶手段、52
・・・等項索引記憶手段、58・・・索引記憶手段、6
0.80・・・登録手段、70゜90・・・検索・選択
手段。 出願人 工業技術院長 飯塚幸三 第1図 第2図 第8図      第9図 項定義部12      シンボル定遷gts    
名称記憶部鳳4第5図 第10図 第14図 第11図     第12図

Claims (4)

    【特許請求の範囲】
  1. (1)検索の対象となる複数の項を要素とする項集合か
    ら、別に与えられた目標項と単一化可能な項が必ず含ま
    れるように単一化候補項を選択する装置であって、 前記項集合を記憶してなる項集合記憶手段と、前記目標
    項を入力する目標項入力手段と、 前記項集合記憶手段又は前記目標入力手段から任意の項
    が与えられると、その項の全ての汎項の核から、その核
    を特定するアドレスを生成・出力する汎項アドレス生成
    手段と、 前記与えられた任意の項の核から、その核を特定するア
    ドレスを生成・出力する等項アドレス生成手段と、 前記項集合記憶手段から任意の項が与えられることによ
    り、前記汎項アドレス生成手段が生成したアドレスで指
    示される記憶場所に当該汎項に係る項の識別子を汎項索
    引として記憶するとともに、前記項集合記憶手段から任
    意の項が与えられることにより、前記等項アドレス生成
    手段が生成したアドレスで指示される記憶場所に当該項
    の識別子を等項索引として記憶する索引記憶手段と、前
    記項集合記憶手段から任意の項が与えられることにより
    、前記汎項アドレス生成手段が生成したアドレスで指示
    される前記索引記憶手段の記憶場所に、当該項の識別子
    を書込んで前記汎項索引を登録するとともに、前記項集
    合記憶手段から任意の項が与えられることにより、前記
    等項アドレス生成手段が生成したアドレスで指示される
    前記等項索引記憶手段の記憶場所に、当該項の識別子を
    書込んで前記等項索引を登録する登録手段と、前記目標
    項入力手段から目標項が与えられることにより、前記汎
    項アドレス生成手段が生成した各アドレスで前記索引記
    憶手段中の前記等項索引を検索し、前記目標項入力手段
    から目標項が与えられることにより、前記等項アドレス
    生成手段が生成したアドレスで前記汎項索引を検索し、
    さらに前記目標項入力手段から目標項が与えられること
    により、前記等項アドレス生成手段が生成したアドレス
    で前記等項索引を検索し、登録されている項の識別子が
    あった場合にこれを単一化候補項として読み出す検索・
    選択手段とを 具備したことを特徴とする単一化候補項の選択装置。
  2. (2)前記登録手段は、前記項集合記憶手段から任意の
    項が与えられることにより、前記等項アドレス生成手段
    が生成したアドレスで指示される前記索引記憶手段の記
    憶場所に当該項の識別子を書込んで前記等項索引を前記
    汎項索引に追加登録するものであり、前記検索・登録手
    段は、前記目標項入力手段から目標項が与えられること
    により、前記等項アドレス生成手段が生成したアドレス
    で前記汎項索引に追加登録された前記等項索引を検索し
    するものであることを特徴とする特許請求の範囲第1項
    記載の単一化候補項の選択装置。
  3. (3)前記索引記憶手段は、前記汎項索引として登録さ
    れた各項の識別子と、前記等項索引として登録された各
    項の識別子とを、区別可能な状態で同一の記憶場所に記
    憶したものであることを特徴とする特許請求の範囲第1
    項記載の単一化候補項の選択装置。
  4. (4)前記項の識別子は、項自体又は項のポインタなど
    の識別記号であることを特徴とする特許請求の範囲第1
    項記載の単一化候補項の選択装置。
JP62314139A 1987-12-14 1987-12-14 単一化候補項の選択装置 Granted JPH01156826A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62314139A JPH01156826A (ja) 1987-12-14 1987-12-14 単一化候補項の選択装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62314139A JPH01156826A (ja) 1987-12-14 1987-12-14 単一化候補項の選択装置

Publications (2)

Publication Number Publication Date
JPH01156826A true JPH01156826A (ja) 1989-06-20
JPH0564809B2 JPH0564809B2 (ja) 1993-09-16

Family

ID=18049699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62314139A Granted JPH01156826A (ja) 1987-12-14 1987-12-14 単一化候補項の選択装置

Country Status (1)

Country Link
JP (1) JPH01156826A (ja)

Also Published As

Publication number Publication date
JPH0564809B2 (ja) 1993-09-16

Similar Documents

Publication Publication Date Title
US4775956A (en) Method and system for information storing and retrieval using word stems and derivative pattern codes representing familes of affixes
US4870568A (en) Method for searching a database system including parallel processors
US5995962A (en) Sort system for merging database entries
US5551049A (en) Thesaurus with compactly stored word groups
US4785400A (en) Method for processing a data base
CA1269460A (en) Rule-based data retrieval method and apparatus
JPS5846743B2 (ja) ワ−ド発生装置
US5895463A (en) Compression of grouped data
JPH04273575A (ja) データベース検索プロセッサ
US4941124A (en) Text comparator with counter shift register
US20190171773A1 (en) Multi-index method and apparatus, cloud system and computer-readable storage medium
CN100419746C (zh) 信息检索方法
US4780810A (en) Data processor with associative memory storing vector elements for vector conversion
JPH01156826A (ja) 単一化候補項の選択装置
JP2795317B2 (ja) 多段表処理方式
Bible et al. Hashing and Hash Tables
JPH1153400A (ja) 構造化文書検索装置及びプログラムを記録した機械読み取り可能な記録媒体
US7676330B1 (en) Method for processing a particle using a sensor structure
US20110314022A9 (en) K engine - process count after build in threads
JPS633351A (ja) バツフア検索制御方式
JPH0766391B2 (ja) 連想マトリツクスのサーチ方法
EP0649106A1 (en) Compactly stored word groups
JP2806653B2 (ja) ファイル検索装置
JP3018579B2 (ja) 名前検索処理装置
JPS59144949A (ja) 検索装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term