JPH05265757A - Inference control system - Google Patents

Inference control system

Info

Publication number
JPH05265757A
JPH05265757A JP4096015A JP9601592A JPH05265757A JP H05265757 A JPH05265757 A JP H05265757A JP 4096015 A JP4096015 A JP 4096015A JP 9601592 A JP9601592 A JP 9601592A JP H05265757 A JPH05265757 A JP H05265757A
Authority
JP
Japan
Prior art keywords
rule
inference
established
condition
satisfied
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
Application number
JP4096015A
Other languages
Japanese (ja)
Inventor
Masaru Oki
優 大木
Eiji Ohira
栄二 大平
Hiroshi Shinjo
広 新庄
Masahiro Abe
正博 阿部
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 JP4096015A priority Critical patent/JPH05265757A/en
Publication of JPH05265757A publication Critical patent/JPH05265757A/en
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

PURPOSE:To omit the undesired inferences, to prevent the increase of the undesired processing time, and to omit the undesired inference results by teaching previously the rules that should be and should not be satisfied during the inferences to an inference system. CONSTITUTION:An inference part 180 stores the contents of the initial data 100 in its built-in working memory and evaluates the rule conditional part included in a knowledge base 104 based on the information on the data 100. The rule having its satisfied conditional part is sent to an inference control part 118. The part 118 checks whether the received rule should be collated with the rule written into the control information 122 or not. If so, the part 118 instructs the part 108 to disuse the inference. If not, the part 108 must carry on the inference. Then, the part 118 teaches the rules that should be and should not be satisfied during the inferences to an inference system together with the time sequential relation. Thus, the inference is disused if it is known that the conditional part of a relevant rule or the rule itsels is not satisfied during the inference.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、時間的変化を推論する
システムの推論制御方式にかかわり、特に、前もってわ
かっている事実を使って不要な推論を減らすことによ
り、推論を高速化し、推論結果の曖昧さを減らす推論制
御方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an inference control method for a system that infers temporal changes, and in particular, it speeds up inference by reducing unnecessary inference by using facts known in advance, so that inference results can be obtained. It relates to an inference control method for reducing ambiguity.

【0002】[0002]

【従来の技術】ルールベース推論システムなどの前向き
推論では、ルールの条件部に量に関する条件が書かれて
いて、情報が不足しているなどの原因のためその条件が
成立するか成立しないかわからない場合、エラーを出す
のがもっとも一般的なやり方である。代表的なエキスパ
ートシステムであるOPS83(人工知能言語OPS83、C.L.Fo
rgy著、パーソナルメディア社)やES/KERNEL(日立クリ
エイティブ ワークステーション2050ES/KERNEL文
法、日立、2050-3-602-20)では、そのような推論機構
を採用している。
2. Description of the Related Art In a forward reasoning such as a rule-based reasoning system, a condition regarding a quantity is written in a condition part of a rule, and it is not known whether the condition is satisfied or not satisfied due to lack of information. In that case, the most common way is to issue an error. OPS83 (artificial intelligence language OPS83, CLFo) which is a typical expert system
Such inference mechanism is adopted in ES / KERNEL (Hitachi Creative Workstation 2050ES / KERNEL Grammar, Hitachi, 2050-3-602-20) by rgy, Personal Media Corporation.

【0003】しかし、より高度な推論システムでは、評
価できない条件を成立する場合と成立しない場合とに分
岐して推論を行なう。例えば、次のようなルールが書か
れていたとする。
However, in a more advanced inference system, inference is performed by branching into a case where a condition that cannot be evaluated is satisfied and a case where the condition is not satisfied. For example, suppose the following rule is written.

【0004】IF X>0 then Z=X+Y ワーキングメモリにある情報を使ってX>0が評価でき
ないとわかった場合、ワーキングメモリをコピーして、
X>0が成り立つ場合と、X=<0、すなわち、X>0が
成り立たない場合を仮定して、推論を分岐して推論を続
行する。もし、推論を続行して矛盾が生じた場合推論を
棄却する。しかし、矛盾が生じなければ、棄却されずに
すべてのルールの条件部の評価が確定するまで推論が続
けられる。このようなことは、ルールの条件部に量に関
する条件が評価されない場合以外に、複数の条件が同時
に発火して競合解消を行なわずに推論を並列にする場合
にも同じようなことが生じる。ところが、いくつかの応
用やデバッグでは、あるルールが成立すべきであると
か、あるルールが成立すべきでないとかが予めわかる場
合や予想できる場合がある。従来のルールベース推論シ
ステムでは、そのような情報が有効な場合でも使ってい
ない。そのため、無駄な推論を途中で棄却することが出
来ずに処理時間が余分に掛かったり、複数の推論結果を
出し、結果が曖昧になるという問題が生じる。
IF X> 0 then Z = X + Y When it is found that X> 0 cannot be evaluated using the information in the working memory, the working memory is copied,
Assuming that X> 0 holds and X = <0, that is, X> 0 does not hold, the inference is branched and the inference is continued. If the inference continues and a contradiction occurs, the inference is rejected. However, if no contradiction occurs, the reasoning is not rejected and the inference is continued until the evaluation of the conditional part of all rules is confirmed. Similar to the case where the condition relating to the quantity is not evaluated in the conditional part of the rule, the same thing occurs when a plurality of conditions are simultaneously fired and the inference is performed in parallel without performing conflict resolution. However, in some applications and debugging, it may be possible or predictable in advance that a certain rule should be established or a certain rule should not be established. Traditional rule-based reasoning systems do not use such information when it is available. Therefore, there arises a problem that it is not possible to reject useless inference on the way and it takes extra processing time, or a plurality of inference results are output and the result becomes ambiguous.

【0005】あるルールが成立すべきではないことを使
った推論制御の一つの方法は仮説推論の枠組みで考えら
れている。従来の仮説推論システムの代表的なものであ
るTMSやATMS(認識と学習、282ページから290ペ
ージ、岩波書店)において、前もって指定されていた条
件によって、矛盾を起こし、無駄な推論を棄却すること
が行なわれていた。
One method of inference control using the fact that a certain rule should not be established is considered in the framework of hypothetical reasoning. In TMS and ATMS (recognition and learning, pages 282 to 290, Iwanami Shoten), which are typical of conventional hypothetical reasoning systems, cause inconsistency and reject useless reasoning according to conditions specified in advance. Was being conducted.

【0006】例えば、ATMSでは、命題aを表すノードaと
命題bを表すノードbの組み合わせが矛盾であることを ノードa and ノードb −> 矛盾 のように表していた。このような情報が与えられると、
システムは NOGOOD{{a、b}} のようなデータベースを生成し、これ以降、推論ルール
の条件にaとbがあった場合はそのルールをつかった推論
を棄却する。TMSもATMSも命題論理の上に作られたシス
テムであるので、変数を含んだような条件に対しては、
矛盾の組み合わせの指定や検知ができない。例えば、述
語a(X)を表すノードaと述語b(X)を表すノードbの組み合
わせであることを a(X) and b(X) −> 矛盾 という指定はできない。ただし、TMSやATMSは、仮説を
陽に扱い命題論理を基礎としているため、推論を棄却す
る以外に、別の仮説をつかった妥当な解を効率良く見つ
けることが可能である。
For example, in ATMS, the combination of the node a representing the proposition a and the node b representing the proposition b is represented as a contradiction like node a and node b-> contradiction. Given such information,
The system generates a database such as NOGOOD {{a, b}}, and if the conditions of the inference rule include a and b, then reject the inference using that rule. Since both TMS and ATMS are systems built on propositional logic, for conditions that include variables,
Cannot specify or detect the combination of inconsistencies. For example, a combination of a node a representing the predicate a (X) and a node b representing the predicate b (X) cannot be specified as a (X) and b (X) −> contradiction. However, since TMS and ATMS deal with hypotheses explicitly and are based on propositional logic, it is possible to efficiently find a reasonable solution using another hypothesis in addition to rejecting inference.

【0007】後ろ向き推論システムの一つであるProlog
では、ある節をつかった推論を棄却するには、 p(a(X)、b(Y)) :- !、 fail. というように書くことによって、a(X) and b(X) −
> 矛盾に近いことを表現できる。しかし、Prologの場
合でも、”p(a(X)、b(Y)) :- !、 fail.”はグローバル
データベースに追加する必要があり、問題ごとに異なっ
て制御するためには、問題を解くごとにグローバルデー
タベースを変更しなくてはならない。さらに、グローバ
ルデータベースの変更は、変更箇所を見つける作業が別
に必要となり、制御情報としてまとめる場合に比べてユ
ーザにとっては負担になる。さらに、グローバルデータ
ベースが効率的に実行するために、コンパイルされた形
で提供されている場合は、そのような変更がユーザにと
って不可能な場合がある。Prologでは、一般に、グロー
バルデータベースがコンパイルされている場合は、ソー
スプログラムがないかぎり、別の節を追加することはで
きない。
Prolog, which is one of the backward inference systems
Then, to reject the inference using a certain clause, write a (X) and b (X) − by writing p (a (X), b (Y)):-!, fail.
> I can express that it is close to contradiction. However, even with Prolog, "p (a (X), b (Y)):-!, fail." Needs to be added to the global database, and in order to control each problem differently, You have to change the global database each time you solve. Further, the change of the global database requires an additional work of finding the changed portion, which is a burden on the user as compared with the case where the changes are put together as control information. Moreover, such changes may not be possible to the user if the global database is provided in compiled form for efficient execution. Prolog generally cannot add another section if the global database is compiled without the source program.

【0008】一方、時間的変化を推論するシステムにつ
いては、ルールが成立すべきではないあるいは、ルール
が成立すべきであるというような指定以外に、時間的順
序関係を含めた指定方法が考えられるが、従来の時間的
変化を推論するシステムでは、そのようなことは扱われ
ていなかった。
On the other hand, for a system that infers temporal changes, a designation method that includes a temporal order relation is conceivable in addition to the designation that a rule should not be established or a rule should be established. However, in the conventional system that infers temporal changes, such a thing was not dealt with.

【0009】時間的変化を推論するシステムである定性
推論システムなどは、一般にシミュレーションを行な
い、系の時間的変化の予測や説明を行なうために使われ
る。その際、シミュレーションを始める前に、推論中
に、時間的順序関係も含めて成立すべき事象やルール
や、あるいは時間的順序関係を含めて成立すべきではな
い事象やルールがわかる場合がある。それは、シミュレ
ーションと同時に実験も行なっていることがあり、実験
の結果からいくつかの事実がわかるような場合である。
A qualitative inference system, which is a system for inferring temporal changes, is generally used to perform simulations and predict and explain temporal changes in the system. At that time, before starting the simulation, there are cases where, during inference, an event or rule that should be established including the temporal order relation, or an event or rule that should not be established including the temporal order relation may be known. This is the case when experiments are being conducted at the same time as the simulation, and some facts can be seen from the results of the experiments.

【0010】例えば、定性推論システムQupras(物理法
則に基づいた定性推論、定性推論、第8章、共立出版)
では、ある時刻の状態は、原理的な知識に相当するいく
つかのルールから構成される。電気が流れると電球が光
るという物理法則に相当するルールは次のように表わす
ことができる。
For example, the qualitative inference system Qupras (qualitative inference based on the laws of physics, qualitative inference, Chapter 8, Kyoritsu Publishing)
Then, the state at a certain time consists of some rules corresponding to the fundamental knowledge. A rule corresponding to the physical law that a light bulb shines when electricity flows can be expressed as follows.

【0011】 physical lighting objects Light_bulb - light_bulb ; conditions temperature@Light_bulb >= light_generating_temperature@Light_bulb ; relations ddt(light_generation@Light_bulb) = ddt(temperature@Light_bulb) ; end. これは、conditionsに書かれた条件が発火すると、rela
tionsに書かれた式が有効になるとことを示しているIF
−THEN形式のルールである。このルールは、電球(ligh
t_bulb)の温度( light_generating_temperature@Ligh
t_bulb)より大きくなると、電球の発光量(light_gene
ration@Light_bulb)の変化(ddtで囲む)はその温度の
変化に比例することを意味していることを表わしてい
る。この物理法則はルールベース推論システムと同じ様
なルールであるが、定性推論では、対象とする系が時間
的変化も推論することができる。
Physical lighting objects Light_bulb-light_bulb; conditions temperature @ Light_bulb> = light_generating_temperature @ Light_bulb; relations ddt (light_generation @ Light_bulb) = ddt (temperature @ Light_bulb); end. rela
IF indicating that the expression written in tions is valid
-THEN format rules. This rule applies to light bulbs (ligh
t_bulb) temperature (light_generating_temperature @ Ligh
t_bulb), the light output of the bulb (light_gene
ration @ Light_bulb) change (enclosed by ddt) means that it is proportional to the change in temperature. This physical law is similar to the rule-based reasoning system, but in qualitative reasoning, the target system can also infer temporal changes.

【0012】そのため、時間的順序関係を含めて、実際
の実験結果などから起こるべき事象や起こってはいない
事象などの情報を入手できた場合、その情報を使って不
要な推論を削除することができる。例えば、電球が光っ
た後、電池がなくなったということが実験的にわかるよ
うな場合である。そのような情報が前もってわかってい
る場合でも、電球が光る前に電池がなくなってしまった
時間的変化を推論システムが推論してしまったとする
と、そのような推論は不要な推論であり、その結果、処
理時間が増え、推論結果が曖昧になる。このようなこと
が定性推論システムで起きる理由は、初期データの情報
を不足して与えた場合や量を定性的に取り扱っているた
めである。
Therefore, when information such as an event that should occur or an event that has not occurred can be obtained from the actual experimental result including the temporal order relation, unnecessary inference can be deleted using the information. it can. For example, there is a case where it can be experimentally determined that the battery has run out after the light bulb shines. Even if such information is known in advance, if the inference system infers a temporal change in which the battery dies before the light bulb shines, such inference is an unnecessary inference and the result is , The processing time increases and the inference result becomes ambiguous. The reason why such a thing occurs in the qualitative inference system is that when the information of the initial data is insufficient and given, the quantity is treated qualitatively.

【0013】従来の時間的変化を推論するシステムで
は、成立すべきルールが前もってわかっていても、その
ような情報が有効な場合でも使われていなかった。その
ため不要な推論を途中で棄却することが出来ずに処理時
間が余分に掛かったり、複数の推論結果を出し、結果が
曖昧になるという問題が生じていた。このような問題が
生じる原因は、前もって推論中に使われるべきルールに
関する情報を、IF−THEN形式のルールで、記述できなか
ったためである。
In the conventional system for inferring temporal change, even if the rule to be established is known in advance, it is not used even when such information is valid. Therefore, there was a problem that unnecessary inference could not be rejected on the way and extra processing time was required, or multiple inference results were issued and the results were ambiguous. The cause of such a problem is that the information about the rule that should be used during the inference cannot be described in advance in the IF-THEN format rule.

【0014】さらに、従来の時間的変化を推論するシス
テムにおいて、指定された成立すべきルールが使われた
場合の推論のみを有効にするような手段はない。特に、
時間的変化の説明をさせるシミュレーションでは、観測
データよりいくつかのことがわかっている場合がある。
例えば、先に示したように電球が光った後、電池がなく
なったということが実験的にわかることである。この場
合、推論した結果、電球が光った後、電池がなくなった
ことを推論していなければ、その推論は棄却すべきであ
るが、推論結果は人間が判断して、取捨選択をする。ま
た、前もって、あるルールが発火した後では、電球が光
った後、電池がなくなるような推論が起こりえないこと
がわかることがある。そのような場合でも、従来の推論
システムでは、そのような情報をつかって推論を制御す
ることは行なっていないため、不要な推論を行なった
り、処理時間が増大したりするという問題が生じてい
た。
Further, in the conventional system for inferring temporal change, there is no means for validating only inference when a specified rule to be established is used. In particular,
In simulations that explain temporal changes, some things may be known from observed data.
For example, it is experimentally found that the battery ran out after the bulb lit as shown above. In this case, as a result of the inference, if it is not inferred that the battery is exhausted after the light bulb lights up, the inference should be rejected, but the inference result is determined by a human being and the selection is made. Also, it may be found in advance that, after a rule fires, no inference can occur that the battery will run out after the bulb shines. Even in such a case, since the conventional inference system does not control the inference using such information, there is a problem that unnecessary inference is performed or processing time is increased. ..

【0015】[0015]

【発明が解決しようとする課題】時間的変化を推論する
システムでは、予め、成立すべきでないルールや成立す
べきルールがわかっている場合でも、そのような情報が
使われていなかったので、不要な推論を行ない、処理時
間が増大したり、不必要な推論結果が得られるという問
題があった。
In a system that infers changes over time, even if a rule that should not be established or a rule that should be established is known in advance, such information is not used, so it is unnecessary. There is a problem that processing time is increased and unnecessary inference results are obtained.

【0016】本発明の目的は、予め、成立すべきでない
ルールや成立すべきルールがわかっていたり、予想され
る場合に、知識ベースは変更せずに、そのような情報を
使って推論を制御し、処理時間を短縮し、推論結果の曖
昧さを減らすことである。
An object of the present invention is to control inference using such information without changing the knowledge base when a rule that should not be established or a rule that should be established is known or expected in advance. To reduce the processing time and the ambiguity of inference results.

【0017】[0017]

【課題を解決するための手段】時間的変化を推論する機
構を有し、条件部とその条件が満足されたときに有効に
なる帰結部を持つルールの集合である知識ベースと、現
在の状態を格納するワーキングメモリを持ち、ルールの
条件が満たされたならば、帰結部を実行する推論制御方
式において、推論中に時間的順序関係を含めて成立すべ
きではないルール(あるいはルールの条件)を指定して
おき、推論中に成立すべきではないルールが成立してし
まった場合、その推論を棄却する手段を付加することに
よって、不要な推論を行なわないことが可能になり、不
要な処理時間を増大させないことと不必要な推論結果を
導かないことを達成する。ルール名の指定の方法とし
て、次の3つがある。
A knowledge base, which is a set of rules having a condition part and a consequent part that becomes effective when the condition is satisfied, and a current state A rule (or rule condition) that has a working memory that stores a rule and that should not be satisfied in the inference control method that executes the consequent part, including temporal order relations, if the rule condition is satisfied Is specified, and if a rule that should not be established is established during inference, by adding a means for rejecting that inference, it is possible to prevent unnecessary inference and unnecessary processing. Achieves no increase in time and leads to unnecessary inference results. There are the following three methods for specifying the rule name.

