JP4343984B2 - Information processing apparatus, information processing method, program, data structure, and medium - Google Patents
Information processing apparatus, information processing method, program, data structure, and medium Download PDFInfo
- Publication number
- JP4343984B2 JP4343984B2 JP2007556939A JP2007556939A JP4343984B2 JP 4343984 B2 JP4343984 B2 JP 4343984B2 JP 2007556939 A JP2007556939 A JP 2007556939A JP 2007556939 A JP2007556939 A JP 2007556939A JP 4343984 B2 JP4343984 B2 JP 4343984B2
- Authority
- JP
- Japan
- Prior art keywords
- factor
- information
- term
- operator
- terms
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、事物をコンピュータで処理可能な所定の表現形式を用いて表現し、コンピュータの記憶装置に記憶し、コンピュータで処理することで、その事物を管理する情報処理技術に関する。 The present invention relates to an information processing technique for expressing an object using a predetermined expression format that can be processed by a computer, storing the object in a storage device of the computer, and processing the object by processing the computer.
ソフトウエアの開発プロセスは、要求分析、システム設計、実装、テスト、運用、及びメンテナンスの各段階により構成される。そして、ソフトウエア開発の最初のプロセスである、要求分析は特に重要である。なぜなら、最初の要求分析が不十分であると、それ以降のシステム設計、実装段階において、顧客の要求が正しく反映されていないなどの支障をきたすからである。例えばシステムのテスト段階で不具合が発見された場合においても、再度プログラムを修正する必要が生じる。また、大規模な修正が必要な場合には、システム設計を初めからやり直すなどの必要も生じる。しかし、プログラムの修正やシステム設計を最初からやり直しには、時間と労力がかる。その結果、コストが増大するといった問題も生ずる。また、たとえ最初の要求分析が十分であった場合においても、事業活動等様々な変化に対応させるためにはその後のメンテナンスが不可欠であるが、メンテナンスにも時間と労力がかかり、結果としてコストの増大を招くといった問題を生じている。 The software development process consists of requirements analysis, system design, implementation, testing, operation, and maintenance stages. And requirements analysis, the first process of software development, is particularly important. This is because if the initial requirements analysis is inadequate, the customer's requirements are not correctly reflected in the subsequent system design and implementation stages. For example, even if a problem is found during the system testing stage, it is necessary to correct the program again. In addition, when a large-scale correction is necessary, the system design needs to be restarted from the beginning. However, it takes time and effort to redo the program modification and system design from the beginning. As a result, there is a problem that the cost increases. Even if the initial requirements analysis is sufficient, subsequent maintenance is indispensable to respond to various changes such as business activities, but maintenance also takes time and effort, resulting in cost savings. The problem of causing an increase has arisen.
ソフトウエアの開発の一例として、例えばデータベースシステムの開発が例示される。データベースシステムの開発とは、顧客の業務内容をヒアリングして、管理すべきデータ項目を洗い出し、それらの項目を関連付け、利用者が検索しやすいようなビューを設計し、顧客ニーズに合ったデータベースを構築することである。優れたデータベースを構築するためには、概念設計の段階からデータ構造を解析しておく必要がある。データとして管理すべき実体及び属性、実体間の関連を洗い出し、正確に分析することが重要になる。 An example of software development is the development of a database system, for example. Database system development refers to interviewing customers' work contents, identifying data items to be managed, associating those items, designing a view that is easy for users to search, and creating a database that meets customer needs. Is to build. To construct an excellent database, it is necessary to analyze the data structure from the conceptual design stage. It is important to identify and accurately analyze the entities and attributes that should be managed as data, and the relationships between entities.
このような観点から開発された既存のデータベースのデータモデルとして、正規化表構造によるリレーショナルモデルや、ノードに属性を持つツリー構造で表現されるオブジェクト指向モデルが知られている。しかし、例えばリレーショナルモデルでは、関係をどのように定義するかは設計者の自由であるため、実装ごとに異なるシステムが生成されることになる。したがって、リレーショナルモデルに基づいて実装された複数のシステムを統合するためには、統合すべき構成要素の組み合わせ数に応じた作業工程が必要となり、システム統合に相当な時間と労力を費やす必要がるといった問題を生じていた。 As a data model of an existing database developed from such a viewpoint, a relational model based on a normalized table structure and an object-oriented model expressed by a tree structure having attributes at nodes are known. However, in the relational model, for example, how to define the relationship is up to the designer, so a different system is generated for each implementation. Therefore, in order to integrate multiple systems implemented based on the relational model, a work process corresponding to the number of combinations of components to be integrated is required, and it is necessary to spend considerable time and labor for system integration. The problem was caused.
このような事情に鑑み開発されたソフトウエア開発支援装置として、本発明者の一人は、情報を階層化して表現する技術を提案した。この技術では、階層化された情報の各階層においてソフトウエア部品集合による操作が可能に構成されたモジュラ化されたデータ構造が提供される。そして、前記ソフトウエア部品集合が満たすべき仕様を前記階層ごとにインクリメンタルに詳細化することにより、与えられた要求仕様に合致するソフトウエアを前記ソフトウエア部品集合から自動生成する技術を開発した(例えば、特許文献1参照)。
上述したリレーショナルモデルやオブジェクト指向モデルでは、業務のデータモデルをサポートしていなので、個々のシステムでアプリケーションプログラムの開発が必要となる。さらに、一旦アプリケーションプログラムが開発された後であっても、リレーショナルモデルでは、システム開発時に予定されていない属性をデータベースに入力する場合には、新たな属性に対応可能なアプリケーションソフトを開発する必要が生じる。 Since the relational model and the object-oriented model described above support the business data model, it is necessary to develop an application program in each system. Furthermore, even after an application program has been developed, in the relational model, it is necessary to develop application software that can handle new attributes when attributes that are not planned at the time of system development are input to the database. Arise.
また、オブジェクト指向モデルは、オブジェクトの属性を細分化する有向グラフの一部としてのツリー構造については対応可能である。このツリー構造は、典型的には、有向グラフの根本側、すなわち、ツリー構造の上位には、より抽象化された概念、あるいは、共通化された概念が定義され、グラフの先端側、すなわち、ツリー構造の下位には、それぞれの上位概念を具体化した個別の概念が定義される。しかし、オブジェクト指向モデルは、逆ツリー構造については対応できない。 In addition, the object-oriented model can cope with a tree structure as a part of a directed graph that subdivides the attributes of an object. This tree structure typically has a more abstract concept or a common concept defined at the root of the directed graph, i.e., above the tree structure, and the top of the graph, i.e. the tree. In the lower part of the structure, individual concepts that embody each superordinate concept are defined. However, the object-oriented model cannot cope with an inverted tree structure.
ここで、逆ツリー構造とは、例えば、階層構造の上位には、基本的な概念が定義され、階層構造の下位には、複数の基本概念を組み合わせた概念が定義される。なお、上述したソフトウエア開発支援装置によれば、ソフトウエア開発の効率化を図ることが可能となることが示された。しかし、開発コスト、メンテナンスコストを削減でき、業務モデルを統一的に表現できるデータモデル、およびそのようなデータモデルを利用したさらに効率的なシステム開発技術、情報処理技術が求められていた。 Here, with the inverted tree structure, for example, a basic concept is defined above the hierarchical structure, and a concept combining a plurality of basic concepts is defined below the hierarchical structure. In addition, according to the software development support apparatus described above, it has been shown that it is possible to improve the efficiency of software development. However, there has been a demand for a data model that can reduce development costs and maintenance costs and that can uniformly express a business model, and more efficient system development technology and information processing technology using such a data model.
本発明は、上記問題に鑑みてなされたものであり、業務モデルを統一的に表現し、記憶し、処理することで、異なるシステム間においても、情報の一貫性を図るとともに新たな業務モデルへの適用、新たな管理対象となる情報項目、種類の追加・変更・削除、あるいは新たな処理機能の追加、変更等が可能なシステム開発技術、および情報処理技術を提供することを課題とする。 The present invention has been made in view of the above-mentioned problems. By uniformly expressing, storing, and processing a business model, information consistency is achieved between different systems and a new business model is achieved. It is an object of the present invention to provide a system development technique and an information processing technique that can apply information, add / change / delete information items to be managed, and add / change new processing functions.
本発明は前記課題を解決するために、以下の手段を採用した。すなわち、本発明は、識別子と、順序を持つ因子の列として複数の識別子を結合する積演算子と、識別子および因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述される対象情報を記憶する記憶部と、対象情報を操作する処理部と、情報の入力を受け付ける入力部を接続可能なインターフェースと、情報を出力する出力部を接続可能なインターフェースと、を備える情報処理装置である。そして、本発明では、処理部は、インターフェースに接続された入力部から入力される情報を識別子、因子、項および項の和である式のいずれか1以上として対象情報に設定し、記憶部に記憶させる入力処理部と、記憶部に記憶されている対象情報を参照し、参照した対象情報中の識別子、因子、項および式のいずれか1以上が入力部から入力される情報と所定の関係にあるときに、対象情報を前記インターフェースに接続された出力部に出力する出力処理部と、を有する。The present invention employs the following means in order to solve the above problems. That is, the present invention forms a combination of terms from either or both of an identifier, a product operator that combines a plurality of identifiers as a sequence of factors with an order, and a plurality of identifiers combined as a sequence of identifiers and factors. A storage unit that stores the target information described by the sum operator, a processing unit that operates the target information, an interface that can connect an input unit that receives input of information, and an output unit that outputs information An information processing apparatus including a possible interface. In the present invention, the processing unit sets the information input from the input unit connected to the interface as target information as any one or more of an identifier, a factor, a term, and a sum of terms, and stores the information in the storage unit. The input processing unit to be stored and the target information stored in the storage unit are referred to, and a predetermined relationship with information input from the input unit at least one of an identifier, a factor, a term, and an expression in the referenced target information And an output processing unit that outputs the target information to an output unit connected to the interface.
本発明によれば、情報処理装置に、入力部が入力されたときに、入力される情報が、識別子、因子、項および式のいずれか1以上として対象情報に設定され、記憶部に記憶される。また、インターフェースに出力部が接続され、記憶手段にて参照した対象情報中の識別子、因子、項および式のいずれか1以上が入力部から入力される情報と所定の関係にあるときに、出力部から、対象情報が出力される。 According to the present invention, when an input unit is input to the information processing apparatus, information to be input is set as target information as one or more of an identifier, a factor, a term, and an expression, and is stored in the storage unit. The An output is connected when an output unit is connected to the interface and any one or more of the identifier, factor, term, and expression in the target information referenced by the storage means is in a predetermined relationship with the information input from the input unit. The target information is output from the section.
このように、本発明によれば、識別子および各種演算子を組み合わせた表現形式で入力部から入力される対象情報を記述し、記憶し、さらには、参照し、出力部から出力する機能が実現される。 As described above, according to the present invention, the function of describing, storing, referring to, and outputting from the output unit the target information input from the input unit in an expression format combining the identifier and various operators is realized. Is done.
本発明は、以上のような処理をコンピュータが実行する方法であってもよい。また、本発明は、コンピュータに以上のような処理を実行させるプログラムであってもよい。また、そのようなプログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。 The present invention may be a method in which a computer executes the above processing. Further, the present invention may be a program that causes a computer to execute the above processing. Moreover, the recording medium which can read the computer which recorded such a program may be sufficient.
また、本発明は、上記対象情報を記述するときのデータ構造であってもよい。また、そのようなデータ構造を記録したコンピュータが読み取り可能な記録媒体であってもよい。このようなデータ構造にしたがって対象情報を記憶し、あるいは記録することにより、コンピュータは、識別子および各種演算子を組み合わせた表現形式で入力部から入力される対象情報を記述し、記憶し、さらには、参照し、出力部から出力する機能を実現する。 Further, the present invention may be a data structure for describing the target information. Moreover, the recording medium which can read the computer which recorded such a data structure may be sufficient. By storing or recording the target information according to such a data structure, the computer describes and stores the target information input from the input unit in an expression format that combines an identifier and various operators, and further, The function to refer to and output from the output unit is realized.
本発明に係る情報処理装置によれば、業務モデルを統一的に表現して処理、すなわち事物を所定の表現形式を用いて表現して処理することで、異なるシステム間においても、情報の一貫性を図るとともに新たな業務モデルへの適用、新たな管理対象となる情報項目、種類の追加・変更・削除、あるいは新たな処理機能の追加、変更等が可能なシステム開発技術、および情報処理技術を提供することができる。 According to the information processing apparatus according to the present invention, it is possible to consistently express information even between different systems by uniformly expressing a business model and processing, that is, expressing and processing a thing using a predetermined expression format. System development technology and information processing technology that can be applied to new business models, information items to be managed, addition / change / deletion of types, or addition / change of new processing functions, etc. Can be provided.
11・・・入力部
12・・・メモリ
13・・・CPU
14・・・出力部
21・・・ホモトピーレベル
22・・・集合レベル
23・・・トポロジー空間レベル
24・・・接着空間レベル
25・・・セル空間レベル11 ...
14 ...
以下、図面を参照して、本発明の実施形態に係る情報処理装置を説明する。 Hereinafter, an information processing apparatus according to an embodiment of the present invention will be described with reference to the drawings.
《システムの骨子》
本情報処理装置は、情報を集合レベル、トポロジー空間レベル、接着空間レベル、およびセル空間レベルというデータ構造の複雑さの異なるレベルで表現する。データ構造が複雑になればなるほど、表現される情報と情報との間の関連付け、あるいは、情報と情報との拘束が増加する。<System outline>
This information processing apparatus expresses information at different levels of data structure complexity such as an aggregation level, a topology space level, an adhesion space level, and a cell space level. The more complex the data structure, the greater the association between the information represented and the information or the constraint between the information and the information.
例えば、集合レベルは、情報が項(以下、要素ともいう)を組み合わせた集合情報として記述される。それぞれの集合情報は、集合IDで識別される。また、トポロジー空間レベルでは、項または集合を組み合わせたトポロジー空間情報として情報が記述される。それぞれのトポロジー空間情報は、トポロジーIDで識別される。 For example, the set level is described as set information in which information is combined with terms (hereinafter also referred to as elements). Each set information is identified by a set ID. At the topology space level, information is described as topology space information that combines terms or sets. Each topology space information is identified by a topology ID.
すなわち、集合レベルは、単なる項の組み合わせであるのに対し、トポロジー空間レベルは、集合情報の組み合わせを含む点で、より複雑となっている。本実施形態では、この場合に、集合レベルは、トポロジー空間レベルよりも抽象度が高い、ともいう。ただし、トポロジー空間情報は、単一の集合情報をも含む。すなわち、トポロジー空間レベルは、集合レベルの性質をそのまま有している。本実施形態では、この意味で、トポロジー空間レベルは、集合レベルの特性を継承している、という。 That is, the set level is a simple combination of terms, whereas the topology space level is more complicated in that it includes a combination of set information. In this embodiment, in this case, the set level is also said to have a higher degree of abstraction than the topology space level. However, the topology space information includes single set information. That is, the topology space level has the property of the set level as it is. In this embodiment, in this sense, the topology space level inherits the characteristics of the set level.
接着空間レベルは、集合情報またはトポロジー空間情報のいずれか2つ以上(以下、被接着情報)を接着した情報を含む。接着とは、本実施形態にて提案する概念であり、2つの被接着情報のそれぞれのデータ構造を維持した上で、被接着情報を互いに結合する機能である。接着においては、2つの被接着情報のそれぞれに含まれる情報で、互い関係付けられる情報が指定される。そして、その関係付けられた情報同士を介して、2つの被接着情報が結合される。接着は、例えば、人の行為である伝票にメモを張り付ける行為をコンピュータ上で実現したものとなる。すなわち、伝票ID、伝票に含まれる項目、および伝票内の位置情報からなるデータ構造と、メモIDおよびメモ内容である文字列情報からなるデータ構造があったときに、伝票上の位置情報と、メモIDとを関連づけ、接着演算を実行することにより、伝票上の指定された位置にメモが添付された状態をコンピュータ上で表現できる。接着された2つの被接着情報は、また、分離することもできる。ただし、接着空間の情報は、それぞれの被接着情報の特性、すなわち、集合レベル、あるいは、トポロジー空間レベルの特性をそのまま有している。そのため、接着空間の情報は、これらのレベルを継承しているという。 The adhesion space level includes information obtained by adhering any two or more of collective information or topology space information (hereinafter, information to be bonded). Adhesion is a concept proposed in the present embodiment, and is a function of combining the pieces of adherend information with each other while maintaining the data structures of the two pieces of adherend information. In bonding, information to be associated with each other is specified by information included in each of the two pieces of bonded information. Then, the two pieces of adherend information are combined through the associated information. Adhesion is realized, for example, on a computer by attaching a memo to a slip, which is a human action. That is, when there is a data structure consisting of a slip ID, items included in the slip, and position information in the slip, and a data structure consisting of character string information that is a memo ID and memo contents, By associating the memo ID with each other and executing the adhesion calculation, a state where the memo is attached to the designated position on the slip can be expressed on the computer. The two pieces of information to be bonded can also be separated. However, the information on the bonding space has the characteristics of the information to be bonded, that is, the characteristics at the assembly level or the topology space level as they are. Therefore, it is said that the adhesive space information inherits these levels.
セル空間レベルとは、属性と値とを含むデータ構造が定義された情報であり、集合情報、トポロジー空間情報、および接着された情報をさらに複雑にしたものと言える。この点で、逆に、集合情報、トポロジー空間情報、および、これらが接着された情報は、セル空間の情報よりも抽象度が高いともいう。ただし、セル空間レベルの集合は、集合レベル、トポロジー空間レベル、および接着空間レベルの特性を有することができ、その意味で、これらのレベルを継承しているという。 The cell space level is information in which a data structure including attributes and values is defined, and it can be said that the set information, topology space information, and bonded information are further complicated. In this regard, conversely, the collective information, the topology space information, and the information obtained by bonding them are also said to have a higher level of abstraction than the cell space information. However, a set at the cell space level can have characteristics of a set level, a topology space level, and an adhesion space level, and in that sense, it is said to inherit these levels.
よってセル空間が定義される(つまり空間に属性,値の意味が付加される)セル空間レベルならば,一般的なトポロジー空間のレベルよりも抽象度が低いと見なされる.
本情報処理装置は、抽象度に応じた各レベルの所定の表現形式によって表現される情報が格納される記憶手段と、前記情報を処理する処理手段と、を備える。そして、前記記憶手段には、識別子と、順序を持つ因子の列として複数の識別子を結合する積演算子と、識別子および前記因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述される対象情報が記憶される。さらに、対象情報は、前記組み合わせ中の項の順序を維持して前記項の組み合わせを関係付けることによって因子または新たな項を構成する順序構成演算子と、前記組み合わせ中の項の順序を維持しないで前記項の組み合わせを関係付けることによって因子または新たな項を構成する集合因子構成演算子と、を含んでもよい。Therefore, if the cell space is defined (that is, the meaning of attributes and values is added to the space), the level of abstraction is considered lower than the level of the general topology space.
The information processing apparatus includes storage means for storing information expressed in a predetermined expression format at each level according to the degree of abstraction, and processing means for processing the information. The storage means includes an identifier, a product operator that combines a plurality of identifiers as a sequence of factors having an order, and one or both of the identifier and the plurality of identifiers combined as a sequence of factors. The target information described by the sum operator constituting the combination is stored. Further, the target information does not maintain the order of the terms in the combination and the order construct operator that forms a factor or a new term by maintaining the order of the terms in the combination and relating the combinations of the terms. And a set factor construction operator that constructs a factor or a new term by relating the combination of the terms.
以下、本情報処理装置の記憶手段に記憶され、本情報処理装置で処理される情報を対象情報という。対象情報は、識別子、因子、項(要素)、集合情報、トポロジー空間情報、接着された情報、セル空間の情報を含む。対象情報をオブジェクト情報とも呼ぶ。ただし、本実施形態でのオブジェクト情報は、いわゆるオブジェクト指向データベース、オブジェクト指向言語、オブジェクト指向設計等でいうオブジェクトとは、概念が異なる。そこで、以下では、もっぱらオブジェクト情報という代わりに、対象情報と呼ぶことにする。 Hereinafter, information stored in the storage unit of the information processing apparatus and processed by the information processing apparatus is referred to as target information. The target information includes an identifier, a factor, a term (element), set information, topology space information, bonded information, and cell space information. The target information is also called object information. However, the concept of the object information in the present embodiment is different from an object in what is called an object-oriented database, object-oriented language, object-oriented design, or the like. Therefore, in the following, it will be referred to as target information instead of exclusively object information.
また、本実施形態では、項の組み合わせから因子を構成する集合因子構成演算子及び順序構成演算子が使用される。集合因子構成演算子は、第一の括弧“()”により表現される。また、順序構成演算子は第二の括弧“{}”により表現される。 In the present embodiment, a set factor construction operator and an order construction operator that form factors from combinations of terms are used. The set factor construction operator is represented by the first parenthesis “()”. The order composition operator is expressed by the second parenthesis “{}”.
本発明によれば、対象情報を所定の表現形式のデータとして記憶手段に格納し、これに所定のプログラムに基づいて処理を実行することができる。その結果、異なる対象情報同士の情報の一貫性を図るとともに新たな様々な対象情報のデータベース化及び処理が可能な情報処理装置を提供することが可能となる。また、従来のリレーショナルモデルやオブジェクト指向モデルでは、対応できないデータに対応することができるシステムを開発することができる。 According to the present invention, target information can be stored in a storage unit as data in a predetermined expression format, and processing can be executed on the target information based on a predetermined program. As a result, it is possible to provide an information processing apparatus capable of ensuring consistency of information between different pieces of target information and creating a database and processing of various new pieces of target information. In addition, it is possible to develop a system that can handle data that cannot be handled by the conventional relational model or object-oriented model.
記憶手段は、抽象度に応じた各レベルの所定の表現形式によって表現される対象情報を例えばテキストファイルとして格納する。記憶手段は、前記対象情報を十分に格納できる容量を有するものであればよく、ハードディスク等がこれに該当する。対象情報とは、システム開発におけるデータベースを構成する全ての情報を含むものである。例えば既存のデータモデルの正規化表構造を構成するレコードの構成要素や正規化表構造では入力不可能なデータ構造も含む。正規化表構造では入力不可能な情報とは、例えば正規化表構造で表現されるようなデータがある場合に、これに付箋のような前記正規化表構造とは全く関連性のない、すなわち属性の定義のない対象情報を意味する。また、この対象情報は、本情報処理装置の処理を実行することによりその抽象度が変化することを特徴とする。すなわち、あるレベルで入力された対象情報は、本情報処理装置の処理が実行されることによりそのレベルが変化する。そして、そのレベルが変化しても対象情報は、変化前と同一の演算によって、取り扱うことができる。すなわち、対象情報は、抽象レベルが変化しても対象情報の性質には一貫性が保たれるので、同一の演算による操作が可能である。したがって、ある抽象度で格納された対象情報、すなわちデータは本情報処理装置の処理が実行されることにより様々なレベルに変化する。また、上述のように全く関連性のないデータも入力してこれを関連付けることが可能である。したがって、異なる抽象度のレベルにおいて、情報の性質の一貫性が保たれるとともに、新たな様々な事物を示す情報のデータベース化及びデータベース化された情報に対する演算処理が可能となる。 The storage means stores the target information expressed in a predetermined expression format at each level according to the abstraction level, for example, as a text file. The storage means only needs to have a capacity capable of sufficiently storing the target information, such as a hard disk. The target information includes all information constituting a database in system development. For example, it includes a record component constituting a normalization table structure of an existing data model and a data structure that cannot be input in the normalization table structure. Information that cannot be input in the normalization table structure is, for example, when there is data that can be expressed in the normalization table structure, which has no relation to the normalization table structure such as a sticky note, that is, It means target information without attribute definition. In addition, the degree of abstraction of the target information is changed by executing the processing of the information processing apparatus. In other words, the level of the target information input at a certain level changes as the processing of the information processing apparatus is executed. Even if the level changes, the target information can be handled by the same calculation as before the change. In other words, the object information can be operated by the same operation because the property of the object information is consistent even if the abstract level changes. Therefore, target information stored at a certain level of abstraction, that is, data, changes to various levels when the processing of the information processing apparatus is executed. In addition, as described above, it is possible to input data that are completely unrelated and associate them with each other. Therefore, the consistency of the properties of information is maintained at different levels of abstraction, and information indicating new various things can be made into a database and operation processing on the database information can be performed.
前記対象情報は、記号、識別子、第一の括弧及び第二の括弧により表現される因子と、前記因子の積によって表現される項と、前記項の和によって表現される式と、により構成することができる。式を構成する項、および項を構成する因子は、前記対象情報を構成する最小単位である識別子と、前記処理手段において1として処理される単位元εと、前記処理手段において0として処理される零元Φとにより構成することができる。前記第一の括弧は、()により表現することができる。また、前記第二の括弧は{}により表現することができる。このように本発明によれば、対象情報が非常に簡単なデータ構造で表現されている。したがって、高度な技術を有さないユーザであっても容易に理解することが可能となる。 The target information is composed of a symbol, an identifier, a factor expressed by first and second parentheses, a term expressed by the product of the factors, and an expression expressed by the sum of the terms. be able to. The term constituting the expression and the factor constituting the term are processed as an identifier that is the minimum unit constituting the target information, a unit element ε processed as 1 in the processing means, and 0 in the processing means. It can be constituted by a zero element Φ. The first parenthesis can be expressed by (). The second parenthesis can be expressed by {}. As described above, according to the present invention, the target information is represented by a very simple data structure. Therefore, even a user who does not have advanced technology can easily understand.
前記第一の括弧と前記第二の括弧は演算時の強さが異なる。演算時の強さが異なるとは、前記処理手段の処理を実行する際の展開順序が異なることを意味する。項は、前述した因子の積によって表現され、積は×により表現することができる。本実施形態では、積を構成する因子に、可換律は、成立しない。すなわち、a×bとb×aは、同一とは見なされない。また、式は前記項の和によって表現され、和は+により表現することができる。本実施形態では、和を構成する項に、可換律が、成立する。すなわち、a+bとb+aは、同一とは見なされる。以上より、例えばある対象情報は数1のように表現することができる。
(a+b)×{c+d+e}+f{g+h}×{i+j}・・・(数1)
上記数1で表現される対象情報は、第一の項の(a+b)×{c+d+e}と、第二の項のf{g+h}×{i+j}により構成されている。すなわち、数1は第一の項と第二の項との和により構成されている。次に、第一の項と第二の項のそれぞれについてみると、第一の項は、第一の因子の(a+b)と、第二の因子の{c+d+e}とにより構成されている。また、第二の項についてみると、第三の因子のfと、第四の因子の{g+h}と、第五の因子の{i+j}とにより構成されている。なお、上記数1において、“f”の後に、積演算子“×”を明示し、“f×”としてもよい。そして第一の因子から第五の因子のそれぞれについてみると、第一の因子は、第一の括弧と識別子a及びbにより構成されている。また、第二の因子は第二の括弧と識別子c、d及びeにより構成され、第三の因子は識別子fにより構成され、第四の因子は第二の括弧と識別子g及びfにより構成され、第五の因子は第二の括弧と識別子i及びjにより構成されている。なお、括弧の中は換言すると再帰的に式になっている。例えば、上記のうち(a+b)についてみると、括弧の中は再帰的に式a+bになっている。すなわち、上記式は項としての識別子aと項としての識別子bの和によってなっている。このように、式は、()または{}、およびその両方が複数回入れ子になった構造を含むことができる。The first parenthesis and the second parenthesis are different in strength at the time of calculation. The difference in strength at the time of calculation means that the expansion order when executing the processing of the processing means is different. A term is expressed by the product of the factors described above, and the product can be expressed by x. In the present embodiment, the commutative rule is not established for the factors constituting the product. That is, a × b and b × a are not considered the same. The expression is expressed by the sum of the terms, and the sum can be expressed by +. In this embodiment, the commutative law is established for the terms constituting the sum. That is, a + b and b + a are regarded as the same. From the above, for example, certain target information can be expressed as
(A + b) × {c + d + e} + f {g + h} × {i + j} (Equation 1)
The target information expressed by
対象情報は、上記のように因子、項からなる式で表現される。そしてこのように表現された対象情報は、例えばテキストファイルとして前記記憶手段に格納される。なお、記憶手段への対象情報の格納、換言すると入力はユーザ操作に応答して実行される。この入力時に、グラフィカルユーザインターフェースを用いたユーザインターフェース部を提供してもよい。簡易的には、テキストエディタで、識別子、項、あるいは、項の和を入力するようにしてもよい。情報処理手段は、記憶手段に格納されたその対象情報を処理する。これにより、前記対象情報の抽象度を変化させることが可能となる。 The target information is expressed by an expression including factors and terms as described above. The target information expressed in this way is stored in the storage means as a text file, for example. The storage of the target information in the storage means, in other words, the input is executed in response to a user operation. At the time of this input, a user interface unit using a graphical user interface may be provided. For simplicity, an identifier, a term, or a sum of terms may be input with a text editor. The information processing means processes the target information stored in the storage means. Thereby, the abstraction level of the target information can be changed.
本情報処理装置対象は、前記対象情報を展開する展開手段と、前記対象情報から部分集合を取得する部分集合取得手段と、前記対象情報についてホモトピー保存処理を実行するホモトピー保存処理手段と、異なる対象情報を構成する前記因子間における同値関係の対応に基づき該因子同士を接着して新たな空間である接着空間を作成する接着空間作成手段と、前記対象情報を分割する商空間作成手段と、のうち少なくともいずれか一つを有する。これにより、前記対象情報の抽象度を様々な状態に変化させることが可能となる。 The information processing apparatus target is different from a developing unit that expands the target information, a subset acquisition unit that acquires a subset from the target information, and a homotopy storage processing unit that performs homotopy storage processing on the target information Adhesive space creating means for creating an adhesive space which is a new space by bonding the factors based on correspondence of equivalence relations between the factors constituting the information, and a quotient space creating means for dividing the target information At least one of them. As a result, the abstraction level of the target information can be changed to various states.
展開手段は、前記対象情報を展開する。前記展開手段は、前記対象情報を前記項又は前記因子の単位に分解する分解手段と、前記因子間で集合演算処理をし、集合演算処理後の新たな項を設定する項設定手段と、前記第一の括弧及び第二の括弧で括られた因子を再帰的に展開処理する再帰的展開処理手段と、により構成することができる。そして、例えば上述した数1で表現される対象情報を展開処理すると数2のようになる。
(a+b)×{c+d+e}+f{g+h}×{i+j}
→(a{c+d+e}+b{c+d+e})+{f×g+f×h}×{i+j}
→({a×c+a×d+a×e}+{b×c+b×d+b×e})+{f×g×i+f×h×j}
→a×c+a×d+a×e+b×c+b×d+b×e+f×g×i+f×h×j・・・(数2)
すなわち、まず、第一の項を構成する第一の因子と第二の因子が展開する。次に、第一の因子の一番左の識別子であるaと第二の因子を構成する一番左の識別子cが掛け合わせる。次に、d、eの順に掛け合わせて展開する。そして、第一の因子の左から2番目の識別子、換言すると右側の識別子であるbと第二の因子を構成する一番左の識別子cが掛け合わせる。その後、d、eの順に掛け合わせて展開する。一方、第二の項については、まず第二の括弧で括られている第四の因子と同じく第二の括弧で括られている第五の因子を掛け合わせる。なお、第二の括弧は、第一の括弧とは異なり因子の順序ごとに積を作成しその和を出力する展開が行われる。すなわち、まず第四の因子を構成する一番左の識別子gと第五の因子を構成する一番左の識別子iの積を作成する。次に、第四の因子を構成する左から2番目の識別子であるhと第五の因子を構成する左から2番目の識別子であるjの積を作成し、これらの和として出力する。更に第三の因子を構成する識別子fと掛け合わせて展開する。The expansion means expands the target information. The expansion unit includes a decomposition unit that decomposes the target information into units of the terms or factors, a term setting unit that performs a set operation process between the factors, and sets a new term after the set operation process, And a recursive expansion processing means for recursively expanding the factor enclosed by the first parenthesis and the second parenthesis. Then, for example, when the target information expressed by
(A + b) × {c + d + e} + f {g + h} × {i + j}
→ (a {c + d + e} + b {c + d + e}) + {f × g + f × h} × {i + j}
→ ({a * c + a * d + a * e} + {b * c + b * d + b * e}) + {f * g * i + f * h * j}
→ a × c + a × d + a × e + b × c + b × d + b × e + f × g × i + f × h × j (Equation 2)
That is, first, the first factor and the second factor constituting the first term develop. Next, a, which is the leftmost identifier of the first factor, is multiplied by the leftmost identifier c constituting the second factor. Next, it develops by multiplying in the order of d and e. Then, the second identifier from the left of the first factor, in other words, the right identifier b is multiplied by the leftmost identifier c constituting the second factor. Then, it develops by multiplying in the order of d and e. On the other hand, the second term is first multiplied by the fifth factor enclosed in the second parenthesis in the same manner as the fourth factor enclosed in the second parenthesis. Unlike the first parenthesis, the second parenthesis is expanded to create a product for each factor order and output the sum. That is, first, a product of the leftmost identifier g constituting the fourth factor and the leftmost identifier i constituting the fifth factor is created. Next, a product of h, which is the second identifier from the left constituting the fourth factor, and j, which is the second identifier from the left, constituting the fifth factor is created and output as the sum of these. Furthermore, it expands by multiplying with the identifier f which comprises the 3rd factor.
このような展開処理を行うことにより、数1で表現される前記対象情報は、対象情報の最小単位である識別子の積とこれらの和によって表現されることになる。すなわち、展開手段による展開を実行することにより集合で表現することが可能となる。つまりは、展開処理手段を備えることで前記対象情報の抽象度を高くすることが可能となる。 By performing such expansion processing, the target information expressed by
部分集合取得手段は、部分集合を取得する。これにより、前記対象情報の中から部分集合を取得することが可能となる。例えば、数3で表現される対象情報について、aについての部分集合を取得すると数4で表現される対象情報となる。
a×c+a×d+a×e+b×c+b×d+b×e+f×g×i+f×h×j・・・(数3)
a(c+d+e)+b×c+b×d+b×e+f×g×i+f×h×j・・・(数4)
接着空間作成手段は、異なる対象情報を構成する前記因子間における同値関係の対応に基づき該因子同士を接着する。その結果、新たな空間である接着空間を作成することができる。接着空間作成手段を備えることで、前記対象情報が異なる空間を表現するものであっても、同値関係にある因子を介して関連付け新たな空間を設計することが可能となる。The subset acquisition unit acquires a subset. This makes it possible to acquire a subset from the target information. For example, with respect to the target information expressed by
a × c + a × d + a × e + b × c + b × d + b × e + f × g × i + f × h × j (Equation 3)
a (c + d + e) + b × c + b × d + b × e + f × g × i + f × h × j (Equation 4)
The adhesion space creating means adheres the factors based on the correspondence of the equivalence relationship between the factors constituting different target information. As a result, a bonding space that is a new space can be created. By providing the adhesion space creating means, even if the target information represents a different space, it is possible to design a new space by associating with factors having an equivalence relationship.
ホモトピー保存処理手段は、前記対象情報についてホモトピー保存処理を実行する。ホモトピー保存処理は、対象情報に対する演算結果とともに、演算前の対象情報、適用された演算、および、演算時に使用されたパラメータを記憶する機能である。これにより、前記処理手段の処理実行前の前記対象情報の状態を取得することが可能となる。そして、例えばホモトピー保存処理手段による処理の実行は数5のように表すことができる。
a(b+c)
↓H
(a×b+a×c)=F(a(b+c)+ε)・・・(数5)
数5におけるFは、本情報処理装置100で規定した「展開」という演算をを表す識別子である。また、εは、値“1”を表す記号であり、Fの演算において、値“1”が使用されたことを示している。すなわち、展開処理を実行した後の状態を表す、対象情報(a×b+a×c)は、a(b+c)を展開処理したものであることを意味する。このように、ホモトピー保存処理を実行することによって、前記格納処理手段に格納される対象情報は処理前の状態についても保存されているため、対象情報の過去の状態を取得することが可能となる。The homotopy storage processing means executes a homotopy storage process for the target information. The homotopy storage process is a function for storing the target information before the calculation, the applied calculation, and the parameters used during the calculation, together with the calculation result for the target information. Thereby, it becomes possible to acquire the state of the target information before the processing of the processing means. And execution of the process by the homotopy preservation | save processing means can be represented like
a (b + c)
↓ H
(A × b + a × c) = F (a (b + c) + ε) (Equation 5)
F in
本発明に係る情報記憶装置において、前記各レベルは、前記対象情報が最も抽象度が高く表現される集合レベルと、前記集合レベルよりも前記対象情報の抽象度が低く表現され、該対象情報が部分集合によって表現されるトポロジー空間レベルと、前記トポロジー空間レベルよりも前記対象情報の抽象度が低く表現され、該トポロジー空間レベルにおける前記対象情報同士が接着される接着空間レベルと、前記接着空間レベルよりも前記対象情報の抽象度が低く表現され、前記トポロジー空間における前記対象情報が所定の属性をもって表現されるセル空間レベルと、を有するものとしてもよい。 In the information storage device according to the present invention, each level is expressed as a set level where the target information is expressed with the highest level of abstraction, and a lower level of abstraction of the target information than the set level. A topology space level represented by a subset, an adhesion space level in which the object information is expressed at a lower abstraction level than the topology space level, and the object information is bonded to the topology space level; and the adhesion space level The object information may be expressed with a lower abstraction level, and the target information in the topology space may be expressed with a predetermined attribute.
ここで、抽象度が高いとは、対象情報同士の関係、あるいは、関連を示す情報が少ないことをいう。 Here, a high abstraction level means that there is little relation between target information or information indicating the relation.
例えば、集合レベルは、前記対象情報の抽象度が最も高く表現されるものである。集合レベルにおける対象情報(以下、集合の対象情報ともいう)は対象情報の最小単位である識別子の積を項としてこれらの和からなる式によって表現される。なお、集合レベルには、他の抽象度の低いレベルから展開処理手段の展開処理を実行することにより移行することができる。また、前記記憶手段に格納する際に集合レベルで入力することとしてもよい。 For example, the set level is expressed with the highest level of abstraction of the target information. Target information at the set level (hereinafter also referred to as target information of the set) is expressed by an expression consisting of a sum of identifiers that are the minimum units of the target information as terms. In addition, it can transfer to a set level by performing the expansion | deployment process of the expansion | deployment process means from the level with another low abstraction level. Moreover, it is good also as inputting at a set level, when storing in the said memory | storage means.
トポロジー空間レベルは、前記集合レベルよりも前記対象情報の抽象度が低く表現される。また、対象情報の部分集合を要素として扱うことによって表現される。ただし、部分集合が1つの場合も、トポロジー空間レベルである。例えば前記対象情報が集合レベルで表現されている場合に、前述した部分集合取得手段の部分集合取得処理を実行する。すると集合レベルで表現されている対象情報は、トポロジー空間レベルに移行されることになる。 The topology space level is expressed with a lower abstraction level of the target information than the set level. It is also expressed by treating a subset of target information as an element. However, even when there is one subset, it is at the topology space level. For example, when the target information is expressed at the set level, the subset acquisition processing of the subset acquisition unit described above is executed. Then, the target information expressed at the set level is transferred to the topology space level.
接着空間レベルは、前記トポロジー空間レベルよりも前記対象情報の抽象度が低く表現される。すなわち、接着空間レベルは、該トポロジー空間レベルにおける前記対象情報同士が同値関係を基準に結合されることで表現されるものである。前記トポロジー空間レベルで表現されている異なる2以上の対象情報に前述した接着手段の接着処理手段を実行することで新たな空間レベル、すなわち接着空間レベルへ移行することが可能となる。 The adhesion space level is expressed with a lower level of abstraction of the target information than the topology space level. That is, the adhesion space level is expressed by combining the target information in the topology space level with reference to the equivalence relation. It is possible to shift to a new space level, that is, the bonding space level by executing the above-described bonding processing unit of the bonding unit on two or more different pieces of target information expressed at the topology space level.
セル空間レベルは、トポロジー空間レベルの情報の式表現のうち、特定の式表現に限定して、属性と属性値の関係を定義できるようにしたものである。したがって、当然、セル空間レベルはトポロジー空間レベルの性質、および、機能を有している。この点で、セル空間レベルはトポロジーレベルの1ケースである。 The cell space level is defined so that the relationship between the attribute and the attribute value can be defined by limiting to a specific expression among the expression expressions of the information at the topology space level. Therefore, naturally, the cell space level has the properties and functions of the topology space level. In this respect, the cell space level is one case of the topology level.
このように、セル空間レベルの情報と、トポロジー空間レベルの情報とは、式表現の形式上は、差異がない。すなわち、セル空間レベルの情報は、セル空間IDと属性の定義を示す因子とで括り出された部分集合の式表現と見なせるからである。セル空間レベルの情報は、セル空間IDと属性の定義を示す因子に、セル空間IDという意味、および属性の定義という意味を付加することで、形成される。この意味で、セル空間レベルの情報は、トポロジー空間レベルの情報の特殊ケースである。また、特殊ケースという意味で、セル空間レベルは、トポロジー空間レベルよりも、抽象度が低いとも言える。一方、そのような意味づけを解消すれば、セル空間レベルの情報は、同一の式表現のまま、トポロジー空間レベルの情報となる。 Thus, there is no difference between the information at the cell space level and the information at the topology space level in terms of the expression expression. That is, the cell space level information can be regarded as an expression expression of a subset grouped by a cell space ID and a factor indicating the definition of the attribute. The information on the cell space level is formed by adding the meaning of cell space ID and the definition of attribute to the factor indicating the definition of the cell space ID and the attribute. In this sense, cell space level information is a special case of topology space level information. Also, in the sense of a special case, the cell space level can be said to be less abstract than the topology space level. On the other hand, if such meaning is eliminated, the cell space level information becomes the topology space level information with the same expression.
さらに、セル空間レベルの情報は、前述した展開手段の展開処理を実行することにより、集合レベルに移行されることもできる。すなわち、すべての括弧を展開すればよい。 Further, the cell space level information can be transferred to the collective level by executing the above-described expansion processing of the expansion means. That is, all the parentheses should be expanded.
なお、このセル空間レベルの属性は、通常は、アプリケーションプログラムによって定義されるものである。したがって、本情報処理装置では、セル空間レベルの情報は、アプリケーションプログラムのユーザインターフェースを通じて入力されることを想定している。 The cell space level attribute is usually defined by an application program. Therefore, in this information processing apparatus, it is assumed that cell space level information is input through the user interface of the application program.
また、本実施形態では、セル空間レベルは、接着空間レベルの性質、および、機能も有していることとした。したがって、セル空間レベルの複数の対象情報を接着することができる。これは、逆に、セル空間レベルの情報を接着した接着空間レベルの情報は、セル空間レベルの性質、機能を有していると言える。 In the present embodiment, the cell space level also has the properties and functions of the adhesion space level. Therefore, a plurality of pieces of object information at the cell space level can be bonded. Conversely, it can be said that the information on the bonding space level obtained by bonding the information on the cell space level has the properties and functions at the cell space level.
本発明に係る情報記憶装置において、前記各レベルは、前記情報処理手段による処理の実行前の状態を所定の形式によって表現することにより処理前の状態に戻すことが可能なホモトピーレベルを更に有するものとしてもよい。 In the information storage device according to the present invention, each level further has a homotopy level capable of returning to a state before processing by expressing the state before execution of processing by the information processing means in a predetermined format. It is good.
ホモトピーレベルは、前記情報処理手段による処理の実行後の状態が実行前の状態を含んだ状態で所定の表現形式で表現されることで処理前の状態に戻すことが可能な空間である。ホモトピーレベルでは、例えば、式1で示される対象情報が、演算Pによって、式2に変換されたときに、「式2=式1に演算Pを実行」のように記述される。したがって、演算前のレベルには、前述したホモトピー保存処理を実行することにより移行することができる。なお、ホモトピーレベルは、前述した他の空間レベルとは本質的に異なる。すなわち、他の空間レベルは、上述したように対象情報の抽象度によって段階的に表現される空間である。しかし、ホモトピーレベルは他の空間レベルのそれぞれと常に行き来が可能な空間である。換言すると、ホモトピーレベルは、前述した各空間レベル間の移動を補助する空間であると言える。ホモトピーレベルを前述した各空間レベルと併用することにより、前記対象情報に対する処理前の状態を取得することが可能となるからである。 The homotopy level is a space that can be returned to the state before the processing by expressing the state after the execution of the processing by the information processing means in a predetermined expression form including the state before the execution. In the homotopy level, for example, when the target information shown in
次に、本発明に係る情報処理装置の実施形態について図面に基づいて説明する。 Next, an embodiment of an information processing apparatus according to the present invention will be described based on the drawings.
《第1実施形態》
(装置構成)
図1は、第1の実施形態に係る情報処理装置100の構成を示すブロック図である。同図に示すように、第1の実施形態に係る情報処理装置100は、対象情報を入力するキーボード、ポインティングデバイス等の入力手段11(本発明の入力部に相当)と、入力された対象情報を格納するメモリ12(本発明の記憶部に相当)と、対象情報を所定のプログラムに基づいて処理するCPU13(本発明の処理部に相当)と、入力された対象情報や処理後の対象情報を出力するディスプレイ等の出力手段14(本発明の出力部に相当)と、CPU13と入力手段11との間を接続するインターフェース15と、CPU13と出力手段14との間を接続するインターフェース16とを備える構成である。<< First Embodiment >>
(Device configuration)
FIG. 1 is a block diagram showing the configuration of the
インターフェース15は、例えば、USB(Universal Serial Bus)等のシリアルインターフェースである。また、インターフェース16は、例えば、RGB(赤、緑、青)の画像信号および同期クロックの出力インターフェースである。 The
ただし、図1では、省略されているが、情報処理装置100は、大容量のデータを保存する外部記憶装置であるハードディスク、着脱可能な記憶媒体(例えば、CD(Compact disc)、DVD(Digital Versatile Disk)、フラッシュメモリカード等)の駆動装置、ネットワークにアクセスし他の情報処理装置と通信する通信インターフェース等を含んでよい。 However, although omitted in FIG. 1, the
情報処理装置100は、典型的には、パーソナルコンピュータ、サーバ等のコンピュータである。ただし、情報処理装置100は、そのようなコンピュータに限定されるものではなく、例えば、携帯情報端末、携帯電話、PHS(Personal Handyphone System)、デジタルテレビ、デジタルテレビのチューナあるいはセットトップボックス、ハードディスクを含むテレビジョンの録画装置、車載用の端末等として実現できる。また、メモリ12は、揮発性のDRAM(Dynamic Random Access Memory)、不揮発性のEPROM(Erasable Programmable Read Only Memory)、EEPROM(Electronically Erasable and Programmable Read Only Memory)、フラッシュメモリ等を含む。 The
本情報処理装置の機能は、CPU13がプログラムを実行することで実現される。このプログラムは、メモリ13あるいは不図示の外部記憶装置にインストールされる。プログラムは、通信インターフェースを通じてネットワークから、あるいは、着脱可能な記憶媒体からインストールされる。したがって、このプログラムは、ネットワークあるいは着脱可能な記憶媒体等を通じて流通される。 The functions of the information processing apparatus are realized by the
また、メモリ12あるいは不図示の外部記憶装置に格納された対象情報は、CPU13が所定のプログラムを実行することによって各レベルを移行する。なお、各レベルとは、前記対象情報の抽象度が最も高く表現される集合レベル22と、前記集合レベル22よりも前記対象情報の抽象度が低く表現され、該対象情報が部分集合を要素として表現されるトポロジー空間レベル23と、前記トポロジー空間レベルよりも前記対象情報の抽象度が低く表現され、該トポロジー空間レベルにおける前記対象情報同士が接着される接着空間レベル24と、前記トポロジー空間における前記対象情報が所定の属性をもって表現されるセル空間レベル25と、前記情報処理手段による処理の実行前の状態を所定の形式によって表現することにより処理前の状態に戻すことが可能なホモトピーレベル21と、を有する。また、本実施形態では、セル空間レベル25は、前記接着空間レベルよりも前記対象情報の抽象度が低いものとして定義する。すなわち、セル空間レベルは、接着空間レベルの情報に、属性と属性値の意味づけを加えたものである、と解することにする。
(データ構造)
次に、第1の実施形態に係る情報処理装置100のメモリ12に格納される対象情報の構造、すなわちデータ構造について説明する。なお、本実施形態の情報処理装置100は、以下のデータ構造によって、処理対象のデータを記述し、記憶し、演算処理を行うが、必ずしも、従来のデータ構造である表形式、オブジェクト指向データベースでのオブジェクトの階層構造、あるいは、ポインタでリンクされたデータベースのレコードのデータ構造等と、本実施形態で示すデータ構造との間の相互のデータ変換機能を提供するわけではない。Further, the target information stored in the
(data structure)
Next, the structure of the target information stored in the
(1)対象情報の構成要素
本情報処理装置は、対象情報を式の形式で表現する。式は、和演算子“+”、積演算子“×”、第1の括弧“(”“)”、および第2の括弧“{”“}”によって記述される。第1の括弧が本発明の集合因子構成演算子に相当する。また、第2の括弧が本発明の順序構成演算子に相当する。このような対象情報の表現形式を式表現とも呼ぶ。(1) Components of target information This information processing apparatus expresses target information in the form of an expression. The expression is described by the sum operator “+”, the product operator “×”, the first bracket “(” “)”, and the second bracket “{” “}”. The first parenthesis corresponds to the set factor constructing operator of the present invention. The second parenthesis corresponds to the order composition operator of the present invention. Such an expression format of the target information is also called a formula expression.
式は、1以上の識別子を含む。識別子は、記号または記号列で表現される。本実施形態では、記号として、英数字、および特殊文字(ただし、和演算子“+”、積演算子“×”、第1の括弧“(”“)”、および第2の括弧“{”“}”を除外する)を用いることとする。ただし、記号は、一般的にアルファベットとも呼ばれ、必ずしも、これらの文字には限定されない。 The expression includes one or more identifiers. The identifier is expressed by a symbol or a symbol string. In this embodiment, alphanumeric characters and special characters (however, a sum operator “+”, a product operator “x”, a first parenthesis “(” “)”, and a second parenthesis “{” are used as symbols. “}” Is excluded). However, the symbols are generally called alphabets and are not necessarily limited to these characters.
本実施形態では、特殊な識別子として、Φおよびεを用いる。Φは、値ゼロ、和演算子において演算結果を変化させない値、または空集合を示す識別子である。本実施形態では、Φを零元と呼ぶ。また、εは、値1、あるいは、積演算子において演算結果を変化させない値である。本実施形態では、εを単位元と呼ぶ。なお、Φを和演算の単位元と呼ぶ場合もあるが、本実施形態では、Φを零元と呼ぶことにする。 In this embodiment, Φ and ε are used as special identifiers. Φ is an identifier indicating a value of zero, a value that does not change the operation result in the sum operator, or an empty set. In this embodiment, Φ is called a zero element. Further, ε is a
また、本情報処理装置は、所定の識別子を、演算を表す予約語として使用する。例えば、F(式)は、式を展開する演算であり、G(式+attach(因子1+因子2))は、接着演算を示す予約語(attachは、そのときのパラメータを示す予約語)であり、Hは、ホモトピー保存処理を示す予約語である。これらの予約語については、ユーザは、通常の識別子として使用することができない、という点で制限がある。 In addition, the information processing apparatus uses a predetermined identifier as a reserved word representing an operation. For example, F (expression) is an operation that expands an expression, and G (expression + attach (
本実施形態では、以下の規則によって対象情報、すなわち、識別子、因子、項(要素ともいう)、集合情報、ホモトピー情報、接着空間の情報、およびセル空間の情報が定義を記述する式表現が生成される。
(a)識別子、単位元、および零元はいずれも式表現、すなわち、対象情報を記述する表現である。
(b)rとsとがともに、式表現である場合、r+sも式表現である。
(c)rとsとがともに、式表現である場合、r×sも式表現である。この場合、演算の結合の強さは、通常の代数と同様に、r×sの方が、r+sよりも強い。
(d)rが式表現である場合、(r)、{s}も式表現である。In this embodiment, the following rules generate target information, that is, an identifier, a factor, a term (also referred to as an element), collective information, homotopy information, adhesion space information, and cell space information that describes the definition. Is done.
(A) An identifier, a unit element, and a zero element are all expression expressions, that is, expressions describing target information.
(B) When both r and s are expressions, r + s is also an expression.
(C) When both r and s are expression expressions, r × s is also an expression expression. In this case, r × s is stronger in r × s than r + s, as in ordinary algebra.
(D) When r is an expression, (r) and {s} are also expressions.
(2)式表現の代数的構造
本実施形態において、式表現r、s、t、yは、次の代数の性質を有する。
(a)結合律
r+(s+t)=(r+s)+t;r×(s×t)=(r×s)×t;
(b)可換律
r+s=s+r;
なお、本実施形態の式表現では、積演算子の可換律は成立しない。したがって、積演算子で複数の因子が結合されている場合に、個々の因子位置が情報(あるいは意味)を持つ。すなわち、因子は、いわゆる位置を指定してされた位置パラメータとしての機能を有する。「積演算子の可換律は成立しない」ことは、本発明の積演算子が「順序を持つ因子の列として複数の識別子を結合する」ことに相当する。
(c)積演算の単位元
r×ε=ε×r=r;
(d)積演算、和演算の零元
r×Φ=Φ×r=Φ;r+Φ=r;
(e)分配率
r×(s+t)=r×s+r×t;(r+s)×t=r×t+s×t;
(f)
{r+s}×{t+u}={r×t+s×u};
(3)集合情報
集合情報は、項の組み合わせ、あるいは、項の和として、定義される。ここで、それぞれの項は集合ID(本発明の第1の識別因子に相当)となる識別子と値となる識別子の積、すなわち、集合ID×値として定義される。ただし、値は、複数の識別子の積であってもよい。集合の情報の式表現は、典型的には、集合ID×値1+集合ID×値2+・・・である。集合情報の例として、以下のものを挙げることができる。(2) Algebraic structure of expression expression In this embodiment, the expression expressions r, s, t, and y have the following algebraic properties.
(A) coupling rule r + (s + t) = (r + s) + t; r × (s × t) = (r × s) × t;
(B) Commutative law r + s = s + r;
Note that the commutation law of the product operator does not hold in the expression of this embodiment. Therefore, when a plurality of factors are combined by the product operator, each factor position has information (or meaning). That is, the factor has a function as a position parameter designated by so-called position. “The commutation rule of the product operator is not established” corresponds to the product operator of the present invention “combining a plurality of identifiers as a sequence of factors having an order”.
(C) Product operation unit element r × ε = ε × r = r;
(D) Zero element r × Φ = Φ × r = Φ of product operation and sum operation; r + Φ = r;
(E) Distribution ratio r × (s + t) = r × s + r × t; (r + s) × t = r × t + s × t;
(F)
{R + s} × {t + u} = {r × t + s × u};
(3) Set information Set information is defined as a combination of terms or a sum of terms. Here, each term is defined as a product of an identifier that is a set ID (corresponding to the first identification factor of the present invention) and an identifier that is a value, ie, a set ID × value. However, the value may be a product of a plurality of identifiers. The expression expression of the set information is typically set ID ×
上述のように、本実施形態のデータ構造では、和演算子に可換律が成立することから、集合情報は、順序のない項の組み合わせということができる。一方、項を構成する因子間の位置関係は維持されることになる。 As described above, in the data structure of this embodiment, since the commutative rule is established for the sum operator, the set information can be said to be a combination of unordered terms. On the other hand, the positional relationship between the factors constituting the term is maintained.
このような因子間の位置関係の維持機能は、コンピュータ上で事物、あるいは、概念を表現する場合に、極めて大きな効果を発揮する。すなわち、一般的に、事物、あるいは概念を記述する修飾関係には、可換律が成立しない。例えば、”児玉の机”は、”机の児玉”と意味が異なる。 Such a function of maintaining the positional relationship between factors is extremely effective when expressing things or concepts on a computer. That is, in general, a commutative rule is not established for a modification relationship that describes a thing or a concept. For example, “kodama desk” is different in meaning from “desk kodama”.
本実施形態の因子と積演算子によれば、このような修飾関係を極めて単純化して、記述することができる。さらに、そのような修飾関係で記述された項を和演算子によって組み合わせることで事物の集合、あるいは、概念の集合を記述し、極めて単純な形式のデータベースを構築できる。 According to the factor and product operator of the present embodiment, such a modification relationship can be greatly simplified and described. Furthermore, a set of things or a set of concepts can be described by combining terms described in such a modification relationship with a sum operator, and an extremely simple database can be constructed.
さらにまた、管理対象の事物あるいは概念を項の集合として管理する場合に、項における因子の位置関係に意味を付与することもできる。また、項を構成する因子は、それぞれ、いわゆる位置パラメータとしての意義を有するということもできる。 Furthermore, when managing a managed object or concept as a set of terms, it is possible to give meaning to the positional relationship of factors in the terms. It can also be said that the factors constituting the terms have significance as so-called positional parameters.
例えば、集合情報が、果物×任意形状×任意色×バナナ+果物×任意形状×任意色×りんご+果物×細長×黄色×バナナ+果物×丸×赤×リンゴという集合情報を考える。この場合、項の第1因子は、集合IDである果物であり、第2因子は形状示し、第3因子は色を示し、第4因子は名称を示す。このように、それぞれの因子の位置に意味上の制限を加えて使用することで、属性と属性値との関係を集合レベルでも処理できることを示している。本情報処理装置では、集合情報は、このような順序が維持された因子によって事物の属性を自在に定義することができ、そのような項の組み合わせによって、事物の集合をコンピュータ上に表現する。
(例)
A×a1+A×a2+A×a3、b1×B+b2×B×B、果物×リンゴ+果物×バナナ+果物×ミカン、野菜×キャベツ+野菜×キュウリ+野菜×ゴボウ、社員×A+社員×B+社員×C
すなわち、集合情報は、集合IDで識別される集合に所属する項の組み合わせを記述し、メモリ12に記憶される。この場合、社員Cが退職し、社員Dと社員Eが入社した場合には、社員×A+社員×B+社員×Cのようにメモリ12に格納される。For example, the collective information is considered to be collective information of fruit × arbitrary shape × arbitrary color × banana + fruit × arbitrary shape × arbitrary color × apple + fruit × stripe × yellow × banana + fruit × circle × red × apple. In this case, the first factor of the term is the fruit that is the set ID, the second factor indicates the shape, the third factor indicates the color, and the fourth factor indicates the name. Thus, it is shown that the relationship between the attribute and the attribute value can be processed at the set level by using the position of each factor with a semantic restriction. In the information processing apparatus, the set information can freely define the attributes of things by factors that maintain such an order, and the set of things is expressed on the computer by combining such terms.
(Example)
A × a1 + A × a2 + A × a3, b1 × B + b2 × B × B, fruit × apple + fruit × banana + fruit × mandarin, vegetable × cabbage + vegetable × cucumber + vegetable × burdock, employee × A + employee × B + employee × C
That is, the set information describes a combination of terms belonging to the set identified by the set ID and is stored in the
(4)トポロジー空間情報
トポロジー空間情報は、トポロジーID(本発明の第2の識別因子に相当)となる識別子と部分集合の和との積によって以下のように記述される。すなわち、トポロジーID×(部分集合の和)である。ここで、部分集合は、部分集合を識別する部分集合IDと、その部分集合に含まれる項の和との積で表現される。すなわち、部分集合ID×(項の和)である。ただし、項には、さらに項の和を第1の括弧“()”または第2の括弧”{}”で組み合わせたもの、およびそれらの積が含まれてもよい。
(例)トポロジー空間情報の例は、
T×(ABC×(ab1+ac2+bc3)+A×(ab1+ac2)+B×(ab1+bc3)+C(ac2+bc3))、
果物×(全種×(リンゴ+バナナ+ミカン)+赤×リンゴ+黄×(バナナ+ミカン))、果物×(全種×(リンゴ+バナナ+ミカン)+丸×(リンゴ+ミカン)+細長×バナナ)、
野菜×(全種×(大根+キュウリ+ゴボウ)+太×大根+細×(キュウリ+ゴボウ))、会社×(社員×(社員1+社員2+社員3+社員4)+営業×(社員1+社員2)+経理×(社員3+社員4))、等である(この例で、読点“、”は、式の構成要素ではなく、例の区切りである)。この場合に、最後の例について、例えば、総務が新設され、社員5が採用され、総務に配属された場合には、会社×(社員×(社員1+社員2+社員3+社員4+社員5)+営業×(社員1+社員2)+経理×(社員3+社員4)+総務×社員5)のように記述し、メモリ12に格納できる。
(5)接着空間情報
接着空間情報は、トポロジー空間情報に含まれる2つの部分集合X(本発明の第1の被接着情報に相当)と部分集合Y(本発明の第2の被接着情報に相当)に対して、それぞれの部分に含まれる部分集合を関係付けることで構成される。本実施形態では、この関係付けによって発生する関係を同値関係という。(4) Topology space information The topology space information is described as follows by the product of the identifier that becomes the topology ID (corresponding to the second identification factor of the present invention) and the sum of the subsets. That is, topology ID × (subset sum). Here, the subset is expressed by a product of a subset ID for identifying the subset and a sum of terms included in the subset. That is, subset ID × (sum of terms). However, the term may further include a sum of terms combined with the first parenthesis “()” or the second parenthesis “{}”, and a product thereof.
(Example) An example of topology space information is
T × (ABC × (ab1 + ac2 + bc3) + A × (ab1 + ac2) + B × (ab1 + bc3) + C (ac2 + bc3)),
Fruit x (all species x (apple + banana + tangerine) + red x apple + yellow x (banana + tangerine)), fruit x (all species x (apple + banana + tangerine) + round x (apple + tangerine) + elongate X Banana),
Vegetable x (all species x (radish + cucumber + burdock) + thick x radish + fine x (cucumber + burdock)), company x (employee x (
(5) Bonding space information The bonding space information includes two subsets X (corresponding to the first bonded information of the present invention) and subset Y (the second bonded information of the present invention) included in the topology space information. Equivalent)) by associating a subset included in each part. In this embodiment, the relationship generated by this association is called an equivalence relationship.
今、トポロジー空間情報T(トポロジーIDは、Tid)およびトポロジー空間情報U(トポロジーIDは、Yid)が、トポロジー空間情報Tid×(Tに属する部分集合の和)+トポロジー空間情報Uid×(Uに属する部分集合の和)としてメモリ12に記憶されているとする。 Now, topology space information T (topology ID is Tid) and topology space information U (topology ID is Yid) are topology space information Tid × (sum of subsets belonging to T) + topology space information Uid × (U Suppose that it is stored in the
さらに、Tに属する部分集合の和=部分集合T0+部分集合T−T0と2つの部分集合に分離できるとする。その場合、本情報処理装置では、トポロジー空間情報Tとトポロジー空間情報Uとを関連づけるトポロジー空間情報Tの因子p(本発明の第1の同値因子に相当)と、トポロジー空間情報Uの因子q(本発明の第2の同値因子に相当)が指定される。そして、トポロジー空間情報Tが、因子pを含む部分集合T0(本発明の第1の関連項に相当)と、因子pを含まない部分集合T−T0に分離される。ここで、T−T0は、集合Tから集合T0を削除した差集合である。また、トポロジー空間情報Uが、因子qを含む部分集合U0(本発明の第2の関連項に相当)と、因子qを含まない部分集合U−U0に分離される。ここで、U−U0は、集合Uから集合U0を削除した差集合である。 Further, it is assumed that the sum of the subsets belonging to T = subset T0 + subset T−T0 and two subsets. In this case, in the information processing apparatus, the factor p (corresponding to the first equivalent factor of the present invention) of the topology space information T that correlates the topology space information T and the topology space information U, and the factor q ( Corresponding to the second equivalence factor of the present invention). Then, the topology space information T is separated into a subset T0 including the factor p (corresponding to the first related term of the present invention) and a subset T-T0 not including the factor p. Here, T−T0 is a difference set obtained by deleting the set T0 from the set T. Further, the topology space information U is separated into a subset U0 including the factor q (corresponding to the second related term of the present invention) and a subset U-U0 not including the factor q. Here, U−U0 is a difference set obtained by deleting the set U0 from the set U.
この場合に、上記2つのトポロジー空間情報TとUの和は、トポロジー空間情報Tid×(部分集合T0)+トポロジー空間情報Tid×(部分集合T−T0)+トポロジー空間情報Uid×(部分集合U0)+トポロジー空間情報Uid×(部分集合U−U0)と表現される。このように、集合から特定の因子pを含む部分集合を取り出した場合に、これを商と呼ぶ。また、その商を除く部分集合を剰余という。 In this case, the sum of the two topology space information T and U is topology space information Tid × (subset T0) + topology space information Tid × (subset T−T0) + topology space information Uid × (subset U0). ) + Topology space information Uid × (subset U−U0). Thus, when a subset including a specific factor p is extracted from the set, this is called a quotient. A subset excluding the quotient is called a remainder.
さらに、部分集合T0=T0id×(T0の項の和)、部分集合U0=U0id×(U0の項の和)と記述されているとする。この場合に、部分集合T0と部分集合U0とを関係付けることによって、以下の接着空間情報を構成できる。すなわち、この場合の接着空間情報は、{部分集合T0におけるpの左因子+部分集合U0におけるqの左因子}{p+q}{部分集合T0におけるpの右因子+部分集合U0におけるqの右因子}+トポロジー空間情報Tid×(部分集合T−T0)+トポロジー空間情報Uid×(部分集合U−U0)、である。ここで、部分集合T0におけるpの左因子および部分集合T0におけるpの右因子が、ともに、本発明の第1の被接着因子に相当する。また、部分集合U0におけるqの左因子および部分集合U0におけるqの右因子が、ともに、本発明の第2の被接着因子に相当する。 Further, it is assumed that a subset T0 = T0id × (sum of terms of T0) and a subset U0 = U0id × (sum of terms of U0) are described. In this case, the following bonding space information can be configured by associating the subset T0 and the subset U0. That is, the adhesion space information in this case is {the left factor of p in the subset T0 + the left factor of q in the subset U0} {p + q} {the right factor of p in the subset T0 + the q factor in the subset U0. Right factor} + topology space information Tid × (subset T−T0) + topology space information Uid × (subset U−U0). Here, both the left factor of p in the subset T0 and the right factor of p in the subset T0 correspond to the first adherent factor of the present invention. The left factor of q in the subset U0 and the right factor of q in the subset U0 both correspond to the second adherent factor of the present invention.
なお、ここでは、トポロジー空間レベルの情報を接着する場合を説明したが、トポロジー空間レベルの情報に、属性と属性値が定義されて構成されるセル空間レベルの情報、および、項の組み合わせである集合レベルの集合情報に対しても、接着空間情報が定義できる。また、トポロジー空間、セル空間、集合空間のうち、一のレベルの情報と、他のレベルの情報とについて接着空間情報を定義できる。
(例)
今、以下のような果物のトポロジー空間情報と、野菜のトポロジー空間情報の和、すなわち、果物×(全種×(リンゴ+バナナ+ミカン)+丸×(リンゴ+ミカン)+細長×バナナ)+野菜×(全種×(大根+キュウリ+ゴボウ)+太×大根+細×(キュウリ+ゴボウ))がメモリ12に記憶されているとする。Here, a case has been described in which the information on the topology space level is bonded, but the information on the cell space level configured by defining attributes and attribute values in the information on the topology space level, and a combination of terms. Adhesive space information can also be defined for set information at the set level. Also, the bonding space information can be defined for one level of information and other levels of the topology space, cell space, and collective space.
(Example)
Now, the sum of the topology space information of fruits and the topology space information of vegetables, that is, fruit × (all species × (apple + banana + mandarin) + circle × (apple + mandarin) + elongate × banana) + Assume that vegetables × (all species × (radish + cucumber + burdock) + thick × radish + thin × (cucumber + burdock)) are stored in the
ここで、果物のトポロジー空間情報の因子である細長と、野菜のトポロジー空間情報の部分集合である因子細との関連づけが指定され、同値関係にあるとする。この場合に、2つのトポロジー空間情報は、それぞれ次のように商と剰余とに分離される。すなわち、それぞれの集合情報が商と剰余に分離されたトポロジー空間情報は、
果物×細長×バナナ
+果物×(全種×(リンゴ+バナナ+ミカン)+丸×(リンゴ+ミカン))
+野菜×細×(キュウリ+ゴボウ)
+野菜×(全種×(大根+キュウリ+ゴボウ)+太×大根)
となる。Here, it is assumed that the association between the long and slender factor of the topology space information of the fruit and the small factor that is a subset of the topological space information of the vegetable is designated and is in an equivalence relation. In this case, the two pieces of topology space information are separated into a quotient and a remainder as follows. That is, topology space information in which each set information is separated into quotient and remainder is
Fruit x Long x Banana + Fruit x (All species x (Apple + Banana + Tangerine) + Round x (Apple + Tangerine))
+ Vegetable x Fine x (Cucumber + Burdock)
+ Vegetables x (all species x (radish + cucumber + burdock) + thick x radish)
It becomes.
そして、同値関係が指定された細長と、野菜のトポロジー空間情報の部分集合である細とによって、接着空間情報が
{果物+野菜}×{細長+細}{バナナ+(キュウリ+ゴボウ)}
+果物×(全種×(リンゴ+バナナ+ミカン)+丸×(リンゴ+ミカン))
+野菜×(全種×(大根+キュウリ+ゴボウ)+太×大根)、のように構成される。Then, by using the elongated shape for which the equivalence relation is designated and the elongated shape that is a subset of the topology space information of the vegetable, the adhesion space information is {fruit + vegetable} × {longed + thin} {banana + (cucumber + burdock)}
+ Fruit x (All species x (Apple + Banana + Tangerine) + Round x (Apple + Tangerine))
+ Vegetables x (all species x (radish + cucumber + burdock) + thick x radish).
このようにして、接着空間情報は、2つのトポロジー空間情報の構造を維持した状態で、関係付けが指定された同値関係にある因子を基に結合されている。接着空間情報より、”細”と”細長”に同値関係が認められれば,右の因子”バナナ”と”(キュウリ+ゴボウ)”を{バナナ+(キュウリ+ゴボウ)}として関連づけて出力できる。 In this manner, the bonding space information is combined based on the factors having the equivalence relation designated for the association while maintaining the structure of the two topology space information. If an equivalence relationship is recognized between “thin” and “thin” from the bonding space information, the right factors “banana” and “(cucumber + burdock)” can be related and output as {banana + (cucumber + burdock)}.
また、 伝票ID1枚目(A{ε+B+C{C1+C2}+D+E{E1+E2}}(a{ε+b+c{c1+c2}+d+e{e1+e2}}+位置(右上+右下)))
+伝票ID2枚目(A{ε+B+C{C1+C2}+D+E{E1+E2}}(a{ε+b+c{c1+c2}+d+e{e1+e2}}))
+MEMO(1(あいう)+2(ABC))
+・・・という伝票の束、およびメモMEMOを記述する情報がメモリ12に格納されていた場合を考える。ここで、MEMOを1枚目の伝票の右上に、位置を指定して張り付ける例を示す。In addition, the first slip ID (A {ε + B + C {C1 + C2} + D + E {E1 + E2}} (a {ε + b + c {c1 + c2} + d + e {e1 + e2}} + position (upper right + lower right)))
+ Slip ID 2nd sheet (A {ε + B + C {C1 + C2} + D + E {E1 + E2}} (a {ε + b + c {c1 + c2} + d + e {e1 + e2}}))
+ MEMO (1 (That) +2 (ABC))
Consider a case in which information that describes a bundle of slips +... And a memo MEMO is stored in the
この例で,MEMOの1を1枚目の伝票の右上に張り付けるには,まず、MEMO情報の因子”1”,伝票1枚目の情報の因子”右上”でそれぞれ商空間が作成される。
伝票ID1枚目(A{ε+B+C{C1+C2}+D+E{E1+E2}}(a{ε+b+c{c1+c2}+d+e{e1+e2}}+位置(右下)))+伝票ID1枚目×位置(右上)
+伝票ID2枚目(A{ε+B+C{C1+C2}+D+E{E1+E2}}(a{ε+b+c{c1+c2}+d+e{e1+e2}}))
+MEMO(2(ABC))+MEMO(1(あいう))
+・・・
ここで,”1”と”右上”の関係付けを指定し接着すると、接着情報は、
{伝票ID1枚目×位置+MEMO}{右上+1}{ε+(あいう)}+剰余の部分集合を含む情報、として構成される。このように、接着情報は、相互に構造上の共通性がない2つの対象情報について、それぞれの接着前の構造を維持した状態で、2つの対象情報結合し、メモリ12に格納することができる。
(6)セル空間情報
セル空間情報は、事物の属性とその属性に対応する属性値とを有する情報である。属性は、キー属性とその他の属性とに分かれる。キー属性は属性値によって情報が識別できる属性であり、データベースの検索においてキーとして使用できる値に対応する。セル空間情報で、属性値(またはその並び)は、インスタンスと呼ばれ、従来のデータベースのレコードに相当する。それぞれのインスタンスは、インスタンスIDと呼ぶ識別情報を有する。また、キー属性、あるいは、その他の属性が複数個ある場合には、キー属性、あるいは、その他の属性は、第2の括弧“{”と“}”とによって順序が維持された因子の形式で記述される。すなわち、いわゆるベクトル形式にて属性とその対応する属性値が記述される。
In this example, to stick one of MEMO in the upper right corner of the first sheet of documents, first, MEMO information of the factor "1", each quotient space Ru is created by a factor "upper right" of the first sheet of information slip .
Slip ID first sheet (A {ε + B + C {C1 + C2} + D + E {E1 + E2}} (a {ε + b + c {c1 + c2} + d + e {e1 + e2}} + position (lower right))) + slip ID first sheet × position (upper right)
+ Slip ID 2nd sheet (A {ε + B + C {C1 + C2} + D + E {E1 + E2}} (a {ε + b + c {c1 + c2} + d + e {e1 + e2}}))
+ MEMO (2 (ABC)) + MEMO (1 (something))
+ ...
Here, when the relationship between “1” and “upper right” is specified and adhered,
{Slip ID 1st sheet × position + MEMO} {upper right + 1} {ε + (something)} + information including a subset of remainder. In this way, the bonding information can be stored in the
(6) Cell space information Cell space information is information having attributes of things and attribute values corresponding to the attributes. Attributes are divided into key attributes and other attributes. A key attribute is an attribute whose information can be identified by an attribute value, and corresponds to a value that can be used as a key in a database search. In cell space information, an attribute value (or a sequence thereof) is called an instance and corresponds to a record in a conventional database. Each instance has identification information called an instance ID. In addition, when there are a plurality of key attributes or other attributes, the key attributes or other attributes are in the form of factors whose order is maintained by the second brackets “{” and “}”. Described. That is, the attribute and its corresponding attribute value are described in a so-called vector format.
セル空間情報は、セル空間ID(本発明のセル空間識別子に相当)と、キー属性の因子と、単位元およびキー属性以外の属性を含む属性を有する因子と、インスタンスの集合を有する因子とを含む。セル空間情報は、
セル空間ID×(キー属性×{ε+(その他の属性の和)}
×((インスタンスID×{ε+(値の和)})の和))
で構成される。The cell space information includes a cell space ID (corresponding to the cell space identifier of the present invention), a key attribute factor, a factor having attributes other than the unit element and the key attribute, and a factor having a set of instances. Including. Cell space information
Cell space ID × (key attribute × {ε + (sum of other attributes)}
X (sum of instance ID x {ε + (sum of values)})))
Consists of.
このキー属性の因子と単位元およびキー属性以外の属性を含む属性を有する因子とが、本発明の属性因子に相当する。また、{ε+(その他の属性の和)}の中のいずれかの属性が複数の識別子の積からなる場合に、そのような識別子の積からなる属性が、本発明の属性の順序列に相当する。また、そのような属性が、第2の括弧“{}”で括られた因子である場合に、その第2の括弧で括られた属性が、本発明の属性の順序因子に相当する。 The factor of the key attribute and the factor having an attribute including attributes other than the unit element and the key attribute correspond to the attribute factor of the present invention. Further, when any attribute in {ε + (sum of other attributes)} is made up of a plurality of identifiers, the attribute made up of such identifiers corresponds to the attribute sequence of the present invention. To do. In addition, when such an attribute is a factor enclosed by the second parenthesis “{}”, the attribute enclosed by the second parenthesis corresponds to the attribute order factor of the present invention.
また、そのような属性に対応して、インスタンスの{ε+(値の和)}中の値が、識別子の積からなるときに、その値が、本発明の値列に相当する。また、値が、第2の括弧“{}”で括られた因子である場合に、その第2の括弧で括られた値が、本発明の値の順序因子に相当する。
(例)
セル空間情報の例は、
果物id×(名前{ε+形+色}(リンゴ{ε+丸+赤}+ミカン{ε+丸+黄}+バナナ{ε+細長+黄}))
+野菜id×(名前{ε+形状+色}(大根{ε+太+白}+キュウリ{ε+細+緑}+ゴボウ{ε+細+茶}))
で示すことができる。この例では、従来のリレーショナルモデルで、果物テーブル、野菜テーブルとして記述されていた情報が、式表現で記述される。なお、この例は、2つのセル空間情報(果物と野菜)を含むことから、統合セル空間情報とも呼ばれる。
Corresponding to such an attribute, when the value in {ε + (sum of values)} of the instance is a product of identifiers, the value corresponds to the value string of the present invention. In addition, when the value is a factor enclosed by the second parenthesis “{}”, the value enclosed by the second parenthesis corresponds to the order factor of the values of the present invention.
(Example)
An example of cell space information is
Fruit id × (name {ε + shape + color} (apple {ε + circle + red} + mandarin {ε + circle + yellow} + banana {ε + stripe + yellow}))
+ Vegetable id x (name {ε + shape + color} (radish {ε + thick + white} + cucumber {ε + fine + green} + burdock {ε + fine + brown}) )
Can be shown. In this example, information described as a fruit table and a vegetable table in the conventional relational model is described in a formula expression. In addition, since this example contains two cell space information (fruit and vegetable), it is also called integrated cell space information.
この統合セル空間情報の処理例を示す。まず、果物のインスタンスのうち、属性“形”が“細長”の値を持つインスタンスとの部分集合(商という)と、その他のインスタンスの部分集合(剰余という)とを作成する。また、まず、野菜のインスタンスのうち、属性“形状”が“細”の値を持つインスタンス(商という)と、その他のインスタンス(剰余という)とに分離する。この場合、結合セル空間情報は、
果物id×バナナ×形×細長
+野菜id×形状×(キュウリ+ゴボウ)細
+果物id×(名前{ε+形+色}(リンゴ{ε+丸+赤}+ミカン{ε+丸+黄}+バナナ{ε+黄}))
+野菜id×(名前{ε+形状+色}(大根{ε+太+白}+キュウリ{ε+緑}+ゴボウ{ε+茶}))
となる。次に、果物のうちの属性“形”が値“細長”を有する部分集合と、野菜のうちの属性“形状”が値“細”を有する部分集合との関係付けを指定し、同値関係を設定する。そして、この同値関係によって接着空間情報を作成すると、
{果物id×形×バナナ+野菜id×形状×(キュウリ+ゴボウ)}{細長+細}{ε+ε}
+果物id×(名前{ε+形+色}(リンゴ{ε+丸+赤}+ミカン{ε+丸+黄}+バナナ{ε+黄}))
+野菜id×(名前{ε+形状+色}(大根{ε+太+白}+キュウリ{ε+緑}+ゴボウ{ε+茶}))
となる。
(記述例)
以下、従来のデータ構造である表およびツリー構造が、本実施形態のデータ構造でどのように記述できるかを示す。A processing example of this integrated cell space information is shown. First, a subset (referred to as a quotient) of instances having an attribute “shape” having a value of “elongated” and a subset (referred to as a remainder) of other instances among the instances of fruit are created. First, among the vegetable instances, the attribute “shape” is separated into an instance having a value of “fine” (referred to as a quotient) and another instance (referred to as a remainder). In this case, the combined cell space information is
Fruit id x Banana x Shape x Slender + Vegetable id x Shape x (Cucumber + Burdock) Fine + Fruit id x (Name {ε + Shape + Color) (Apple {ε + Circle + Red} + Tangerine {ε + Circle + Yellow} + Banana) {Ε + yellow}))
+ Vegetable id × (name {ε + shape + color) (radish {ε + thick + white} + cucumber {ε + green} + burdock {ε + tea}))
It becomes. Next, specify the relationship between the subset of the fruit attribute “shape” with the value “stripe” and the vegetable attribute “shape” with the value “stripe”, and set the equivalence relationship Set. And when creating the adhesion space information by this equivalence relationship,
{Fruit id x Shape x Banana + Vegetable id x Shape x (Cucumber + Burdock)} {Elongated + Thin} {ε + ε}
+ Fruit id x (name {ε + shape + color} (apple {ε + circle + red} + tangerine {ε + circle + yellow} + banana {ε + yellow}))
+ Vegetable id × (name {ε + shape + color) (radish {ε + thick + white} + cucumber {ε + green} + burdock {ε + tea}))
It becomes.
(Example)
Hereinafter, it will be shown how the table and tree structure, which are conventional data structures, can be described by the data structure of the present embodiment.
図3は、第1の実施形態に係る情報処理装置100のメモリ12に格納されるセル空間情報の第一のデータ構造例を示す。同図に示すように、第1の実施形態に係る情報処理装置100では、従来正規化表構造として表形式で表現される対象情報は、表現形式1の状態でメモリ12に格納することができる。表現形式1で、Aは、キー属性(例えば社員番号等)、B,C,D,E等は、その他の属性(例えば、氏名、性別、入社年、所属部署等)である。 FIG. 3 shows a first data structure example of cell space information stored in the
図2は、第1の実施形態に係る情報処理装置100のメモリ12に格納されるセル空間情報の第二のデータ構造例を示す。同図に示すように、第1の実施形態に係る情報処理装置100では、従来ツリー構造として表現される対象情報は、表現形式2又は3でメモリ12に格納することができる。そして、同図に示すように有向グラフの一部としてのツリー構造について対応可能である。表現形式2で、aは、例えば、動物、bはほ乳類、cは魚類、dは人、eは鯨、fはマグロ、gは鯉等である。この場合、b(ほ乳類)およびc(魚類)は、a(動物)の属性、例えば、食する、呼吸する等を継承する。b(ほ乳類)およびc(魚類)の共通の属性は、a(動物)に定義される。 FIG. 2 shows a second data structure example of the cell space information stored in the
したがって、本実施形態の式表現によって、フレーム等の知識ベース、あるいは、オブジェクト指向データベース等を記述し、メモリ12に格納できる。情報処理装置100は、これらに対応する事物に関する情報の入力を入力部11から受け付け、対応する情報を生成し、メモリ12に格納し、メモリから読み出し、出力部14に出力できる。 Therefore, a knowledge base such as a frame or an object-oriented database can be described and stored in the
また、逆ツリー構造で表現される対象情報についても、表現形式3のようにメモリ12に格納することができる。逆ツリー情報は、基本的な情報からより複雑な情報を構成する場合に適用できる。表現形式3では、例えば、aはCPUであり、bはインターフェースであり、cは外部記憶装置の駆動部であり、dはCPUボードであり、eは外部記憶装置であり、fはパーソナルコンピュータである。 Further, target information expressed in an inverted tree structure can also be stored in the
このように逆ツリー構造は、製品の設計書、事業の工程管理図等、基本情報からより複雑な情報を組み上げて管理することができる。したがって、本実施形態の式表現によって、製品の設計情報、事業の工程等を記述し、メモリ12に格納できる。情報処理装置100は、これらに対応する事物に関する情報の入力を入力部11から受け付け、対応する情報を生成し、メモリ12に格納し、メモリから読み出し、出力部14に出力できる。 In this way, the reverse tree structure can be managed by assembling more complex information from basic information such as product design documents and business process control charts. Therefore, product design information, business processes, and the like can be described and stored in the
図4は、第1の実施形態に係る情報処理装置100のメモリ12に格納される第三のデータ構造例を示す。同図に示すように、第1の実施形態に係る情報処理装置100では、非正規化表構造と属性のない対象情報についても表現形式4の状態でメモリ12に格納することができる。ここで、非正規化表構造と属性のない対象情報とは、図4に示すように伝票を示す対象情報と、その対象情報に追加される付箋メモに相当する対象情報とが例示できる。接着処理を実行し、接着空間を作成することで、コンピュータ上で伝票に付箋メモの内容を添付することと同等の処理が実現される。 FIG. 4 shows a third data structure example stored in the
なお、伝票の種類ごとにテーブルに格納する場合には、リレーショナルモデルによって従来のデータベースで情報を管理できる。しかしながら、伝票の種類数が変動する場合、既存の伝票の構成が変更された場合には、リレーショナルモデルでは、対応できない。 In the case of storing in the table for each type of slip, information can be managed in a conventional database by a relational model. However, when the number of types of slips fluctuates, the relational model cannot cope with changes in the configuration of existing slips.
ここで、本発明に係る所定の表現形式、すなわちデータ構造についてより詳細に上記表現形式4に基づいて説明する。ID又はid(identification)は、格納される対象情報を識別するものである。そしてこの対象情報は、識別子A〜E2,a〜e2と、演算時の結合強さが異なる第一の括弧()及び第二の括弧{}と、これらにより表現される因子{C1+C2},{E1+E2}等と、これら因子の積によって表現される項E{E1+E2}等と、前記項の和によって表現される式と、により構成される。なお、本実施形態では、項を要素ともいう。また、すでに述べたように、単位元εは、所定の処理を実行した場合に1として処理される記号である。上記以外の特別な記号として、所定の処理を実行した場合に0として処理される零元Φが存在する。このような状態でメモリ12に格納された対象情報は、CPU13が所定のプログラムを実行することによって、入力装置11から入力された伝票データにしたがって、生成され、メモリ12に格納され、部分集合に分離され、他の部分集合と接着され、あるいは、検索されることになる。 Here, the predetermined expression format, that is, the data structure according to the present invention will be described in more detail based on the
図4の例では、インスタンスとして、伝票ID1で示される1枚目の伝票、伝票ID2で示される2枚目の伝票、およびMEMOで示されるメモが例示されている。また、この場合に、1枚目の伝票と2枚目以降の伝票で、項目の構成が異なっても構わない。本情報処理装置100は、対象情報を構成する識別子、あるいは項に、個々に属性を付与できるので、異なる属性の並びを有する異なる識別子、あるいは項を自在に記憶し、検索し、変更できる。また、{}内に、+識別子の形式で追加するとともに、属性に対応する値を追加すれば、データベースとして運用中においても、自在に属性と属性値とを追加、変更、削除できる。したがって、本実施形態のデータ構造によれば、情報処理装置100が取り扱うデータを柔軟に変更でき、厳密、正確なファイル設計の必要性が軽減される。
(基本演算手順)
図5に、本情報処理装置におけるプログラム構成を示す。本情報処理装置100は、例えば、データを格納し、検索し、変更し、表示するデータベースシステム等、様々事物を管理するシステムに適用できる。その場合、個々の管理対象に応じた機能は、アプリケーションプログラムAPとして提供される。すなわち、アプリケーションプログラムは、入力部11から入力されたデータをメモリ12あるいは外部記憶装置に格納し、これらに格納されたデータにアクセスし、検索し、出力部14に表示する。In the example of FIG. 4, the first slip indicated by the slip ID1, the second slip indicated by the slip ID2, and the memo indicated by MEMO are illustrated as instances. In this case, the configuration of items may be different between the first slip and the second and subsequent slips. Since the
(Basic calculation procedure)
FIG. 5 shows a program configuration in the information processing apparatus. The
一方、アプリケーションプログラムがメモリ12あるいは、外部記憶装置に格納するデータの生成、格納、検索等の機能は、上述の式表現を処理する共通関数ライブライリが提供する。共通関数ライブラリは、アプリケーションインターフェースを備えており、アプリケーションプログラムへのこれらの機能、あるいは、サービスを提供する。以下、本情報処理装置100で典型的な共通関数の例を説明する。これらの共通関数は、プリミティブ関数、あるいは、基本演算とも呼ばれる。 On the other hand, functions such as generation, storage, and retrieval of data stored in the
アプリケーションプログラムからそれぞれの共通関数が呼び出されたときに、本発明の処理手段に相当するCPU13が以下の処理を実行する。 When each common function is called from the application program, the
(1)積結合演算
積結合演算では、CPU13は、識別子と識別子とを積演算子によって接続する。積結合演算を実行するCPU13が本発明の積演算部に相当する。この場合、識別子自体が式表現であり、識別子が接続された結果も式表現となる。積結合演算のアプリケーションインターフェースは、例えば、戻り値=connect(因子1、因子2、演算結果);のように定義できる。本実施形態では、式表現が文字列で記述されるので、“因子1”、“因子2”、および“演算結果”は、いずれも文字列である。因子1、および因子2として、識別子、複数の識別子を積結合演算で結合した式表現、第1の括弧“()”で囲まれた式表現、第2の括弧“{}”で囲まれた式表現、ε、およびΦを指定できる。積結合演算では、演算結果には、因子1×因子2が返される。すなわち、因子1と因子2との結合は、記号“×”(以下、積記号)で記述される。すなわち、積結合演算は、因子1と因子2との積演算による演算式を形成する。(1) Product Join Operation In the product join operation, the
一方、図9で説明する積演算では、因子1と因子2との積を実行する。因子1と因子2に、第1の括弧“()”および第2の括弧“{}”のいずれもが含まれていない場合には、積結合演算と積演算の結果は、同一である。因子1と因子2に、第1の括弧“()”および第2の括弧“{}”のいずれかが含まれている場合には、積演算の結果は、それの括弧内の項と、括弧外の因子との演算となる。 On the other hand, in the product operation described in FIG. 9, the product of
また、戻り値は、処理が正常終了したか否かを示す情報である。ただし、本実施形態では、戻り値の設定処理についての説明は、省略する。 The return value is information indicating whether or not the process has been normally completed. However, in this embodiment, the description of the return value setting process is omitted.
(2)和演算
和演算では、CPU13は、識別子および因子の列として接続された複数の識別子のいずれかまたは両方から項の組み合わせを構成する。和演算を実行するCPU13が本発明の和演算部に相当する。この場合、識別子あるいは因子が式表現であるので、項の組み合わせも式表現となる。和演算のアプリケーションインターフェースは、例えば、戻り値=add(項1、項2、演算結果);のように定義できる。演算結果には、項1+項2が返される。すなわち、項1と項2との和は、記号“+”(以下、和記号)で記述される。(2) Sum Operation In the sum operation, the
(3)項抽出処理、因子抽出処理
項抽出演算では、CPU13は、和記号“+”で組み合わせられた複数の項から、いずれかの項を取り出す。本実施形態では、複数の項のうち、先頭の項を取り出す。項抽出処理のアプリケーションインターフェースは、例えば、戻り値=getterm(式表現、演算結果);のように定義できる。項抽出処理を実行するCPU13が本発明の項抽出部に相当する。(3) Term Extraction Processing, Factor Extraction Processing In the term extraction calculation, the
同様に、因子抽出演算では、CPU13は、積記号“×”で組み合わせられた複数の因子の並びから、いずれかの因子を取り出す。本実施形態では、複数の因子のうち、先頭の因子を取り出す。因子抽出処理のアプリケーションインターフェースは、戻り値=getfactor(式表現、演算結果);のように定義できる。因子抽出処理を実行するCPU13が本発明の因子抽出部に相当する。 Similarly, in the factor extraction calculation, the
(4)集合構成処理
集合構成処理では、CPU13は、和記号“+”で組み合わせられた複数の項を第1の括弧“()”で括る処理を実行する。集合構成処理のアプリケーションインターフェースは、例えば、戻り値=putin1(式表現、演算結果);のように定義できる。演算結果には、(式表現)が返される。集合構成処理を実行するCPU13が本発明の集合因子構成部に相当する。(4) Set Configuration Process In the set configuration process, the
(5)集合展開処理
集合展開処理では、CPU13は、第1の括弧“()”で括られた式表現から、第1の括弧“()”を取り除く処理を実行する。集合展開処理のアプリケーションインターフェースは、例えば、戻り値=putoff1(式表現、演算結果);のように定義できる。集合展開処理を実行するCPU13が本発明の集合因子展開部に相当する。(5) Set Expansion Process In the set expansion process, the
(6)順序構成処理
順序構成処理では、CPU13は、和記号“+”で組み合わせられた複数の項を第2の括弧“{}”で括る処理を実行する。集合構成処理のアプリケーションインターフェースは、例えば、戻り値=putin2(式表現、演算結果);のように定義できる。順序構成処理を実行するCPU13が本発明の順序生成部に相当する。(6) Order Configuration Processing In the order configuration processing, the
(7)順序展開
順序展開処理では、CPU13は、第2の括弧“{}”で括られた式表現から、第2の括弧“{}”を取り除く処理を実行する。集合展開処理のアプリケーションインターフェースは、例えば、戻り値=putoff2(式表現、演算結果);のように定義できる。順序展開処理を実行するCPU13が本発明の順序展開部に相当する。(7) Order Expansion In the order expansion process, the
(8)共通因子括りだし処理
共通因子括りだし処理では、CPU13は、第1の括弧“{}”または第2の括弧“()”が付加された項の組み合わせに含まれる項から共通の因子を抽出する。共通因子括りだし処理のアプリケーションインターフェースは、例えば、戻り値=and(式表現、演算結果);のように定義できる。ここで、式表現には、複数の項が和記号で組み合わせられた式である。共通因子括りだし処理を実行するCPU13が本発明の括り出し部に相当する。(8) Common factor grouping process In the common factor grouping process, the
(9)横方向展開処理
横方向展開処理は、横方向展開処理とは第一又は第二の括弧を一回外す、すなわち展開する処理である。横方向展開処理のアプリケーションインターフェースは、例えば、戻り値=expand1(展開前の式表現、展開後の式表現);のように定義できる。(9) Horizontal development process The horizontal development process is a process in which the first or second parenthesis is removed once, that is, developed. An application interface for horizontal expansion processing can be defined as, for example, return value = expand1 (expression expression before expansion, expression expression after expansion).
図6Aは、横方向展開処理を実行する処理のフローを示す。具体的には、ステップS101では、対象情報(“展開前の式表現”)が入力される。すなわち、メモリ12に対象情報が例えばユーザにより入力される。そして、CPU13は、入力された式表現を展開前の式表現に指定して、共通関数expand1が実行される。 FIG. 6A shows a flow of processing for executing the horizontal development processing. Specifically, in step S101, target information (“expression expression before expansion”) is input. That is, target information is input to the
以下、対象情報として数6に示すデータを用いた場合について説明する。なお、項の数及び因子の数は、左から順に第一、第二のように割り当てられるものとし、2重、3重の括弧で括られている場合には、最も外側の括弧を第一として扱うものとする。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2))・・・(数6)
ステップS102では、入力された対象情報を横方向展開処理した項をΦに設定、すなわち初期化する。なお、各展開処理の詳細については後述する。ステップS103では、対象情報を構成する式の長さが0であるかを判断する。すなわち、対象情報が存在するか否かを判断する。式の長さが0であると判断した場合には、ステップS114へ進み横方向展開処理を終了する。一方、式の長さが0であると判断しなかった場合には、次のステップへ進む。Hereinafter, the case where the data shown in
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)) (Equation 6)
In step S102, the term obtained by subjecting the input target information to the lateral expansion process is set to Φ, that is, initialized. Details of each expansion process will be described later. In step S103, it is determined whether the length of the expression constituting the target information is zero. That is, it is determined whether target information exists. If it is determined that the length of the expression is 0, the process proceeds to step S114, and the horizontal development process ends. On the other hand, if it is not determined that the length of the expression is 0, the process proceeds to the next step.
ステップS104では、数6で表現される対象情報から第一項を取得する。すなわち、数7に示すデータを取得する。ステップS105では、取得した数7で表現される対象情報をメモリ12に保存する。なお、ここでいう保存とは変数に保存すること、すなわちメモリ12に所定の領域を確保して記録することを意味する。また、以下の処理において取得するステップと削除するステップの間に行われる処理で言う保存は、上記同様メモリ12に所定の領域を確保して記録することを意味することとする。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))・・・(数7)
ステップS106では、数6の式表現から数7を削除する。これにより、数8により表現されるデータがメモリ12に存在することになる。
s(p(p1+p2)+q(q1+q2))・・・(数8)
ステップS107では、横方向展開処理後の因子をεに設定する。次にステップS108では、項の長さが0であるかを判断する。すなわち、対象情報を構成する項が存在するか否かを判断する。項の長さが0であると判断した場合には、ステップS113へ進み横方向展開処理を終了する。一方、式の長さが0であると判断しなかった場合には、次のステップへ進む。In step S104, the first term is acquired from the target information expressed by
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) (Expression 7)
In step S106,
s (p (p1 + p2) + q (q1 + q2)) (Equation 8)
In step S107, the factor after the horizontal development process is set to ε. Next, in step S108, it is determined whether the term length is zero. That is, it is determined whether or not there is a term constituting the target information. If it is determined that the term length is 0, the process proceeds to step S113 and the lateral development process is terminated. On the other hand, if it is not determined that the length of the expression is 0, the process proceeds to the next step.
ステップS109では、第一項から第一因子であるcellを取得する。ステップ110では、取得した第一因子cellをメモリ12に保存する。次にステップ111では、第一因子cellを第一項より削除する。 In step S109, the first factor cell is acquired from the first term. In
ステップS112では、展開後の因子に対し取得した因子を積演算し、その結果を展開後の因子とする。すなわち、ステップS107で設定した展開後の因子εにステップS109で取得した第一因子cellを積演算する。積演算の展開処理については後述する。その後、第一項の項の長さが0であると判断されるまでステップS108からステップS112の処理を繰り返す。 In step S112, the obtained factor is subjected to product operation with respect to the expanded factor, and the result is set as the expanded factor. That is, the first factor cell acquired in step S109 is multiplied by the expanded factor ε set in step S107. Product expansion processing will be described later. Thereafter, the processing from step S108 to step S112 is repeated until it is determined that the length of the first term is zero.
ステップS113では、ステップS108で項の長さが0であると判断した場合に、展開後の項に対し展開後の因子の和演算を行い、その結果を展開後の項と設定する。その後、式の長さが0であると判断されるまでステップS103からステップS113の処理を繰り返す。以上のステップを実行することにより、展開後の対象情報は数9により表現される。この式表現が“展開後の式表現”として、アプリケーションプログラムに返されることになる。なお、横方向展開処理を実行中の対象情報の状態の詳細は図6B、図6Cに示す。
cell×id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})+s×p(p1+p2)+s×q(q1+q2)・・・(数9)
このように、数6の最も外側の“(”と“)”とがはずされた式表現となっている。他の例としては、例えば、a(b+c(d+e))+f(g+h)という式表現を横方向展開した場合には、a×b+ a×c(d+e)+f×g+f×h になる。In step S113, when it is determined in step S108 that the length of the term is 0, the uncompressed factor is summed for the expanded term, and the result is set as the expanded term. Thereafter, the processing from step S103 to step S113 is repeated until it is determined that the length of the expression is zero. By executing the above steps, the expanded target information is expressed by
cell × id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) + s × p (p1 + p2) + s × q (q1 + q2) (Equation 9)
In this way, the outermost expression “(” and “)” in
(10)縦方向展開処理
次に、縦方向展開処理について説明する。縦方向展開処理は、各項をそれぞれ全展開していく処理である。例えば、上記a(b+c(d+e))+f(g+h)について,縦方向展開するとa×b+a×c×d+a×c×e+f×g+f×h になる。一方、横方向展開で式を全展開するには,各項に括弧が無くなるまで各項を展開するという指定が必要となる。縦方向展開処理のアプリケーションインターフェースは、例えば、戻り値=expand2(展開前の式表現、展開後の式表現);のように定義できる。(10) Vertical Development Process Next, the vertical development process will be described. The vertical development process is a process in which each term is fully developed. For example, when a (b + c (d + e)) + f (g + h) is expanded in the vertical direction, a × b + a × c × d + a × c × e + f × g + f × h become. On the other hand, to fully expand an expression by lateral expansion, it is necessary to specify that each term is expanded until there are no parentheses in each term. An application interface for vertical expansion processing can be defined as, for example, return value = expand2 (expression expression before expansion, expression expression after expansion).
図7は、縦方向展開処理を実行する処理のフローを示す。図7では、図6と同一の処理を実行するステップは、同一の符号で示している。ステップS101では、対象情報(“展開前の式表現”)を入力する。例えば、ユーザインターフェース等を通じて、展開前の式表現が入力される。そして、メモリ12に格納される対象情報がアプリケーションプログラムから共通関数expand2に入力される。以下、対象情報として数10に示すデータを用いた場合について説明する。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2))・・・(数10)
ステップS102では、入力された対象情報を展開処理したときに得られる対象情報(項)をΦに設定する。ステップS103では、対象情報を構成する式の長さが0であるかを判断する。すなわち、対象情報が存在するか否かを判断する。式の長さが0であると判断した場合には、ステップS114へ進み縦方向展開処理を終了する。一方、式の長さが0であると判断しなかった場合には、次のステップへ進む。ステップS104では、数10から第一項を取得する。すなわち、数11に示すデータを取得する。ステップS105では、取得した数11で表現される対象情報をメモリ12に保存する。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))・・・(数11)
ステップS106では、数10から数11を削除する。これにより、メモリ12には、数12により表現されるデータが存在することになる。
s(p(p1+p2)+q(q1+q2))・・・(数12)
ステップS107では、第一項を展開したときに得られる、展開後の因子をεに設定する。次にステップS108では、項の長さが0であるかを判断する。すなわち、対象情報を構成する項が存在するか否かを判断する。項の長さが0であると判断した場合には、ステップS113へ進み縦方向展開処理を終了する。一方、式の長さが0であると判断しなかった場合には、次のステップへ進む。FIG. 7 shows a flow of processing for executing the vertical development processing. In FIG. 7, steps for executing the same processing as in FIG. 6 are denoted by the same reference numerals. In step S101, target information (“expression expression before expansion”) is input. For example, an expression expression before expansion is input through a user interface or the like. Then, the target information stored in the
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)) (Equation 10)
In step S102, the target information (term) obtained when the input target information is expanded is set to Φ. In step S103, it is determined whether the length of the expression constituting the target information is zero. That is, it is determined whether target information exists. If it is determined that the length of the expression is 0, the process proceeds to step S114, and the vertical development process is terminated. On the other hand, if it is not determined that the length of the expression is 0, the process proceeds to the next step. In step S104, the first term is acquired from Equation 10. That is, the data shown in
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) (Equation 11)
In step S106, Equations 10 to 11 are deleted. As a result, the
s (p (p1 + p2) + q (q1 + q2)) (Equation 12)
In step S107, the expanded factor obtained when the first term is expanded is set to ε. Next, in step S108, it is determined whether the term length is zero. That is, it is determined whether or not there is a term constituting the target information. If it is determined that the term length is 0, the process proceeds to step S113 and the vertical development process is terminated. On the other hand, if it is not determined that the length of the expression is 0, the process proceeds to the next step.
ステップS109では、第一項から第一因子であるcellを取得する。ステップ110では、取得した第一因子cellをメモリ12に所定の領域を確保して保存する。次にステップ111では、第一因子cellを第一項より削除する。 In step S109, the first factor cell is acquired from the first term. In
ステップS112aでは、因子が第一の括弧又は第二の括弧で括られているとき、括弧内の式について縦方向展開処理を実行し(すなわち、再帰呼び出しを実行する)、結果を取得した因子とする。次にステップS112bでは、展開後の因子に対し取得した因子を積演算し、その結果を展開後の因子とする。積演算の展開処理については後述する。その後、第一項の項の長さが0であると判断されるまでステップS108からステップS112の処理を繰り返す。 In step S112a, when the factor is enclosed in the first parenthesis or the second parenthesis, the vertical expansion process is executed for the expression in the parenthesis (that is, the recursive call is executed), and the factor that has obtained the result is To do. Next, in step S112b, a product operation is performed on the acquired factor with respect to the expanded factor, and the result is used as the expanded factor. Product expansion processing will be described later. Thereafter, the processing from step S108 to step S112 is repeated until it is determined that the length of the first term is zero.
ステップS113では、ステップS108で項の長さが0であると判断した場合に、展開後の項に対し展開後の因子の和演算を行い、その結果を展開後の項と設定する。その後、式の長さが0であると判断されるまで再帰的にステップS103からステップS113の処理を繰り返す。以上のステップを実行することにより、展開後の対象情報は数13により表現される。そして、この式表現が“展開後の式表現”として、アプリケーションプログラムに引き渡される。なお、上記ステップを実行中の対象情報の状態の詳細は図8Aから図8Dに示す。
cell×id×1+cell×id×A×1×a1+cell×id×B×1×b1+cell×id×C×1×c1+cell×id×2+cell×id×A×2×a2+cell×id×B×2×b2+cell×id×C×2×c2+s×p×p1+s×p×p2+s×q×q1+s×q×q2・・・(数13)
(11)積演算処理
次に積演算処理について説明する。積演算処理は、2つの式表現を入力し、それぞれの式表現を因子とする新たな式表現を生成する処理である。積演算処理のアプリケーションインターフェースは、例えば、戻り値=product(因子1、因子2、積演算後の式);のように定義できる。積演算処理を実行するCPU13が本発明の共通因子展開部に相当する。In step S113, when it is determined in step S108 that the length of the term is 0, the uncompressed factor is summed for the expanded term, and the result is set as the expanded term. Thereafter, the processing from step S103 to step S113 is recursively repeated until it is determined that the length of the expression is zero. By executing the above steps, the expanded target information is expressed by
cell * id * 1 + cell * id * A * 1 * a1 + cell * id * B * 1 * b1 + cell * id * C * 1 * c1 + cell * id * 2 + cell * id * A * 2 * a2 + cell * id * B * 2 * b2 + cell * id × C × 2 × c2 + s × p × p1 + s × p × p2 + s × q × q1 + s × q × q2 (Equation 13)
(11) Product Operation Processing Next, product operation processing will be described. The product operation process is a process of inputting two expression expressions and generating a new expression expression using each expression expression as a factor. An application interface for product operation processing can be defined as, for example, return value = product (
図9は、積演算処理を実行する処理のフローを示す。まずステップS201では、第一の因子(“因子1”)及び第二の因子(“因子2“)がアプリケーションプログラムから関数productに入力される。その結果、それぞれの因子がメモリ12の対応する領域に新たに記憶される。 FIG. 9 shows a flow of processing for executing product operation processing. First, in step S201, the first factor (“
ステップS202では、どちらかの因子がεであるかを判断する。どちらかの因子がεであると判断された場合には他方の因子がデータを構成することになり(ステップS203)、積演算処理を終了する。一方、どちらかの因子がεであると判断されなかった場合には次のステップへ進む。 In step S202, it is determined which factor is ε. If it is determined that one of the factors is ε, the other factor constitutes data (step S203), and the product calculation process is terminated. On the other hand, if it is not determined that either factor is ε, the process proceeds to the next step.
ステップS204では、どちらかの因子がΦであるかを判断する。どちらかの因子がΦであると判断された場合には演算後のデータはΦとなり(ステップS205)、積演算処理を終了する。一方、どちらかの因子がΦであると判断されなかった場合には次のステップへ進む。 In step S204, it is determined which factor is Φ. If it is determined that either factor is Φ, the data after the calculation is Φ (step S205), and the product calculation process is terminated. On the other hand, if either factor is not determined to be Φ, the process proceeds to the next step.
ステップS206では、両方の因子が第一の括弧により括られているかを判断する。両方の因子が第一の括弧により括られていると判断した場合には、互いの全項の全組み合わせでそれぞれ掛けた項の和として処理し(ステップS207)、次のステップへ進む。一方、両方の因子が第一の括弧により括られていると判断しなかった場合には、次のステップへ進む。 In step S206, it is determined whether both factors are enclosed in the first bracket. If it is determined that both factors are enclosed in the first parenthesis, they are processed as the sum of the terms multiplied by all the combinations of all the terms (step S207), and the process proceeds to the next step. On the other hand, if it is not determined that both factors are enclosed in the first bracket, the process proceeds to the next step.
ステップS208では、一方の因子が第一の括弧により括られているかを判断する。一方の因子が第一の括弧により括られていると判断し場合には、第一の括弧で括られている項に他方の因子をそれぞれ掛けた項の和として処理し(ステップS209)、次のステップへ進む。一方、一方の因子が第一の括弧により括られていると判断しなかった場合には、次のステップへ進む。 In step S208, it is determined whether one of the factors is enclosed by the first parenthesis. If it is determined that one factor is enclosed by the first parenthesis, it is processed as a sum of terms obtained by multiplying the term enclosed by the first parenthesis by the other factor (step S209). Go to step. On the other hand, if it is not determined that one factor is enclosed in the first bracket, the process proceeds to the next step.
ステップS210では、両方の因子が第二の括弧により括られているかを判断する。両方の因子が第二の括弧により括られていると判断した場合には、それぞれの第二の括弧内の同じ順序の項をそれぞれ掛けた項の和として処理し(ステップS211)、次のステップへ進む。このとき、第二の括弧は、そのまま維持されるので、演算の前後で第二の括弧内の項の順序はそのまま維持されている。一方、両方の因子が第二の括弧により括られていると判断しなかった場合には、次のステップへ進む。 In step S210, it is determined whether both factors are enclosed in second brackets. If it is determined that both factors are enclosed by the second parenthesis, it is processed as the sum of the terms multiplied by the same order terms in each second parenthesis (step S211), and the next step Proceed to At this time, since the second parenthesis is maintained as it is, the order of the terms in the second parenthesis is maintained as it is before and after the calculation. On the other hand, if it is not determined that both factors are enclosed in the second bracket, the process proceeds to the next step.
ステップS212では、一方の因子が第二の括弧により括られているかを判断する。一方の因子が第二の括弧により括られていると判断し場合には、第二の括弧で括られている全ての項に他方の因子をそれぞれ掛けた項の和として処理し(ステップS213)、その後積演算処理を終了する。一方、他方の因子が第二の括弧により括られていると判断しなかった場合には、互いの因子を掛けた項を作成し(ステップS214)、その後積演算処理を終了する。その結果、“積演算後の式表現“がアプリケーションプログラムに引き渡される。なお、図10に上記積演算処理の例とともに実際の処理を示す。
(12)商演算処理
次に商演算処理について説明する。商演算処理は、対象情報を記述する集合から、指定された因子(識別子を含む)を含む式表現(項、あるいは要素)と、そのような因子を含まない式表現とに分離する処理である。商演算処理のアプリケーションインターフェースは、例えば、戻り値=divide(商演算される式表現、商演算する因子、商の式表現、剰余の式表現);のように定義できる。本実施形態で、商演算は、“商演算する因子”を含む式表現を取り出す処理となる。そのため、商演算する因子のことを、同値関係を指定する因子ともいう。商演算する因子は、本発明の演算用因子に相当する。In step S212, it is determined whether one factor is enclosed in the second bracket. When it is determined that one factor is enclosed by the second parenthesis, it is processed as the sum of the terms obtained by multiplying all the terms enclosed by the second parenthesis with the other factor (step S213). Then, the product operation process is terminated. On the other hand, if it is not determined that the other factor is enclosed by the second parenthesis, a term multiplied by each other factor is created (step S214), and then the product operation process is terminated. As a result, “expression expression after product operation” is delivered to the application program. FIG. 10 shows an actual process together with an example of the product operation process.
(12) quotient calculation processing Next, quotient calculation processing will be described. The quotient calculation process is a process of separating a set describing target information into an expression expression (term or element) including a specified factor (including an identifier) and an expression expression not including such a factor. . An application interface for quotient calculation processing can be defined as, for example, return value = divide (expression expression for quotient calculation, factor for quotient calculation, expression for quotient, expression expression for remainder). In the present embodiment, the quotient calculation is a process of extracting an expression expression including “factor for quotient calculation”. For this reason, the factor that performs the quotient calculation is also called a factor that specifies the equivalence relation. The factor for the quotient calculation corresponds to the calculation factor of the present invention.
図11Aは、商演算処理(サブルーチン1)を実行する処理のフローを示す。サブルーチン1を実行するCPU13が本発明の商演算部に相当する。なお、図12Aは、商演算のうち、剰余を求める処理(サブルーチン2)である。サブルーチン1は、商演算される式表現である式1、商演算する因子を入力され、商の式表現である式2を出力する。 FIG. 11A shows a flow of processing for executing the quotient calculation processing (subroutine 1). The
まずステップ301では、商演算処理が実行される前の所定の表現形式によって表現される式1(“商演算される式表現”)、及び商演算する因子(これを同値関係示す因子ともいう)pが入力される。以下、数14により表現される対象情報が入力された場合について説明する。また、1を商演算する因子(同値関係を示す因子p)と設定する。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))・・・(数14)
次に、ステップS302では、CPU13は、演算後の商(商項ともいう、ここでは、項2で表す)を初期化する。このとき、項2の値は、Φ(空、または0)である。First, in
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) (Expression 14)
Next, in step S302, the
次に、ステップS303では、CPU13は、式1の長さが0であるか否かを判定する。式1の長さが0である場合、CPU13は、サブルーチン1の処理を終了する。 Next, in step S303, the
一方、ステップS303の判定において、式1の長さが0でなかった場合、CPU13は、ステップ304に処理を進める。そして、CPU13は、式1から始めの項(以下、項1という)を取得する。ここで、項1は、数14の全体である。さらに、ステップS305において、CPU13は、式1から項1を削除する。 On the other hand, if the length of
次に、ステップS306において、CPU13は、項1が因子p(ここでは、“1”)を含んでいるか否かを判定する。ここで、因子pを含んでいるとは、項1の因子としては、あるいは、項1の第1の括弧で括られた因子内の項のいずれかに、因子pを含むことを言う。すなわち、項1の式表現中に因子pが含まれるか否かを判定する。項1が因子pを含んでいない場合、CPU13は、項1を空とし、処理をS303に戻す。 Next, in step S306, the
一方、ステップS306の判定において、項1が因子pを含んでいる場合、CPU13は、処理をS308に進める。そして、CPU13は、項3を初期化し、空とする。ここで、項3は、始めの項である項1の商演算結果を格納する変数(メモリ12の領域)である。ここでは、数14の構成から、項1に因子p(=1)が含まれていると判定される。 On the other hand, if the
そして、ステップS309において、CPU13は、項1の長さが0であるか否かを判定する(S309)。項1の長さが0でない場合、ステップS310において、CPU13は、項1から始めの因子(以下、因子1という)を取得する。数14の構成から、因子“cell”が取得される。そして、ステップS311において、CPU13は、項1から因子1を削除する。 In step S309, the
次に、ステップS312において、CPU13は、因子1に商演算する因子pが含まれ、かつ、因子1が第1の括弧“(”と“)”とによって形成された因子であるとき、その括弧内の式を式1に設定し、サブルーチン1を再帰呼び出しする。そして、その再帰呼び出しによる処理結果を因子1とする。この処理によって、商演算される式中で、項に“()”による因子を含む場合は、その項は、()内の式が商演算されることになる。数14の構成の場合、“cell”が因子1の場合には、S312は、実行されない。また、cellの次の因子(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))が、因子1の場合には、S312により、再起呼び出しが実行されることになる。その結果、式表現中に因子p(この例では、1)を含む因子が抽出されることになる。 Next, in step S312, the
さらに、ステップS313によって、CPU13は、項3に対し因子1を積演算し、結果を項3とする。この処理によって、因子1に商演算される因子pが含まれる場合、そのまま項3に積演算されることになる。また、因子1が()の形式の因子の場合に、()内から因子pを含む項が取り出されることになる。そして、CPU13は、処理をS309に戻す。 Further, in
ステップS309の判定で、項1の長さが0となった場合、CPU13は、処理をステップS314に進める。そして、CPU13は、項2(商項)に対して、得られている項3を和演算する。さらに、ステップS315の処理で、CPU13は、項2を商演算後の式である式2に設定する。その後、CPU13は、処理をS302に戻す。 When the length of
そして、S302の判定で、式1の長さが0になると、CPU13は、サブルーチン1の処理を終了する。このような処理により、式2に、以下の数15Aの式表現が出力され、アプリケーションプログラムに引き渡される。 When the length of
cell×id{ε+A+B+C}×1{ε+a1+b1+c1}・・・(数15A)
図11Bおよび図11Cに、数14の式表現に対して、サブルーチン1が実行された場合の式1、項1、項2、項3、因子1、および式2の変化を示す。図11Bおよび図11Cの第1行目は、各列の要素、すなわち、図11A中の該当する処理を示す番号、式1、項1、項、項3、因子1、および式2を示している。第2行以下の各行は、一連の処理ステップであり、図11B上から下へ、さらに、図11Cの上から下へ実行される。cell × id {ε + A + B + C} × 1 {ε + a1 + b1 + c1} (Expression 15A)
FIG. 11B and FIG. 11C show changes in
そして、まず、ステップS301で、共通関数へのパラメータを介して、式1である数14が入力され、メモリ12に保持される。 First, in step S301, the
項1、因子1および項3に着目すると、これらのうち、“cell”および、id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が順次サブルーチン1で処理されることが分かる。 Focusing on the
さらに、id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が因子1としてS312で処理されるときに、再起呼び出しが発生する。そして、同様に、“id”、{ε+A+B+C}、および(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})がサブルーチン1の再起呼び出し1で処理される。 Further, when id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed as a
さらに、(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が、S312で処理されるときに、再起呼び出し2が発生する。そして、同様に、1{ε+a1+b1+c1}については、商演算する因子“1“が含まれているので、S306で、YESの判定がなされる。そして、S313によって、1と{ε+a1+b1+c1}とが項3に積演算される。 Further, when (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed in S312, a
一方、2{ε+a2+b2+c2}については、商演算する因子“1”が含まれていないので、S306で、NOの判定がなされる。その結果、これらの因子は、S307において、Φに設定され、削除される。その結果、再起呼び出し2で商演算の結果、式2として出力されるのは、1{ε+a1+b1+c1}となる。 On the other hand, for 2 {ε + a2 + b2 + c2}, since the factor “1” for quotient calculation is not included, NO is determined in S306. As a result, these factors are set to Φ and deleted in S307. As a result, 1 {ε + a1 + b1 + c1} is output as
さらに、再起呼び出し1では、S313の処理で、項3に積演算されていたid{ε+A+B+C}と再起呼び出し2での商演算の結果である1{ε+a1+b1+c1}とが、積演算され、id{ε+A+B+C}(1{ε+a1+b1+c1})が、式2として出力される。 Further, in the
さらに、そして、再起呼び出し1の前に、項3に積演算されていたcellと、再起呼び出し1による商演算の結果が積演算され、数15Aが式2として、最終的に出力されることになる。 Further, before the
次に、図12Aにより、剰余を求める処理(サブルーチン2)を説明する。サブルーチン1を実行するCPU13が本発明の剰余演算部に相当する。サブルーチン2は、商演算される式である式1、商演算する因子pを入力され、剰余の式3を出力する。 Next, referring to FIG. 12A, a process for obtaining a remainder (subroutine 2) will be described. The
まずステップ321では、商演算処理が実行される前の所定の表現形式によって表現される式1(“商演算される式”)、及び商演算する因子(同値関係示す因子p)が入力される。以下、図11Aの場合と同様、数14により表現される対象情報が入力された場合について説明する。また、1を商演算する因子(同値関係p)と設定する。 First, in
次に、ステップS322では、CPU13は、演算後の式(ここでは、式3と呼ぶ)を初期化する。このとき、式3の値は、Φ(空、または0)になる。 Next, in step S322, the
次に、ステップS323では、CPU13は、式1の長さが0であるか否かを判定する。式1の長さが0である場合、CPU13は、サブルーチン1の処理を終了する。 Next, in step S323, the
一方、ステップS323の判定において、式1の長さが0でなかった場合、CPU13は、ステップ324に処理を進める。そして、CPU13は、式1から始めの項(以下、項1という)を取得する。さらに、ステップS325において、CPU13は、式1から項1を削除する。 On the other hand, if the length of
次に、ステップS326において、CPU13は、演算後の項(以下、項4と呼ぶ)を初期化する。このとき、項4の値は、Φ(空、または0)になる。 Next, in step S326, the
次に、ステップS327において、CPU13は、項1の長さが0であるか否かを判定する。そして、項1の長さが0でない場合、CPU13は、ステップS328に処理を進める。そして、ステップS328において、CPU1は、項1から始めの因子(因子1)を取得する。さらに、ステップS329において、CPU13は、項1から因子1を削除する。 Next, in step S327, the
次に、ステップS329において、CPU13は、因子1が因子pと等しいか否かを判定する。そして因子1が因子pと等しい場合、ステップS331において、CPU13は、因子1をΦ(空、または0)にする。 Next, in step S329, the
次に、ステップS332において、CPU13は、因子1が第1の括弧“(”と“)”とによって形成された因子であるとき、その括弧内の式を式1に設定し、サブルーチン2を再帰呼び出しする。そして、その再帰呼び出しによる処理結果を因子1とする。この処理によって、商演算される式中で、“()”による因子を含む場合は、その因子は、()がはずされ、内の式から剰余(すなわち、因子pを含まない項)が抽出されることになる。 Next, in step S332, when the
さらに、ステップS333によって、CPU13は、項4に対し因子1を積演算し、結果を項4とする。この処理によって、因子1が商演算される因子pと異なる場合に、そのまま項3に積演算されることになる。また、因子1が()の形式の因子の場合に、()内から因子pを含まない項が取り出されることになる。そして、CPU13は、処理をS327に戻す。 Further, in step S333, the
ステップS327の判定で、項1の長さが0となった場合、CPU13は、処理をステップS334に進める。そして、CPU13は、式3(剰余項)に対して、得られている項4を和演算する。その後、CPU13は、処理をS323に戻す。 If it is determined in step S327 that the length of
そして、S323の判定で、式1の長さが0になると、CPU13は、サブルーチン2の処理を終了する。このような処理により、式3に、以下の数15Bの式表現が剰余として出力され、アプリケーションプログラムに引き渡される。
cell(id{ε+A+B+C}(Φ+2{ε+a2+b2+c2}))・・(数15B)
図12Bおよび図12Cに、数14の式表現に対して、サブルーチン2が実行された場合の式1、項1、項4、因子1、および式3の変化を示す。図12Bおよび図12Cの第1行目は、各列の要素、すなわち、図12A中の該当する処理を示す番号、式1、項1、項、項4、因子1、および式3を示している。第2行以下の各行は、一連の処理ステップであり、図12Bの表の上から下へ、さらに、図12Cの表の上から下へ実行される。When the length of
cell (id {ε + A + B + C} (Φ + 2 {ε + a2 + b2 + c2})) (Equation 15B)
12B and 12C show changes in
そして、まず、ステップS321で、共通関数へのパラメータを介して、式1である数14が入力され、メモリ12に保持される。 First, in
項1、因子1および項4に着目すると、これらのうち、“cell”および、id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が順次サブルーチン2で処理されることが分かる。 Focusing on
さらに、id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が因子1としてS332で処理されるときに、再起呼び出しが発生する。そして、同様に、“id”、{ε+A+B+C}、および(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})がサブルーチン1の再起呼び出し1で処理される。 Furthermore, when id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed as a
さらに、(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が、S332で処理されるときに、再起呼び出し2が発生する。そして、1{ε+a1+b1+c1}については、商演算する因子“1”が含まれているので、S330で、YESの判定がなされる。そして、S331によって、因子1にΦに設定され、因子1を含む項1全体がΦとなり、削除される。 Further, when (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed in S332, a
一方、2{ε+a2+b2+c2}については、商演算する因子“1”が含まれていないので、S330で、それぞれの因子1について、NOの判定がなされる。その結果、これらの因子は、S333において、項4に積演算される。その結果、再起呼び出し2の剰余演算の結果、式3として出力されるのは、2{Φ+a1+b1+c1}となる。 On the other hand, for 2 {ε + a2 + b2 + c2}, the factor “1” to be quotient-calculated is not included, and therefore, NO is determined for each
さらに、再起呼び出し1では、S333の処理で、項4に積演算されていたid{ε+A+B+C}と再起呼び出し2での商演算の結果である2{Φ+a1+b1+c1}とが、積演算され、id{ε+A+B+C}(2{Φ+a1+b1+c1})が、式3として出力される。 Further, in the
さらに、そして、再起呼び出し1の前に、項4に積演算されていたcellと、再起呼び出し1による商演算の結果が積演算され、数15Bが式3として、最終的に出力されることになる。
(13)接着演算処理
接着とは、本実施形態にて提案する概念であり、2つの被接着情報のそれぞれのデータ構造を維持した上で、それぞれ被接着情報を結合する機能である。接着においては、2つの被接着情報のそれぞれに含まれる情報で、互い関係付けられる情報(これを同値関係を指定された因子という)が指定される。そして、その関係付けられた因子(同値関係を有する因子)同士を介して、2つの被接着情報が結合される。Further, before the
(13) Adhesion Calculation Processing Adhesion is a concept proposed in the present embodiment, and is a function for combining the pieces of adherend information while maintaining the data structures of the two pieces of adherend information. In bonding, information included in each of two pieces of information to be bonded is specified as information related to each other (this is called a factor for which an equivalence relationship is specified). Then, the two pieces of adherend information are combined through the associated factors (factors having an equivalence relationship).
接着演算処理のアプリケーションインターフェースは、例えば、戻り値=attach(接着する式1、因子1、接着する式2,因子2、接着演算後の式);のように定義できる。ここで、因子1と、因子2とは、接着演算する式1の項と、式2の項とを関係付ける指定である。この指定によって、式1で因子1を含む項と、式2で因子2を含む項とが以下のような手順で結びつけられる。 The application interface of the adhesion calculation process can be defined as, for example, return value = attach (
図13は、接着演算処理を実行する処理のフローを示す。ステップS401では、接着する所定の表現形式によって表現される対象情報を入力する。以下の説明では、数16及び数17によって表現される対象情報を接着処理する場合について説明する。すなわち、数16が被接着式1であり、数17が被接着式2である。また、ここでは、数16の因子“2”と、数17の因子“q”との同値関係が指定されているとする。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))・・・(数16)
s(p(p1+p2)+q(q1+q2))・・・(数17)
ステップS402では、数16及び17の因子1、因子2による上述した商演算処理(サブルーチン1およびサブルーチン2)を実行して、得られた商と剰余とを和演算処理する。このサブルーチン1を実行し、商を取得するCPU13が、本発明の関連項抽出部に相当する。また、このサブルーチン2を実行し、剰余を取得するCPU13が、本発明の非関連項抽出部に相当する。その結果、“式1から得られた剰余+式1から得られた商+式2から得られた剰余+式2から得られた商”という形式の式が形成される。これを商演算後の式という。このうち、式1からの商を項1とし、式2から得られた商を項2とする。項1は、因子“2”を含む項である。また、項2は、因子“q”を含む項である。このように、同値関係を指定された因子1、因子2を含む項を、同値要素を表す項という。すなわち、式1に対して、因子“2”で商演算した商が項1であり、同値要素を表す項である。また、式2に対して、因子“q”で商演算した商が項2であり、これも同値要素を表す項である。FIG. 13 shows a flow of a process for executing the adhesion calculation process. In step S401, target information expressed by a predetermined expression format to be bonded is input. In the following description, a case will be described in which the target information expressed by
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) (Equation 16)
s (p (p1 + p2) + q (q1 + q2)) (Expression 17)
In step S402, the above-described quotient calculation process (
次にステップS403では、因子1および因子2を含む項1、2を取得し商演算後の式から削除する。さらに、因子1を含む項1、および因子2を含む項2をそれぞれ左因子と右因子とに分ける。ここで、左因子とは、ある項の因子pに着目した場合に、pの左に位置する因子又は因子の積をpの左因子という。また、右因子とは、ある項の因子pに着目した場合に、pの右に位置する因子又は因子の積をpの右因子という。例えば、項(a×b+c)×p×d×eについてみると、pの左因子は(a×b+c)であり、pの右因子はd×eとなる。 In step S403,
次に、ステップS404では、項1における因子1の左因子をl1,右因子をr1,項2における因子2の左因子をl2,右因子をr2とし,接着空間の式として{l1+l2}{因子1+因子2}{r1+r2}を作成する。次に、ステップS405では、商演算処理後の剰余を示す対象情報、接着演算処理後の対象情報を和演算処理し,接着演算処理後の対象情報とし、処理を終了する。その結果、“接着演算後の式”に演算結果が設定され、アプリケーションプログラムに引き渡される。なお、接着演算処理を実行中の対象情報の状態の詳細は図14に示す。 Next, in step S404, the left factor of the
図14に、接着演算処理を実行中の対象情報の状態の詳細を示す。この例では、まず、S401にて接着する式1、式2が入力される。また、因子1として“2”、因子2として、“q”が指定されている。 FIG. 14 shows details of the state of the target information during the adhesion calculation process. In this example, first,
次に、S402にて商演算が実行される。その結果、式1は、cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+Φ))という剰余と、cell(id{ε+A+B+C}(Φ+2{ε+a2+b2+c2}))という商に分離される。また、式2は、s(p(p1+p2)+Φ)という剰余と、s×q(q1+q2)という商に分離されている。図14のS402の行では、これらの剰余と商が和演算された形式で示されている。 Next, a quotient calculation is executed in S402. As a result,
そして、ここで、式1の同値因子、すなわち、因子“2”を含む項は、cell×id{ε+A+B+C}(Φ+2{ε+a2+b2+c2})であり、同値要素を表す項1という。また、式2の同値因子、すなわち、因子“q”を含む項は、s×q(q1+q2)であり、同値要素を表す項2という。これらから、左因子l1は、cell×id{ε+A+B+C}、左因子l2は、s、右因子r1は、{ε+a2+b2+c2}、右因子r2は、(q1+q2)である。したがって、接着された結果である接着空間の式は、
{cell×id{ε+A+B+C}+s}{2+q}{(ε+a2+b2+c2)+(q1+q2)}
となる。Here, the term including the equivalence factor of
{Cell × id {ε + A + B + C} + s} {2 + q} {(ε + a2 + b2 + c2) + (q1 + q2)}
It becomes.
さらに、これらの剰余の式cell(id{ε+A+B+C}(1{ε+a2+b2+c2}+Φ))とs(p(p1+p2)+Φ)とを和演算することで、接着演算後の式となる。 Further, by calculating the sum of these remainder expressions cell (id {ε + A + B + C} (1 {ε + a2 + b2 + c2} + Φ)) and s (p (p1 + p2) + Φ), the expression after the adhesion operation is obtained.
(14)部分集合取得処理
部分集合取得処理は、集合から、指定された因子(以下、指定因子という)を有する項を含む式(部分集合)と、指定因子を有しない項の式(部分集合)に分離する処理である。この処理を実行するCPU13が、本発明の部分集合形成部に相当する。ただし、本実施形態では、指定因子(今pとする)を有する項が複数個存在する場合には、{左因子1+左因子2+・・・}p{左因子1が含まれていた項の右因子+左因子2が含まれていた項の右因子+・・・}+因子pを含まない部分集合の和のように、指定された因子pで括り出す。このように、部分集合取得処理の括り出しでは、括り出し前の各項において、指定因子pの左側に結合する因子(左因子と呼ぶ)と、指因子pの右側に結合する因子(右因子と呼ぶ)とをそれぞれ、第2の{}内に和演算する。そして、左因子の和は、第2の{}によって括られ、その順序を維持して、指定された因子の左側に結合される。(14) Subset Acquisition Processing The subset acquisition processing includes an expression (subset) including a term having a designated factor (hereinafter referred to as a designated factor) and an expression (subset) of a term having no designated factor. ). The
また、右因子の和は、第2の{}によって括られ、その順序を維持して、指定された因子の右側に結合される。さらに、同一の左因子に対して、異なる右因子を有する項が複数存在する場合、それらの右因子は、第1の括弧“()”で括り出される。この場合、左因子は、集合情報の識別情報として機能する。例えば、
a1×b×c1+a1×b×c2+a2×b×c1+a2×b×c2+a3×b×c3+a×u×vという式表現に対して、因子bを指定因子として部分集合取得演算を実行すると、
{a1+a2+a3}b{(c1+c2)+(c1+c2)+c3}+a×u×v
となる。この場合、右因子の列は、それぞれ、集合IDがa1の集合の部分集合b(c1+c2)、集合IDがa2の集合の部分集合b(c1+c2)、集合IDがa3の集合の部分集合b×c3を表している。Also, the right factor sum is bounded by the second {} and is joined to the right side of the specified factor, maintaining its order. Further, when there are a plurality of terms having different right factors for the same left factor, the right factors are enclosed in the first parenthesis “()”. In this case, the left factor functions as identification information for the set information. For example,
When a subset acquisition operation is performed using the factor b as a designated factor for the expression expression a1 × b × c1 + a1 × b × c2 + a2 × b × c1 + a2 × b × c2 + a3 × b × c3 + a × u × v,
{A1 + a2 + a3} b {(c1 + c2) + (c1 + c2) + c3} + a × u × v
It becomes. In this case, the right factor column includes a subset b (c1 + c2) of a set with set ID a1, a subset b (c1 + c2) of a set with set ID a2, and a subset b × of a set with set ID a3. c3 is represented.
さらに、部分集合取得処理の対象となる項に、第1の括弧“()”または第2の括弧“{}”が含まれている場合には、これらの括弧内の式表現に対して、再起的に部分集合取得処理が実行される。したがって、第1の括弧“()”または第2の括弧“{}”で括られた個々の括弧内で、部分集合取得処理が実行される。 Further, when the first parenthesis “()” or the second parenthesis “{}” is included in the item to be subjected to the subset acquisition process, for the expression expression in these parentheses, The subset acquisition process is executed again. Therefore, the subset acquisition process is executed within each parenthesis enclosed by the first parenthesis “()” or the second parenthesis “{}”.
部分集合取得処理のアプリケーションインターフェースは、例えば、部分集合取得後の式表現は、戻り値=separate(部分集合取得前の式表現、指定因子);のように定義できる。対象の式,因子を指定すると,括った後の式(戻り値)になります.
次に部分集合取得処理について説明する。図15は、部分集合取得処理を実行する処理のフローを示す。ステップS501では、演算前の所定の表現形式で表現される対象情報と、部分集合を指定するための指定因子pを入力する。以下、対象情報として数18に示すデータを用いて、指定因子“p”で部分集合を取得する場合について説明する。
s×p(p1+p2)+t×p(p3+p4)+id(s×p(p1+p2)+t×p(p3+p4))・・・(数18)
ステップS502では、部分集合を取得するための因子以外(ここでは、「その他の式」「左因子式」および「右因子式」)をΦと設定する。ステップS503では「処理後の項」をεに設定する。ステップS504では、対象情報を構成する式の長さが0であるかを判断する。すなわち、対象情報が存在するか否かを判断する。式の長さが0であると判断した場合には、ステップS517へ進む。一方、式の長さが0であると判断しなかった場合には、ステップS505へ進む。The application interface of the subset acquisition process can be defined, for example, as an expression expression after acquiring the subset: return value = separate (expression expression before acquiring the subset, designated factor). If the target expression or factor is specified, it will be the expression (return value) after enclosing it.
Next, the subset acquisition process will be described. FIG. 15 shows a flow of processing for executing the subset acquisition processing. In step S501, target information expressed in a predetermined expression format before calculation and a designation factor p for designating a subset are input. Hereinafter, the case where a subset is acquired with the designated factor “p” using the data shown in Equation 18 as target information will be described.
s × p (p1 + p2) + t × p (p3 + p4) + id (s × p (p1 + p2) + t × p (p3 + p4)) (Equation 18)
In step S502, Φ other than the factors for acquiring the subset (here, “other formulas”, “left factor formulas”, and “right factor formulas”) is set. In step S503, “processed term” is set to ε. In step S504, it is determined whether the length of the expression constituting the target information is zero. That is, it is determined whether target information exists. If it is determined that the length of the expression is 0, the process proceeds to step S517. On the other hand, if it is not determined that the length of the expression is 0, the process proceeds to step S505.
ステップS505では、数18から第一項を取得し保存する。次にステップS506では、数18から第一項を削除する。次にステップS507では、取得した項に因子pが含まれるか判断する。取得した項に因子pが含まれると判断した場合にはステップS515へ進む。一方、取得した項に因子pが含まれると判断しなかった場合には、ステップS508へ進む。 In step S505, the first term is obtained from Equation 18 and stored. Next, in step S506, the first term is deleted from Equation 18. In step S507, it is determined whether the acquired term includes the factor p. If it is determined that the acquired term includes the factor p, the process proceeds to step S515. On the other hand, if it is not determined that the acquired term includes the factor p, the process proceeds to step S508.
ステップS508では、項の長さが0であるか否かを判断する。項の長さが0であると判断した場合にはステップS514へ進む。一方、項の長さが0であると判断しなかった場合には、項から第一因子を取得し、これを保存し(ステップS509)、次に項から第一因子を削除する(ステップS510)。 In step S508, it is determined whether the term length is zero. If it is determined that the term length is 0, the process proceeds to step S514. On the other hand, if it is not determined that the term length is 0, the first factor is acquired from the term, stored (step S509), and then the first factor is deleted from the term (step S510). ).
次にステップS511では、第一因子が第一の括弧又は第二の括弧で括られているか判断する。因子が第一の括弧又は第二の括弧で括られていると判断した場合には、第一の括弧又は第二の括弧で括られている式に対して、本部分集合取得処理を実行する(ステップS512)。すなわち、再起呼び出しを実行する。一方、第一の括弧又は第二の括弧で括られていると判断しなかった場合には、第一因子を取得した因子とし(S520)、ステップS513へ進む。ステップS513では、処理後の項に取得した因子によって積演算処理を実行し、その結果を処理後の項とし、ステップS508の処理を再度実行する。 Next, in step S511, it is determined whether the first factor is enclosed in the first parenthesis or the second parenthesis. If it is determined that the factor is enclosed in the first or second bracket, this subset acquisition process is executed for the expression enclosed in the first or second bracket (Step S512). That is, a restart call is executed. On the other hand, when it is not determined that the first parenthesis or the second parenthesis surrounds, the first factor is determined as the acquired factor (S520), and the process proceeds to step S513. In step S513, product operation processing is executed using the factors acquired in the processed term, the result is used as the processed term, and the processing in step S508 is executed again.
ステップS508において、項の長さが0であると判断した場合には、その他の式に処理後の項を和演算処理し、その結果をその他の式とする(ステップS514)。ステップS514の処理を実行後、再度ステップS503の処理を実行する。次にステップS504において式の長さが0であると判断した場合には、部分集合の項として{左因子式}p{右因子式}を作成し(ステップS517)、その他の式に部分集合項を和演算し,演算後の式とし(ステップS518)、処理を終了する。以上の処理を実行することにより、数18により表現される対象情報は、数19により表現される対象情報となる。なお、部分集合取得処理を実行中の対象情報の状態の詳細は図16A、図16Bに示す。
id({s+t}p{(p1+p2)+(p3+p4)})+{s+t}p{(p1+p2)+(p3+p4)}・・・(数19)
図16Aおよび図16Bに、数18の式表現に対して、部分集合取得処理が実行された場合の「演算前の式」、「部分集合取得のための因子」、「左因子式」、「右因子式」、「左因子」、「右因子」「その他の式」、「取得した項」、「取得した因子」、「処理後の項」、「部分集合項」および「演算後の式」の変化を示す。図16Aの各行と、図16Bの各行は、図15の処理での同一の処理を示している。すなわち、図16Aおよび図16Bを横に接続して、部分集合取得処理の状態変化が表されることになる。If it is determined in step S508 that the term length is 0, the processed term is summed with other equations, and the result is used as another equation (step S514). After executing the process of step S514, the process of step S503 is executed again. Next, when it is determined in step S504 that the length of the expression is 0, {left factor expression} p {right factor expression} is created as a term of the subset (step S517), and the subset is set to other expressions. The terms are summed to obtain a formula after the computation (step S518), and the process is terminated. By executing the above processing, the target information expressed by Expression 18 becomes the target information expressed by Expression 19. Details of the state of the target information during execution of the subset acquisition process are shown in FIGS. 16A and 16B.
id ({s + t} p {(p1 + p2) + (p3 + p4)}) + {s + t} p {(p1 + p2) + (p3 + p4)} (Equation 19)
16A and 16B, “formula before calculation”, “factor for acquisition of subset”, “left factor expression”, “ "Right factor expression", "Left factor", "Right factor", "Other expressions", "Obtained term", "Obtained factor", "Processed term", "Subset term" and "Calculated expression" ”Is shown. Each row in FIG. 16A and each row in FIG. 16B show the same processing in the processing in FIG. That is, FIG. 16A and FIG. 16B are connected horizontally, and the state change of a subset acquisition process is represented.
図16Aおよび図16Bの第1行目は、各列の要素、すなわち、図15中の該当する処理を示す番号、「その他の式」、「取得した項」、「取得した因子」、「処理後の項」、「部分集合項」および「演算後の式」を示している。第2行以下の各行は、一連の処理ステップであり、図16Aおよび図16Bの表の上から下へ実行される。 The first row of FIG. 16A and FIG. 16B shows the elements of each column, that is, the numbers indicating the corresponding processes in FIG. 15, “other expressions”, “acquired terms”, “acquired factors”, “processes” “Term after”, “Subset term” and “Expression after operation” are shown. Each row after the second row is a series of processing steps, and is executed from the top to the bottom of the tables of FIGS. 16A and 16B.
ここでは、数18の式表現を処理対象とする。部分集合取得処理を実行する共通関数separateに対して、まず、部分集合取得前の式表現である数18が与えられる。この式表現はメモリ12に格納される。また、指定因子はpであるとする。 Here, the expression expression of Expression 18 is a processing target. For the common function separate that executes the subset acquisition processing, first, the number 18 which is an expression expression before acquiring the subset is given. This expression expression is stored in the
まず、S505、S505の処理で、式から第一項s×p(p1+p2)が取得される。s×p(p1+p2)に指定因子pが含まれているので、S515およびS516が実行され、左因子sおよび右因子(p1+p2)がそれぞれ左因子式および右因子式に和演算される。 First, in the processes of S505 and S505, the first term s × p (p1 + p2) is acquired from the equation. Since the designated factor p is included in s × p (p1 + p2), S515 and S516 are executed, and the left factor s and the right factor (p1 + p2) are summed into the left factor equation and the right factor equation, respectively.
次に、S505、S506の処理で、式から第二項t×p(p3+p4)が取得される。t×p(p3+p4)に指定因子pが含まれているので、S515およびS516が実行され、左因子tおよび右因子(p3+p4)がそれぞれ左因子式および右因子式に和演算される。 Next, the second term t × p (p3 + p4) is acquired from the equation in the processes of S505 and S506. Since the designated factor p is included in t × p (p3 + p4), S515 and S516 are executed, and the left factor t and the right factor (p3 + p4) are summed into the left factor equation and the right factor equation, respectively.
さらに、S505、S506の処理で、式から第三項id(s×p(p1+p2)+t×p(p3+p4))が取得される。そして、S509において、第一因子としてidが取得される。項idは、S513にて、処理後の項に積演算される。さらに、S509において、第一項として、次の項(s×p(p1+p2)+t×p(p3+p4))が取得される。これは、S511の判定で、第1の括弧を含むとされるので、S512が実行される。 Furthermore, the third term id (s × p (p1 + p2) + t × p (p3 + p4)) is acquired from the expression in the processing of S505 and S506. In step S509, id is acquired as the first factor. The term id is subjected to product operation in S513 in the term after processing. Further, in S509, the next term (s × p (p1 + p2) + t × p (p3 + p4)) is acquired as the first term. Since this is determined to include the first parenthesis in the determination of S511, S512 is executed.
そして、式表現s×p(p1+p2)+t×p(p3+p4)に対して、部分集合取得処理が再起呼び出しで実行される。図16Aおよび図16Bでは、再起呼び出し中の状態は、省略されているので、本文にて説明する。この場合も、s×p(p1+p2)から、左因子s、右因子(p1+p2)が取得される。また、t×p(p3+p4)から、左因子t、右因子(p3+p4)が取得される。これらの左因子および右因子は、S516において、それぞれ左因子式、および右因子式に和演算される。そして、式表現s×p(p1+p2)+t×p(p3+p4)の末尾まで処理が進み、S504で、残りの式の長さが0であると判定される。すると、CPU13は、部分集合の項として、{s+t}p{(p1+p2)+(p3+4)}を作成する。そして、CPU13は、部分集合の項を演算後の式として、再起呼び出しを終了する。 Then, the subset acquisition process is executed by re-calling the expression expression s × p (p1 + p2) + t × p (p3 + p4). In FIG. 16A and FIG. 16B, the state during the recall call is omitted and will be described in the text. Also in this case, the left factor s and the right factor (p1 + p2) are obtained from s × p (p1 + p2). Also, the left factor t and the right factor (p3 + p4) are obtained from t × p (p3 + p4). These left factor and right factor are summed into a left factor equation and a right factor equation, respectively, in S516. Then, the process proceeds to the end of the expression s × p (p1 + p2) + t × p (p3 + p4), and it is determined in S504 that the length of the remaining expressions is zero. Then, the
再起呼び出しを終了すると、演算後の式を取得するので、これを取得した因子とする。この場合、取得した因子は、({s+t}p{(p1+p2)+(p3+4)})である。そして、CPU13は、S513にて、再起呼び出し前に計算しておいた処理後の項(“id”が積演算されている)に、取得した因子を積演算する。その結果、S513において、処理後の項は、id({s+t}p{(p1+p2)+(p3+4)})となる。CPU13は、S514にて、処理後の項をその他の式として和演算する。 When the restart call ends, the calculated expression is acquired, and this is used as the acquired factor. In this case, the acquired factor is ({s + t} p {(p1 + p2) + (p3 + 4)}). In step S <b> 513, the
そして、S504にて、残りの式の長さが0であると判定されると、CPU13は、再起呼び出し前に作成していた左因子式s+tおよび右因子式(p1+p2)+P3+p4)から、部分集合の項{s+t}p{(p1+p2)+P3+p4)}を作成する。そして、CPU13は、S518にて、その他の式に部分集合の項を和演算する。これによって、演算後の式id({s+t}p{(p1+p2)+(p3+4)})+{s+t}p{(p1+p2)+P3+p4)}が作成されることになる。
(15)ホモトピー保存処理
次にホモトピー保存処理について説明する。ホモトピー保存処理は、式1に対して、パラメータを表す項pを用いて演算Gを実行し、式2が得られたとき、
(演算後の式2)=G(演算前の式1+演算時のパラメータを表す項p)
のように、演算実行前後の関係を保持する機能である。この場合、演算実行前の式1、すなわち、初期状態は、式ΦにパラメータΦ項を適用して、式1が得られたと仮定し、演算前の式を
式1=F(Φ+Φ)
のようにおく。ここで、演算実行前の式をホモトピー保存式1と呼ぶことにする。If it is determined in S504 that the length of the remaining expression is 0, the
(15) Homotopy preservation process Next, the homotopy preservation process will be described. In the homotopy storage process, an operation G is performed on
(
This is a function for maintaining the relationship before and after the execution of the operation. In this case, it is assumed that
Like this. Here, the equation before the execution of the calculation is referred to as
図17は、ホモトピー保存処理を実行する処理のフローを示す。ここで、式1は、数20の左辺の式である。また、attachによって接着演算が指定され、因子2と因子qとの同値関係が指定されている場合を説明する。 FIG. 17 shows a flow of processing for executing homotopy storage processing. Here,
まず、ステップS601では、演算実行前の式、すなわち、ホモトピー保存式1と、演算Gと、パラメータ因子pが入力される(S601)。
ここでは、例として、以下の数20によって、式1を仮定する。また、演算Gとして、接着演算を実行する例を示す。また、そのときの、パラメータ因子として、attach(2+q)を指定する。すなわち、因子2と因子qとの同値関係が指定されて、接着演算が実行された場合を例に、ホモトピー保存処理を説明する。
(cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))=F(Φ+Φ)・・・(数20)
ステップS602では、数20により表現される式から演算G前の式、すなわち数20の左辺を取得する。これを数21とする。
cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2))・・・(数21)
ステップS603では、演算Gによる演算処理を行い演算G後の式とする。この場合、数22により表現される式が得られる。ここでは、演算Gの例として、接着演算を実行する。また、接着演算の同値関係を指定するパラメータを“2”および“q”とする。すなわち、因子“2”で商演算された商と、因子“q”で商演算された商とを接着する。そのときのホモトピー保存式の例を説明する。
cell(id{ε+A+B+C}(1{ε+a2+b2+c2}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)}・・・(数22)
ステップS604では、演算G後のホモトピー保存式2として、(演算G後の式)=G(ホモトピー保存式1+演算時のパラメータp)を作成する。ここで、パラメータpは、“attach(2+q)”である。以上の処理を実行することにより数21により表現された式は、数23により表現される式となる。
(cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)})
=G((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))
=G(F(Φ+Φ)+attach(2+q)))・・・(数23)
この式は、F(Φ+Φ)で示される式(すなわち、数21)に、attach(2+q)というパラメータで演算G、すなわち、接着演算が実行されて、数23の左辺(最上段の式)が得られたことを示している。First, in step S601, an expression before execution of the calculation, that is,
Here, as an example,
(Cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2))) = F (Φ + Φ) (Equation 20)
In step S602, the expression before the calculation G, that is, the left side of Expression 20, is acquired from the expression expressed by Expression 20. This is represented by
cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)) (Equation 21)
In step S603, calculation processing by calculation G is performed to obtain an expression after calculation G. In this case, an expression expressed by
cell (id {ε + A + B + C} (1 {ε + a2 + b2 + c2} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (q1 + q2)} (Expression 22) )
In step S604, (homogeneous expression after calculation G) = G (
(Cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (q1 + q2)})
= G ((cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)))
= G (F (Φ + Φ) + attach (2 + q))) (Equation 23)
This formula is obtained by performing the calculation G, that is, the bonding calculation with the parameter of attach (2 + q), on the expression indicated by F (Φ + Φ) (that is, Expression 21), and the left side of Expression 23 (the uppermost expression) is It shows that it was obtained.
(16)UNDO演算処理
次にホモトピー保存式におけるUNDO演算処理について説明する。図18は、ホモトピー保存式におけるUNDO演算処理のフローを示す。ステップS701では、ホモトピー保存式(演算G後の式)=F(演算G前の式+演算時のパラメータを表す式p)の入力をする。以下、対象情報として数24に示すデータを用いた場合について説明する。
(cell(id{ε+A+B+C}(1{ε+a2+b2+c2}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)})
=G((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))
=F(Φ+Φ)+attach(2+q))・・・(数24)
上述のように、ホモトピー保存式は、演算G前の式F(Φ+Φ)に演算(この例では、接着演算G、演算時のパラメータはattach(2+q))を実行することで、数24の最上段(最初の“=”の左辺)の式表現が得られたことを記録している。なお、数24において、中段の式(最初の“=”の右辺)と、最下段の式(2つ目の“=”の右辺)とは、表現形式が異なるだけで実質的に同一の式である。最下段の式は、F(Φ+Φ)を用いて表現を簡略化している。そして、それら中段の式と簡略された式を“=”で結んだ式が、G()という演算の中に挿入されている。(16) UNDO operation process Next, the UNDO operation process in the homotopy conservation type will be described. FIG. 18 shows a flow of UNDO calculation processing in the homotopy conservation type. In step S701, the homotopy conservation equation (the equation after the calculation G) = F (the equation before the calculation G + the equation p representing the parameter at the time of the calculation) is input. Hereinafter, the case where the data shown in
(Cell (id {ε + A + B + C} (1 {ε + a2 + b2 + c2} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (q1 + q2)})
= G ((cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)))
= F (Φ + Φ) + attach (2 + q)) (Equation 24)
As described above, the homotopy preserving equation is calculated by performing the calculation on the equation F (Φ + Φ) before the calculation G (in this example, the adhesion calculation G, and the parameter at the time of calculation is attach (2 + q)). It is recorded that the expression expression of the upper stage (the left side of the first “=”) is obtained. In
UNDO演算処理では、この記録を基に、演算前の式を得る。すなわち、CPU13は、演算の種類と、演算時のパラメータとを基にして、演算前の状態に式を戻す。 In the UNDO calculation process, an expression before calculation is obtained based on this record. That is, the
次にステップS702では、UNDO後の式(演算G前の式)=G-1((演算G後の式)=G(演算G前の式+p))の作成を実行する。この場合、すでに、数24の中段の式と下段の式で、演算の種類G、演算実行前の式、演算時のパラメータattach(2+q)が記録されている。したがって、演算前の式は、直ちに、取り出すことができる。以上の処理を実行することにより数24により表現された対象情報は、数25により表現される対象情報となる。
((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))=F(Φ+Φ))
=G-1(
(cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)})
=G((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))
=F(Φ+Φ)+attach(2+q))
)・・・(数25)
この式は、数24で与えられホモトピー保存式の両辺に、演算G前に戻す演算G-1を実行することによって、演算G前の式(初期状態F(Φ+Φ)が得られたことを示している。これによって、演算G前の式である(cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))=F(ε+ε)が、演算G後の式であるcell(id{ε+A+B+C}(1{ε+a1+b1+c1}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)}から得られることが示される。Next, in step S702, an expression after UNDO (expression before calculation G) = G −1 ((expression after calculation G) = G (expression before calculation G + p)) is executed. In this case, the calculation type G, the expression before execution of the calculation, and the parameter attach (2 + q) at the time of calculation are already recorded in the middle expression and the lower expression of
((Cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2))) = F (Φ + Φ))
= G -1 (
(Cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (q1 + q2)})
= G ((cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)))
= F (Φ + Φ) + attach (2 + q))
) ... (Equation 25)
This formula shows that the formula (initial state F (Φ + Φ) before the calculation G is obtained by executing the calculation G −1 to be returned before the calculation G on both sides of the homotopy conservation formula given by
さらに、この演算G後の式であるcell(id{ε+A+B+C}(1{ε+a1+b1+c1}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)})は、演算G前の式であるcell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2))から得られたことが記録されている。 Further, cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (Q1 + q2)}) is obtained from cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2)) ing.
すなわち、演算G前の式(F(Φ+Φ))に演算G、パラメータattach(2+q)を適用することで、演算G後の式が得られ、かつ、その演算G後の式に演算G-1を適用することで、演算G前の式に戻されたことが記録される。That is, by applying the calculation G and the parameter attach (2 + q) to the expression (F (Φ + Φ)) before the calculation G, the expression after the calculation G is obtained, and the expression after the calculation G is calculated as the calculation G −1. Is applied, the fact that it has been returned to the expression before the calculation G is recorded.
このように、UNDO演算処理は、演算後の式から、演算前の式が得られたことを記録するので、次に示すREDO演算処理を実行することで、直ちに、演算後の式を得ることができる。 In this way, the UNDO calculation process records that the expression before the calculation is obtained from the expression after the calculation, so that the expression after the calculation is obtained immediately by executing the following REDO calculation process. Can do.
(17)REDO演算処理
次にホモトピー保存式におけるREDO演算処理について説明する。図19は、ホモトピー保存式におけるREDO演算処理のフローを示す。ステップS801では、ホモトピー保存式におけるUNDO後の式(演算G前の式)=G-1((演算G後の式)=G(演算G前の式+p))の入力をする。以下、対象情報として数26に示すデータを用いた場合について説明する。
((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))=F(ε+ε))
=G-1(
(cell(id{ε+A+B+C}(1{ε+a2+b2+c2}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)})=G((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))=F(Φ+Φ)+attach(2+q))
)・・・(数26)
上述のように、数26は、演算G前の式(F(Φ+Φ))に接着演算Gおよびパラメータattach(2+q)が適用され、演算G後の結果が得られ、さらに、演算G後の式から演算G前の式に戻されたことが記録されている。(17) REDO operation processing Next, the REDO operation processing in the homotopy conservation type will be described. FIG. 19 shows a flow of the REDO calculation process in the homotopy conservation type. In step S801, an expression after UNDO (expression before calculation G) = G −1 ((expression after calculation G) = G (expression before calculation G + p)) in the homotopy preserving expression is input. Hereinafter, the case where the data shown in Formula 26 is used as the target information will be described.
((Cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2))) = F (ε + ε))
= G-1 (
(Cell (id {ε + A + B + C} (1 {ε + a2 + b2 + c2} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (q1 + q2)}) = G (( cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2))) = F (Φ + Φ) + attach (2 + q))
) ... (Equation 26)
As described above, the equation 26 is obtained by applying the adhesion calculation G and the parameter attach (2 + q) to the expression (F (Φ + Φ)) before the calculation G to obtain a result after the calculation G. Is returned to the expression before the calculation G.
次にステップS802では、UNDO後の式から,UNDO演算前の式、すなわち(演算G後の式)=G(演算G前の式+演算時のパラメータp)を取得し、REDO演算後の式とする。以上の処理を実行することにより数26により表現された対象情報は、数27により表現される対象情報となる。
(cell(id{ε+A+B+C}(1{ε+a2+b2+c2}+Φ))+s(p(p1+p2)+Φ)+{cell×id{ε+A+B+C}+ε}{2+q}{{ε+a2+b2+c2}+(q1+q2)})=G((cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))+s(p(p1+p2)+q(q1+q2)))=F(ε+ε)+attach(2+q))・・・(数27)
このように、ホモトピー保存処理によって、演算後の結果とともに、演算G前の式(F(Φ+Φ))と、適用される演算の種類Gと、使用されるパラメータattach(2+q)を記録する。これによって、UBDO演算処理で演算前の結果を得ることができる。さらに、UNDO演算処理で、演算後の式から、演算前の式が得られたことを記録することで、REDO演算処理を実行し、直ちに、演算G後の式を得ることができる。このように、ホモトピー保存処理、UNDO演算処理、およびREDO演算処理は、メモリ12の容量を犠牲にして、演算前後の関係を保持する一方、演算を戻す処理と再実行する処理とを簡易に実現する。
(適用例)
次にデータ処理システムを開発する際に、本発明に係る情報処理装置を使用する例について説明する。Next, in step S802, an expression before UNDO calculation, that is, (expression after calculation G) = G (expression before calculation G + parameter p at calculation) is obtained from the expression after UNDO, and the expression after REDO calculation is obtained. And By executing the above processing, the target information expressed by Equation 26 becomes the target information expressed by Equation 27.
(Cell (id {ε + A + B + C} (1 {ε + a2 + b2 + c2} + Φ)) + s (p (p1 + p2) + Φ) + {cell × id {ε + A + B + C} + ε} {2 + q} {{ε + a2 + b2 + c2} + (q1 + q2)}) = G (( cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) + s (p (p1 + p2) + q (q1 + q2))) = F (ε + ε) + attach (2 + q)) (Equation 27)
As described above, the homotopy storage process records the expression (F (Φ + Φ)) before the calculation G, the type G of the calculation to be applied, and the parameter attach (2 + q) used together with the result after the calculation. Thereby, the result before calculation can be obtained by the UBDO calculation processing. Furthermore, in the UNDO calculation process, by recording that the expression before the calculation is obtained from the expression after the calculation, the REDO calculation process is executed, and the expression after the calculation G can be obtained immediately. As described above, the homotopy storage process, the UNDO calculation process, and the REDO calculation process, while maintaining the relationship before and after the calculation at the expense of the capacity of the
(Application example)
Next, an example of using the information processing apparatus according to the present invention when developing a data processing system will be described.
本発明に係る情報処理装置は、様々なデータ処理システムに適用可能である。図20は、建設業における情報管理、すなわちデータ処理システムが要求される例を示す。同図に示すように、例えば建設業における管理として、プロジェクト管理と現場管理が例示できる。プロジェクト管理の主は、財務管理であり、財務管理は予算作成管理、購買管理、資機材管理によって成り立っている。そして、これらの管理は、データベースに格納された情報を管理することによって行われる。また、現場管理においては、工程管理が主であるが工程管理においては作業手帳の情報も管理できることが重要である。そして本発明に係る情報処理システムは、これらあらゆる情報管理、すなわちデータ処理システムに適用できる。以下、具体的に説明する。なお、本実行形態においては建設業における例としたがこれに限定されるわけではない。様々な分野において適用可能である。 The information processing apparatus according to the present invention can be applied to various data processing systems. FIG. 20 shows an example in which information management in the construction industry, that is, a data processing system is required. As shown in the figure, for example, project management and site management can be exemplified as management in the construction industry. The main project management is financial management, which consists of budget creation management, purchasing management, and equipment management. These managements are performed by managing information stored in the database. In field management, process management is the main, but in process management it is important to be able to manage the information in the work notebook. The information processing system according to the present invention can be applied to any information management, that is, a data processing system. This will be specifically described below. In this embodiment, the construction industry is used as an example, but the present invention is not limited to this. It can be applied in various fields.
図21A及び図21Bは、本発明の対象情報に相当する社員データ及び伝票データを示す。図21Aに示す社員データ(マスタデータ)は、正規化表構造で表現されるデータである。これを本発明に係る所定の表現形式によって表現すると、数28により表現される。そして、このデータはメモリ12に格納される。なお、上記社員データはキーボード等の入力部11から入力する。入力された社員データは、ディスプレイ等の出力部14にて確認できる。
社員(社員コード{ε+氏名+年齢+職種+所属}(K100{ε+社員A+30+土木+情報システム}+K101{ε+社員B+49+事務+土木}+K102{ε+社員C+24+建築+建築}))・・・(数28)
情報処理装置100は、このようにして、社員データをメモリ12に保持し、データベースとして管理する。この場合、データ入力のためのユーザインターフェース、データ出力のためのユーザインターフェースに限定はない。すなわち、情報処理装置100は、式表現で対象情報を記述し、メモリ12に保持し、上述の演算処理を実行する共通関数によって、演算機能をアプリケーションプログラムに提供する。したがって、アプリケーションプログラムの構成そのものにも限定はない。21A and 21B show employee data and slip data corresponding to the target information of the present invention. The employee data (master data) shown in FIG. 21A is data expressed in a normalized table structure. When this is expressed by a predetermined expression format according to the present invention, it is expressed by
Employee (employee code {ε + name + age + job type + affiliation} (K100 {ε + employee A + 30 + civil engineering + information system} + K101 {ε + employee B + 49 + office work + civil engineering} + K102 {ε + employee C + 24 + architecture + architecture})) ... (number 28)
In this way, the
例えば、社員情報の入力は、社員コード、氏名、年齢、職種、所属部署等の入力フィールドを備えた、画面プログラムで行っても良い。そして、画面プログラムは、入力された情報から、上記式表現(例えば、インスタンスK101{ε+社員B+49+事務+土木})を生成すればよい。ただし、セル空間情報、トポロジー空間情報、集合情報の末尾に、インスタンスを挿入する共通関数を提供してもよい。例えば、戻り値=insert(セル空間ID、インスタンス)というアプリケーションインターフェースを提供してもよい。 For example, input of employee information may be performed by a screen program having input fields such as employee code, name, age, job type, and department. Then, the screen program may generate the above expression (for example, instance K101 {ε + employee B + 49 + office work + civil engineering}) from the input information. However, a common function for inserting an instance may be provided at the end of cell space information, topology space information, and set information. For example, an application interface of return value = insert (cell space ID, instance) may be provided.
また、例えば、社員情報の入力は、テキストエディタを用いて、数28の式表現に、インスタンスを直接挿入するようにしても構わない。インスタンスが挿入された後は、上記各種演算によって、共通関数が、アプリケーションプログラムに処理機能を提供する。 In addition, for example, the employee information may be input by directly inserting an instance into the expression of
したがって、情報処理装置100によれば、従来のようなリレーショナルモデルによってテーブルを構成することなく、式表現をメモリ12に保持することによって、社員データのような表形式のデータを管理できる。例えば、有る社員A(社員コードK120)に関するデータを抽出し、表示するには、セル空間IDとして、“社員”を指定し、因子“社員コード×K120”によって同値関係を指定し、部分集合取得処理を実行すればよい。 Therefore, according to the
さらに、情報処理装置100のように、式表現で対象情報を表した場合、属性の追加、削除、変更は自在である。式表現を変更すればよいからである。従来の表形式のリレーショナルモデルでは、属性の追加、削除は、データベース自体の再構築が要求される。例えば、社員情報のレコードが、社員コード、氏名、年齢、職種、所属部署のフィールドからなっており、すでに、データベースが運用されている場合に、このレコードに、さらに、性別、入社年、役職を追加することは困難である。しかしながら、情報処理装置100では、属性の追加、削除は、式表現の変更であり、変更のための工数が極めて少なくなる。 Further, when the target information is represented by a formula expression as in the
さらに、情報処理装置100のように、式表現で対象情報を表した場合、異なる形式のセル空間情報、異なる種類のトポロジー空間情報、異なる種類の集合情報を自在に定義できる。したがって、リレーショナルモデルのように、社員データが、特定の表で定義されたレコードの形式で固定されることもない。例えば、社員データを示すセル空間情報として、一般社員の部分集合、管理職の部分集合、非正規社員の部分集合、嘱託社員の部分集合等を自在に定義できる。 Further, when the target information is represented by an expression like the
また、情報処理装置100のように、式表現で対象情報を表した場合に、1つの属性に複数の値を設定できる。さらに、第1の括弧および第2の括弧を用いて、1つの属性に対して、複数階層に渡るデータを定義することも容易である。例えば、社員(コード{ε+氏名+年齢+職種{{国別、公用語}、職種コード}+所属{事業所{国別、事業所コード}、部門、課}}のように複数階層に渡る属性を設定できる。また、1つの属性に対する値として、第1の括弧、第2の括弧を用いて複数個の値を持つ属性値を設定できる。 Further, when the target information is represented by an expression like the
図21Bに示す伝票データは、非正規化表構造で表現されるものである。また、同図に示すように伝票データと属性のまったくない付箋メモが添付されている。従来、このような対象情報をデータベースに入力は、新たなアプリケーションの開発を必要とするなど非常に困難とされていた。しかし、これを本発明に係る所定の表現形式によって表現すると、数29により表現される。そして、このデータはメモリ12に格納され情報管理を行うことができる。なお、midは付箋のidを表し、ptは伝票中の付箋を添付する位置を表す。
伝票ID(伝票コード{プロジェクト名称+期間{開始+終了}+金額+担当者{連絡先+コード}}(a{b+c{c1+c2}+d+e{e1+e2}}))+{伝票ID+ε}{pt+mid}{ε+メモ}・・・(数29)
図22A及び図22Bは、プロジェクトデータ及び歩掛作成データを示す。図22Aに示すプロジェクトデータは、有向グラフのツリー構造で表現されるデータである。すなわち、実行予算データは、発注データ1と発注データ2により構成され、更に発注データ1は検収データ1と検収データ2により構成される。また、発注データ2は、検収データ3と検収データ4により構成される。このようなプロジェクトデータは、本発明に係る所定の表現形式によって表現すると、数30により表現される。そして、このデータはメモリ12に格納され情報管理を行うことができる。The slip data shown in FIG. 21B is expressed in a non-normalized table structure. Also, as shown in the figure, a slip memo with no slip data and no attributes is attached. Conventionally, it has been extremely difficult to input such target information into a database, for example, requiring development of a new application. However, when this is expressed in a predetermined expression format according to the present invention, it is expressed by Equation 29. This data is stored in the
Slip ID (slip code {project name + period {start + end} + money + contact person {contact + code}} (a {b + c {c1 + c2} + d + e {e1 + e2}})) + {slip ID + ε} {pt + mid} { ε + Memo} (Equation 29)
22A and 22B show project data and step creation data. The project data shown in FIG. 22A is data represented by a directed graph tree structure. That is, the execution budget data is composed of ordering
実行予算(発注データ1(検収データ1+検収データ2)+発注データ2(検収データ3+検収データ4))・・・(数30)
図22Bに示す歩掛作成データは、逆ツリー構造で表現されるデータである。同図に示すように土砂掘削には、バックホーの運転とダンプトラックの運転を必要とする。また、バックホーの運転には燃料である軽油と運転手が必要となる。また、ダンプトラックの運転には、軽油及び運転手が必要となり、更に雑費が関係してくる。なお、このような逆ツリー構造で表現される対象情報は、従来データ管理が難しいとされていたものである。しかし、これを本発明に係る所定の表現形式によって表現すると、数31により表現される。そして、このデータはメモリ12に格納され情報管理を行うことができる。
((軽油+運転手)バックホー運転+(経由+運転手+雑費)ダンプトラック運転)土砂掘削・・・(数31)
図22Bで、下側のグラフは、経由および運転手が1つに集約されている。一方、上側のグラフの経由および運転手がバックホー運転と、ダンプトラック運転とで分離している。従来のデータベースでは、このようなことが表現できない。リレーショナルデータベース等で工夫してデータベース設計したとしても、アプリケーションプログラムが煩雑になる.また故に変更時にはメンテが大変になる。これが既存の技術の問題点,表現力の問題で,既存のモデルでは表現できないが故に工夫した設計アプリ開発が必要になりコスト増、また開発業者の品質に差が出る。またデータベース,アプリケーションプログラム設計等技術者が別れ,技術の分離により工期の遅れがあって当然になっている。さらに要求仕様が曖昧だったり開発途中で変更されたりすると手戻りが増え大幅なコスト増になるケースが頻発している。一方、本実施形態の技術では統一的により多くのことが表現可能なので、データベース設計、アプリケーション設計・開発の負担が従来よりも軽減される。つまり、情報処理装置100で処理したい情報を式として入力すれば、本実施形態で説明した演算によって、処理し、検索し、出力できる。本実施形態の技術ではビジュアルに式で各空間を設計して、各関数を使用すると変形されてその場で必要な出力結果が出て確認できる。したがって、仕様の曖昧さがなくなり、アプリケーション開発が極めて少ない故にメンテナンスも容易である。例えば、図22B上側のレコード構成で、バックホー運転を構成する運転手のデータベースに、新たな運転手の情報を追加しても、ダンプトラック側には、反映されない。Execution budget (order data 1 (
The stride creation data shown in FIG. 22B is data expressed in an inverted tree structure. As shown in the figure, soil excavation requires operation of a backhoe and a dump truck. In addition, operation of the backhoe requires light oil as a fuel and a driver. In addition, operation of the dump truck requires light oil and a driver, and further costs are involved. It should be noted that the target information represented by such an inverted tree structure has been conventionally considered difficult to manage data. However, when this is expressed in a predetermined expression format according to the present invention, it is expressed by Expression 31. This data is stored in the
((Diesel oil + driver) Backhoe operation + (Via + Driver + Miscellaneous) Dump truck operation) Sediment excavation (31)
In FIG. 22B, in the lower graph, vias and drivers are combined into one. On the other hand, via the upper graph and the driver are separated between the backhoe operation and the dump truck operation. This cannot be expressed in a conventional database. Even if a database is designed by devising a relational database, the application program becomes complicated. Therefore, maintenance becomes difficult at the time of change. This is a problem of existing technology and expressiveness. Since it cannot be expressed by existing models, it is necessary to develop a design application that is devised, which increases costs and causes a difference in developer quality. In addition, engineers such as database and application program design are separated, and it is natural that there is a delay in the construction period due to the separation of technology. Furthermore, if the required specifications are ambiguous or changed during development, there are frequent cases where rework increases and the cost increases significantly. On the other hand, since the technology of this embodiment can express more in a unified manner, the burden of database design and application design / development can be reduced as compared with the prior art. That is, if information to be processed by the
しかし、本実施形態の情報処理装置100では、図22B上側のグラフおよび下側のグラフは、ともに数31で表される。数31でも、一見、バックホー運転と、ダンプトラック運転とで、運転手のデータベースが分離しているように見える。しかしながら、本実施形態で示したトポロジー空間情報は、部分集合を識別するIDによって、個々の項を分類する。したがって、バックホーというデータを構成する運転手データの部分集合も、ダンプトラック運転を構成する運転手データの部分集合も、ともに同一の部分集合IDを付与した場合には、同一の部分集合として管理される。 However, in the
したがって、運転手データの部分集合が、例えば、社員×運転手×(運転手1+運転手2+・・・+運転手N)のように構成されているとする。この場合に、数31は、以下の数32ように、記述される。
((軽油+社員×運転手×(運転手1+運転手2+・・・+運転手N))バックホー運転+(経由+社員×運転手×(運転手1+運転手2+・・・+運転手N)+雑費)ダンプトラック運転)土砂掘削・・・(数31)
この場合に、一旦、社員×運転手×(運転手1+運転手2+・・・+運転手N)によって部分集合取得処理を実行すると、以下のようになる。
({ε+ε}社員×運転手×(運転手1+運転手2+・・・+運転手N){バックホー運転+ダンプトラック運転}+軽油×バックホー運転+(軽油+雑費)×ダンプトラック運転)×土砂掘削・・・(数33)
このように、運転手に関するデータが一元化されるので、運転手Mを追加したとしても、バックホー運転と、ダンプトラック運転の両方の運転手を変更できる。
なお、バックホー運転と、ダンプトラック運転とで、運転手データベースを個別に管理したい場合は、それぞれの部分集合IDを異なるものとすればよい。
({ε+ε}社員×({ダンプ運転手×(運転手1+運転手2+・・・+運転手N)+トラック運転手×(運転手1+運転手2+・・・+運転手N)}{バックホー運転+ダンプトラック運転})+軽油×バックホー運転+(軽油+雑費)×ダンプトラック運転)×土砂掘削・・・(数33)
以上例示的に説明した各種データ、すなわち対象情報は新たな情報の入力や上述した所定の処理を実行することにより様々な状態に変化可能である。すなわち、メモリ12に格納された対象情報をシステム管理する上で最も管理し易い状態、換言すると抽象レベルに移行することができる。次に、本発明に係る抽象度に応じた各レベルについて適用例とともに説明する。Therefore, it is assumed that the subset of the driver data is configured as, for example, employee × driver × (
((Light oil + Employee x Driver x (
In this case, once the subset acquisition process is executed by the employee × driver × (
({Ε + ε} employee x driver x (
Thus, since the data regarding the driver is unified, even if the driver M is added, the driver for both the backhoe driving and the dump truck driving can be changed.
In addition, what is necessary is just to make each subset ID different when it wants to manage a driver | operator database separately by backhoe driving | operation and dump truck driving | operation.
({Ε + ε} employees × ({dump driver × (
Various data described above, that is, target information, can be changed to various states by inputting new information or executing the predetermined processing described above. That is, the target information stored in the
図23は、集合レベル22で表現される対象情報の例を示す。集合レベル22では、対象情報の抽象度が高く表現される。集合レベル22は、Σ集合ID×項又はΣ項×集合IDにより表現することができる。社員1、社員2、社員3からなる社員情報と、机、およびPCからなる備品情報が存在する場合について考える。この場合社員が集合IDに相当し、社員1、社員2、社員3がそれぞれ項に相当する。また、備品情報については、備品が集合IDに相当し、机及びPCが項に相当する。したがって、これらの対象情報を集合レベルで表現すると数32のように表現できる。
社員×社員1+社員×社員2+社員×社員3+机×備品+PC×備品・・・(数32)
図24は、トポロジー空間レベル23で表現される対象情報の例を示す。トポロジー空間レベル23は、トポロジー空間ID×(Σ部分集合)により表現することができる。ただし、数32に対して、集合IDである社員、あるいは、備品を括りだした式も、トポロジー空間レベル23で表現される対象情報である。以下、数32Aに示す。
社員×(社員1+社員2+社員3)+(机+PC)×備品・・・(数32A)
トポロジー空間レベル23では、前記集合レベル22よりも前記対象情報の抽象度が低く表現される。また、該対象情報が部分集合を項として表現される。上述した社員情報及び備品情報に新たに会社情報が追加され、社員情報及び備品情報は会社情報に属している。また、例えば、机のデータが、机1、机2からなり、PCのデータがPC1およびPC2からなり、備品データは、机とPCからなり、会社管理するデータベースが、社員データと、備品データとを有する場合に、会社管理するデータベースは、次のような構成となる。この場合には、備品情報は机1、机2、机3からなる机情報と、PC1、PC2、PC3からなるPC情報により構成される。このように、前述した集合レベル22よりも抽象度がより低く表現されている。そしてこれらの対象情報をトポロジー空間レベル23で表現すると数33のように表現できる。
会社ID(社員(社員1+社員2+社員3)+備品(机(机1+机2)+PC(PC1+PC2)))・・・(数33)
ここでは、会社を管理するデータベースは、会社IDによって識別される。“社員”で識別されるデータの部分集合は、社員1、社員2のような個々のデータを有している。ここで、社員1は、例えば、社員1のID×(氏名+所属+職務)等である。また、備品といるIDで識別されるデータの部分集合は、さらに、机というIDで識別される部分集合と、PCというIDで識別される部分集合のデータとが、存在することを示している。机で識別されるデータの部分集合には、机1、机2等の個々のデータが記録される。机1は、例えば、机1のID×(取得原価+時価+設置場所+メーカ)等である。PCで識別されるデータの部分集合も同様である。このように、情報処理装置100によれば、式表現でにて、識別子を×、+、()、{}によって組み合わせることで、管理対象を表現し、コンピュータ上のメモリ12に記憶し、管理することができる。FIG. 23 shows an example of the target information expressed at the
FIG. 24 shows an example of the target information expressed at the
Employee x (
In the
Company ID (employee (
Here, the database for managing the company is identified by the company ID. The subset of data identified by “employee” includes individual data such as
図25は、接着空間レベル24で表現される対象情報の例を示す。トポロジー空間X,Yがそれぞれ部分集合X0,Y0に含まれる因子x,yによって同値関係を指定して接着すると接着空間は、{トポロジー空間XID×xの左因子+トポロジー空間YID×yの左因子}×{x+y}×{xの右因子+yの右因子}+トポロジー空間XID×(部分集合X−X0)+トポロジー空間YID×(部分集合Y−Y0)となる。接着空間レベル24では、前記トポロジー空間レベル23よりも前記対象情報の抽象度が低く表現される。また、前記トポロジー空間レベル23における前記対象情報同士が接着されて表現される。図25に示すように、上述した会社情報に新たにトポロジー空間レベル23で表現される情報機器情報が追加されている。そして、情報機器情報は、ノート及びデスクトップからなるPC情報とM1及びM2からなるモバイル情報により構成されている。 FIG. 25 shows an example of the target information expressed by the
会社情報と情報機器情報をみるとPC情報が共通していることがわかる。このような場合において、上述した所定の処理を実行することにより会社情報及び情報機器情報を展開する。すなわち、まず、商演算処理を実行して対象情報を分割し、その後分解した各情報の中からPC情報を抽出し、接着処理を実行することにより接着空間を形成する。すなわち、トポロジー空間レベル23で表現されていた会社情報及び情報機器情報を接着空間レベル24へ移行されたことになる。これにより、今まで別々の情報として管理されていた情報を関連付けることができる。なお、商演算処理及び接着処理を実行するに当たり、ホモトピー保存処理を実行することで、処理の保存することが可能となる。その結果、前記処理手段の処理実行前の前記対象情報の状態を取得することが可能となる。また、これらは上述した基本となる所定の処理を実行することによって実現できる。しがたって、新たにアプリケーションプログラムを設計する必要もない。 Looking at company information and information device information, it can be seen that the PC information is common. In such a case, the company information and the information device information are developed by executing the predetermined processing described above. That is, first, a quotient calculation process is executed to divide target information, and then PC information is extracted from each decomposed information, and an adhesion process is performed to form an adhesion space. In other words, the company information and information device information expressed in the
図26は、セル空間レベル25で表現される対象情報の例を示す。セル空間レベル25は、セル空間ID×(キー属性×{ε+Σその他属性を表す部分集合}(ΣインスタンスID×{ε+Σ値を表す部分集合}))により表現できる。また、セル空間レベル25は、前記トポロジー空間レベル23よりも前記対象情報の抽象度が低く表現され、前記トポロジー空間における前記対象情報が所定の属性をもって表現される。図26に示すように、社員情報はキー属性すなわち社員コードを持つ社員名、所属、年齢により構成される。また、これら社員名や所属に関する情報は社員ごとに識別情報である社員コードを付与されて区分けされている。そしてこれらの対象情報をセル空間レベル25で表現すると数34のように表現できる。
社員×(社員コード×{ε+社員名+所属+年齢}×(K10×{ε+社員A+土木+30歳}+K11×{ε+社員B+建築+29歳}))・・・(数34)
セル空間レベル25で表現される対象情報について新たな属性が追加された場合、従来はこの新たな情報に対応するために全体のデータベース設計,アプリケーションプログラムを組みなおすことが必要とされていた。これは、従来の情報処理では、情報処理の対象となるデータが、表、対象指向データベースでの対象の階層構造、そのような対象間の継承、データ間の関係を示すポインタによるリンク等で記述されるからである。しかし、第1の実行形態に係る情報処理装置によれば、データが、文字列を因子とする1以上の因子の積和形式の多項式で記述されるため、新たな情報の追加を自由に行うことができる。FIG. 26 shows an example of target information expressed at the
Employee x (employee code x {ε + employee name + affiliation + age} × (K10 × {ε + employee A + civil engineering + 30 years old} + K11 × {ε + employee B + architecture + 29 years old})) (Equation 34)
When new attributes are added to the target information expressed at the
さらに、本情報処理装置は、社員コード×{ε+社員名+所属+年齢}に対して、新たに、性別、役職を追加することもできる。この場合には、既存のデータに対して、性別、役職の初期値としてΦを用いて、社員コード×{ε+社員名+所属+年齢+性別+役職}(101{阿部太郎+営業+23+Φ+Φ}+・途中略・+198{阿部太郎+総務+25+Φ+Φ}+199{山本三郎+設計+20+Φ+Φ})のように表現すればよい。そして、その後、各社員の役職の変更を行えばよい。ただし、属性追加時に、属性値(実際の性別、役職等)を入力してもよい。 また、例えば、
社員コード×{ε+社員名+所属+年齢}(101{阿部太郎+営業+23}+・途中略・+198{阿部太郎+総務+25})からなる社員データベースへの社員データ199{山本三郎+設計+20}の追加後の結果は、社員コード×{ε+社員名+所属+年齢}(101{阿部太郎+営業+23}+・途中略・+198{阿部太郎+総務+25}
というデータが登録されてあり、属性を追加したオブジェクトである 社員コード×{ε+社員名+所属+年齢+性別+役職}(199{山本三郎+設計+20+男+部長}}
を追加したいとき、
社員コード×{ε+社員名+所属+年齢}(101{阿部太郎+営業+23}+・途中略・+198{阿部太郎+総務+25})からなる社員データベースへの社員データ199{山本三郎+設計+20}の追加後の結果は、社員コード×{ε+社員名+所属+年齢}(101{阿部太郎+営業+23}+・途中略・+198{阿部太郎+総務+25})+社員コード×{ε+社員名+所属+年齢+性別+役職}(199{山本三郎+設計+20+男+部長}}
と単純にオブジェクトを追加すればよい。つまり、本情報処理装置100では、管理する対象、記述する概念毎に属性を決めることができる.これは,属性を含めたスキーマ設計が必要ないことを意味する。既存の技術では,データベースのスキーマを変更するにはメンテナンス上の手間が非常に大きなる。 さらに、作成した式は,上述した所定の処理、すなわち、文字列の横方向展開、縦方向展開、積演算処理、商演算処理、接着演算処理、部分集合取得処理、ホモトピー保存処理、ホモトピー保存式におけるUNDO処理、およびホモトピー保存式におけるREDO処理によって、式を変形することで即座に期待する出力結果を得ることができる。従来の技術ならアプリケーションプログラムの開発が必要とされるところである。Furthermore, this information processing apparatus can newly add a gender and job title to the employee code × {ε + employee name + affiliation + age}. In this case, with respect to the existing data, Φ is used as the initial value of the gender and position, and the employee code × {ε + employee name + affiliation + age + gender + position} (101 {Taro Abe + Sales + 23 + Φ + Φ} +・ Abbreviated ・ +198 {Taro Abe + General Affairs + 25 + Φ + Φ} +199 {Saburo Yamamoto + Design + 20 + Φ + Φ}) After that, the job title of each employee may be changed. However, when adding an attribute, an attribute value (actual gender, job title, etc.) may be input. For example,
Employee data 199 {Saburo Yamamoto + design +20 }, The result after the addition is employee code × {ε + employee name + affiliation + age} (101 {Taro Abe + Sales + 23} + ・ Omitted ・ +198 {Taro Abe + General Affairs + 25}
Employee code × {ε + Employee name + Affiliation + Age + Gender + Position} (199 {Saburo Yamamoto + Design + 20 + Men + Director}}}
When you want to add
Employee data 199 {Saburo Yamamoto + design +20 } Results in employee code x {ε + employee name + affiliation + age} (101 {Taro Abe + Sales +23} + · Abbreviated +198 {Taro Abe + General Affairs +25}) + employee code x {ε + employee Name + Affiliation + Age + Gender + Title} (199 {Saburo Yamamoto + Design +20 + Male + General Manager}}
Simply add an object. That is, in the
さらにまた、情報をプレーンテキストとして保存した場合には、情報の処理、取り扱いに拘束がない反面、情報に対して一貫性のある演算処理を構築することが困難となる。情報処理は、例えば、文字列の検索、挿入、削除、書き換え等に限定される。 Furthermore, when information is stored as plain text, there is no restriction on processing and handling of information, but it is difficult to construct a consistent arithmetic processing for information. Information processing is limited to, for example, search, insertion, deletion, rewriting, and the like of character strings.
しかし、本実施形態のように、情報を式表現、識別子、因子、項(要素)、集合情報、トポロジー空間情報、セル空間情報、接着空間情報のように、複雑さをレベル分けし、それぞれのレベルで、式表現を限定することにより、縦方向展開、横方向展開、和、積、商、剰余、部分集合取得、接着等の演算を定義することが可能となる。したがって、メモリに保持した情報をこれらの演算を実行する共通関数で取り扱うことが可能となる。従って、式表現による柔軟性を確保するとともに、式表現の規則によって拘束された形式で事物あるいは概念を記述し、メモリ12に保持し、処理し、表示できる。 However, as in this embodiment, the information is divided into levels such as formula expressions, identifiers, factors, terms (elements), collective information, topology space information, cell space information, and adhesion space information. By limiting the expression expression by level, it is possible to define operations such as vertical expansion, horizontal expansion, sum, product, quotient, remainder, subset acquisition, and adhesion. Therefore, information held in the memory can be handled by a common function that executes these operations. Therefore, it is possible to ensure flexibility by expression expression, and to describe an object or concept in a form constrained by the expression expression rules, hold it in the
《第2実施形態》
以下、図27から図32を参照して、本発明の第2実施形態を説明する。上記第1実施形態では、式表現を用いて記述したコンピュータ上の対象情報のデータ構造と、そのような対象情報を取り扱う基本的な演算の種類と、コンピュータ上での演算の処理例を説明した。また、そのようなデータ構造と演算によって、処理されるデータ例を説明した。本実施形態では、第1実施形態で説明したデータ構造および演算によって構成されるアプリケーションプログラムの例を説明する。<< Second Embodiment >>
Hereinafter, a second embodiment of the present invention will be described with reference to FIGS. In the first embodiment, the data structure of the target information on the computer described using the expression expression, the types of basic operations for handling such target information, and the processing examples of the calculation on the computer have been described. . Moreover, the example of the data processed by such a data structure and calculation was demonstrated. In this embodiment, an example of an application program configured by the data structure and calculation described in the first embodiment will be described.
図27は、本実施形態に係る情報処理装置100の構成である。情報処理装置100のハードウェアの構成は、第1実施形態と同一である。ただし、図27では、CPU13で実行されるプログラムが、ユーザインターフェース部101、情報管理部102、および共通関関数ライブラリ103に分けて示されている。 FIG. 27 shows a configuration of the
これらのうち、共通関数ライブラリは、第1実施形態で説明した共通関数群をライブラリ化し、アプリケーションプログラムから呼び出し可能としたものである。共通関数群には、和演算、積演算、縦方向展開処理、横方向展開補処理、商演算(剰余取得も含む)、部分集合取得、ホモトピー保存、UNDO、REDU、インスタンス挿入、インスタンス削除、インスタンス変更等を含む。 Among these, the common function library is a library of the common function group described in the first embodiment and can be called from an application program. Common functions include sum operation, product operation, vertical expansion processing, horizontal expansion complement processing, quotient operation (including remainder acquisition), subset acquisition, homotopy storage, UNDO, REDU, instance insertion, instance deletion, instance Including changes.
情報管理部は、入力部11からの操作にしたがってインスタンス等のデータを生成し、メモリ102にデータを格納し、検索し、変更し、削除し、出力部14に出力するアプリケーションプログラムである。本実施形態では、このアプリケーションプログラムの処理を具体的に説明する。 The information management unit is an application program that generates data such as an instance in accordance with an operation from the
ユーザインターフェース部101は、入力部11でのユーザ操作の検出、検出されたユーザ操作の情報管理部102への報告、情報管理部102からの指示に基づくデータの出力部14への出力等を実行する。ユーザインターフェース部101は、例えば、グラフィカルユーザインターフェースを提供する関数群、コントロール等を組み合わせて実現される。本実施形態において、ユーザインターフェース部101は、従来のアプリケーションプログラムのユーザインターフェースと同様である。 The
図28Aおよび図28Bに、社員データ管理処理の処理フローを示す。社員データ管理処理は、データ管理部102の機能の1つである。この処理では、CPU113は、通常、不図示の社員データ管理ウィンドウを出力部14に表示して、ユーザ操作を待つ(S1、S2)。 28A and 28B show a processing flow of employee data management processing. The employee data management process is one of the functions of the
そして、ユーザ操作が検出されると、CPU13は、その操作の種類を判定する。例えば、CPU13は、操作が、新規データの入力要求であるか、否かを判定する(S3)。新規データの入力要求は、新規データの入力を要求するメニューの選択、ウィンドウ上のボタンの押下等によって検知される。 When a user operation is detected, the
操作が、新規データの入力要求である場合、CPU13は、社員データ入力処理を実行する(S4)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a request for inputting new data, the
操作が新規データの入力要求でない場合、CPU13は、操作がデータ検索要求であるか否かを判定する(S5)。 If the operation is not an input request for new data, the
操作が、データ検索要求である場合、CPU13は、社員データ検索処理を実行する(S6)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a data search request, the
操作がデータ検索要求でない場合、CPU13は、操作がデータ削除要求であるか否かを判定する(S7)。 If the operation is not a data search request, the
操作が、データ削除要求である場合、CPU13は、社員データ削除処理を実行する(S8)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a data deletion request, the
操作がデータ削除要求でない場合、CPU13は、操作がデータ変更要求であるか否かを判定する(S9)。 If the operation is not a data deletion request, the
操作が、データ変更要求である場合、CPU13は、社員データ変更処理を実行する(SA)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a data change request, the
操作がデータ変更要求でない場合、CPU13は、操作がメモ接着要求であるか否かを判定する(SB)。 If the operation is not a data change request, the
操作が、メモ接着要求である場合、CPU13は、メモ作成と接着処理を実行する(SC)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 If the operation is a memo adhesion request, the
操作がメモ接着要求でない場合、CPU13は、操作がメモ切り離し要求であるか否かを判定する(SD)。 If the operation is not a memo attachment request, the
操作が、メモ切り離し要求である場合、CPU13は、メモ切り離し処理を実行する(SE)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a memo separation request, the
操作がメモ切り離し要求でない場合、CPU13は、操作が集合接着要求であるか否かを判定する(SF)。 When the operation is not a memo separation request, the
操作が、集合接着要求である場合、CPU13は、集合接着処理を実行する(SG)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a collective adhesion request, the
操作が集合接着要求でない場合、CPU13は、操作が集合切り離し要求であるか否かを判定する(SH)。 If the operation is not a collective bonding request, the
操作が、集合切り離し要求である場合、CPU13は、集合切り離し処理を実行する(SI)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is a set detachment request, the
操作が集合切り離し要求でない場合、CPU13は、操作が属性追加要求であるか否かを判定する(SJ)。 If the operation is not a set separation request, the
操作が、属性追加要求である場合、CPU13は、属性追加処理を実行する(SK)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is an attribute addition request, the
操作が属性追加要求でない場合、CPU13は、操作が属性値構成変更要求であるか否かを判定する(SL)。 When the operation is not an attribute addition request, the
操作が、属性値構成変更要求である場合、CPU13は、属性値構成変更処理を実行する(SM)。その後、CPU13は、制御をS1に戻し、再び、ユーザ操作待ちになる。 When the operation is an attribute value configuration change request, the
図29に、社員データ入力処理(図28AのS4)の詳細処理フローを示す。この処理を実行するCPU13が本発明の入力処理部に相当する。この処理では、CPU13は、出力部14に、社員データ入力画面を表示する(S41)。社員データ入力画面の画面データ自体は、メモリ12または不図示の外部記憶装置(ハードディスク等)の画面IDとともに画面データファイルに格納されている。CPU13は、入力インターフェース部101を通じて、この社員データ入力画面を表示する。なお、本実施形態における他の画面表示処理も同様である。 FIG. 29 shows a detailed process flow of the employee data input process (S4 in FIG. 28A). The
次に、ユーザが、社員データ入力画面に対して社員データ(例えば、社員コード、氏名、年齢、職種、所属)を入力する。すると、CPU13は、入力インターフェース部101を通じて、入力された社員データを取り込む(S42)。 Next, the user inputs employee data (for example, employee code, name, age, occupation, affiliation) on the employee data input screen. Then, the
次に、CPU13は、入力された社員データに対するインスタンス、例えば、社員コード×{ε+氏名+年齢+職種+所属}に対する101×{ε+山田太郎+26歳+設計+公共事業部}を生成する。そして、インスタンス挿入関数を用いて、社員セル空間情報のインスタンスとして、入力された社員データを挿入する(S43)。この社員データは、メモリ12または不図示の外部記憶装置に保持される。なお、社員データのインスタンスを生成する本アプリケーション専用の関数genins(集合ID、コード、氏名、年齢、職種、所属)を提供してもよい。関数geninsは、社員コード、氏名、年齢、職種、所属のそれぞれの値から、社員セル空間情報のインスタンスを生成し、集合IDで指定される集合に、生成したインスタンスを挿入し、メモリ12または外部記憶装置に保存する。 Next, the
図30に、社員データ検索処理(図28AのS6)の詳細処理フローを示す。この処理を実行するCPU13が本発明の出力処理部に相当する。この処理では、CPU13は、出力部14に、検索画面を表示する(S61)。 FIG. 30 shows a detailed process flow of the employee data search process (S6 in FIG. 28A). The
次に、ユーザが、検索画面に対して検索するセル空間情報(例えば、社員データ)、属性値p(例えば、社員コードに対する値101)を入力する。すると、CPU13は、入力インターフェース部101を通じて、入力された検索する属性値を取り込む(S62)。この例では、ユニークな検索キーとして、属性×属性値が使用される。すなわち、社員コード×101がCPU13(情報管理部102)に引き渡される。 Next, the user inputs cell space information (for example, employee data) and an attribute value p (for example,
次に、CPU13は、検索キーである社員コード×101を識別子に分解する。この場合には、“社員コード”と、“101”という識別子が得られる。これ検索する識別子という。 Next, the
次に、CPU13は、第1の検索する識別子(例えば、“社員コード”)を用いて、セル空間情報(集合IDが社員データであるセル空間情報)に対して、商演算を実行する(S64)。 Next, the
次に、CPU13は、すべての検索する識別子(“社員コード”と、“101”)で、商演算を実行したか否かを判定する。まだ、商演算を実行してしたいない識別子(例えば、“101”)がある場合、制御をS64に戻し、その識別子にて商演算を実行する。これは、いわゆる絞り込み検索に相当する。 Next, the
そして、CPU13は、ユーザインターフェース部101を通じて出力部14の検索画面に、得られた部分集合、すなわち、コード×101のインスタンスを表示する(S66)。 Then, the
このように、検索対象の情報に対して、検索する識別子によって繰り返し商演算を実行することにより、ほしいデータを検索することができる。
(例)
今、社員データベースとして、以下のものを考え得る。
社員×(社員コード×{ε+氏名+年齢+職種コード+所属名}×(
+101{ε+鈴木一郎+23+100+総務}
+102{ε+鈴木一郎+23+100+総務}
+103{ε+鈴木一郎+23+101+総務}
)
+備品コード×{ε+分類+数量+社員コード}×(
+B50{ε+机 +1+101}
+B51{ε+PC+2+102}))
この場合、まず因子”社員コード”を同値因子として商演算すると商項は、
社員×(社員コード×{ε+氏名+年齢+職種コード+所属名}×(
+101{ε+鈴木一郎+23+100+総務}
+102{ε+鈴木一郎+23+100+総務}
+103{ε+鈴木一郎+23+101+総務}))
さらにこの項に,因子”101”を同値因子として商演算すると商項は、
社員×(社員コード×{ε+氏名+年齢+職種コード+所属名}×(101{ε+鈴木一郎+23+100+総務})となる.このようにして,全体のデータから、”社員コードが101”についての情報を取得することができる。 図31に、メモ作成と接着処理(図28BのSC)の詳細フローを示す。この処理では、CPU13は、出力部14に、メモ画面を表示する(SC1)。In this way, it is possible to search for desired data by repeatedly performing a quotient operation on the information to be searched with the identifier to be searched.
(Example)
The following can be considered as an employee database.
Employee x (employee code x {ε + name + age + job code + affiliation name} x (
+101 {ε + Ichiro Suzuki + 23 + 100 + General Affairs}
+102 {ε + Ichiro Suzuki + 23 + 100 + General Affairs}
+103 {ε + Ichiro Suzuki + 23 + 101 + General Affairs}
)
+ Equipment code x {ε + classification + quantity + employee code} x (
+ B50 {ε + desk + 1 + 101}
+ B51 {ε + PC + 2 + 102}))
In this case, if the factor “employee code” is calculated as an equivalent factor,
Employee x (employee code x {ε + name + age + job code + affiliation name} x (
+101 {ε + Ichiro Suzuki + 23 + 100 + General Affairs}
+102 {ε + Ichiro Suzuki + 23 + 100 + General Affairs}
+103 {ε + Ichiro Suzuki + 23 + 101 + General Affairs}))
Furthermore, when the quotient calculation is performed with the factor “101” as an equivalent factor,
Employee x (employee code x {ε + name + age + job code + affiliation name} x (101 {ε + Ichiro Suzuki + 23 + 100 + general affairs}) In this way, from the entire data, “employee code is 101” 31 shows a detailed flow of the note creation and adhesion process (SC in FIG. 28B), in which the
次に、ユーザが、メモ画面に対して、メモIDおよびメモ内容(テキスト情報)を入力する。すると、CPU13は、入力インターフェース部101を通じて、添付する集合、添付先、メモ内容を取り込む(SC2)。 Next, the user inputs a memo ID and memo contents (text information) on the memo screen. Then, the
次に、CPU13は、取り込んだメモIDおよびメモ内容からメモのインスタンスであるメモID×{ε+テキスト情報}を生成する。そして、CPU13は、インスタンス挿入関数を用いて、メモセル空間情報に、メモのインスタンスを挿入し、メモリ12または不図示の外部記憶装置に保存する(SC3)。なお、入力されたメモIDの代わりに、情報管理部102がユニークなメモID生成するようにしてもよい。すなわち、現在のメモ集合から、すべてのメモIDを読み出し、メモIDをソーティングし、最後尾のメモIDに1を加えた値をメモIDとすればよい。 Next, the
次に、CPU13は、メモを添付する接着箇所、すなわち、セル空間情報(例えば、集合IDが社員データ)、および添付先(例えば、コードに対する値101のインスタンスの指定)を受け付ける(SC4)。 Next, the
そして、CPU13は、指定されたセル空間情報中の指定されたインスタンスであるコード101のインスタンスと、作成したメモIDのメモとの接着演算を実行する(SC5)。これによって、コード101の社員データに、メモが添付されたことになる。 Then, the
図32に、属性追加処理(図28BのSK)の詳細処理フローを示す。この処理では、CPU13は、出力部14に、属性追加設定画面を表示する(SK1)。 FIG. 32 shows a detailed processing flow of attribute addition processing (SK in FIG. 28B). In this process, the
次に、ユーザが、属性追加設定画面に対して、属性を追加するセル空間ID、属性追加位置、および追加属性を入力する。すると、すると、CPU13は、入力インターフェース部101を通じて、追加するセル空間ID、属性追加位置、および追加属性を取り込む(SK2)。 Next, the user inputs a cell space ID to which an attribute is added, an attribute addition position, and an additional attribute on the attribute addition setting screen. Then, the
次に、指定されたセル空間IDのセル空間情報に、属性を示す文字列を和演算で追加する(SK3)。 Next, a character string indicating an attribute is added to the cell space information of the specified cell space ID by a sum operation (SK3).
次に、既存のインスタンスに対して、追加された属性に対する属性値Φを設定する(SK4)。 Next, the attribute value Φ for the added attribute is set for the existing instance (SK4).
なお、以上の説明では、社員データ削除処理(図28AのS8)、社員データ変更処理(同図のSA)、メモ切り離し処理(同図のSE)、集合接着(同図のSG)、接着集合切り離し処理(同図のSI)、属性値構成変更処理(同図のSM)については、省略した。しかし、これらの処理は、図29−32の処理とほぼ同様の手順で構成できる。 In the above description, the employee data deletion process (S8 in FIG. 28A), the employee data change process (SA in the figure), the memo separation process (SE in the figure), the collective bond (SG in the figure), and the adhesive set The separation process (SI in the figure) and the attribute value configuration change process (SM in the figure) are omitted. However, these processes can be configured in substantially the same procedure as the processes shown in FIGS.
例えば、まず、社員データ削除処理については、S6の社員データ検索処理を実行し、検索された結果をメモリ12から削除すればよい。その場合に、共通関数として、戻り値=delete(セル空間ID、インスタンス);を用意してもよい。 For example, as for the employee data deletion process, first, the employee data search process of S6 may be executed, and the searched result may be deleted from the
また、社員データ変更処理については、S6の社員データ検索処理を実行し、検索された結果をメモリ12から変更すればよい。その場合に、共通関数として、戻り値=replace(セル空間ID、変更前のインスタンス、変更後のインスタンス);を用意してもよい。 As for the employee data change process, the employee data search process of S6 may be executed and the search result may be changed from the
また、メモ切り離し処理(図28AのSE)については、以下の手順である。
(1)同値関係を指定する因子1と、因子2の指定を受け付ける。
(2){因子1×因子2}を含む式表現をメモリ12にて検索する。
(3){(左因子1の和)、(左因子2の和}}×{因子1+因子2}×{(右 因子1の和)+(右因子2の和)}の関係から、左因子1×因子1×右因子 1の和+左因子2×因子2×右因子2の和という式表現を構成する。
(4)得られた式表現をメモリ12に格納する。The memo separation process (SE in FIG. 28A) is the following procedure.
(1) Accepts the designation of
(2) Search the
(3) From the relationship of {(sum of left factor 1), (sum of left factor 2}} × {
(4) Store the obtained expression expression in the
また、集合接着演算は、以下の手順で構成できる。
(1)接着する2つの集合情報の集合ID(例えば、集合ID1、集合ID2) と、同値関係を指定する因子1、因子2を受け付ける。
(2)集合ID1の集合情報に商演算を実行し、因子1を含む商(同値要素1) と、剰余に分ける。
(3)集合ID2の集合情報に商演算を実行し、因子1を含む商(同値要素2) と、剰余に分ける。
(4)同値要素1の左因子l1、右因子r1,同値要素2の左因子l2、右因子 r2を求め、以下の商空間の式を求める。{l1+l2}{因子1+因子2 }{r1+r2}
(5)商空間の式に、集合ID1の集合情報の剰余の式と、集合ID2の集合情報の剰余の式とを和演算する。The collective adhesion calculation can be configured by the following procedure.
(1) Accepts a set ID (for example, set ID1, set ID2) of two set information to be bonded, and
(2) A quotient operation is performed on the set information of the set ID1, and divided into a quotient including the factor 1 (equivalent element 1) and a remainder.
(3) A quotient operation is performed on the set information of the
(4) The left factor l1, the right factor r1, the left factor l2, and the right factor r2 of the
(5) Add the remainder expression of the set information of set ID1 and the remainder expression of the set information of set ID2 to the quotient space expression.
以上説明した本実行形態に係る情報処理装置によれば対象を所定の表現形式を用いて表現して処理することで、異なる対象同士の情報の一貫性を図るとともに新たな様々な対象情報のデータベース化及び処理が可能となる。また、所定の処理を実行することにより情報の管理に適したレベルに移行することができる。また、新たな情報を追加した場合やレベルを変化せせる場合も予め本発明に係る情報処理装置が有するプログラムに基づいて実行することができる。すなわち、プログラムの再構築を行う必要もない。 According to the information processing apparatus according to the present embodiment described above, the object is expressed and processed using a predetermined expression format, thereby ensuring consistency of information between different objects and creating a new database of various target information. And processing becomes possible. Moreover, it is possible to shift to a level suitable for information management by executing predetermined processing. Also, when new information is added or when the level is changed, the information processing apparatus according to the present invention can be executed in advance based on a program. That is, there is no need to reconstruct the program.
以上、本発明の好適な実行形態を説明したが、本発明に係る情報処理装置は、これらに限らず、可能な限りこれらの組み合わせを含むことができる。 The preferred execution form of the present invention has been described above, but the information processing apparatus according to the present invention is not limited to these, and can include combinations thereof as much as possible.
Claims (27)
前記対象情報を操作する処理部と、
情報の入力を受け付ける入力部を接続可能な入力インターフェースと、
情報を出力する出力部を接続可能な出力インターフェースと、を備え、
前記記憶部は、一の情報と他の情報との関係を前記一の情報を示す第1因子と前記他の情報を示す第2因子とを積演算子で結合した形式で記憶し、前記対象情報は、複数の前記形式を項として、前記項を和演算子で組み合わせた項の組み合わせを含み、
前記処理部は、前記項または複数の項の組み合わせに対して、前記項に適用される演算用因子の指定を受け、前記項に前記演算用因子が含まれるときにその項を保持し、前記演算用因子が前記保持された項の因子であるときに前記保持された項を選択する第1の選択演算を実行し、前記演算用因子が前記保持された項の因子ではなく、かつ、前記保持された項に集合因子構成演算子によって関係付けられた項の組み合わせを含む因子である集合因子が含まれるときに、前記集合因子中の項に対して前記第1の選択演算を実行し、前記集合因子中のいずれかの項が選択できたときに、前記集合因子中の選択された項と前記項を構成する因子中の前記集合因子以外の因子とを前記積演算子によって結合し、前記演算用因子が因子である項または項の部分を抽出する商演算部と、
前記項または複数の項の組み合わせに対して、前記演算用因子が前記項の因子でないときにその項を構成する因子を選択する第2の選択演算を実行するとともに選択された因子を保持し、前記保持された因子中に前記集合因子構成演算子によって関係付けられた項の組み合わせを含む因子である集合因子が含まれるときに、前記集合因子中の項に対して前記第2の選択演算を実行し、前記集合因子中のいずれかの項が選択できたときに、前記集合因子中の選択された項と前記保持されている因子のうちの前記集合因子以外の因子とを前記積演算子によって結合し、前記演算用因子が因子でない項または項の部分を抽出する剰余演算部と、をさらに有し、
単独の因子を含む指定情報または前記一の情報と他の情報との関係を有する複数の因子を含む指定情報を前記入力部から受け付け、前記指定情報中の因子を前記演算用因子として商演算部を実行することにより、前記指定情報中の因子を含む項または項の組み合わせを前記記憶部の対象情報から抽出し、前記出力インターフェースに接続された出力部に出力する情報処理装置。A term that contains an identifier, a product operator that combines multiple identifiers as a sequence of factors that have an order and is not commutative, and / or a plurality of identifiers combined as a sequence of identifiers and factors A storage unit that stores target information described by a sum operator that forms a combination of terms for which a commutative law holds,
A processing unit for operating the target information;
An input interface that can be connected to an input unit that receives information;
An output interface to which an output unit that outputs information can be connected;
The storage unit stores a relationship between one information and another information in a form in which a first factor indicating the one information and a second factor indicating the other information are combined by a product operator, and the target The information includes a combination of terms obtained by combining the terms with a sum operator, with a plurality of the forms as terms.
The processing unit receives an operation factor applied to the term for the term or a combination of terms, and holds the term when the term includes the operation factor, Performing a first selection operation that selects the retained term when the computation factor is a factor of the retained term, wherein the computation factor is not a factor of the retained term, and Performing a first selection operation on a term in the set factor when the retained term includes a set factor that is a factor including a combination of terms related by a set factor construction operator; When any term in the set factor can be selected, the selected term in the set factor and a factor other than the set factor in the factor constituting the term are combined by the product operator, A term or term in which the calculation factor is a factor A quotient calculating unit for extracting a portion,
For the term or a combination of terms, execute a second selection operation that selects a factor that constitutes the term when the factor for calculation is not a factor of the term, and retains the selected factor. When the retained factor includes a set factor that is a factor including a combination of terms related by the set factor construction operator, the second selection operation is performed on the term in the set factor. And when any term in the set factor is selected, the product operator is used to select the selected term in the set factor and a factor other than the set factor among the retained factors. And a remainder calculation unit that extracts a term or a part of a term in which the calculation factor is not a factor, and
Designation information including a single factor or designation information including a plurality of factors having a relationship between the one information and other information is received from the input unit, and the factor in the designation information is used as the factor for the quotient calculation unit. the by performing a combination of terms or term including factors in the designation information extracted from the target information of the storage unit, the information processing apparatus for outputting the output connected to the output interface.
前記処理部は、前記入力インターフェースに接続される入力部から入力される情報を前記対象情報に設定する処理または前記対象情報に対して実行される処理の演算部として、
前記積演算子によって、複数の識別子を複数結合する積演算部と、
前記積演算子によって結合された複数の識別子からいずれかの識別子を抽出する因子抽出部と、
前記識別子、または積演算子によって結合された識別子をさらに前記和演算子によって組み合わせて、項の組み合わせを構成する和演算部と、
前記項の組み合わせに含まれるいずれかの項を抽出する項抽出部と、
前記項の組み合わせに順序構成演算子を付加することによって因子または項を構成する順序生成部と、
前記項の組み合わせに順序構成演算子を付加された因子または項から前記順序構成演算子を除去する順序展開部と、
前記項の組み合わせに集合因子構成演算子を付加することによって因子または項を構成する集合因子構成部と、
前記項の組み合わせに集合因子構成演算子を付加された因子または項から前記集合因子構成演算子を除去する集合因子展開部と、
前記対象情報を構成する一の因子が項の組み合わせと前記順序構成演算子とによって構成されているとき、または前記一の因子が項の組み合わせと前記集合因子構成演算子とによって構成されているときに、前記一の因子と同一の項に含まれる、前記一の因子と積演算子で結合されている共通因子を前記項の組み合わせ中のそれぞれの項に付加して前記積演算子によって結合することによって、前記共通因子を展開する共通因子展開部と、をさらに有する請求項1に記載の情報処理装置。The target information does not maintain the order of the terms in the combination and the order construct operator that forms a factor or a new term by maintaining the order of the terms in the combination and relating the combinations of the terms. A set factor construct operator that constructs a factor or a new term by relating the combination of terms, and
The processing unit is a processing unit for setting information input from the input unit connected to the input interface to the target information or a process executed on the target information .
A product operation unit for combining a plurality of identifiers by the product operator;
A factor extraction unit for extracting any identifier from a plurality of identifiers combined by the product operator;
A sum operation unit that further combines the identifier or the identifier combined by a product operator by the sum operator to form a combination of terms; and
A term extraction unit that extracts any term included in the combination of terms;
An order generator that forms factors or terms by adding an order construct operator to the combination of terms;
An order expansion unit that removes the order construction operator from a factor or term in which the order construction operator is added to the combination of the terms;
A set factor component that forms a factor or term by adding a set factor component operator to the combination of terms;
A set factor expansion unit that removes the set factor constituent operator from a factor or a term in which a set factor constituent operator is added to the combination of terms;
When one factor constituting the target information is configured by a combination of terms and the ordered constituent operator, or when the one factor is configured by a combination of terms and the set factor constituent operator In addition, a common factor included in the same term as the one factor and combined with the one factor by a product operator is added to each term in the combination of the terms and combined by the product operator. The information processing apparatus according to claim 1, further comprising: a common factor expansion unit that expands the common factor.
前記第1の項として複数の項が分類されたときに、前記因子抽出部から抽出された複数の左因子から、和演算子と順序構成演算子とによって複数の左因子を含む左値因子を構成し、前記因子抽出部から抽出された複数の右因子から、和演算子と順序構成演算子とによって複数の右因子を含む右値因子を構成し、前記左値因子、共通因子、および右値因子列を積演算子で結合する左右因子括り出し部と、を有する請求項4に記載の情報処理装置。The subset forming unit extracts a left factor coupled to the left side of the common factor by a product operator and a right factor coupled to the right side of the common factor by a product operator from the term including the common factor. , For a term without the left factor or the right factor, a factor extraction unit that extracts a unit element instead of the left factor or the right factor; and
When a plurality of terms are classified as the first term, a left value factor including a plurality of left factors is calculated from a plurality of left factors extracted from the factor extraction unit by a sum operator and an order composition operator. A right value factor including a plurality of right factors by a sum operator and an order composition operator from a plurality of right factors extracted from the factor extraction unit, the left value factor, the common factor, and the right factor The information processing apparatus according to claim 4 , further comprising: a left and right factor extraction unit that combines the value factor sequences with a product operator.
前記トポロジー空間情報は、そのトポロジー空間情報を識別する情報である第2の識別因子と、前記部分集合がなす因子または部分集合の組み合わせに集合因子構成演算子を付加した因子とが、積演算子によって結合されている、請求項7に記載の情報処理装置。The target information is classified into a subset in which the common factor is bundled from set information and another subset, and constitutes topology space information including at least one of the subsets,
The topology space information includes a second identification factor that is information for identifying the topology space information, and a factor obtained by adding a set factor constituent operator to a factor or a combination of subsets formed by the subset. The information processing apparatus according to claim 7 , wherein the information processing apparatuses are coupled together.
セル空間情報を他のセル空間情報と識別するセル空間識別因子と、
属性を指定する識別子、属性を指定する複数の識別子を積演算子によって結合した属性列、および、前記属性を指定する識別子および属性列のいずれかまたは双方の組み合わせを順序構成演算子で構成した属性の順序因子のいずれかである属性因子と、
前記属性因子に対応する値を指定する識別子、値を指定する複数の識別子を積演算子によって結合した値列、および、前記属性の順序因子に対応する値を指定する項の組み合わせを順序構成演算子によって構成した値の順序因子のいずれかを1以上含む単一の項またはそのような項の組み合わせを含む値因子と、を積演算子で結合して構成される請求項9に記載の情報処理装置。The cell space information is
A cell space identification factor that distinguishes cell space information from other cell space information;
An identifier that specifies an attribute, an attribute column that is a combination of multiple identifiers that specify an attribute by a product operator, and an attribute in which either or both of the identifier and attribute column that specify the attribute are configured by an order construction operator An attribute factor that is one of the order factors of
An order composition operation is a combination of an identifier for designating a value corresponding to the attribute factor, a value sequence obtained by combining a plurality of identifiers for designating values by a product operator, and a term for designating a value corresponding to the order factor of the attribute. 10. The information according to claim 9 , wherein a single term including any one or more of order values of values constituted by children or a value factor including a combination of such terms are combined by a product operator. Processing equipment.
前記接着空間情報は、第1の被接着情報と第2の被接着情報を含み、
第1の被接着情報は、被接着情報同士を関連づける情報である第1の同値因子と、前記第1の同値因子と積演算子で結合される第1の被接着因子とを含み、
第2の被接着情報は、被接着情報同士を関連づける情報である第2の同値因子と、前記第2の同値因子と積演算子で結合される第2の被接着因子とを含み、
前記接着処理部は、第1の同値因子と第2の同値因子との関連付けの指定を受ける指定部と、
前記第1の同値因子と第2の同値因子との関連付けとともに、第1の被接着因子と第2の被接着因子との関連付けを前記記憶部に記憶させる接着部と、を有する請求項1から10のいずれか1項に記載の情報処理装置。Wherein the processing unit sections, collecting case information, topology spatial information, Oyo at least one of the beauty cell Le spatial information and adherend information, adhesion treatment unit constituting the adhesive spatial information attached two or more adherend information Have
The bonding space information includes first bonded information and second bonded information,
The first adherend information includes a first equivalence factor that is information that associates the adherend information with each other, and a first adherent factor that is combined with the first equivalence factor by a product operator,
The second adherend information includes a second equivalence factor that is information for associating the adherend information with each other, and a second adherend factor that is combined with the second equivalence factor by a product operator,
The adhesion processing unit includes a designation unit that receives designation of association between the first equivalence factor and the second equivalence factor;
2. An adhesive unit that stores the association between the first adherent factor and the second adherent factor in the storage unit together with the association between the first equivalent factor and the second equivalent factor. the information processing apparatus according to any one of 10.
前記第1の同値因子を前記演算用因子として、前記第1の被接着情報を剰余演算部で演算することによって、前記第1の同値因子を含ない非関連項を抽出し、前記第2の同値因子を前記演算用因子として、前記第2の被接着情報を剰余演算部で演算することによって、前記第2の同値因子を含ない非関連項を抽出する非関連項抽出部と、
前記第1の関連項から第1の同値因子を括り出すとともに、前記第2の関連項から第2の同値因子を括り出し、さらに、括り出された第1の同値因子と第2の同値因子と順序構成演算子によって関連づける関連づけ部とを有する請求項11に記載の情報処理装置。The adhesion processing unit uses the first equivalence factor as the calculation factor and computes the first adherend information by a quotient computation unit, thereby including a first related term including the first equivalence factor. A relationship for extracting a second related term including the second equivalence factor by extracting and computing the second adherend information by a quotient computation unit using the second equivalence factor as the computation factor A term extractor;
By using the first equivalence factor as the computation factor and computing the first adherend information by a remainder computation unit, an unrelated term not including the first equivalence factor is extracted, and the second equivalence factor is extracted. An unrelated term extraction unit that extracts an unrelated term that does not include the second equivalence factor by calculating the second adherend information by a remainder calculation unit using the equivalent factor as the calculation factor;
The first equivalence factor is extracted from the first related term, the second equivalent factor is extracted from the second related term, and the extracted first equivalence factor and second equivalence factor are further extracted. The information processing apparatus according to claim 11 , further comprising an associating unit that associates the information with an order composition operator.
情報の入力を受け付ける入力部を接続可能な入力インターフェースと、
情報を出力する出力部を接続可能な出力インターフェースと、を備え、前記記憶部が、一の情報と他の情報との関係を前記一の情報を示す第1因子と前記他の情報を示す第2因子とを積演算子で結合した形式で記憶し、前記対象情報は、複数の前記形式を項として、前記項を和演算子で組み合わせた項の組み合わせを含み、前記コンピュータが、
前記項または複数の項の組み合わせに対して、前記項に適用される演算用因子の指定を受け、前記項に前記演算用因子が含まれるときにその項を保持し、前記演算用因子が前記保持された項の因子であるときに前記保持された項を選択する第1の選択演算を実行し、前記演算用因子が前記保持された項の因子ではなく、かつ、前記保持された項に集合因子構成演算子によって関係付けられた項の組み合わせを含む因子である集合因子が含まれるときに、前記集合因子中の項に対して前記第1の選択演算を実行し、前記集合因子中のいずれかの項が選択できたときに、前記集合因子中の選択された項と前記項を構成する因子中の前記集合因子以外の因子とを前記積演算子によって結合し、前記演算用因子が因子である項または項の部分を抽出する商演算ステップと、
前記項または複数の項の組み合わせに対して、前記演算用因子が前記項の因子でないときにその項を構成する因子を選択する第2の選択演算を実行するとともに選択された因子を保持し、前記保持された因子中に前記集合因子構成演算子によって関係付けられた項の組み合わせを含む因子である集合因子が含まれるときに、前記集合因子中の項に対して前記第2の選択演算を実行し、前記集合因子中のいずれかの項が選択できたときに、前記集合因子中の選択された項と前記保持されている因子のうちの前記集合因子以外の因子とを前記積演算子によって結合し、前記演算用因子が因子でない項または項の部分を抽出する剰余演算ステップと、
単独の因子を含む指定情報または前記一の情報と他の情報との関係を有する複数の因子を含む指定情報を前記入力部から受け付け、前記指定情報中の因子を前記演算用因子として前記商演算ステップを実行することにより、前記指定情報中の因子を含む項または項の組み合わせを前記記憶部の対象情報から抽出し、前記出力インターフェースに接続された出力部に出力する出力処理ステップと、を実行する情報処理方法。 A computer uses an identifier, a product operator that combines multiple identifiers as a sequence of factors that have an order and are not commutative, and / or a plurality of identifiers combined as a sequence of identifiers and factors. A storage unit that stores target information described by a sum operator that forms a combination of terms for which a commutative law is established,
An input interface that can be connected to an input unit that receives information;
E Bei and a output interface can be connected to an output unit for outputting information, said storage unit, indicating the other information and the first factor indicating the one information the relationship between one information and other information Storing the second factor in a form combined with a product operator, and the target information includes a combination of terms obtained by combining the terms with a sum operator as a plurality of the formats ,
With respect to the term or a combination of terms, a calculation factor applied to the term is designated, and when the calculation factor is included in the term, the term is retained, and the calculation factor is the Performing a first selection operation that selects the retained term when it is a retained term factor, wherein the computation factor is not a factor of the retained term and the retained term When a set factor that is a factor including a combination of terms related by a set factor construction operator is included, the first selection operation is performed on the terms in the set factor, and When any term can be selected, the selected term in the set factor is combined with factors other than the set factor in the factors constituting the term by the product operator, and the calculation factor is Extract a term or part of a term that is a factor And the quotient calculation step,
For the term or a combination of terms, execute a second selection operation that selects a factor that constitutes the term when the factor for calculation is not a factor of the term, and retains the selected factor. When the retained factor includes a set factor that is a factor including a combination of terms related by the set factor construction operator, the second selection operation is performed on the term in the set factor. And when any term in the set factor is selected, the product operator is used to select the selected term in the set factor and a factor other than the set factor among the retained factors. And a residue calculation step for extracting a term or a part of the term in which the calculation factor is not a factor,
Designation information including a single factor or designation information including a plurality of factors having a relationship between the one information and other information is received from the input unit, and the quotient calculation is performed using the factor in the designation information as the factor for calculation. by executing the steps, executed and an output processing step of the combination of terms or term extracted from the target information of the storage unit, and outputs the output connected to the output interface including a factor in the designation information Information processing method.
情報の入力を受け付ける入力部を接続可能な入力インターフェースと、
情報を出力する出力部を接続可能な出力インターフェースと、を備え、前記記憶部が、一の情報と他の情報との関係を前記一の情報を示す第1因子と前記他の情報を示す第2因子とを積演算子で結合した形式で記憶し、前記対象情報は、複数の前記形式を項として、前記項を和演算子で組み合わせた項の組み合わせを含み、前記コンピュータに、前記対象情報を操作させるプログラムであり、
前記項または複数の項の組み合わせに対して、前記項に適用される演算用因子の指定を受け、前記項に前記演算用因子が含まれるときにその項を保持し、前記演算用因子が前記保持された項の因子であるときに前記保持された項を選択する第1の選択演算を実行し、前記演算用因子が前記保持された項の因子ではなく、かつ、前記保持された項に集合因子構成演算子によって関係付けられた項の組み合わせを含む因子である集合因子が含まれるときに、前記集合因子中の項に対して前記第1の選択演算を実行し、前記集合因子中のいずれかの項が選択できたときに、前記集合因子中の選択された項と前記項を構成する因子中の前記集合因子以外の因子とを前記積演算子によって結合し、前記演算用因子が因子である項または項の部分を抽出する商演算ステップと、
前記項または複数の項の組み合わせに対して、前記演算用因子が前記項の因子でないときにその項を構成する因子を選択する第2の選択演算を実行するとともに選択された因子を保持し、前記保持された因子中に前記集合因子構成演算子によって関係付けられた項の組み合わせを含む因子である集合因子が含まれるときに、前記集合因子中の項に対して前記第2の選択演算を実行し、前記集合因子中のいずれかの項が選択できたときに、前記集合因子中の選択された項と前記保持されている因子のうちの前記集合因子以外の因子とを前記積演算子によって結合し、前記演算用因子が因子でない項または項の部分を抽出する剰余演算ステップと、
単独の因子を含む指定情報または前記一の情報と他の情報との関係を有する複数の因子を含む指定情報を前記入力部から受け付け、前記指定情報中の因子を前記演算用因子として前記商演算ステップを実行することにより、前記指定情報中の因子を含む項または項の組み合わせを前記記憶部の対象情報から抽出し、前記出力インターフェースに接続された出力部に出力する出力処理ステップと、を実行させるためのプログラム。 A computer uses an identifier, a product operator that combines multiple identifiers as a sequence of factors that have an order and are not commutative, and / or a plurality of identifiers combined as a sequence of identifiers and factors. A storage unit that stores target information described by a sum operator that forms a combination of terms for which a commutative law is established,
An input interface that can be connected to an input unit that receives information;
E Bei and a output interface can be connected to an output unit for outputting information, said storage unit, indicating the other information and the first factor indicating the one information the relationship between one information and other information The second factor is stored in a form combined with a product operator, and the target information includes a combination of terms in which a plurality of the formats are used as a term, and the terms are combined with a sum operator. A program that manipulates information,
With respect to the term or a combination of terms, a calculation factor applied to the term is designated, and when the calculation factor is included in the term, the term is retained, and the calculation factor is the Performing a first selection operation that selects the retained term when it is a retained term factor, wherein the computation factor is not a factor of the retained term and the retained term When a set factor that is a factor including a combination of terms related by a set factor construction operator is included, the first selection operation is performed on the terms in the set factor, and When any term can be selected, the selected term in the set factor is combined with factors other than the set factor in the factors constituting the term by the product operator, and the calculation factor is Extract a term or part of a term that is a factor And the quotient calculation step,
For the term or a combination of terms, execute a second selection operation that selects a factor that constitutes the term when the factor for calculation is not a factor of the term, and retains the selected factor. When the retained factor includes a set factor that is a factor including a combination of terms related by the set factor construction operator, the second selection operation is performed on the term in the set factor. And when any term in the set factor is selected, the product operator is used to select the selected term in the set factor and a factor other than the set factor among the retained factors. And a residue calculation step for extracting a term or a part of the term in which the calculation factor is not a factor,
Designation information including a single factor or designation information including a plurality of factors having a relationship between the one information and other information is received from the input unit, and the quotient calculation is performed using the factor in the designation information as the factor for calculation. by executing the steps, executed and an output processing step of the combination of terms or term extracted from the target information of the storage unit, and outputs the output connected to the output interface including a factor in the designation information program for cause.
前記積演算子によって、識別子を複数結合する積演算ステップと、
前記積演算子によって結合された複数の識別子からいずれかの識別子を抽出する因子抽出ステップと、
前記識別子、または積演算子によって結合された識別子をさらに前記和演算子によってさらに組み合わせて、項の組み合わせを構成する和演算ステップと、
前記項の組み合わせに含まれるいずれかの項を抽出する項抽出ステップと、
前記項の組み合わせに順序構成演算子を付加することによって因子または項を構成する順序生成ステップと、
前記項の組み合わせに順序構成演算子を付加された因子または項から前記順序構成演算子を除去する順序展開ステップと、
前記項の組み合わせに集合因子構成演算子を付加することによって因子または項を構成する集合構成ステップと、
前記項の組み合わせに集合因子構成演算子を付加された因子または項から前記集合因子構成演算子を除去する集合展開ステップと、
前記対象情報を構成する一の因子が項の組み合わせと前記順序構成演算子とによって構成されているとき、または前記一の因子が項の組み合わせと前記集合因子構成演算子とによって構成されているときに、前記一の因子と同一の項に含まれる、前記一の因子と積演算子で結合されている共通因子を前記項の組み合わせ中のそれぞれの項に付加して前記積演算子によって結合することによって、前記共通因子を展開する因子展開ステップと、をさらに実行させる請求項15に記載のプログラム。The target information does not maintain the order of the terms in the combination and the order construct operator that forms a factor or a new term by maintaining the order of the terms in the combination and relating the combinations of the terms. A processing step of setting information inputted from an input unit connected to the input interface as the target information, further comprising a set factor constructing operator constituting a factor or a new term by relating the combination of the terms Or as a calculation step executed in the output processing step,
A product operation step of combining a plurality of identifiers by the product operator;
A factor extraction step of extracting any identifier from a plurality of identifiers combined by the product operator;
A sum operation step of further combining the identifier or the identifier combined by a product operator by the sum operator to form a combination of terms; and
A term extraction step for extracting any term included in the combination of terms;
An order generation step of constructing factors or terms by adding an order construct operator to the combination of terms;
An order expansion step of removing the order construction operator from a factor or term in which the order construction operator is added to the combination of terms;
A set construction step of constructing a factor or term by adding a set factor construction operator to the combination of terms;
A set expansion step of removing the set factor constituent operator from a factor or term in which a set factor constituent operator is added to the combination of terms;
When one factor constituting the target information is configured by a combination of terms and the ordered constituent operator, or when the one factor is configured by a combination of terms and the set factor constituent operator In addition, a common factor included in the same term as the one factor and combined with the one factor by a product operator is added to each term in the combination of the terms and combined by the product operator. The program according to claim 15 , further causing a factor expansion step of expanding the common factor.
前記第1の項として複数の項が分類されたときに、前記因子抽出ステップにて抽出された複数の左因子から、和演算子と順序構成演算子とによって複数の左因子を含む左値因子を構成し、前記因子抽出ステップにて抽出された複数の右因子から、和演算子と順序構成演算子とによって複数の右因子を含む右値因子を構成し、前記左値因子、共通因子、および右値因子列を積演算子で結合する左右因子括り出しステップと、を有する請求項18に記載のプログラム。In the subset forming step, a left factor coupled to the left side of the common factor by the product operator and a right factor coupled to the right side of the common factor by the product operator are extracted from the term including the common factor. A factor extraction step for extracting a unit element instead of the left factor or the right factor for a term having no left factor or right factor;
When a plurality of terms are classified as the first term, a left value factor including a plurality of left factors by a sum operator and an order composition operator from a plurality of left factors extracted in the factor extraction step And a right value factor including a plurality of right factors by a sum operator and an order composition operator from the plurality of right factors extracted in the factor extraction step, the left value factor, the common factor, 19. The program according to claim 18 , further comprising: a left and right factor unwrapping step of combining the right value factor string with a product operator.
前記トポロジー空間情報は、そのトポロジー空間情報を識別する情報である第2の識別因子と、前記部分集合がなす因子または部分集合の組み合わせに集合因子構成演算子を付加した因子とが、積演算子によって結合されている、請求項21に記載のプログラム。The target information is classified into a subset in which the common factor is bundled from set information and another subset, and constitutes topology space information including at least one of the subsets,
The topology space information includes a second identification factor that is information for identifying the topology space information, and a factor obtained by adding a set factor construction operator to a factor or a combination of subsets formed by the subset. The program according to claim 21 , which is coupled by:
セル空間情報を他のセル空間情報と識別するセル空間識別因子と、
属性を指定する識別子、属性を指定する複数の識別子を積演算子によって結合した属性列、および、前記属性を指定する識別子および属性列のいずれかまたは双方の組み合わせを順序構成演算子で構成した属性の順序因子のいずれかである属性因子と、
前記属性因子に対応する値を指定する識別子、値を指定する複数の識別子を積演算子によって結合した値列、および、前記属性の順序因子に対応する値を指定する項の組み合わせを順序構成演算子によって構成した値の順序因子のいずれかである値因子と、を積演算子で結合して構成される請求項23に記載のプログラム。The cell space information is
A cell space identification factor that distinguishes cell space information from other cell space information;
An identifier that specifies an attribute, an attribute column that is a combination of multiple identifiers that specify an attribute by a product operator, and an attribute in which either or both of the identifier and attribute column that specify the attribute are configured by an order construction operator An attribute factor that is one of the order factors of
An order composition operation is a combination of an identifier for designating a value corresponding to the attribute factor, a value sequence obtained by combining a plurality of identifiers for designating values by a product operator, and a term for designating a value corresponding to the order factor of the attribute. 24. The program according to claim 23 , wherein the program is configured by combining a value factor that is one of the order factors of values constituted by children with a product operator.
前記接着空間情報は、第1の被接着情報と第2の被接着情報を含み、
第1の被接着情報は、被接着情報同士を関連づける情報である第1の同値因子と、第1の値因子と積演算子で結合される第1の被接着因子とを含み、
第2の被接着情報は、被接着情報同士を関連づける情報である第2の同値因子と、第2の値因子と積演算子で結合される第2の被接着因子とを含み、
前記接着処理ステップは、第1の同値因子と第2の同値因子との関連付けの指定を受けるステップと、
前記第1の同値因子と第2の同値因子との関連付けとともに、第1の被接着情被接着因子と第2の被接着因子との関連づけを記憶するステップと、を有する請求項15から24のいずれか1項に記載のプログラム。 Term, collecting case information, topology spatial information, at least one of and cell Le spatial information and adherend information, further execute a bonding process steps constituting the adhesive spatial information attached two or more adherend information,
The bonding space information includes first bonded information and second bonded information,
The first adherend information includes a first equivalence factor that is information for associating adherend information with each other, and a first adherent factor that is combined with the first value factor by a product operator,
The second adherend information includes a second equivalence factor that is information for associating the adherend information, and a second adherend factor that is combined with the second value factor by a product operator,
The adhesion processing step includes receiving designation of association between the first equivalence factor and the second equivalence factor;
With association between the first equivalence factor and the second equivalence factors, it claims 15 to 24 having a step of storing the association between the first adherend information adherend factors and the second adherend factors, The program according to any one of the above items .
前記第1の同値因子を前記演算用因子として、前記第1の被接着情報を剰余演算部で演算することによって、前記第1の同値因子を含ない非関連項を抽出し、前記第2の同値因子を前記演算用因子として、前記第2の被接着情報を剰余演算部で演算することによって、前記第1の同値因子を含ない非関連項を抽出する非関連項抽出ステップと、
前記第1の関連項から第1の同値因子を括り出すとともに、前記第2の関連項から第2の同値因子を括り出し、さらに、括り出された第1の同値因子と第2の同値因子と順序構成演算子によって関連づける関連づけステップとを有する請求項25に記載のプログラム。In the adhesion processing step, the first related term including the first equivalence factor is obtained by computing the first adherend information by a quotient computation unit using the first equivalence factor as the computation factor. A relationship for extracting a second related term including the second equivalence factor by extracting and calculating the second adherend information by a quotient computation unit using the second equivalence factor as the computation factor A term extraction step;
By using the first equivalence factor as the computation factor and computing the first adherend information by a remainder computation unit, an unrelated term not including the first equivalence factor is extracted, and the second equivalence factor is extracted. An unrelated term extraction step of extracting an unrelated term that does not include the first equivalent factor by calculating the second adherend information with a remainder calculation unit using the equivalent factor as the calculation factor;
The first equivalence factor is extracted from the first related term, the second equivalent factor is extracted from the second related term, and the extracted first equivalence factor and second equivalence factor are further extracted. 26. The program according to claim 25 , further comprising an associating step for associating with a sequence composition operator.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006027718 | 2006-02-03 | ||
JP2006027718 | 2006-02-03 | ||
PCT/JP2007/051830 WO2007088982A2 (en) | 2006-02-03 | 2007-02-02 | Information processing device, information processing method, program, data structure, and medium |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009027815A Division JP5113779B2 (en) | 2006-02-03 | 2009-02-09 | Information processing apparatus, information processing method, program, and data structure |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2007088982A1 JPWO2007088982A1 (en) | 2009-06-25 |
JP4343984B2 true JP4343984B2 (en) | 2009-10-14 |
Family
ID=38327784
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007556939A Expired - Fee Related JP4343984B2 (en) | 2006-02-03 | 2007-02-02 | Information processing apparatus, information processing method, program, data structure, and medium |
JP2009027815A Expired - Fee Related JP5113779B2 (en) | 2006-02-03 | 2009-02-09 | Information processing apparatus, information processing method, program, and data structure |
JP2012193613A Expired - Fee Related JP5357313B2 (en) | 2006-02-03 | 2012-09-03 | Information processing apparatus, information processing method, program, and data structure |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009027815A Expired - Fee Related JP5113779B2 (en) | 2006-02-03 | 2009-02-09 | Information processing apparatus, information processing method, program, and data structure |
JP2012193613A Expired - Fee Related JP5357313B2 (en) | 2006-02-03 | 2012-09-03 | Information processing apparatus, information processing method, program, and data structure |
Country Status (2)
Country | Link |
---|---|
JP (3) | JP4343984B2 (en) |
WO (1) | WO2007088982A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9990415B2 (en) | 2014-05-09 | 2018-06-05 | Maeda Corporation | Data structure for representing information using expressions |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2378443A4 (en) | 2008-12-11 | 2016-03-30 | Ibm | Method for converting system model, computer program, and system model conversion device |
WO2012023192A1 (en) * | 2010-08-18 | 2012-02-23 | 前田建設工業株式会社 | Information processing device, method of processing information, program, and medium |
JP5764226B2 (en) * | 2014-02-17 | 2015-08-12 | 前田建設工業株式会社 | Information processing apparatus, information processing method, program, and medium |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2786194B2 (en) * | 1987-11-27 | 1998-08-13 | 株式会社日立製作所 | Information retrieval apparatus and information retrieval method |
JPH0239241A (en) * | 1988-07-28 | 1990-02-08 | Nec Corp | Compiler |
JP3567292B2 (en) * | 1994-04-27 | 2004-09-22 | カシオ計算機株式会社 | Electronic computer and factorization display processing method |
-
2007
- 2007-02-02 JP JP2007556939A patent/JP4343984B2/en not_active Expired - Fee Related
- 2007-02-02 WO PCT/JP2007/051830 patent/WO2007088982A2/en active Application Filing
-
2009
- 2009-02-09 JP JP2009027815A patent/JP5113779B2/en not_active Expired - Fee Related
-
2012
- 2012-09-03 JP JP2012193613A patent/JP5357313B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9990415B2 (en) | 2014-05-09 | 2018-06-05 | Maeda Corporation | Data structure for representing information using expressions |
Also Published As
Publication number | Publication date |
---|---|
JP5113779B2 (en) | 2013-01-09 |
JP2012248219A (en) | 2012-12-13 |
JP2009134748A (en) | 2009-06-18 |
JP5357313B2 (en) | 2013-12-04 |
JPWO2007088982A1 (en) | 2009-06-25 |
WO2007088982A2 (en) | 2007-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hong et al. | A formal approach to the comparison of object-oriented analysis and design methodologies | |
US20020178184A1 (en) | Software system for biological storytelling | |
Bohm et al. | Product design support: exploring a design repository system | |
Ossher et al. | Flexible modeling tools for pre-requirements analysis: conceptual architecture and research challenges | |
CN109255586A (en) | A kind of online personalized recommendation method that E-Governance Oriented is handled affairs | |
JP5357313B2 (en) | Information processing apparatus, information processing method, program, and data structure | |
Al-Fedaghi | Conceptual data modeling: Entity-relationship models as thinging machines | |
Zaid et al. | Feature Assembly Framework: towards scalable and reusable feature models | |
Shen et al. | Integration of complex archeology digital libraries: An ETANA-DL experience | |
Sarja | Explanatory definitions of the technology push success factors | |
CN104346154A (en) | Service-oriented model building method on basis of scenes | |
CN117539433A (en) | Microservice design method based on model driven architecture | |
US7574329B1 (en) | Object model for decision and issue tracking | |
CN115878818A (en) | Geographic knowledge graph construction method and device, terminal and storage medium | |
JP2009110440A (en) | Information processor, information processing method, program and medium | |
Hili et al. | A light-weight low-code platform for back-end automation | |
Kirikova et al. | Renaissance of business process modelling | |
US9990415B2 (en) | Data structure for representing information using expressions | |
JP5512817B2 (en) | Information processing apparatus, information processing method, program, and medium | |
Mou et al. | Visual orchestration and autonomous execution of distributed and heterogeneous computational biology pipelines | |
JP2020181516A (en) | Template search system and template search method | |
Leonard et al. | SQL Server 2012 integration services design patterns | |
JP2017072959A (en) | Information processing device, information processing method, and program | |
Pruijt et al. | A typology based approach to assign responsibilities to software layers | |
JPWO2020183538A1 (en) | Processing method using data stored in computer system and data lake |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090601 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090630 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090709 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120717 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4343984 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120717 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120717 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120717 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130717 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |