JPH0765003A - 記号集合の解析方法 - Google Patents
記号集合の解析方法Info
- Publication number
- JPH0765003A JPH0765003A JP4188871A JP18887192A JPH0765003A JP H0765003 A JPH0765003 A JP H0765003A JP 4188871 A JP4188871 A JP 4188871A JP 18887192 A JP18887192 A JP 18887192A JP H0765003 A JPH0765003 A JP H0765003A
- Authority
- JP
- Japan
- Prior art keywords
- symbols
- symbol
- state
- block
- stack
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/416—Extracting the logical structure, e.g. chapters, sections or page numbers; Identifying elements of the document, e.g. authors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Abstract
(57)【要約】
【目的】 記号の半順序集合を解析する。
【構成】 記号の半順序集合の解析は、最初に与えられ
た終端記号の全順序を形成することによって達成され
る。終端記号間の関係が定式化され、与えられた文法が
生成規則の集合に分解される。生成規則に基づいて、ど
んな種類の記号が与えられた文法に従うために必要かに
ついての判定がなされる。その判定は、発見されるべき
終端記号の型と、その記号が持つべき半順序関係とを含
む。全順序づけされた記号の集合が順に検索され、指定
された基準を満たす最初の記号が選択される。適切な場
合、全順序集合から回復された記号が非終端記号に縮約
される。最終目標は、全順序集合中の全記号が、1つの
縮約された非終端記号に包含されることである。
た終端記号の全順序を形成することによって達成され
る。終端記号間の関係が定式化され、与えられた文法が
生成規則の集合に分解される。生成規則に基づいて、ど
んな種類の記号が与えられた文法に従うために必要かに
ついての判定がなされる。その判定は、発見されるべき
終端記号の型と、その記号が持つべき半順序関係とを含
む。全順序づけされた記号の集合が順に検索され、指定
された基準を満たす最初の記号が選択される。適切な場
合、全順序集合から回復された記号が非終端記号に縮約
される。最終目標は、全順序集合中の全記号が、1つの
縮約された非終端記号に包含されることである。
Description
【0001】
【産業上の利用分野】本発明は、像の解析方法に関す
る。
る。
【0002】
【従来の技術】現在、パーソナルコンピュータ(PC)
のような小さいコンピュータとインタフェースするため
の一般的手段の1つは、画面、キーボード、および位置
決め装置(例えばマウス)からなる。位置決め装置配置
は、画面上に提示されたアイコン、コンピュータに接続
された移動可能な「マウス」、「マウス」の移動に応答
してアイコンを移動するためのソフトウェア、および、
アイコンの位置を認識するためのソフトウェアからな
る。
のような小さいコンピュータとインタフェースするため
の一般的手段の1つは、画面、キーボード、および位置
決め装置(例えばマウス)からなる。位置決め装置配置
は、画面上に提示されたアイコン、コンピュータに接続
された移動可能な「マウス」、「マウス」の移動に応答
してアイコンを移動するためのソフトウェア、および、
アイコンの位置を認識するためのソフトウェアからな
る。
【0003】アイコンマウス配置は、必要な情報量が少
ない場合、例えば、コンピュータコマンドが有効に選択
される場合に、ユーザからの情報を取得するには非常に
有効である。このようなコマンド選択セッションでは、
コンピュータはユーザにさまざまなオプションを提示
し、ユーザは提示されたオプションから選択する。
ない場合、例えば、コンピュータコマンドが有効に選択
される場合に、ユーザからの情報を取得するには非常に
有効である。このようなコマンド選択セッションでは、
コンピュータはユーザにさまざまなオプションを提示
し、ユーザは提示されたオプションから選択する。
【0004】アイコンマウスインタフェースによって、
オプションを提示し、ユーザの選択を識別する方法は、
画面上の指定された領域が特定の選択に対応するような
画面上の像を作成するステップと、画面上のアイコンの
位置を識別するステップと、アイコン位置、指定された
画面領域、および有効なコマンド選択の間の対応関係を
確立するステップからなる。
オプションを提示し、ユーザの選択を識別する方法は、
画面上の指定された領域が特定の選択に対応するような
画面上の像を作成するステップと、画面上のアイコンの
位置を識別するステップと、アイコン位置、指定された
画面領域、および有効なコマンド選択の間の対応関係を
確立するステップからなる。
【0005】一般的に、画面上のある領域と画面上の他
の領域の間に論理的関係はない。すなわち、単に、アイ
コンがある領域と近接関係にあるという理由によって
は、その領域に対応する作用は生じない。アイコンが領
域の上下左右のどこにあるかは問題とはならず、アイコ
ンがその領域内にあるか否かのみが問題となる。これ
は、領域間に論理的関係は存在し得ないということでは
なく、いくつかのアプリケーションでは実際に存在す
る。しかし、このような論理的関係に対応する制御を認
識し実現するプログラムは特殊なアプリケーションのた
めに「仕立てられた」ものである。
の領域の間に論理的関係はない。すなわち、単に、アイ
コンがある領域と近接関係にあるという理由によって
は、その領域に対応する作用は生じない。アイコンが領
域の上下左右のどこにあるかは問題とはならず、アイコ
ンがその領域内にあるか否かのみが問題となる。これ
は、領域間に論理的関係は存在し得ないということでは
なく、いくつかのアプリケーションでは実際に存在す
る。しかし、このような論理的関係に対応する制御を認
識し実現するプログラムは特殊なアプリケーションのた
めに「仕立てられた」ものである。
【0006】コンピュータとユーザの間の対話の「制
御」の側面の他に、表示画面の相異なる領域が論理的関
係を共有する状況がある。例えば、(周知の書式の)ビ
ジネスレターの像が画面上に形成された場合、そのレタ
ーの日付がどこにあるか、日付に対して宛名はどこにあ
るか、宛名に対して書き出しはどこにあるか、などは周
知である。同じことは、しばしば表形式で提示される、
多くのデータベース出力「画面」にも当てはまる。
御」の側面の他に、表示画面の相異なる領域が論理的関
係を共有する状況がある。例えば、(周知の書式の)ビ
ジネスレターの像が画面上に形成された場合、そのレタ
ーの日付がどこにあるか、日付に対して宛名はどこにあ
るか、宛名に対して書き出しはどこにあるか、などは周
知である。同じことは、しばしば表形式で提示される、
多くのデータベース出力「画面」にも当てはまる。
【0007】
【発明が解決しようとする課題】問題は、いかにしてこ
れらの論理的関係を認識し解析するようにコンピュータ
をプログラムするか、および、いかにして論理的に強固
な方法でプログラミングの仕事に取り組むかである。こ
の問題の注意深い研究によって、これは、基本的に、文
法の問題であることが明らかとなる。すなわち、この問
題は、像を解析する最善の方法は何か、および、解析さ
れた情報を理解する最善の方法は何かという問題にかか
わるものである。
れらの論理的関係を認識し解析するようにコンピュータ
をプログラムするか、および、いかにして論理的に強固
な方法でプログラミングの仕事に取り組むかである。こ
の問題の注意深い研究によって、これは、基本的に、文
法の問題であることが明らかとなる。すなわち、この問
題は、像を解析する最善の方法は何か、および、解析さ
れた情報を理解する最善の方法は何かという問題にかか
わるものである。
【0008】情報の解析およびその解析の結果としての
文脈情報の導出は、形式言語とともに広く研究されてい
る。このような言語は、記号の集まりおよび規則で定義
された記号の操作の集合からなる。記号の集合は、言語
の基本的単位である終端記号(例えば単語)と、終端記
号から構成される非終端記号(例えば節)の両方を含
む。記号操作規則は時に生成規則とも呼ばれ、記号の有
効な写像を定義する。
文脈情報の導出は、形式言語とともに広く研究されてい
る。このような言語は、記号の集まりおよび規則で定義
された記号の操作の集合からなる。記号の集合は、言語
の基本的単位である終端記号(例えば単語)と、終端記
号から構成される非終端記号(例えば節)の両方を含
む。記号操作規則は時に生成規則とも呼ばれ、記号の有
効な写像を定義する。
【0009】例えば、生成規則 A → bcN (1) は、入力中に記号の列bcNが発見された場合、その列
は記号Aに置換されることを表す。(本明細書では、小
文字は終端記号を表し、大文字は非終端記号を表す。)
明らかに、「後」および「前」の概念が生成規則にとっ
て非常に重要であり、言語の「文」の候補内の記号に厳
格な配列の概念を強制する。記号の配列は、1次元のス
トリングで明確に定義可能である(自然言語もそうであ
る)。しかし、高次元のストリングでは、順序列の概念
はうまく定義されない。これが、多次元ストリングの解
析があまり進展していない理由である。
は記号Aに置換されることを表す。(本明細書では、小
文字は終端記号を表し、大文字は非終端記号を表す。)
明らかに、「後」および「前」の概念が生成規則にとっ
て非常に重要であり、言語の「文」の候補内の記号に厳
格な配列の概念を強制する。記号の配列は、1次元のス
トリングで明確に定義可能である(自然言語もそうであ
る)。しかし、高次元のストリングでは、順序列の概念
はうまく定義されない。これが、多次元ストリングの解
析があまり進展していない理由である。
【0010】
【課題を解決するための手段】記号の半順序集合の解析
は、最初に与えられた終端記号の全順序を形成すること
によって達成される。終端記号間の関係が定式化され、
与えられた文法が生成規則の集合に分解される。生成規
則に基づいて、どんな種類の記号が与えられた文法に従
うために必要かについての判定がなされる。その判定
は、発見されるべき終端記号の型と、その記号が持つべ
き半順序関係とを含む。全順序づけされた記号の集合が
順に検索され、指定された基準を満たす最初の記号が選
択される。適切な場合、全順序集合から回復された記号
が非終端記号に縮約される。最終目標は、全順序集合中
の全記号が、1つの縮約された非終端記号に包含される
ことである。
は、最初に与えられた終端記号の全順序を形成すること
によって達成される。終端記号間の関係が定式化され、
与えられた文法が生成規則の集合に分解される。生成規
則に基づいて、どんな種類の記号が与えられた文法に従
うために必要かについての判定がなされる。その判定
は、発見されるべき終端記号の型と、その記号が持つべ
き半順序関係とを含む。全順序づけされた記号の集合が
順に検索され、指定された基準を満たす最初の記号が選
択される。適切な場合、全順序集合から回復された記号
が非終端記号に縮約される。最終目標は、全順序集合中
の全記号が、1つの縮約された非終端記号に包含される
ことである。
【0011】
[順序づけおよび誘導]以上から推測されるように、多
次元ストリングの解析の前に、そのストリングに対して
合理的な順序づけ方式が開発され、その順序づけ方式と
うまく結合する解析プロセスが作成されなければならな
い。
次元ストリングの解析の前に、そのストリングに対して
合理的な順序づけ方式が開発され、その順序づけ方式と
うまく結合する解析プロセスが作成されなければならな
い。
【0012】ここで開示されるのは、記号の集合が多次
元空間(α個の次元すなわち方向を有する)において半
順序づけ可能であるような状況で有効に作動する効率的
な解析プロセスである。半順序集合とは、2個の要素間
に関係が存在することが可能であり、存在する場合には
それは推移性(a<bおよびb<cならばa<c)を有
するような要素の集合である。全順序集合では、要素間
には関係が存在し、推移性が成り立つ。
元空間(α個の次元すなわち方向を有する)において半
順序づけ可能であるような状況で有効に作動する効率的
な解析プロセスである。半順序集合とは、2個の要素間
に関係が存在することが可能であり、存在する場合には
それは推移性(a<bおよびb<cならばa<c)を有
するような要素の集合である。全順序集合では、要素間
には関係が存在し、推移性が成り立つ。
【0013】半順序づけされた記号の集合が与えられる
と、本発明の実施に必要なことは、記号の全順序づけで
ある。任意の順序づけ方式が可能であるが、以下では、
興味のある広範囲の記号ソースに適用される合理的順序
づけ方法を提示する。
と、本発明の実施に必要なことは、記号の全順序づけで
ある。任意の順序づけ方式が可能であるが、以下では、
興味のある広範囲の記号ソースに適用される合理的順序
づけ方法を提示する。
【0014】この方法によって、半順序集合が全順序づ
けされるのは、与えられた記号の集合において、あらゆ
る記号uが少なくとも1次元すなわち1方向で記号vよ
りも小さいかまたは大きい場合に限る(「より小さい」
は「先行する」を意味する)。「vが1次元方向でuよ
り小さい(uに先行する)」という関係を、v<1uと
書く。vが1次元方向でuより小さいか、またはその反
対であるかが分からない場合、v=1uという式を使用
する。
けされるのは、与えられた記号の集合において、あらゆ
る記号uが少なくとも1次元すなわち1方向で記号vよ
りも小さいかまたは大きい場合に限る(「より小さい」
は「先行する」を意味する)。「vが1次元方向でuよ
り小さい(uに先行する)」という関係を、v<1uと
書く。vが1次元方向でuより小さいか、またはその反
対であるかが分からない場合、v=1uという式を使用
する。
【0015】より簡潔な数学的用語で全順序づけ方法を
説明すると、記号の任意の対uおよびvに対し、 u<1vならばu<v v<1uならばv<u u=1vならば: u<2vならばu<v v<2uならばv<u (2) u=2vならば: ・・・ u<avならばu<v v<auならばv<u u=avならばエラー。u=vの場合にのみ可能。 上記の順序づけは、入力記号の明確な全順序づけの方法
を定める。
説明すると、記号の任意の対uおよびvに対し、 u<1vならばu<v v<1uならばv<u u=1vならば: u<2vならばu<v v<2uならばv<u (2) u=2vならば: ・・・ u<avならばu<v v<auならばv<u u=avならばエラー。u=vの場合にのみ可能。 上記の順序づけは、入力記号の明確な全順序づけの方法
を定める。
【0016】入力の半順序づけの他に、本発明の解析プ
ロセスは「誘導」の概念を使用する。次の条件が満たさ
れるとき、記号「u」が記号「v」の「i−誘導であ
る」という。 i. u<iv ii. u=jv すべてのj≠i iii. u<i<w<ivとなるようなwが存在しない すなわち、uが次元i方向でvより小さく、その次元で
uとvの間にwが存在せず、i以外のすべての次元jで
はuとvは比較不可能である場合に、「uはvをi−誘
導する」。
ロセスは「誘導」の概念を使用する。次の条件が満たさ
れるとき、記号「u」が記号「v」の「i−誘導であ
る」という。 i. u<iv ii. u=jv すべてのj≠i iii. u<i<w<ivとなるようなwが存在しない すなわち、uが次元i方向でvより小さく、その次元で
uとvの間にwが存在せず、i以外のすべての次元jで
はuとvは比較不可能である場合に、「uはvをi−誘
導する」。
【0017】上記で定義された順序づけおよび誘導の原
理を使用する解析プロセスが以下で定式化される。この
解析プロセスの説明には、考案された2次元の英語の
「実の従兄弟」の簡単な例が援用されるが、まずその言
語の文法を定義しなければならない。
理を使用する解析プロセスが以下で定式化される。この
解析プロセスの説明には、考案された2次元の英語の
「実の従兄弟」の簡単な例が援用されるが、まずその言
語の文法を定義しなければならない。
【0018】[2次元英語の文法]順序づけられた単語
を理解する、すなわち、入力を解析するためには、文法
の規則が提示されなければならない。この説明のため、
考案された2次元言語は以下の文法に従う。 規則 意味 1.FIN→X 記号Xは、解析プロセスの正常終了を表す記号FINに写像さ れる。 2.X→S<1P 述節Pの左の主節SはXに写像される。 3.S→art<1S Sの左の冠詞はSに写像される。 4.S→S<2adj 形容詞(adj)の上のSはSに写像される。 5.P→verb<2O 目的節Oの上の動詞(verb)はPに写像される。 6.O→noun 名詞(noun)はOに写像される。 7.S→noun 名詞(noun)はSに写像される。
を理解する、すなわち、入力を解析するためには、文法
の規則が提示されなければならない。この説明のため、
考案された2次元言語は以下の文法に従う。 規則 意味 1.FIN→X 記号Xは、解析プロセスの正常終了を表す記号FINに写像さ れる。 2.X→S<1P 述節Pの左の主節SはXに写像される。 3.S→art<1S Sの左の冠詞はSに写像される。 4.S→S<2adj 形容詞(adj)の上のSはSに写像される。 5.P→verb<2O 目的節Oの上の動詞(verb)はPに写像される。 6.O→noun 名詞(noun)はOに写像される。 7.S→noun 名詞(noun)はSに写像される。
【0019】[有限状態マシンの状態]以下で詳細に説
明するように、本発明の解析プロセスは、離散的状態に
よって特徴づけられる有限状態マシン(FSM)によっ
て実行される。FSMは、指定された入力が与えられる
と所定の状態に入り、その状態に対して事前に定義され
たある動作を実行し、他の入力が与えられるまでその状
態にとどまる。本発明のFSMパーサの状態は上記の文
法から明らかになる。
明するように、本発明の解析プロセスは、離散的状態に
よって特徴づけられる有限状態マシン(FSM)によっ
て実行される。FSMは、指定された入力が与えられる
と所定の状態に入り、その状態に対して事前に定義され
たある動作を実行し、他の入力が与えられるまでその状
態にとどまる。本発明のFSMパーサの状態は上記の文
法から明らかになる。
【0020】特に、文法の規則1から、次の状態0を得
る。 FIN→*X Xの左の*は、Xが「観測される」ためにシークされる
ことを意味する。文法の規則2から、Xを観測するため
にシークすることは、変換すなわち項 X→*S P におけるように、Sを観測するためにシークすることで
もある。
る。 FIN→*X Xの左の*は、Xが「観測される」ためにシークされる
ことを意味する。文法の規則2から、Xを観測するため
にシークすることは、変換すなわち項 X→*S P におけるように、Sを観測するためにシークすることで
もある。
【0021】規則3、4および7から、Sを観測するた
めにシークすることは、art、S、nounを観測す
るためにシークすることでもある。すなわち、 S→*art S S→*S adj S→*art noun
めにシークすることは、art、S、nounを観測す
るためにシークすることでもある。すなわち、 S→*art S S→*S adj S→*art noun
【0022】従って、状態0は、 FIN→*X X→*S P S→*art S S→*S adj S→*noun に対応する。
【0023】Xが観測されると、FSMは状態0から状
態1へ移動する。Sが観測されると、FSMは状態2へ
移動する。artが観測されると、FSMは状態3へ移
動する。nounが観測されると、FSMは状態4へ移
動する。各状態を展開して、状態の全集合およびそれら
の状態の項が、以下のリストのように明らかとなる。 状態0: FIN→*X (第1シーク) X→*S P S→*art S S→*S adj S→*noun 状態1: FIN→X* R 状態2: X→S*P (S,1) S→S*adj (S,2) P→*verb O 状態3: S→art*S (art,1) S→*art S S→*S adj S→*noun 状態4: S→noun* R 状態5: X→S P* R 状態6: S→S adj* R 状態7: P→verb*O (verb,2) O→*noun 状態8: P→verb O* R 状態9: O→noun* R 状態10:S→art S* R S→S*adj (S,2)
態1へ移動する。Sが観測されると、FSMは状態2へ
移動する。artが観測されると、FSMは状態3へ移
動する。nounが観測されると、FSMは状態4へ移
動する。各状態を展開して、状態の全集合およびそれら
の状態の項が、以下のリストのように明らかとなる。 状態0: FIN→*X (第1シーク) X→*S P S→*art S S→*S adj S→*noun 状態1: FIN→X* R 状態2: X→S*P (S,1) S→S*adj (S,2) P→*verb O 状態3: S→art*S (art,1) S→*art S S→*S adj S→*noun 状態4: S→noun* R 状態5: X→S P* R 状態6: S→S adj* R 状態7: P→verb*O (verb,2) O→*noun 状態8: P→verb O* R 状態9: O→noun* R 状態10:S→art S* R S→S*adj (S,2)
【0024】上記のリストで、いくつかの項の次のRの
表示は、それらが可約であることを示す。これらは「可
約項」である。「核項」とは、可約でない項のことであ
り、その右辺の*の左には少なくとも1つの記号が存在
する。核項の誘導関係は重要であるため、核項の右の括
弧内に示してある。項FIN→*Xは擬似核項である。
これは、要素の順序リストにおける第1項のシークを指
定する。
表示は、それらが可約であることを示す。これらは「可
約項」である。「核項」とは、可約でない項のことであ
り、その右辺の*の左には少なくとも1つの記号が存在
する。核項の誘導関係は重要であるため、核項の右の括
弧内に示してある。項FIN→*Xは擬似核項である。
これは、要素の順序リストにおける第1項のシークを指
定する。
【0025】核項を含むFSM状態は、新たな情報を要
求する状態である。その情報に応答して、ある時にはF
SMは縮約が起こる状態に入り、またある時は、FSM
はさらに情報が必要な状態に入る(時に「シフト」と呼
ばれる)。可約項および核項、すなわち、上記のリスト
で右側に括弧のコメントを有する項は、「判断項」であ
る。
求する状態である。その情報に応答して、ある時にはF
SMは縮約が起こる状態に入り、またある時は、FSM
はさらに情報が必要な状態に入る(時に「シフト」と呼
ばれる)。可約項および核項、すなわち、上記のリスト
で右側に括弧のコメントを有する項は、「判断項」であ
る。
【0026】シフト/縮約衝突があるようなFSM状態
が存在することがある。状態10はこのような衝突を有
し、いずれの動作が実行されるかが指定されない。通
常、縮約とシフトの衝突はシフトのほうをとることによ
って解決される。その根拠は、縮約可能な記号の最大の
群を発見するという目的に基づく。また、状態2は、シ
ークまたはシフト衝突を表す2つの核項を有する。
が存在することがある。状態10はこのような衝突を有
し、いずれの動作が実行されるかが指定されない。通
常、縮約とシフトの衝突はシフトのほうをとることによ
って解決される。その根拠は、縮約可能な記号の最大の
群を発見するという目的に基づく。また、状態2は、シ
ークまたはシフト衝突を表す2つの核項を有する。
【0027】第1項によれば、FSMは、Sによって1
−誘導されるものをシークしなければならないが、一方
第2項によれば、FSMは、Sによって2−誘導される
ものをシークしなければならない。このシーク衝突は、
実は、文法がうまく定義されていないことを意味する。
しかし、これは、追加規則を作成することによって、ま
たは、ユーザが単に好きなほうを選択することによっ
て、解決される。今の場合、第2項は、観測されたSを
他のSに変換する。従ってこの場合には、このような変
換が第1項の変換に優先するという規則を設定すること
に意味がある。こうして、状態2における動作の順序
は、第2項に従って順序入力リスト中の記号をシーク
し、1つも発見されない場合には第1項に従って順序入
力リスト中の記号をシークする、ということになる。
−誘導されるものをシークしなければならないが、一方
第2項によれば、FSMは、Sによって2−誘導される
ものをシークしなければならない。このシーク衝突は、
実は、文法がうまく定義されていないことを意味する。
しかし、これは、追加規則を作成することによって、ま
たは、ユーザが単に好きなほうを選択することによっ
て、解決される。今の場合、第2項は、観測されたSを
他のSに変換する。従ってこの場合には、このような変
換が第1項の変換に優先するという規則を設定すること
に意味がある。こうして、状態2における動作の順序
は、第2項に従って順序入力リスト中の記号をシーク
し、1つも発見されない場合には第1項に従って順序入
力リスト中の記号をシークする、ということになる。
【0028】条第2の衝突のために設定された規則は、
衝突を除去するように追加非終端記号および追加文を文
法に加え、特定の所望のシーク/縮約解析順序を強制す
るという従来の方法によっても解決される。
衝突を除去するように追加非終端記号および追加文を文
法に加え、特定の所望のシーク/縮約解析順序を強制す
るという従来の方法によっても解決される。
【0029】表1は、上記の状態の状態遷移行列を表
す。有限状態マシンのいくつかの状態は、表1の遷移行
列の行として現れていない。これは、単一可約項に対応
する状態である。
す。有限状態マシンのいくつかの状態は、表1の遷移行
列の行として現れていない。これは、単一可約項に対応
する状態である。
【0030】[サンプル文の解析]次の文を考える。 The dog ate (3) good bread 第1ステップは、入力記号(単語)の順序づけである。
文の5単語を対の組合せで取り、上記の順序づけ方式を
適用すると、次の結果が得られる。 The<1dog The<1good The<2good The<2bread dog<1ate dog<1bread (4) dog<2good dog<2bread good<1ate good<1bread ate<2good ate<2bread いくつかの組合せは取られていない。その理由は、関係
についての情報がないか、または、関係が「<」演算子
の推移性から得られるためである。
文の5単語を対の組合せで取り、上記の順序づけ方式を
適用すると、次の結果が得られる。 The<1dog The<1good The<2good The<2bread dog<1ate dog<1bread (4) dog<2good dog<2bread good<1ate good<1bread ate<2good ate<2bread いくつかの組合せは取られていない。その理由は、関係
についての情報がないか、または、関係が「<」演算子
の推移性から得られるためである。
【0031】上記の対の組合せのリストでは、語「Th
e」は明らかに主記号である。これは、いずれの次元で
も、あらゆる他の記号に先行する。順序づけ手続を開始
すると、次元1方向で記号「The」に関係する記号は
「good」および「dog」である。これらは記号
「The」に後続することは分かるが、それらの互いの
順序関係は分からない。「good」および「dog」
を順序づける場合、これらは次元1方向では比較不可能
であることが分かる。
e」は明らかに主記号である。これは、いずれの次元で
も、あらゆる他の記号に先行する。順序づけ手続を開始
すると、次元1方向で記号「The」に関係する記号は
「good」および「dog」である。これらは記号
「The」に後続することは分かるが、それらの互いの
順序関係は分からない。「good」および「dog」
を順序づける場合、これらは次元1方向では比較不可能
であることが分かる。
【0032】しかし、次元2方向では、「dog」は
「good」の上にあるため、上記の半順序規則によっ
て、これらは、記号「The」の後で次のように並ぶ。
The<dog<good残りの2単語「ate」およ
び「bread」は、次元1方向で「dog」および
「good」に後続するが、この場合も、互いの間で
は、次元2方向の順序が確立されなければならない。
「good」の上にあるため、上記の半順序規則によっ
て、これらは、記号「The」の後で次のように並ぶ。
The<dog<good残りの2単語「ate」およ
び「bread」は、次元1方向で「dog」および
「good」に後続するが、この場合も、互いの間で
は、次元2方向の順序が確立されなければならない。
【0033】(2)に示される手続を適用して、(3)
の全文に対して得られる最終順序は、次の通りである。 The<dog<good<ate<bread (5) ストリング(5)は英語の妥当文の構造を有しないかも
しれないが、それはまったく重要でない。重要なこと
は、明確で曖昧さのない順序が確立されたことである。
本発明の解析プロセスでは、以下で詳細に説明するよう
に、入力単語はこの順序でアクセスされる。
の全文に対して得られる最終順序は、次の通りである。 The<dog<good<ate<bread (5) ストリング(5)は英語の妥当文の構造を有しないかも
しれないが、それはまったく重要でない。重要なこと
は、明確で曖昧さのない順序が確立されたことである。
本発明の解析プロセスでは、以下で詳細に説明するよう
に、入力単語はこの順序でアクセスされる。
【0034】「誘導」関係に関し、(3)で示される文
にリスト(4)の関係を適用して得られる結果は次の通
りである。 「The」 は「dog」 を1−誘導する 「dog」 は「ate」 を1−誘導する 「good」は「bread」を1−誘導する (6) 「dog」 は「good」 を2−誘導する 「ate」 は「bread」を2−誘導する これは「誘導リスト」であり、下記の解析プロセスで補
充される。関係リスト(4)もまた、下記のように、解
析プロセスで補充される。
にリスト(4)の関係を適用して得られる結果は次の通
りである。 「The」 は「dog」 を1−誘導する 「dog」 は「ate」 を1−誘導する 「good」は「bread」を1−誘導する (6) 「dog」 は「good」 を2−誘導する 「ate」 は「bread」を2−誘導する これは「誘導リスト」であり、下記の解析プロセスで補
充される。関係リスト(4)もまた、下記のように、解
析プロセスで補充される。
【0035】[関係リストおよび誘導リストの補充]文
法は、解析プロセスで新たに生成される非終端記号とす
でに存在する他の記号の間の半順序関係を決定すること
ができる規則を指定しなければならない。この規則は、
当該非終端記号と当該他の記号の各構成要素間に関係が
存在するときに限り、関係が存在するというものであ
る。縮約が適用されて新たな非終端記号が生成される
と、この規則が、関係リストを補充するために使用され
る。その後、関係リスト中に生じたすべての新たな非終
端記号の構成記号が削除される。
法は、解析プロセスで新たに生成される非終端記号とす
でに存在する他の記号の間の半順序関係を決定すること
ができる規則を指定しなければならない。この規則は、
当該非終端記号と当該他の記号の各構成要素間に関係が
存在するときに限り、関係が存在するというものであ
る。縮約が適用されて新たな非終端記号が生成される
と、この規則が、関係リストを補充するために使用され
る。その後、関係リスト中に生じたすべての新たな非終
端記号の構成記号が削除される。
【0036】関係リストに生じた変化は誘導リストにも
反映されなければならない。新たな非終端記号の構成記
号に関する誘導関係はもはや必要でなく、削除される。
新たな非終端記号に関する新たな誘導関係は、存在すれ
ば、通常の方法で決定され、誘導リストに追加される。
反映されなければならない。新たな非終端記号の構成記
号に関する誘導関係はもはや必要でなく、削除される。
新たな非終端記号に関する新たな誘導関係は、存在すれ
ば、通常の方法で決定され、誘導リストに追加される。
【0037】[解析プロセス]図1のステップaに示し
たように、解析手続きは、スタック内の状態0から開始
する。順序リスト(5)から取り出されるものに関する
条件は何も課されていないため、第1記号(「Th
e」。これはartである)が取り出される。表1によ
れば、artは受容可能入力であるため、組「The:
art:3」がスタックに格納され、表1の指定および
図1のステップbに示されるように、FSMは状態3に
移動する。記号「The」を観測し受容すると、これは
順序リスト(5)から削除される。
たように、解析手続きは、スタック内の状態0から開始
する。順序リスト(5)から取り出されるものに関する
条件は何も課されていないため、第1記号(「Th
e」。これはartである)が取り出される。表1によ
れば、artは受容可能入力であるため、組「The:
art:3」がスタックに格納され、表1の指定および
図1のステップbに示されるように、FSMは状態3に
移動する。記号「The」を観測し受容すると、これは
順序リスト(5)から削除される。
【0038】状態3では、1個の核項が存在する。ar
tによって1−誘導されるものがシークされる。スタッ
ク内のartは「The」である。上記の誘導リストを
見ると、「The」が1−誘導する第1エントリは「d
og」(リストの第1項)であり、これはnounであ
る。表1によれば、nounは状態3の受容可能入力で
あり、FSMを状態4へ移動させる。従って、図1のス
テップcに示すように、組「dog:noun:4」が
スタック上にプッシュされ、記号「dog」が順序リス
トから削除される。
tによって1−誘導されるものがシークされる。スタッ
ク内のartは「The」である。上記の誘導リストを
見ると、「The」が1−誘導する第1エントリは「d
og」(リストの第1項)であり、これはnounであ
る。表1によれば、nounは状態3の受容可能入力で
あり、FSMを状態4へ移動させる。従って、図1のス
テップcに示すように、組「dog:noun:4」が
スタック上にプッシュされ、記号「dog」が順序リス
トから削除される。
【0039】状態4はnounをSに縮約する。従っ
て、組「dog:noun:4」がスタックからポップ
され、nounがSで置換される。同時に、関係リスト
が以下のエントリで補充される。 The<1S[dog] S[dog]<1ate S[dog]<1bread S[dog]<2good S[dog]<2bread
て、組「dog:noun:4」がスタックからポップ
され、nounがSで置換される。同時に、関係リスト
が以下のエントリで補充される。 The<1S[dog] S[dog]<1ate S[dog]<1bread S[dog]<2good S[dog]<2bread
【0040】また、「誘導リスト」が以下のエントリで
補充される。 S[dog]は「ate」 を1−誘導する S[dog]は「good」を2−誘導する nounをSで置換した結果、入力SがFSMに与えら
れ、FSMは状態3に入る。表1によれば、状態3でS
が観測された場合、FSMは状態10へ移動する。従っ
て、図1のステップdに示すように、ポップされた組は
「dog:S:10」に変更されてスタック上にプッシ
ュされる。
補充される。 S[dog]は「ate」 を1−誘導する S[dog]は「good」を2−誘導する nounをSで置換した結果、入力SがFSMに与えら
れ、FSMは状態3に入る。表1によれば、状態3でS
が観測された場合、FSMは状態10へ移動する。従っ
て、図1のステップdに示すように、ポップされた組は
「dog:S:10」に変更されてスタック上にプッシ
ュされる。
【0041】状態10では、FSMはSによって2−誘
導されるものをシークする。誘導リスト中にそのような
エントリは1つだけ存在し(S[dog]は「goo
d」を2−誘導する)、「good」は、adjである
ため、シーク項S→*adjの条件を満たす。従って、
「good」が順序リストから取られ、図1のステップ
eに示すように、組「good:adj:6」が(表1
を参照して)生成されてスタック上にプッシュされる。
他の受容された記号と同様、「good」は順序リスト
から削除される。
導されるものをシークする。誘導リスト中にそのような
エントリは1つだけ存在し(S[dog]は「goo
d」を2−誘導する)、「good」は、adjである
ため、シーク項S→*adjの条件を満たす。従って、
「good」が順序リストから取られ、図1のステップ
eに示すように、組「good:adj:6」が(表1
を参照して)生成されてスタック上にプッシュされる。
他の受容された記号と同様、「good」は順序リスト
から削除される。
【0042】状態6は可約状態である。スタック内の2
つの組がポップされ、縮約が実行され、Sを生成する。
再びFSMは状態3を認識し、入力記号はSである。表
1に従って、次の状態は10であり、図1のステップf
に示すように、新たな組「good,dog:S:1
0」が生成されてスタック上にプッシュされる。関係リ
ストは以下のエントリで補充される。 The<1S[dog,good] S[dog,good]<1ate S[dog,good]<1bread また、誘導リストは以下のエントリで補充される。 S[dog,good]は「ate」 を1−誘導す
る S[dog,good]は「bread」を1−誘導す
る
つの組がポップされ、縮約が実行され、Sを生成する。
再びFSMは状態3を認識し、入力記号はSである。表
1に従って、次の状態は10であり、図1のステップf
に示すように、新たな組「good,dog:S:1
0」が生成されてスタック上にプッシュされる。関係リ
ストは以下のエントリで補充される。 The<1S[dog,good] S[dog,good]<1ate S[dog,good]<1bread また、誘導リストは以下のエントリで補充される。 S[dog,good]は「ate」 を1−誘導す
る S[dog,good]は「bread」を1−誘導す
る
【0043】再び状態10で、Sによって2−誘導され
るadjでのシフトが試みられる。しかし、この試みは
失敗する。従って、次の判断項S→art S*が適用
される。これもまたSを生成し、これは、上位2個の組
をポップした後、再びスタック上にプッシュする。FS
Mは状態0を認識し、Sを観測するため、表1に従っ
て、図1のステップgに示すように、FSMは状態2に
進む。再び関係リストが補充され、今回のエントリは以
下の通りである。 S[The,dog,good]<1ate S[The,dog,good]<1bread また、誘導リストは以下のエントリで補充される。 S[The,dog,good]は「ate」 を1
−誘導する S[The,dog,good]は「bread」を1
−誘導する
るadjでのシフトが試みられる。しかし、この試みは
失敗する。従って、次の判断項S→art S*が適用
される。これもまたSを生成し、これは、上位2個の組
をポップした後、再びスタック上にプッシュする。FS
Mは状態0を認識し、Sを観測するため、表1に従っ
て、図1のステップgに示すように、FSMは状態2に
進む。再び関係リストが補充され、今回のエントリは以
下の通りである。 S[The,dog,good]<1ate S[The,dog,good]<1bread また、誘導リストは以下のエントリで補充される。 S[The,dog,good]は「ate」 を1
−誘導する S[The,dog,good]は「bread」を1
−誘導する
【0044】状態2では、可能な2つの異なるシークが
存在する。前記のように、Sによって2−誘導されるも
のをシークするほうが好ましい。何も発見されない場
合、Sによって1−誘導されるものに対するシークが行
われる(項S→S*Pによる)。残りのリスト「ate
<bread」中の第1記号「ate」はS(特に、S
[The,dog,good])によって1−誘導され
る。これはverbであり、表1によれば、verbは
受容可能記号であり、FSMを状態7へ移動させる。組
「ate:verb:7」が生成され、図1のステップ
hに示すように、スタック上にプッシュされる。
存在する。前記のように、Sによって2−誘導されるも
のをシークするほうが好ましい。何も発見されない場
合、Sによって1−誘導されるものに対するシークが行
われる(項S→S*Pによる)。残りのリスト「ate
<bread」中の第1記号「ate」はS(特に、S
[The,dog,good])によって1−誘導され
る。これはverbであり、表1によれば、verbは
受容可能記号であり、FSMを状態7へ移動させる。組
「ate:verb:7」が生成され、図1のステップ
hに示すように、スタック上にプッシュされる。
【0045】状態7は、verbによって2−誘導され
るもののシークを開始する核項を含む。「誘導リスト」
によれば、verbである記号「ate」は記号「br
ead」を2−誘導し、記号「bread」は順序リス
ト中に発見される(実際、これは順序リストに残る最後
かつ唯一の記号である)。また、記号「bread」は
nounであり、表1によれば受容可能記号である。従
って、組「bread:noun:9」が生成され、図
1のステップiに示すようにスタック上にプッシュされ
る。
るもののシークを開始する核項を含む。「誘導リスト」
によれば、verbである記号「ate」は記号「br
ead」を2−誘導し、記号「bread」は順序リス
ト中に発見される(実際、これは順序リストに残る最後
かつ唯一の記号である)。また、記号「bread」は
nounであり、表1によれば受容可能記号である。従
って、組「bread:noun:9」が生成され、図
1のステップiに示すようにスタック上にプッシュされ
る。
【0046】状態9は可約状態である。最上の組がポッ
プされ、nounがOに縮約され、表1に従って組「b
read:O:8」が生成され、図1のステップjに示
すようにスタック上にプッシュされる。
プされ、nounがOに縮約され、表1に従って組「b
read:O:8」が生成され、図1のステップjに示
すようにスタック上にプッシュされる。
【0047】状態8もまた可約状態である。上位の2つ
の組がポップされ、縮約P→verb O*が実行さ
れ、表1に従って新たな組「bread,ate:P:
5」が生成され、図1のステップkに示すようにスタッ
ク上にプッシュされる。
の組がポップされ、縮約P→verb O*が実行さ
れ、表1に従って新たな組「bread,ate:P:
5」が生成され、図1のステップkに示すようにスタッ
ク上にプッシュされる。
【0048】状態5もまた可約状態である。再び上位の
2つの組がポップされ、縮約X→SP*が実行され、表
1に従って新たな組「bread,ate,good,
dog,The:X:1」が生成され、図1のステップ
lに示すようにスタック上にプッシュされる。
2つの組がポップされ、縮約X→SP*が実行され、表
1に従って新たな組「bread,ate,good,
dog,The:X:1」が生成され、図1のステップ
lに示すようにスタック上にプッシュされる。
【0049】関係リストおよび誘導リストは、もちろ
ん、上記の各縮約後に更新される。これらの更新では変
わったことまたは興味あることが生じないので、簡単の
ため説明しない。
ん、上記の各縮約後に更新される。これらの更新では変
わったことまたは興味あることが生じないので、簡単の
ため説明しない。
【0050】最後に、状態1では、変換FINやX*が
実行され、解析は正常終了する。解析の結論の1つは、
(3)の文が文法に従う妥当文であることである。
実行され、解析は正常終了する。解析の結論の1つは、
(3)の文が文法に従う妥当文であることである。
【0051】[像の解析]考案された2次元言語の上記
の例は、本発明の解析プロセスに付随する概念を導入す
るための伝達手段として提示された。以下では、本発明
の解析プロセスおよび装置の実際的使用法を提示する。
特に、図2は、ジャーナル・オヴ・ジ・アソシエーショ
ン・オヴ・コンピューティング・マシネリー(Journal o
f the Association of Computing Machinery)の表紙で
ある。
の例は、本発明の解析プロセスに付随する概念を導入す
るための伝達手段として提示された。以下では、本発明
の解析プロセスおよび装置の実際的使用法を提示する。
特に、図2は、ジャーナル・オヴ・ジ・アソシエーショ
ン・オヴ・コンピューティング・マシネリー(Journal o
f the Association of Computing Machinery)の表紙で
ある。
【0052】これはテキストのブロックを含み、テキス
トの各ブロックは、ブロック内の単語に含まれる意味
と、他のテキストのブロックの位置に関するそのテキス
トのブロックの位置に埋め込まれた付加的意味を有す
る。図2の電子走査および信号処理によって、走査像に
埋め込まれたテキストおよびその意味の両方が明らかに
なれば有益である。例えば、単語「Hover」を構成
する文字列が図2の像中に発見される。この単語が像中
にあることを確認することに加えて、この単語が、空中
に浮く(hover)乗り物に関する記事の題名中の単
語ではなく、著者名であるということが判定されるかも
しれない。走査像要素にカテゴリーを割り当てることが
できることは、コンピュータを基礎とするシステムとの
有効な対話に役立つ。
トの各ブロックは、ブロック内の単語に含まれる意味
と、他のテキストのブロックの位置に関するそのテキス
トのブロックの位置に埋め込まれた付加的意味を有す
る。図2の電子走査および信号処理によって、走査像に
埋め込まれたテキストおよびその意味の両方が明らかに
なれば有益である。例えば、単語「Hover」を構成
する文字列が図2の像中に発見される。この単語が像中
にあることを確認することに加えて、この単語が、空中
に浮く(hover)乗り物に関する記事の題名中の単
語ではなく、著者名であるということが判定されるかも
しれない。走査像要素にカテゴリーを割り当てることが
できることは、コンピュータを基礎とするシステムとの
有効な対話に役立つ。
【0053】図2を吟味すると、それは、(テキストか
らなる)構造ブロック、すなわち、Heading(見
出し)、Body(本文)、Category(カテゴ
リー)、Group Heading(群見出し)、A
rticle(記事)、Page Number(ペー
ジ数)、Writer(著者)、およびTitle(題
名)のような要素を含むことが分かる。
らなる)構造ブロック、すなわち、Heading(見
出し)、Body(本文)、Category(カテゴ
リー)、Group Heading(群見出し)、A
rticle(記事)、Page Number(ペー
ジ数)、Writer(著者)、およびTitle(題
名)のような要素を含むことが分かる。
【0054】上記要素はすべて、(以前のように)これ
らが非終端要素であることを示すため、大文字で始ま
る。基本走査要素である終端要素は、題名を構成する大
文字および小文字の集合のようなline block
(線ブロック)、群見出しを構成するすべて大文字の集
合のようなcaps block(大文字ブロック)、
および、ページ数のようなnumber block
(数ブロック)である。いくつかの非終端要素は他の非
終端要素に分割されるが、簡単のため、図2の像ではそ
れは行われていない。Headingブロックはその代
表的例であり、3個の基本的サブブロックに分割可能で
あるため、要素Headingは終端要素(headi
ng)と仮定される。
らが非終端要素であることを示すため、大文字で始ま
る。基本走査要素である終端要素は、題名を構成する大
文字および小文字の集合のようなline block
(線ブロック)、群見出しを構成するすべて大文字の集
合のようなcaps block(大文字ブロック)、
および、ページ数のようなnumber block
(数ブロック)である。いくつかの非終端要素は他の非
終端要素に分割されるが、簡単のため、図2の像ではそ
れは行われていない。Headingブロックはその代
表的例であり、3個の基本的サブブロックに分割可能で
あるため、要素Headingは終端要素(headi
ng)と仮定される。
【0055】図2の像中の構造の研究により、以下の文
法がその構造中に埋め込まれていることが明らかとな
る。 S→heading Body (heading<
2Body) Body→Category Body (Cate
gory<2Body) Body→Category Category→GroupHead Articl
e (GroupHead<1Article) Category→Category Article
(Category<2Article) Article→PageNum Title Wri
ter (PageNum<1Title, Pag
eNum<1Writer, PageNum<2Wri
ter, PageNum<2Writer) PageNum→numberblock Title→lineblock Writer→lineblock GroupHead→capsblock
法がその構造中に埋め込まれていることが明らかとな
る。 S→heading Body (heading<
2Body) Body→Category Body (Cate
gory<2Body) Body→Category Category→GroupHead Articl
e (GroupHead<1Article) Category→Category Article
(Category<2Article) Article→PageNum Title Wri
ter (PageNum<1Title, Pag
eNum<1Writer, PageNum<2Wri
ter, PageNum<2Writer) PageNum→numberblock Title→lineblock Writer→lineblock GroupHead→capsblock
【0056】上記の文法に基づいて有限状態マシンの状
態を導出すると、その結果は次の通りである。 状態0: FIN→*S (第1シーク) S→*hB 状態1: FIN→S* R 状態2: S→h*B (h,2) B→*C B→*CB C→*CA C→*GA G→*c 状態3: S→hB* R 状態4: B→C* R B→C*B (C,2) C→C*A (C,2) B→*C B→*CB C→*CA C→*GA G→*c A→*PTW P→*n 状態5: C→G*A (G,1) A→*PTW P→*n 状態6: G→c* R 状態7: B→CB* R 状態8: C→CA* R 状態9: C→GA* R 状態10:A→P*TW (P,1) T→*l 状態11:P→n* R 状態12:A→PT*W (T,2) W→*l 状態13:T→l* R 状態14:A→PTW* R 状態15:W→l* R
態を導出すると、その結果は次の通りである。 状態0: FIN→*S (第1シーク) S→*hB 状態1: FIN→S* R 状態2: S→h*B (h,2) B→*C B→*CB C→*CA C→*GA G→*c 状態3: S→hB* R 状態4: B→C* R B→C*B (C,2) C→C*A (C,2) B→*C B→*CB C→*CA C→*GA G→*c A→*PTW P→*n 状態5: C→G*A (G,1) A→*PTW P→*n 状態6: G→c* R 状態7: B→CB* R 状態8: C→CA* R 状態9: C→GA* R 状態10:A→P*TW (P,1) T→*l 状態11:P→n* R 状態12:A→PT*W (T,2) W→*l 状態13:T→l* R 状態14:A→PTW* R 状態15:W→l* R
【0057】上記の状態4は最も複雑な状態である。こ
の状態は、可約項(B→c*)および2つの核項(B→
C*BおよびC→C*A)を含む。シフト−縮約衝突
は、シフトをとることにより解決される。2つの異なる
核項は、いずれもCによって2−誘導されるものを探索
するため、シーク衝突を生じない。状態遷移行列は以下
の表2に示される。入力が受容されない(すなわち、核
項を持たない)状態は、その状態に対応する行がすべて
空であるため、行列には示さない。
の状態は、可約項(B→c*)および2つの核項(B→
C*BおよびC→C*A)を含む。シフト−縮約衝突
は、シフトをとることにより解決される。2つの異なる
核項は、いずれもCによって2−誘導されるものを探索
するため、シーク衝突を生じない。状態遷移行列は以下
の表2に示される。入力が受容されない(すなわち、核
項を持たない)状態は、その状態に対応する行がすべて
空であるため、行列には示さない。
【0058】[解析装置およびプロセスの流れ]図3
は、本発明を実現する解析装置のブロック図である。走
査された入力記号がブロック170に挿入され、入力要
素の半順序関係に基づいて関係リストが形成される。ブ
ロック170の情報から、プロセッサ100は、(2)
で定義されたプロセスに従って入力要素の全順序を生成
し、順序要素はブロック110に格納される。
は、本発明を実現する解析装置のブロック図である。走
査された入力記号がブロック170に挿入され、入力要
素の半順序関係に基づいて関係リストが形成される。ブ
ロック170の情報から、プロセッサ100は、(2)
で定義されたプロセスに従って入力要素の全順序を生成
し、順序要素はブロック110に格納される。
【0059】コントロールブロック120は、順序記号
および関係リストにアクセスすることが可能であり、利
用可能な情報および事前に知られている文法に基づい
て、ブロック120は誘導リストを生成し、誘導リスト
はブロック130に格納される。コントロール120
は、スタック140および状態遷移行列記憶装置150
とも対話する。動作時には、以下で詳細に説明するよう
に、コントロール120は、スタック140、ブロック
150の状態遷移行列、ブロック170の関係リストお
よびブロック130の誘導リストを使用して、スタック
内の情報を縮約すべきかどうか、または、ブロック11
0の要素の順序集合中で特定の型の要素を検索すべきか
どうか、判定する。
および関係リストにアクセスすることが可能であり、利
用可能な情報および事前に知られている文法に基づい
て、ブロック120は誘導リストを生成し、誘導リスト
はブロック130に格納される。コントロール120
は、スタック140および状態遷移行列記憶装置150
とも対話する。動作時には、以下で詳細に説明するよう
に、コントロール120は、スタック140、ブロック
150の状態遷移行列、ブロック170の関係リストお
よびブロック130の誘導リストを使用して、スタック
内の情報を縮約すべきかどうか、または、ブロック11
0の要素の順序集合中で特定の型の要素を検索すべきか
どうか、判定する。
【0060】そのような要素が発見された場合、それは
基本的にブロック110からスタック140へ転送され
る。縮約が実行された場合でも、新たな要素が検索され
て選択された場合でも、その結果、新たな情報の組がス
タック140にプッシュされる。プロセスは、エラー
(これは、文法が満たされない場合に発生する)がなけ
れば、ブロック110に格納された要素の全集合がブロ
ック110からスタック140へ転送されてプロセスが
終了するまで、反復する。
基本的にブロック110からスタック140へ転送され
る。縮約が実行された場合でも、新たな要素が検索され
て選択された場合でも、その結果、新たな情報の組がス
タック140にプッシュされる。プロセスは、エラー
(これは、文法が満たされない場合に発生する)がなけ
れば、ブロック110に格納された要素の全集合がブロ
ック110からスタック140へ転送されてプロセスが
終了するまで、反復する。
【0061】図4は、解析プロセスの流れ図である。こ
れは、ブロック190から開始する。ブロック190で
は、文法に基づいて、FSMの状態が決定される。ま
た、このブロックでは、関係リストおよび誘導リストが
初期状態で設定される。次に、ブロック180で、全順
序が、説明した方法に従って、入力記号の与えられた集
合に対して設定される。
れは、ブロック190から開始する。ブロック190で
は、文法に基づいて、FSMの状態が決定される。ま
た、このブロックでは、関係リストおよび誘導リストが
初期状態で設定される。次に、ブロック180で、全順
序が、説明した方法に従って、入力記号の与えられた集
合に対して設定される。
【0062】実際の解析はブロック200から始まる。
ブロック200では、有限状態マシン(ブロック14
0、150、160および170をもつコントロールブ
ロック120)は状態0にある。有限状態マシンを状態
0に置く指令は、初めにスタック140に組「::0」
を置くことによって実行される。FSMの状態を表すの
は、組の第3フィールドの0である(「::0」は、ス
タック上にプッシュされた最新の組であるため、スタッ
クの最上部にある)。
ブロック200では、有限状態マシン(ブロック14
0、150、160および170をもつコントロールブ
ロック120)は状態0にある。有限状態マシンを状態
0に置く指令は、初めにスタック140に組「::0」
を置くことによって実行される。FSMの状態を表すの
は、組の第3フィールドの0である(「::0」は、ス
タック上にプッシュされた最新の組であるため、スタッ
クの最上部にある)。
【0063】生成項ブロック(160)は、状態0のす
べての判断項に対して読み出され、「第1シーク」判断
項が発見される。これは、実際、ブロック110の順序
入力中の第1エントリ(主要素)のシークを指定する。
ブロック201で、インデックス変数iが1にセットさ
れ、解析はブロック202に進む。ブロック202で
は、現状態の第1判断項(i=1)が、その状態に対す
るブロック160内の他の判断項の中から選択される。
べての判断項に対して読み出され、「第1シーク」判断
項が発見される。これは、実際、ブロック110の順序
入力中の第1エントリ(主要素)のシークを指定する。
ブロック201で、インデックス変数iが1にセットさ
れ、解析はブロック202に進む。ブロック202で
は、現状態の第1判断項(i=1)が、その状態に対す
るブロック160内の他の判断項の中から選択される。
【0064】これは、核項または縮約を表す項であるこ
とがある。有限状態マシンのいくつかの状態はいくつか
のこのような項を有する。状態がM個の判断項を有し、
iの値がM+1に達した場合、ブロック202はエラー
を宣言する。その他の場合、解析はブロック203に進
み、判断項の性質が判定される。判断項が縮約を要求し
ていると判定された場合、解析はブロック204に進
む。
とがある。有限状態マシンのいくつかの状態はいくつか
のこのような項を有する。状態がM個の判断項を有し、
iの値がM+1に達した場合、ブロック202はエラー
を宣言する。その他の場合、解析はブロック203に進
み、判断項の性質が判定される。判断項が縮約を要求し
ていると判定された場合、解析はブロック204に進
む。
【0065】組がスタック140からポップされ、解析
はブロック205に進み、ポップされた組が、選択され
た判断項によって期待されるものと比較される。ポップ
された組が妥当である場合、判断ブロック206は、さ
らに組をスタックからポップする必要があるかどうかを
判定する。必要がある場合、制御はブロック204に戻
る。ブロック205で、ポップされた組が妥当でないと
判定された場合、ブロック207で、ポップされたすべ
ての組はスタック140にプッシュされ、ブロック20
8でiの値が1だけ増加され、制御はブロック202に
戻る。
はブロック205に進み、ポップされた組が、選択され
た判断項によって期待されるものと比較される。ポップ
された組が妥当である場合、判断ブロック206は、さ
らに組をスタックからポップする必要があるかどうかを
判定する。必要がある場合、制御はブロック204に戻
る。ブロック205で、ポップされた組が妥当でないと
判定された場合、ブロック207で、ポップされたすべ
ての組はスタック140にプッシュされ、ブロック20
8でiの値が1だけ増加され、制御はブロック202に
戻る。
【0066】ブロック206で、すべての必要な組がポ
ップされていると判定された場合、解析はブロック20
9に進み、選択された判断項によって縮約が実行され
る。ブロック209はまた、状態遷移行列ブロック15
0から導出される情報に従って新たな組を生成する。ブ
ロック210で、ブロック170の関係リストおよびブ
ロック130の誘導リストが補充され、制御はブロック
211に移る。ブロック211は、ブロック209で生
成された組を格納し、それによって有限状態マシンは次
の状態に進む。ブロック211に続いて、ブロック21
6は、有限状態マシンが状態1に到達したかどうかを判
定する。到達した場合、プロセスは終了する。到達しな
い場合、制御はブロック201に戻る。
ップされていると判定された場合、解析はブロック20
9に進み、選択された判断項によって縮約が実行され
る。ブロック209はまた、状態遷移行列ブロック15
0から導出される情報に従って新たな組を生成する。ブ
ロック210で、ブロック170の関係リストおよびブ
ロック130の誘導リストが補充され、制御はブロック
211に移る。ブロック211は、ブロック209で生
成された組を格納し、それによって有限状態マシンは次
の状態に進む。ブロック211に続いて、ブロック21
6は、有限状態マシンが状態1に到達したかどうかを判
定する。到達した場合、プロセスは終了する。到達しな
い場合、制御はブロック201に戻る。
【0067】ブロック203で、ブロック202で選択
された判断項がシーク項であると判定された場合、ブロ
ック212で、誘導リスト130が参照され、誘導リス
トから導出される情報に基づいて、ブロック110内の
入力情報が順に検索される。検索条件に一致する第1要
素が、ブロック213によって判定され、ブロック21
4によってブロック110から削除される。ブロック2
15で、新たに受容された要素に対する組が、状態遷移
行列ブロック150から導出される情報を使用して生成
され、制御はブロック211に移る。
された判断項がシーク項であると判定された場合、ブロ
ック212で、誘導リスト130が参照され、誘導リス
トから導出される情報に基づいて、ブロック110内の
入力情報が順に検索される。検索条件に一致する第1要
素が、ブロック213によって判定され、ブロック21
4によってブロック110から削除される。ブロック2
15で、新たに受容された要素に対する組が、状態遷移
行列ブロック150から導出される情報を使用して生成
され、制御はブロック211に移る。
【0068】
【発明の効果】以上述べたごとく、本発明によれば、コ
ンピュータの画面に表示された要素間の論理的関係を解
析するなどの際に有用となる、多次元ストリングを解析
する一般的かつ最善の方法が与えられる。
ンピュータの画面に表示された要素間の論理的関係を解
析するなどの際に有用となる、多次元ストリングを解析
する一般的かつ最善の方法が与えられる。
【図1】有限状態マシンが与えられた文を解析する際
の、マシン内のスタックの内容を例示する図である。
の、マシン内のスタックの内容を例示する図である。
【図2】ACMジャーナルの表紙の図である。
【図3】本発明の原理によるパーサのブロック図であ
る。
る。
【図4】本発明の解析プロセスを説明する流れ図であ
る。
る。
【符号の説明】 100 プロセッサ 110 全順序リスト 120 コントロール 130 誘導リスト 140 スタック 150 状態遷移行列 160 生成項 170 関係リスト
【表1】
【表2】
Claims (8)
- 【請求項1】 記号の集合から記号を取得するステップ
(212)と、取得した記号を以前に取得した記号と組
み合わせることが文法によって要求されている場合にそ
の組合せをするステップ(209、215)からなる、
文法に従って記号の集合を解析する方法において、この
方法が、 文法に基づいて、プロセステーブルを作成するステップ
(190)と、 記号の集合が順序づけられていない場合、記号の順序集
合を形成するために記号の集合を順序づけるステップ
(180)と、 文法に基づいて、受容可能記号の特性を決定するステッ
プ(190)と、 前記取得ステップの一部として、第1の受容可能記号に
対し、記号の順序集合を検索するステップ(212、2
13)とからなることを特徴とする記号集合の解析方
法。 - 【請求項2】 特性を決定するステップが、 順序集合中の記号と、他の記号の関係を生成するステッ
プ(190、210)と、 プロセステーブルから、受容可能記号型の記号との間で
有するべき関係を決定するステップ(212)とからな
ることを特徴とする請求項1の方法。 - 【請求項3】 取得ステップの一部である検索ステップ
が、順序集合中を、決定された受容可能記号の関係に一
致する生成された関係によって特徴づけられる記号を順
に検索することを特徴とする請求項2の方法。 - 【請求項4】 組合せステップが、 文法に基づき、検索ステップおよび取得ステップの後
に、検索ステップによって発見された記号が以前に格納
された記号と組み合わせられるべきか否かを確認するス
テップ(203)と、 確認ステップによって要求される場合に、新たな記号を
形成するように、検索ステップによって発見された記号
を以前に格納された記号と組み合わせ、新たな記号を格
納するステップ(204、205、206、209、2
11)と、 組合せステップが確認ステップによって要求されない場
合に、検索ステップによって発見された記号を格納する
ステップ(211)とからなることを特徴とする請求項
1の方法。 - 【請求項5】 受容可能記号の特性を決定するステッ
プ、記号の順序集合を検索するステップ、取得ステッ
プ、検索された記号が組み合わせられるべきか否かを確
認するステップ、要求された場合に、発見された受容可
能記号を新たな記号を形成するように組み合わせ、新た
な記号を格納するステップ、および、要求されない場合
に組合せなしに発見された受容可能記号を格納するステ
ップが、全順序集合中の全記号が格納されるまで、反復
して実行されることを特徴とする請求項4の方法。 - 【請求項6】 文法に基づいて、プロセス状態の集合を
生成するステップ(190)と、 前記集合の半順序に基づいて、半順序集合中の各記号
と、半順序集合中の他の記号およびスタック内の記号と
の関係を生成するステップ(190)と、 前記記号の集合が順序づけられていない場合に、記号の
順序集合を形成するために、半順序づけされた記号の集
合を順序づけるステップ(180)と、 現プロセス状態に基づいて、受容可能記号の特性を決定
するステップ(212)と、 記号の順序集合中で、第1の受容可能記号を検索するス
テップ(212)と、 検索ステップによって発見された記号をスタックに格納
するステップ(211)と、 スタックに格納された記号に基づいて、新たな現プロセ
ス状態を評価するステップ(211)と、 受容可能記号の特性を決定するステップに復帰するステ
ップ(216)とからなることを特徴とする、文法の指
定に従って半順序記号の集合を解析する方法。 - 【請求項7】 格納ステップが、組合せが文法によって
要求される場合に、検索ステップによって発見された記
号を、スタックに格納された他の記号と組み合わせるス
テップと、前記関係を補充するステップ(209、21
0)からなることを特徴とする請求項6の方法。 - 【請求項8】 文法の指定に従って、半順序づけされた
記号の集合を解析する方法において、 前記集合の半順序に基づいて、半順序集合中の各記号
と、半順序集合中の他の記号およびスタック内の記号と
の関係を生成するステップ(190)と、 文法に基づいて、プロセス状態の集合を生成し、各プロ
セス状態に対し、受容可能記号の特性を定義する項を生
成するステップ(190)と、 前記記号の集合が順序づけられていない場合に、記号の
順序集合を形成するために、半順序づけされた記号の集
合を順序づけるステップ(190)と、 現プロセス状態に基づいて、前記プロセス状態に属する
項を選択するステップ(202)と、 選択された項が「シーク」または「縮約」のいずれを表
すかを判定するステップ(203)と、 選択された項が「シーク」を表すと判定された場合、 a)前記関係を参照して、順序集合中で受容可能記号を
検索するステップ(213)と、 b)検索ステップが失敗した場合、前記プロセス状態に
属する他の項を選択するために、項を選択するステップ
に復帰するステップと、 順序集合から、検索ステップによって発見された受容可
能記号を除去するステップ(214)と、 検索ステップによって発見された記号を、新たなプロセ
ス状態と関係づける組を形成するステップ(215)
と、 選択された項が「縮約」を表すと判定された場合、 スタックに格納された情報に基づいて、縮約が可能か否
かを判定するステップ(204、205、および20
6)と、 縮約が可能か否かを判定するステップが縮約は不可能で
あると判定した場合、前記プロセス状態に属する他の項
を選択するために、項を選択するステップに復帰するス
テップ(217)と、 選択された記号をスタックに格納された記号と組み合わ
せるステップと、 組合せステップによって作成された組み合わせられた記
号を、新たなプロセス状態と関係づける組を形成するス
テップ(215)と、 関係の集合を補充するステップと、 さらに、 スタックに前記組を格納し、前記新たなプロセス状態を
現状態に割り当てるステップ(211)と、 項を選択するステップに復帰するステップとからなるこ
とを特徴とする記号集合の解析方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US720318 | 1991-06-25 | ||
US07/720,318 US5365430A (en) | 1991-06-25 | 1991-06-25 | Method for parsing images |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0765003A true JPH0765003A (ja) | 1995-03-10 |
Family
ID=24893552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4188871A Pending JPH0765003A (ja) | 1991-06-25 | 1992-06-24 | 記号集合の解析方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5365430A (ja) |
EP (1) | EP0520684A3 (ja) |
JP (1) | JPH0765003A (ja) |
CA (1) | CA2071036A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499329A (en) * | 1992-04-30 | 1996-03-12 | Ricoh Company, Ltd. | Method and system to handle context of interpretation in a document processing language |
JPH07121733A (ja) * | 1993-10-20 | 1995-05-12 | Fuji Xerox Co Ltd | 文書画像処理装置 |
US8640017B1 (en) * | 2000-05-02 | 2014-01-28 | International Business Machines Corporation | Bootstrapping in information access systems |
US8478732B1 (en) | 2000-05-02 | 2013-07-02 | International Business Machines Corporation | Database aliasing in information access system |
US6704728B1 (en) * | 2000-05-02 | 2004-03-09 | Iphase.Com, Inc. | Accessing information from a collection of data |
US6711561B1 (en) | 2000-05-02 | 2004-03-23 | Iphrase.Com, Inc. | Prose feedback in information access system |
US6408277B1 (en) | 2000-06-21 | 2002-06-18 | Banter Limited | System and method for automatic task prioritization |
US8290768B1 (en) | 2000-06-21 | 2012-10-16 | International Business Machines Corporation | System and method for determining a set of attributes based on content of communications |
US9699129B1 (en) | 2000-06-21 | 2017-07-04 | International Business Machines Corporation | System and method for increasing email productivity |
US7644057B2 (en) | 2001-01-03 | 2010-01-05 | International Business Machines Corporation | System and method for electronic communication management |
US7343372B2 (en) | 2002-02-22 | 2008-03-11 | International Business Machines Corporation | Direct navigation for information retrieval |
US8495002B2 (en) | 2003-05-06 | 2013-07-23 | International Business Machines Corporation | Software tool for training and testing a knowledge base |
US20050187913A1 (en) | 2003-05-06 | 2005-08-25 | Yoram Nelken | Web-based customer service interface |
US10679230B2 (en) | 2009-04-07 | 2020-06-09 | The Boeing Company | Associative memory-based project management system |
US9501455B2 (en) | 2011-06-30 | 2016-11-22 | The Boeing Company | Systems and methods for processing data |
US8521769B2 (en) | 2011-07-25 | 2013-08-27 | The Boeing Company | Locating ambiguities in data |
US8527695B2 (en) | 2011-07-29 | 2013-09-03 | The Boeing Company | System for updating an associative memory |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6225324A (ja) * | 1985-07-26 | 1987-02-03 | Hitachi Ltd | 文書理解方式 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4688195A (en) * | 1983-01-28 | 1987-08-18 | Texas Instruments Incorporated | Natural-language interface generating system |
US4984178A (en) * | 1989-02-21 | 1991-01-08 | Texas Instruments Incorporated | Chart parser for stochastic unification grammar |
-
1991
- 1991-06-25 US US07/720,318 patent/US5365430A/en not_active Expired - Lifetime
-
1992
- 1992-06-11 CA CA002071036A patent/CA2071036A1/en not_active Abandoned
- 1992-06-18 EP EP19920305582 patent/EP0520684A3/en not_active Withdrawn
- 1992-06-24 JP JP4188871A patent/JPH0765003A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6225324A (ja) * | 1985-07-26 | 1987-02-03 | Hitachi Ltd | 文書理解方式 |
Also Published As
Publication number | Publication date |
---|---|
US5365430A (en) | 1994-11-15 |
EP0520684A2 (en) | 1992-12-30 |
EP0520684A3 (en) | 1993-10-20 |
CA2071036A1 (en) | 1992-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0765003A (ja) | 記号集合の解析方法 | |
EP0911744B1 (en) | Method for processing digital textdata | |
JP4413286B2 (ja) | エッジデータ構造を統一する方法 | |
AU713572B2 (en) | System and method for portable document indexing using N-gram word decomposition | |
EP0196064B1 (en) | System for information storage and retrieval | |
US20090024384A1 (en) | Data processing method and system, program for realizing the method, and computer readable storage medium storing the program | |
US7236925B2 (en) | Left-corner chart parsing | |
JPH11110416A (ja) | データベースからドキュメントを検索するための方法および装置 | |
EP0818010A1 (en) | Method and apparatus for improved information storage and retrieval system | |
WO2000025235A1 (en) | Method and apparatus for a physical storage architecture having an improved information storage and retrieval system for a shared file environment | |
JPH077408B2 (ja) | 強調特性変更方法及びシステム | |
US5563997A (en) | Method and apparatus for sorting records into a list box in a graphic user interface | |
JPH0567144A (ja) | 前編集支援方法およびその装置 | |
EP1204053A1 (en) | Method and apparatus for handling a plurality of test modes for a computer readable document | |
EP0118187B1 (en) | Menu-based natural language understanding system | |
JPS6170660A (ja) | 機械翻訳システムにおける多義表示・選択方法 | |
US20060188162A1 (en) | Common interface for ink trees | |
WO1997011434A1 (fr) | Procede de traitement de bordereaux | |
JP2881891B2 (ja) | 階層形式をもつ電子化マニユアルの処理装置 | |
Toselli et al. | Large-scale Systems and Applications | |
JPH01214963A (ja) | 辞書引き装置 | |
EP1507217A1 (en) | Method of analyzing genome | |
JPH04281558A (ja) | 文書検索方法および装置 | |
JPH09305605A (ja) | 文書処理システム | |
EP1507218A1 (en) | Method of analyzing genome |