【0018】(1)ルール名 これは、”ルール1”などのルール名を指定する。(1) Rule Name This specifies a rule name such as "Rule 1".

【0019】(2)ルール名と条件の組 これは、(1)のルール名にルールの条件も付加したも
のである。条件の照合には、パターンマッチングと
(3)で示すような単一化の方法がある。
(2) Rule name and condition set This is a rule name added to the rule name of (1). For matching the conditions, there are a pattern matching method and a unifying method as shown in (3).

【0020】(3)条件 これは、ルール名ではなく、ルールで使われる条件を列
挙する。たとえば、 p(X、a)、 q(X、b) r(a、Y、c) のように記述する。”p(X、a)、 q(X、b)”は2つの項
の組み合わせたものであり、”r(a、Y、c)”は一つの項
であり、成立すべきルールの条件や成立すべきではない
ルールの条件に対応する。ここで、大文字の英字は変数
を示す。制御情報に列挙された条件と成立すべきルール
の条件や成立すべきではないルールの条件の照合の方法
として、単一化可能(人工知能の基礎、120頁から1
24頁、近代科学社)あるいは包摂関係可能などが可能
である。包摂関係可能では、列挙された条件が、成立す
べきルールの条件や成立すべきではないルールの条件の
一部分と単一化可能であればよいものである。
(3) Condition This is not a rule name but a list of conditions used in the rule. For example, write p (X, a), q (X, b) r (a, Y, c). “P (X, a), q (X, b)” is a combination of two terms, and “r (a, Y, c)” is one term. Corresponds to a rule condition that should not hold. Here, capital letters indicate variables. As a method of collating the conditions listed in the control information with the conditions of the rule that should be satisfied or the conditions of the rule that should not be satisfied, unification is possible (Basics of artificial intelligence, pages 120 to 1
(Page 24, Modern Science Co., Ltd.) or inclusive relations are possible. Inclusive relations are possible as long as the listed conditions can be unified with a part of the conditions of the rules that should be satisfied or the conditions of the rules that should not be satisfied.

【0021】また、推論中に時間的順序関係を含めて成
立すべきルールを指定しておき、指定された成立すべき
ルールが推論中に成立しないと判明した時点で、推論を
棄却する手段を付加することによって、本来成立しなけ
ればならないルールが成立しなかった場合の推論を棄却
することができ、不要な推論を行なわないことを達成す
る。
Further, means for rejecting the inference when the rule to be established including the temporal order relation is specified during inference and it is found that the specified rule to be established is not established during inference. By adding, it is possible to reject the inference in the case where the rule that should originally be established is not established, and to achieve unnecessary inference.

【0022】[0022]

【作用】推論中に、時間的順序関係を含めて成立すべき
ではないルールや成立すべきルールを推論システムに教
えておくことにより、推論中にそのルールの条件部が満
足されたり、そのルールが成立しないことがわかったな
らば、その推論を棄却する。
[Function] During inference, by telling the inference system rules that should not be satisfied or rules that should be satisfied, including the temporal order relation, the condition part of the rule may be satisfied during inference, or the rule may be satisfied. If it turns out that does not hold, reject the inference.

【0023】[0023]

【実施例】図2は、本発明の実施例である推論制御装置
の構成図である。装置全体の構成と動作の概要を説明す
る。
FIG. 2 is a block diagram of an inference control device according to an embodiment of the present invention. An outline of the configuration and operation of the entire device will be described.

【0024】装置は、制御装置(CPU)200と主メモ
リ206、磁気ディスク208、CRT202、キーボー
ド204からなる。知識ベース104や初期データ10
0、制御情報122は、磁気ディスク装置208に格納
されている。また、推論部108や推論制御部122の
プログラムも磁気ディスク装置208に格納されてい
る。キーボード204は、プログラムの指示のために使
用する。CRT202は結果の表示などに使用する。
The device comprises a control device (CPU) 200, a main memory 206, a magnetic disk 208, a CRT 202 and a keyboard 204. Knowledge base 104 and initial data 10
0 and the control information 122 are stored in the magnetic disk device 208. The programs of the inference unit 108 and the inference control unit 122 are also stored in the magnetic disk device 208. The keyboard 204 is used for program instructions. The CRT 202 is used to display the result.

【0025】必要に応じて、推論部や推論制御部のプロ
グラムや、知識ベースや初期データ、制御情報の内容が
主メモリ206にローデングされる。この操作は、キー
ボード204から行なわれる。また、推論部や推論制御
部のプログラムを主記憶206に呼び込むための指令や
実行開始指令の指定もキーボード204から行なわれ
る。推論経過や結果などは、CRT202に表示され
る。
If necessary, the programs of the inference unit and the inference control unit, the contents of the knowledge base, the initial data, and the control information are loaded into the main memory 206. This operation is performed from the keyboard 204. The keyboard 204 also designates a command for calling a program of the inference unit or the inference control unit into the main memory 206 and an execution start command. The inference process and results are displayed on the CRT 202.

【0026】以下、本発明を具体的に説明する。まず、
実施例の概要について説明する。図1は、全体のプログ
ラムおよびデータ構成について示したものである。推論
部108は初期データ100の内容を推論部内のワーキ
ングメモリに格納し、ワーキングメモリの情報を使って
知識ベースの中のルールの条件部を評価する。条件部が
満足したルールは推論制御部118に伝えられ、推論制
御部118は制御情報122に書かれてあるルールと照
合するか調べる。そうであれば、推論を棄却するように
推論部に指示し、そうでなければ、推論を続けるように
指示する。
The present invention will be specifically described below. First,
The outline of the embodiment will be described. FIG. 1 shows the entire program and data structure. The inference unit 108 stores the contents of the initial data 100 in a working memory in the inference unit, and uses the information in the working memory to evaluate the conditional part of the rule in the knowledge base. The rule satisfied by the condition section is transmitted to the inference control section 118, and the inference control section 118 checks whether the rule matches the rule written in the control information 122. If so, instruct the inference unit to reject the inference, otherwise to infer.

【0027】最終結果は112に求まる。知識ベース1
04を変更せずに、制御情報122を使って推論を制御
することが可能である。
The final result is found at 112. Knowledge base 1
It is possible to control the inference using the control information 122 without changing 04.

【0028】成立すべきではないルールを指定してお
き、指定されたルールが推論中に成立した場合に推論を
棄却するための推論部の処理について図3を使って説明
する。推論部は知識ベースからルールを一つづつとりだ
し(302)、その条件部を評価する(304)。
A process of the inference unit for rejecting an inference when a rule that should not be established is specified and the specified rule is established during inference will be described with reference to FIG. The inference unit takes out rules one by one from the knowledge base (302) and evaluates the condition part (304).

【0029】もし、そのルールの条件部が満足すれば
(306)、推論制御部の処理を行なう(308)。満
足しなければ、知識ベースのルールのどのルールも満足
しなかったかを調べる(310)。もし、そうであれ
ば、処理を終了する(314)。そうでなければ、別の
ルールを知識ベースから取り出す(302)。推論制御
部からの指示を調べ(312)結果が棄却であれば、推
論を終了する。そうでなければ、推論を続ける。推論部
の推論方法は、時間的変化を含まない推論でも時間的変
化を推論する場合でも同様である。時間的変化を含むか
含まないかの差は、知識ベースのルールに時間変化を行
なうような記述があり、推論システムがその記述に従
い、時間的変化の推論をするかどうかにかかわってい
る。時間的変化の推論方法は、定性推論の場合は(物理
法則に基づいた定性推論、定性推論、第8章、共立出
版)に、時相論理の場合は(時間論理と人工知能、人工
知能と論理、第6章、共立出版)などにある。
If the condition part of the rule is satisfied (306), the process of the inference control part is performed (308). If not satisfied, check 310 if none of the rules in the knowledge base were satisfied. If so, the process ends (314). Otherwise, another rule is retrieved from the knowledge base (302). The instruction from the inference control unit is checked (312), and if the result is rejection, the inference ends. If not, continue reasoning. The reasoning method of the reasoning unit is the same whether the reasoning does not include a temporal change or the temporal change is inferred. The difference between the inclusion and the exclusion of the temporal change is related to whether the knowledge base rule has a description that causes the temporal change and the inference system infers the temporal change according to the description. The inference method of temporal changes is qualitative reasoning (qualitative reasoning based on physical laws, qualitative reasoning, Chapter 8, Kyoritsu Shuppan), and temporal logic (time logic and artificial intelligence, artificial intelligence and Logic, Chapter 6, Kyoritsu Shuppan).

【0030】時間的変化を含む推論の実現手段を示す前
に、時間的変化を含まない推論の実現手段を示す。時間
的変化を含まない推論において、処理308を行なう推
論制御部の処理を図4について説明する。推論制御部は
推論部から渡されたルールが成立すべきではないルール
名を格納している制御情報の内容と照合し(402)、
その中の物と照合できれば、棄却の結果を返し(40
6)、そうでなければ続行の結果を返す(404)。
Before showing the means for realizing the inference including the temporal change, the means for realizing the inference not including the temporal change will be described. The process of the inference control unit that performs the process 308 in the inference that does not include a temporal change will be described with reference to FIG. The inference control unit compares with the contents of the control information storing the rule name that the rule passed from the inference unit should not be established (402),
If it can be matched with the items in it, the rejection result is returned (40
6) If not, the result of continuation is returned (404).

【0031】条件部の照合(402)において、制御情
報には、ルール名ではなく、先にルール名の指定方法と
して3つ述べたうちの(3)のタイプのように変数を含
む条件でもよい。図7を用いて、その処理について説明
する。処理700は、処理400の代わりに処理308
から呼ばれる。ルールが成立すると、処理308から処
理700が呼ばれる。処理702では、成立したルール
の条件を取り出す。処理704で、取り出した条件の一
部が制御情報にある条件と単一化可能か調べる。そうで
あれば、棄却の結果を返し(708)、そうでなけれ
ば、続行の結果を返す(706)。例えば、制御情報に
は、次のような条件がかかれていた場合、 p(X、a)、 q(X、b) 成立したルールの条件が ルール1(p(c、a)、 q(c、b)) や ルール2(p(c、a)、 q(c、b)、r(e)) であれば、照合は成功する。一方、成立したルールが ルール1(p(c、a)、 q(d、b)) であれば、照合は成功しない。この照合の一つの方法は
単一化である(人工知能の基礎、120頁から124
頁、近代科学社)。また、条件のみを列挙する制御情報
(先にルール名の指定方法として3つ述べたうちの
(2)のタイプ)では、ルール名以外に、ルールの条件
部も照合に使用する。この場合の条件部の照合の一つの
方法としても、単一化がある。
In the collation (402) of the condition part, the control information may be not a rule name but a condition including a variable like the type (3) among the three methods described above as the rule name designating method. .. The processing will be described with reference to FIG. 7. Process 700 is process 308 instead of process 400.
Called from. When the rule is established, the processes 308 to 700 are called. In process 702, the conditions of the established rule are extracted. In process 704, it is checked whether a part of the fetched conditions can be unified with the condition in the control information. If so, the rejection result is returned (708), and if not, the continuation result is returned (706). For example, if the following condition is set in the control information, the condition of the rule that p (X, a), q (X, b) is satisfied is rule 1 (p (c, a), q (c , B)) and rule 2 (p (c, a), q (c, b), r (e)), the matching succeeds. On the other hand, if the established rule is rule 1 (p (c, a), q (d, b)), the collation will not succeed. One method of this matching is unification (Fundamentals of Artificial Intelligence, pages 120-124).
Page, Modern Science Company). Further, in the control information that enumerates only the conditions (the type of (2) among the three methods described above as the rule name specifying method), the condition part of the rule is also used for matching in addition to the rule name. Unification is also one of the methods for checking the condition parts in this case.

【0032】時間的変化を含まない推論における成立す
べきルールを指定しておき、指定されたルールが推論中
に成立しないと判明した時点で推論を棄却する処理は図
3と図4の処理に類似している。その推論部の処理につ
いて図5を使って説明する。500から512の処理は
300から312の処理と同じである。ただし508の
処理は図6の推論制御部600を呼び出す。514で
は、すべての推論が終了した時点で再度、推論制御部6
00を呼び出す。これは、推論が終了した時点で成立す
べきルールが成立していないか調べるためである。50
8の処理を行なう推論制御部の処理を図6について説明
する。推論制御部は推論部から渡されたルールが、成立
すべきルールと指定されたルールを成立させないとわか
るかどうか調べ(602)、そうであれば、棄却の結果
を返し(606)、そうでなければ続行の結果を返す
(604)。時間的変化を含む推論における成立すべき
ルールを指定しておき、指定されたルールが推論中に成
立しないと判明した時点で推論を棄却する処理の推論部
の処理は、図5と同じである。
A rule to be established in inference that does not include a temporal change is designated, and the process of rejecting the inference when it is found that the specified rule is not established during inference is the same as the process of FIGS. 3 and 4. Is similar. The processing of the inference unit will be described with reference to FIG. The processing from 500 to 512 is the same as the processing from 300 to 312. However, the process of 508 calls the inference control unit 600 of FIG. At 514, when all the inferences are completed, the inference control unit 6 is restarted.
Call 00. This is to check whether the rule that should be established at the time when the inference is completed is established. Fifty
The process of the inference control unit that performs the process of 8 will be described with reference to FIG. The inference control unit checks whether or not the rule passed from the inference unit knows that the rule that should be satisfied and the specified rule are not satisfied (602), and if so, returns a rejection result (606). If not, the result of continuation is returned (604). The process of the inference unit of the process of designating the rule to be established in the inference including the temporal change and rejecting the inference when it is found that the specified rule is not established during the inference is the same as that of FIG. ..

【0033】時間的変化を含まない推論における成立す
べきルールと指定されたルールを成立させないかどうか
調べる手段602の拡張として、あるルールが成立した
ならば、別のルールが成立しないようなことがわかって
いる場合、そのような情報を制御情報として使う処理に
ついて図8を使って説明する。制御情報には制御情報1
と制御情報2の内容が格納されている。制御情報1に
は、「あるルールが成立すると、別のあるルールが成立
しない」ような制御用のルールが書かれている。制御情
報2には成立すべき条件が書かれている。例えば、制御
情報1には、ルール1が成立すると、ルール2とルール
4は成立しない。
As an extension of the means 602 for checking whether or not a rule to be established and a specified rule in inference that does not include temporal change are established, if one rule is established, another rule is not established. If known, a process of using such information as control information will be described with reference to FIG. Control information is control information 1
And the contents of control information 2 are stored. In the control information 1, a rule for control is written such that "when a certain rule is satisfied, another certain rule is not satisfied". The control information 2 describes the conditions to be met. For example, in the control information 1, when the rule 1 is established, the rules 2 and 4 are not established.

【0034】ような知識が書かれているとする。制御情
報2には、成立すべきルールとして、 ルール2 のように格納されているとする。処理800は、処理6
02と同様に処理508から呼ばれる。処理802で
は、成立したルールのルール名を取り出す。制御情報1
を使って成立したルール名を条件に持つ制御情報1に格
納されている制御用のルールがあるか調べる。なければ
結果を続行として返す。あれば、制御用のルールの帰結
部に書かれてあるルール名を取り出す(806)。そし
て、取り出したルール名の中に制御情報2に書かれてい
る成立すべきルールがあるか調べる(808)。もし、
その中に指定されていれば、制御情報2に書かれている
ルールは成立しないということがわかるため、これ以上
推論することは意味をなさない。そのため、棄却の結果
を返す(812)。もし、その中に含まれていなけれ
ば、続行の結果を返す(810)。このように、推論中
でも、あるルールが成立したため、成立すべきルールが
成立しなくなることがわかり、推論を途中で棄却するこ
とが可能である。ここでの照合は、ルール名以外に先に
ルール名の指定方法として3つ述べたうちの(2)と
(3)のタイプも可能である。制御情報1にかかれた制
御ルールが成立した時点で、その帰結部にかかれている
ルール名は成立すべきではないルールとして制御情報に
登録しておく。これは、図4で示した方法によって、後
で成立したルールが成立すべきではないルールかを調
べ、推論を棄却するために使うことができる。
It is assumed that such knowledge is written. It is assumed that the control information 2 is stored as rule 2 as a rule to be established. Process 800 is process 6
It is called from the process 508 similarly to 02. In process 802, the rule name of the established rule is extracted. Control information 1
It is checked whether there is a control rule stored in the control information 1 having the rule name established by using as a condition. If not, the result is returned as a continuation. If there is, the rule name written in the consequent part of the control rule is taken out (806). Then, it is checked whether or not there is a rule written in the control information 2 in the extracted rule name (808). if,
If it is specified in it, it can be seen that the rule written in the control information 2 does not hold, so it makes no sense to infer further. Therefore, the rejection result is returned (812). If it is not included therein, the result of continuation is returned (810). As described above, it is possible to reject the inference on the way because it is found that a rule that should be satisfied is not satisfied because a certain rule is satisfied even during inference. In addition to the rule name, the collation here can be performed using the types (2) and (3) of the three methods described above as the rule name designation method. When the control rule written in the control information 1 is established, the rule name written in the consequent part is registered in the control information as a rule that should not be established. This can be used by the method shown in FIG. 4 to check whether a rule that has been established later should not be established and reject the inference.

【0035】次に、時間的変化を推論する機構を有する
システムにおける実施例を示す。時間的変化を推論する
システムでは、時間的順序関係を含めて成立すべきでは
ないルールを指定し、その順序関係で指定された成立す
べきではないルールが推論中に成立した場合に推論を棄
却する手段は、図4の処理を拡張することによって容易
に実現できる。図9を用いて、その処理を説明する。処
理900は処理400と同様に処理308から呼ばれ
る。処理902では、まず、成立したルールの名称を記
録する。次に、記録したシーケンスの部分列が制御情報
に指定されたルール列と照合するか調べる(904)。
照合が成功すれば、そのようなシーケンスは、成立すべ
きではない順序関係であるため結果を棄却として返す
(908)。照合が失敗すれば、結果を続行として返す
(906)。
Next, an example of a system having a mechanism for inferring temporal change will be described. In a system that infers temporal changes, rules that should not be established including temporal order relations are specified, and if the rules that should not be established specified by that order relation are established during inference, the inference is rejected. The means for doing so can be easily realized by expanding the processing of FIG. The processing will be described with reference to FIG. The process 900 is called from the process 308 similarly to the process 400. In process 902, first, the name of the established rule is recorded. Next, it is checked whether the partial sequence of the recorded sequence matches the rule sequence specified in the control information (904).
If the matching is successful, such a sequence has an order relation that should not hold, and the result is returned as a rejection (908). If matching fails, the result is returned as continue (906).

【0036】例えば、ルール3が、ルール2が成立した
ルールとして記録されている時に、ルール1が成立する
と、ルール3、ルール2、ルール1が成立したルールの
シーケンスとして記録される。もし、制御情報に、ルー
ル3の後にルール1が成立する推論は棄却するように指
定されていれば、ルール1が成立した時点で、処理90
4によって照合が成功し、棄却の結果が返される。
For example, when rule 3 is recorded as a rule in which rule 2 is established and rule 1 is established, it is recorded as a sequence of rules in which rule 3, rule 2 and rule 1 are established. If the control information specifies that the inference that the rule 1 is established after the rule 3 is rejected, the process 90 is executed when the rule 1 is established.
4, the collation succeeds and the rejection result is returned.

【0037】また、時間的変化を推論する機構を有する
システムにおける、時間的順序関係を含めて成立すべき
ルールを指定し、その順序関係で指定された成立すべき
ルールが推論中に成立しないと判明した時点で、推論を
棄却する手段は、図6あるいは図8の処理を拡張するこ
とによって容易に実現できる。図8を拡張した処理につ
いて、図10を用いて説明する。処理1000は処理8
00と同様に処理508から呼ばれる。処理1002で
は、まず、成立したルールの名称を記録する。次に、記
録したシーケンスの部分列が制御情報1に指定されたル
ールの条件部と照合するか調べる(1004)。照合が
失敗すれば、結果を続行として返す(1010)。照合
が成功すれば、そのルールの帰結部を取り出し(100
6)、取り出したルール名が制御情報2の成立すべきル
ール名があるか調べる(1008)。そうであれば、制
御情報2のルールは「あるルールが成立すると、別のあ
るルールが成立しない」ような制御用ルールであるた
め、そのルールは成立しないことがわかり、結果は棄却
される(1012)。そうなければ、結果は続行となる
(1010)。例えば、ルール3が、ルール2が成立し
たルールとして記録されている時に、ルール1が成立す
ると、ルール3、ルール2、ルール1が成立したルール
のシーケンスとして記録される。もし、制御情報1に、
「ルール3の後にルール1が成立したならば、ルール4
は成立しない」というルールがかかれているならば、ル
ール4が成立しないとわかる。もし、ルール4が制御情
報2に成立すべきルールとして記述されていれば、ルー
ル2が成立した時点でルール4は成立しないことがわか
るため推論は棄却される。ルール3の後にルール1が成
立した時点で、ルール4は成立しないことがわかるた
め、図8の処理と同様に、成立したら棄却するルール名
として、別に制御情報に登録する。これは、図4で示し
た方法によって、推論を棄却する方法として使うことが
できる。
In a system having a mechanism for inferring temporal changes, rules to be established including temporal order relations are specified, and rules to be established specified by the order relations are not established during inference. The means of rejecting the inference at the time when it becomes clear can be easily realized by expanding the processing of FIG. 6 or FIG. The process obtained by expanding FIG. 8 will be described with reference to FIG. Process 1000 is process 8
It is called from the process 508 similarly to 00. In process 1002, first, the name of the established rule is recorded. Next, it is checked whether the recorded subsequence of the sequence matches the condition part of the rule specified in the control information 1 (1004). If the matching fails, the result is returned as a continuation (1010). If the matching is successful, the consequent part of the rule is extracted (100
6) It is checked whether or not the extracted rule name has a rule name for which the control information 2 should be satisfied (1008). If so, the rule of the control information 2 is such a control rule that "when a certain rule is established, another certain rule is not established", the rule is not established and the result is rejected ( 1012). If not, the result is 1010. For example, when rule 3 is recorded as a rule in which rule 2 is satisfied and rule 1 is satisfied, it is recorded as a sequence of rules in which rule 3, rule 2, and rule 1 are satisfied. If the control information 1
"If rule 1 is established after rule 3, rule 4
If the rule that "is not satisfied" is written, it is understood that rule 4 is not satisfied. If the rule 4 is described in the control information 2 as a rule to be established, it is understood that the rule 4 is not established when the rule 2 is established, so the inference is rejected. Since it can be seen that rule 4 is not established when rule 1 is established after rule 3, therefore, it is separately registered in the control information as a rule name to be rejected when it is established, as in the process of FIG. This can be used as a method of rejecting inference by the method shown in FIG.

【0038】時間的変化を行なう推論に於けるルール名
の指定の方法も、時間的変化を行わない推論と同様にル
ール名だけや、ルール名と条件、条件の組み合わせなど
が指定できる。
As for the method of designating the rule name in the inference that changes with time, only the rule name, the rule name and the condition, the combination of the conditions, and the like can be specified as in the inference that does not perform the time change.

【0039】[0039]

【発明の効果】本発明によれば、知識ベースは変更せず
に、制御情報として推論中に成立すべきではないルール
や成立すべきルールを推論システムに教えておくことに
より、推論中にそのルールが成立したり、そのルールが
成立しないことがわかったならば、その時点で推論を棄
却することにより、不要な推論を行なわないことが可能
となり、不要な処理時間を増大させないことと不必要な
推論結果を導かないことが可能になる。
According to the present invention, the knowledge base is not changed and the inference system is informed of the rules that should not be established or the rules that should be established during the inference as control information. If a rule is established or it is found that the rule is not established, rejecting the inference at that point makes it possible to avoid unnecessary inference, and not to increase unnecessary processing time. It is possible to avoid leading inference results.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例を示す推論システムのブロッ
ク図。
FIG. 1 is a block diagram of an inference system showing an embodiment of the present invention.

【図2】本発明の推論制御装置の一構成図。FIG. 2 is a configuration diagram of an inference control device of the present invention.

【図3】ルールの評価の処理を示すフローチャート。FIG. 3 is a flowchart showing a rule evaluation process.

【図4】ルールベース推論における成立すべきではない
ルールを照合するフローチャート。
FIG. 4 is a flowchart for collating rules that should not be established in rule-based reasoning.

【図5】ルールベース推論における推論部のルールの評
価の処理を示すフローチャート。
FIG. 5 is a flowchart showing a process of evaluating rules of an inference unit in rule-based inference.

【図6】成立すべきルールを調べるフローチャート。FIG. 6 is a flowchart for checking rules to be established.

【図7】成立すべきではないルールを調べるために、条
件を使った場合フローチャート。
FIG. 7 is a flowchart when a condition is used to check a rule that should not be established.

【図8】制御用のルールを使って成立すべきルールを調
べるフローチャート。
FIG. 8 is a flowchart for checking a rule to be established using a control rule.

【図9】時間的変化を行なう推論における成立すべきで
はないルールを照合するフローチャート。
FIG. 9 is a flowchart for collating rules that should not be established in inference that changes with time.

【図10】時間的変化を行なう推論における制御用のル
ールを使って成立すべきルールを調べるフローチャー
ト。
FIG. 10 is a flowchart for checking a rule to be established using a control rule in inference that changes with time.

フロントページの続き (72)発明者 阿部 正博 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内Front page continuation (72) Masahiro Abe, Inventor Masahiro Abe 1-280, Higashi Koigokubo, Kokubunji, Tokyo Inside the Central Research Laboratory, Hitachi, Ltd.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】時間的変化を推論する機構を有し、条件部
とその条件が満足されたときに有効になる帰結部を持つ
ルールの集合である知識ベースと、現在の状態を格納す
るワーキングメモリを持ち、ルールの条件が満たされた
ならば、帰結部を実行する推論制御方式において、時間
的順序関係を含めて成立すべきではないルールを指定す
る手段と、その順序関係で指定された成立すべきではな
いルールが推論中に成立した場合に推論を棄却する手段
を有することを特徴とする推論制御方式。
1. A knowledge base, which is a set of rules having a mechanism for inferring a temporal change and having a condition part and a consequent part which becomes effective when the condition is satisfied, and a working for storing a current state. If there is a memory and the condition of the rule is satisfied, in the inference control method that executes the consequent part, the method that specifies the rule that should not hold including the temporal order relation and the order relation An inference control method having means for rejecting inference when a rule that should not be established is established during inference.
【請求項2】時間的変化を推論する機構を有し、条件部
とその条件が満足されたときに有効になる帰結部を持つ
ルールの集合である知識ベースと、現在の状態を格納す
るワーキングメモリを持ち、ルールの条件が満たされた
ならば、帰結部を実行する推論制御方式において、時間
的順序関係を含めて成立すべきルールを指定する手段
と、その順序関係で指定された成立すべきルールが推論
中に成立しないと判明した時点で、推論を棄却する手段
を有することを特徴とする推論制御方式。
2. A knowledge base, which is a set of rules having a mechanism for inferring a temporal change and having a condition part and a consequent part which becomes effective when the condition is satisfied, and a working for storing the current state. If there is a memory and the condition of the rule is satisfied, in the inference control method that executes the consequent part, the means that specifies the rule that should be satisfied including the temporal order relation and the order specified by the order relation An inference control method having means for rejecting inference when it is found that a power rule is not established during inference.
【請求項3】第1項あるいは第2項記載の推論制御方式
において、推論中に成立すべきルールあるいは成立すべ
きではないルールを指定する手段として、(1)ルール
名、(2)ルール名とその条件部、あるいは(3)条件
を指定することが可能であり、(1)ルール名による指
定の場合はルール名による照合、(2)ルール名とその
条件による指定の場合はルール名の照合と条件の照合、
(3)条件による指定の場合は照合されるルールの条件
の一部の照合、を行なう手段を有することを特徴とする
推論制御方式。
3. In the inference control method according to claim 1 or 2, as means for designating a rule that should be established or a rule that should not be established during inference, (1) rule name, (2) rule name And its condition part or (3) condition can be specified. (1) Matching by rule name in case of specifying by rule name, (2) Rule name in case of specifying by rule name and its condition Match and match condition,
(3) An inference control system characterized by having a means for collating a part of the conditions of the rule to be collated in the case of designation by a condition.
JP4096015A 1992-03-24 1992-03-24 Inference control system Pending JPH05265757A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4096015A JPH05265757A (en) 1992-03-24 1992-03-24 Inference control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4096015A JPH05265757A (en) 1992-03-24 1992-03-24 Inference control system

Publications (1)

Publication Number Publication Date
JPH05265757A true JPH05265757A (en) 1993-10-15

Family

ID=14153406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4096015A Pending JPH05265757A (en) 1992-03-24 1992-03-24 Inference control system

Country Status (1)

Country Link
JP (1) JPH05265757A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020196033A1 (en) * 2019-03-28 2020-10-01

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020196033A1 (en) * 2019-03-28 2020-10-01

Similar Documents

Publication Publication Date Title
US4712189A (en) Table driven translator
Shi et al. Incsql: Training incremental text-to-sql parsers with non-deterministic oracles
Plasmeijer et al. Functional programming and parallel graph rewriting
US6389405B1 (en) Processing system for identifying relationships between concepts
US5142681A (en) APL-to-Fortran translators
López et al. Monadic concurrent linear logic programming
CN113064586B (en) Code completion method based on abstract syntax tree augmented graph model
Tsai et al. Knowledge-based software development for real-time distributed systems
Tichy What can software engineers learn from artificial intelligence?
WO2016163039A1 (en) Autonomous knowledge extraction machine
JPH05265757A (en) Inference control system
Pieraccini et al. Implementation aspects of large vocabulary recognition based on intraword and interword phonetic units
Samuelsson Notes on LR parser design
Wachtel et al. Programming in natural language building algorithms from human descriptions
Kapustin et al. Modeling meaning: computational interpreting and understanding of natural language fragments
Reddy et al. Multiplicative speedup of systems
GRIFFITHS et al. Incremental compilation and conversational interpretation
CN115658511A (en) Method and system for monitoring execution behavior of source code
Carciofini et al. LogLisp Programming System Users Manual
Ramsey Programming Languages
Luckham et al. Processes for Consistent Implementation of Packages
Davies Prolog and expert systems
Chaitin et al. Research and applications: Artificial intelligence
JPH04342026A (en) Pattern matching system for structural object data
JP2922207B2 (en) Program conversion system