JP2013080449A - Information processing device, information processing method, and program - Google Patents

Information processing device, information processing method, and program Download PDF

Info

Publication number
JP2013080449A
JP2013080449A JP2012047407A JP2012047407A JP2013080449A JP 2013080449 A JP2013080449 A JP 2013080449A JP 2012047407 A JP2012047407 A JP 2012047407A JP 2012047407 A JP2012047407 A JP 2012047407A JP 2013080449 A JP2013080449 A JP 2013080449A
Authority
JP
Japan
Prior art keywords
identifier
numerical
expression
information processing
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012047407A
Other languages
Japanese (ja)
Other versions
JP5357286B2 (en
Inventor
Yoichi Seki
洋一 関
Toshiyasu Kunii
利▲泰▼ 國井
Toshio Kodama
敏男 児玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maeda Corp
Original Assignee
Maeda Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Maeda Corp filed Critical Maeda Corp
Priority to JP2012047407A priority Critical patent/JP5357286B2/en
Publication of JP2013080449A publication Critical patent/JP2013080449A/en
Application granted granted Critical
Publication of JP5357286B2 publication Critical patent/JP5357286B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To allow inclusion of quantified information in an expression describing an object and to compute information relating to numerical values of accumulated objects.SOLUTION: The information processing device includes: a storage unit that stores object information including, as identifiers, numerical value identifiers clearly specifying that an identifier includes numbers and is a numerical value, by numerical value operators, and non-numerical value identifiers other than the numerical value identifiers; and a processing unit that operates the object information. The processing unit executes multiplication among numerical values represented by the numerical value identifiers with the non-numerical value identifier excluded in factors connected by product operators as a row of the factors, and executes addition among numerical values represented by numerical value identifiers, on a plurality of terms with the non-numerical value identifiers defined as common factors for a combination of the terms.

Description

本発明は、事物、例えば、物品、事象、環境、社会、組織等をコンピュータで処理可能な所定の表現形式を用いて表現し、コンピュータの記憶装置に記憶し、コンピュータで処理することで、その事物を管理する情報処理装置、情報処理方法等の技術に関する。   The present invention expresses an object, for example, an article, an event, an environment, a society, an organization, etc. using a predetermined expression format that can be processed by a computer, stores it in a computer storage device, and processes it by a computer. The present invention relates to a technology such as an information processing apparatus and an information processing method for managing things.

既存のデータベースのデータモデルとして、正規化表構造によるリレーショナルモデルや、ノードに属性を持つツリー構造で表現されるオブジェクト指向モデルが知られている。しかし、従来の情報処理装置、情報処理技術では、格納されるデータの構造が事前に設計されていることが前提であった。したがって、データが格納された後にデータの構造を変更することは極めて困難であった。   As a data model of an existing database, a relational model having a normalized table structure and an object-oriented model expressed by a tree structure having attributes at nodes are known. However, the conventional information processing apparatus and information processing technology are based on the premise that the structure of stored data is designed in advance. Therefore, it is extremely difficult to change the data structure after the data is stored.

そこで、発明者らは、式表現という概念を提示し、既存のデータベースのデータモデルとは異なり、データの構造に拘束されることを低減し、コンピュータ上に柔軟に事物を記述できる情報処理技術を提案してきた。   Therefore, the inventors present the concept of expression expression, and unlike the existing database data model, the inventors have reduced the amount of data that is constrained by the data structure, and the information processing technology that can describe things flexibly on a computer. Proposed.

特開2005−92855号公報JP 2005-92855 A 国際公開公報WO2007/088982International Publication WO2007 / 088982 特開2009−110440号公報JP 2009-110440 A

しかしながら、既存データモデルによるデータベースでは、格納されるデータの構造が事前に設計されている上に、格納されたデータに対する演算も事前に設計されたデータの構造を前提とする。例えば、リレーショナルモデルでは、表を構成するレコードにおいて、レコード内の要素の型は固定されており、その固定された型を前提としてデータベースの演算が実行される。同様に、例えば、オブジェクト指向モデルでは、オブジェクトに含まれる要素の型は固定されており、その固定された型を前提としてオブジェクトに対する処理が実行される。   However, in the database based on the existing data model, the structure of the stored data is designed in advance, and the operation on the stored data is premised on the data structure designed in advance. For example, in the relational model, the types of elements in the record are fixed in the records constituting the table, and database operations are executed on the assumption of the fixed type. Similarly, for example, in the object-oriented model, the type of an element included in the object is fixed, and processing for the object is executed on the assumption of the fixed type.

そこで、開示の技術の一側面は、対象を記述する式表現中に、数値化された情報の組み込みを可能とし、データの構造による拘束を低減した上で、コンピュータが事物に係る情報をコンピュータ上に蓄積し、蓄積された情報を基に、データの構造への依存を低減した上で、蓄積した事物の数値に係る情報を演算可能にする、情報処理装置、情報処理方法等の情報処理技術を提供することを目的とする。   Thus, one aspect of the disclosed technology is that numerical information can be incorporated into a formula expression describing an object, and the restriction on data structure is reduced. Information processing technology, such as information processing devices and information processing methods, that make it possible to calculate the information related to the numerical values of things, while reducing dependence on the data structure based on the stored information The purpose is to provide.

開示の技術の一側面は、識別子と、因子の列として複数の識別子を結合する積演算子と、識別子および因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述され、識別子として数字を含み数値であることを数値演算子によって明示する数値識別子と前記数値識別子以外の非数値識別子とを含む、対象情報を記憶する記憶部と、対象情報を操作する処理部と、を備える情報処理装置として例示できる。ここで、処理部は、因子の列として積演算子で結合される因子のうち、前記非数値識別子を残して数値識別子で表される数値間で乗算を実行し、項の組み合わせに対して前記非数値識別子を共通の因子とする複数の項について数値識別子で表される数値間で加算を実行する。   One aspect of the disclosed technology comprises a combination of terms from an identifier, a product operator that combines multiple identifiers as a sequence of factors, and / or a plurality of identifiers combined as a sequence of identifiers and factors A storage unit that stores target information, including a numeric identifier that is described by a sum operator, includes a numeric identifier as an identifier and explicitly indicates that the identifier is a numeric value, and a non-numeric identifier other than the numeric identifier, and a target An information processing apparatus including a processing unit that operates information can be exemplified. Here, the processing unit performs multiplication between the numerical values represented by the numerical identifiers, leaving the non-numeric identifier among factors combined by a product operator as a sequence of factors, and the combination of terms Addition is performed between numerical values represented by numerical identifiers for a plurality of terms having non-numeric identifiers as common factors.

なお、本発明は、一の側面では、本情報処理装置が実行する手順を含む情報処理方法として特定することもできる。また、本発明は、他の側面では、本情報処理装置が実行する手順をコンピュータに実行させるコンピュータプログラム、コンピュータプログラムを記憶した記憶媒体として特定することもできる。   In one aspect, the present invention can be specified as an information processing method including a procedure executed by the information processing apparatus. In another aspect, the present invention can be specified as a computer program that causes a computer to execute a procedure executed by the information processing apparatus, and a storage medium that stores the computer program.

本情報処理装置によれば、事物を記述する式表現中に、数値化された情報を組み込み可能とし、データの構造による拘束を低減した上で、コンピュータが事物に係る情報をコンピュータ上に蓄積し、蓄積された情報を基に、データの構造への依存を低減した上で、蓄積した事物の数値に係る情報を演算することが可能となる。   According to this information processing apparatus, it is possible to incorporate numerical information in a formula expression describing an object, reducing the constraint due to the structure of the data, and the computer stores the information related to the object on the computer. Based on the accumulated information, it is possible to calculate the information related to the numerical value of the accumulated thing while reducing the dependence on the structure of the data.

第1の実施形態に係る情報処理装置のメモリに格納される第一のデータ構造を示す。The 1st data structure stored in the memory of the information processing apparatus which concerns on 1st Embodiment is shown. 第1の実施形態に係る情報処理装置のメモリに格納される第二のデータ構造を示す。2 shows a second data structure stored in the memory of the information processing apparatus according to the first embodiment. 第1の実施形態に係る情報処理装置のメモリに格納される第三のデータ構造を示す。6 shows a third data structure stored in the memory of the information processing apparatus according to the first embodiment. 第1の実施形態に係る情報処理装置におけるプログラム構成を示す図である。It is a figure which shows the program structure in the information processing apparatus which concerns on 1st Embodiment. 商演算処理(サブルーチン1)を実行する処理のフローを示す図である。It is a figure which shows the flow of the process which performs a quotient calculation process (subroutine 1). 商演算処理(サブルーチン1)を実行中の対象情報の状態の詳細を示す表(その1)である。It is a table | surface (the 1) which shows the detail of the state of the object information which is performing the quotient calculation process (subroutine 1). 商演算処理(サブルーチン1)を実行中の対象情報の状態の詳細を示す表(その2)である。It is a table | surface (the 2) which shows the detail of the state of the object information which is performing the quotient calculation process (subroutine 1). 商演算処理(サブルーチン2)を実行する処理のフローを示す図である。It is a figure which shows the flow of the process which performs a quotient calculation process (subroutine 2). 商演算処理(サブルーチン2)を実行中の対象情報の状態の詳細を示す表(その1)である。It is a table | surface (the 1) which shows the detail of the state of the object information which is performing the quotient calculation process (subroutine 2). 商演算処理(サブルーチン2)を実行中の対象情報の状態の詳細を示す表(その2)である。It is a table | surface (the 2) which shows the detail of the state of the object information which is performing the quotient calculation process (subroutine 2). 部分集合取得処理を実行する処理のフローを示す。The flow of the process which performs a subset acquisition process is shown. 部分集合取得処理を実行中の対象情報の状態の詳細を示す表である。It is a table | surface which shows the detail of the state of the object information which is performing the subset acquisition process. 部分集合取得処理を実行中の対象情報の状態の詳細を示す表である。It is a table | surface which shows the detail of the state of the object information which is performing the subset acquisition process. 第2実施形態に係る情報処理装置のハードウェア構成を例示する図である。It is a figure which illustrates the hardware constitutions of the information processing apparatus which concerns on 2nd Embodiment. 第2実施形態に係る情報処理装置の機能ブロックを例示する図である。It is a figure which illustrates the functional block of the information processing apparatus which concerns on 2nd Embodiment. 数値因子化処理を例示する図である。It is a figure which illustrates a numerical factorization process. 入力式を数値因子化処理するときの情報処理装置の内部状態を例示する遷移テーブルである。It is a transition table which illustrates the internal state of an information processor when carrying out numerical factorization processing of an input type. 数値計算処理を例示する図である。It is a figure which illustrates numerical calculation processing. 数値計算処理を例示する図である。It is a figure which illustrates numerical calculation processing. 入力式を数値計算処理するときの情報処理装置の内部状態を例示する遷移テーブルである。It is a transition table which illustrates the internal state of an information processor when carrying out numerical calculation processing of an input type. 入力式を数値計算処理するときの情報処理装置の内部状態を例示する遷移テーブル(続き)である。It is a transition table (continuation) which illustrates the internal state of the information processing apparatus when performing numerical calculation processing on the input expression. 識別子の置換処理を例示する図である。It is a figure which illustrates the replacement process of an identifier. 入力式を置換処理するときの情報処理装置の内部状態を例示する遷移テーブルである。It is a transition table which illustrates the internal state of an information processor when carrying out substitution processing of an input formula. フィルタ処理を例示する図である。It is a figure which illustrates filter processing. 入力式をフィルタ処理するときの情報処理装置の内部状態を例示する遷移テーブルである。It is a transition table which illustrates the internal state of an information processor when filtering input formulas. 入力式をフィルタ処理するときの情報処理装置の内部状態を例示する遷移テーブル(続き)である。6 is a transition table (continuation) illustrating the internal state of the information processing apparatus when the input expression is filtered. 第3実施形態に係る式表現で記述される集合に属する事物の属性値の合計値を求める処理を例示する図である。It is a figure which illustrates the process which calculates | requires the total value of the attribute value of the thing which belongs to the set described by the formula expression which concerns on 3rd Embodiment. 第3実施形態に係る式表現で記述される集合に属する事物の属性値の合計値を求める処理を例示する図である。It is a figure which illustrates the process which calculates | requires the total value of the attribute value of the thing which belongs to the set described by the formula expression which concerns on 3rd Embodiment. 第4実施形態に係る設計対象の特徴量の算出処理を例示する図である。It is a figure which illustrates the calculation process of the feature-value of the design object which concerns on 4th Embodiment. 第5実施形態に係る情報処理装置の機能ブロックを例示する図である。It is a figure which illustrates the functional block of the information processing apparatus which concerns on 5th Embodiment. 第6実施形態に係る情報処理装置200の構成を例示する図である。It is a figure which illustrates the structure of the information processing apparatus 200 which concerns on 6th Embodiment. 第6実施形態に係る数値化処理フローを例示する図である。It is a figure which illustrates the numerical processing flow concerning 6th Embodiment. 数値化処理の他の処理例を例示する図である。It is a figure which illustrates the other process example of a numerical conversion process. 数値変数と、等価因子による数値計算処理を実行する処理フローを例示する図である。It is a figure which illustrates the processing flow which performs the numerical calculation process by a numerical variable and an equivalent factor.

以下、図面を参照して本発明を実施するための形態(以下、実施形態という)に係る情報処理装置について説明する。以下の実施形態の構成は例示であり、本情報処理装置は実施形態の構成には限定されない。   Hereinafter, an information processing apparatus according to a mode for carrying out the present invention (hereinafter referred to as an embodiment) will be described with reference to the drawings. The configuration of the following embodiment is an exemplification, and the information processing apparatus is not limited to the configuration of the embodiment.

《第1実施形態》
以下、第1実施形態に係る情報処理装置を説明する。本情報処理装置の記憶手段に記憶され、本情報処理装置で処理される情報を対象情報という。対象情報は、識別子、因子、項(要素)、集合情報、トポロジー空間情報等の情報を含む。対象情報をオブジェクト情報とも呼ぶ。ただし、本実施形態でのオブジェクト情報は、いわゆるオブジェクト指向データベース、オブジェクト指向言語、オブジェクト指向設計等でいうオブジェクトとは、概念が異なる。そこで、以下では、もっぱらオブジェクト情報という代わりに、対象情報と呼ぶことにする。
<< First Embodiment >>
The information processing apparatus according to the first embodiment will be described below. Information stored in the storage means of the information processing apparatus and processed by the information processing apparatus is referred to as target information. The target information includes information such as an identifier, a factor, a term (element), set information, and topology 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 information processing apparatus, the target information can be stored in the storage unit as data in a predetermined expression format, and processing can be executed on the target information based on the 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 nature of the 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として処理される単位元ε(”eps”とも記述する)と、前記処理手段において0として処理される零元Φとにより構成することができる。前記第一の括弧は、()により表現することができる。また、前記第二の括弧は{}により表現することができる。このように本情報処理装置によれば、対象情報が非常に簡単なデータ構造で表現されている。したがって、高度な技術を有さないユーザであっても容易に理解することが可能となる。   The target information includes 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 an identifier that is a minimum unit constituting the target information, a unit element ε (also described as “eps”) that is processed as 1 in the processing means, It can be constituted by a zero element Φ processed as 0 in the processing means. The first parenthesis can be expressed by (). The second parenthesis can be expressed by {}. As described above, according to the information processing apparatus, 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のように表現することができる。   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 Equation 1.

(a+b)×{c+d+e}+f{g+h}×{i+j}・・・(数1)   (A + b) × {c + d + e} + f {g + h} × {i + j} (Equation 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 target information expressed by Equation 1 is configured by (a + b) × {c + d + e} of the first term and f {g + h} × {i + j} of the second term. That is, Formula 1 is composed of the sum of the first term and the second term. Next, regarding each of the first term and the second term, the first term is composed of (a + b) of the first factor and {c + d + e} of the second factor. Further, regarding the second term, it is composed of a third factor f, a fourth factor {g + h}, and a fifth factor {i + j}. In the above formula 1, the product operator “×” may be clearly indicated after “f”, and may be “f ×”. Looking at each of the first factor to the fifth factor, the first factor is composed of a first parenthesis and identifiers a and b. The second factor is composed of a second parenthesis and identifiers c, d and e, the third factor is composed of an identifier f, and the fourth factor is composed of a second parenthesis and identifiers g and f. The fifth factor is composed of a second parenthesis and identifiers i and j. In parentheses, in other words, expressions are recursively. For example, looking at (a + b) among the above, the expression in parentheses is recursively a + b. In other words, the above formula consists of the sum of the identifier a as a term and the identifier b as a term. Thus, an expression can include a structure in which () or {}, and both are nested multiple times.

対象情報は、上記のように因子、項からなる式で表現される。そしてこのように表現された対象情報は、例えばテキストファイルとして前記記憶手段に格納される。なお、記憶手段への対象情報の格納、換言すると入力は、例えば、ユーザ操作に応答して実行される
。この入力時に、グラフィカルユーザインターフェースを用いたユーザインターフェース部を提供してもよい。簡易的には、テキストエディタで、識別子、項、あるいは、項の和を入力するようにしてもよい。情報処理手段は、記憶手段に格納されたその対象情報を処理する。これにより、前記対象情報の抽象度を変化させることが可能となる。
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, for example. 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.

次に、図面に基づいて基本システムを説明する。   Next, a basic system will be described based on the drawings.

《基本システム》
(データ構造)
まず、情報処理装置のメモリに格納される対象情報の構造、すなわちデータ構造について説明する。なお、本実施形態の情報処理装置は、以下のデータ構造によって、処理対象のデータを記述し、記憶し、演算処理を行う。
<Basic system>
(data structure)
First, the structure of the target information stored in the memory of the information processing apparatus, that is, the data structure will be described. Note that the information processing apparatus of the present embodiment describes and stores data to be processed with the following data structure, and performs arithmetic processing.

(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 construction operator. The second parenthesis corresponds to the order construction operator. 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 value 1 or a value that does not change the operation result in the product operator. In this embodiment, ε is called a unit element. Note that Φ may be referred to as a unit element for the sum operation, but in the present embodiment, Φ is referred to as a zero element.

また、本情報処理装置は、所定の識別子を、演算を表す予約語として使用する。例えば、F(式)は、式を展開する演算である。これらの予約語については、ユーザは、通常の識別子として使用することができない、という点で制限がある。   In addition, the information processing apparatus uses a predetermined identifier as a reserved word representing an operation. For example, F (expression) is an operation for expanding the expression. These reserved words have a limitation in that they cannot be used as normal identifiers.

本実施形態では、以下の規則によって対象情報、すなわち、識別子、因子、項(要素ともいう)、集合情報、トポロジー空間情報等の情報を記述する式表現が生成される。
(a)識別子、単位元、および零元はいずれも式表現、すなわち、対象情報を記述する表現である。
(b)rとsとがともに、式表現である場合、r+sも式表現である。
(c)rとsとがともに、式表現である場合、r×sも式表現である。この場合、演算の結合の強さは、通常の代数と同様に、r×sの方が、r+sよりも強い。
(d)rが式表現である場合、(r)、{s}も式表現である。
In the present embodiment, an expression that describes object information, that is, information such as identifiers, factors, terms (also referred to as elements), set information, topology space information, and the like is generated according to the following rules.
(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}
(2) Algebraic structure of expression expression In the present 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 does not hold” corresponds to the product operator “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)集合情報
集合情報は、項の組み合わせ、あるいは、項の和として、定義される。ここで、それぞれの項は集合ID(第1の識別因子に相当)となる識別子と値となる識別子の積、すなわち、集合ID×値として定義される。ただし、値は、複数の識別子の積であってもよい。集合の情報の式表現は、典型的には、集合ID×値1+集合ID×値2+・・・である。集合情報の例として、以下のものを挙げることができる。
(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) and an identifier that is a value, that is, 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 × value 1 + set ID × value 2+. Examples of aggregate information include the following.

上述のように、本実施形態のデータ構造では、和演算子に可換律が成立することから、集合情報は、順序のない項の組み合わせということができる。一方、項を構成する因子間の位置関係は維持されることになる。   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
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

すなわち、集合情報は、集合IDで識別される集合に所属する項の組み合わせを記述し、メモリ12に記憶される。この場合、社員Cが退職し、社員Dと社員Eが入社した場合には、社員×A+社員×B+社員×Cのようにメモリ12に格納される。   That is, the set information describes a combination of terms belonging to the set identified by the set ID and is stored in the memory 12. In this case, when employee C retires and employee D and employee E join the company, they are stored in memory 12 as employee × A + employee × B + employee × C.

(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に格納できる。
(4) Topology space information The topology space information is described as follows by the product of an identifier that is a topology ID (corresponding to the second identification factor) 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 the 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 (employee 1 + employee 2 + employee 3 + employee 4) + sales x (employee 1 + employee 2 ) + Accounting × (Employee 3 + Employee 4)), etc. (In this example, the punctuation mark “,” is not a component of the formula, but a separator of the example). In this case, in the last example, for example, when the general affairs is newly established and the employee 5 is hired and assigned to the general affairs, the company x (employee x (employee 1 + employee 2 + employee 3 + employee 4 + employee 5) + sales X (employee 1 + employee 2) + accounting x (employee 3 + employee 4) + general affairs x employee 5) and can be stored in the memory 12.

(記述例)
以下、従来のデータ構造である表およびツリー構造が、本実施形態のデータ構造でどのように記述できるかを示す。
(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.

図1は、第1実施形態に係る情報処理装置のメモリに格納されるセル空間情報の第一のデータ構造例を示す。同図に示すように、第1実施形態に係る情報処理装置では、従来正規化表構造として表形式で表現される対象情報は、表現形式1の状態でメモリ12に格納することができる。表現形式1で、Aは、キー属性(例えば社員番号等)、B,C,D,E等は、その他の属性(例えば、氏名、性別、入社年、所属部署等)である。   FIG. 1 shows a first data structure example of cell space information stored in the memory of the information processing apparatus according to the first embodiment. As shown in the figure, in the information processing apparatus according to the first embodiment, target information that is conventionally expressed in a tabular form as a normalized table structure can be stored in the memory 12 in the state of the expression form 1. In the expression format 1, A is a key attribute (for example, employee number), and B, C, D, E, and the like are other attributes (for example, name, gender, year of entry, department, etc.).

図2は、第1実施形態に係る情報処理装置のメモリに格納されるセル空間情報の第二のデータ構造例を示す。同図に示すように、第1実施形態に係る情報処理装置では、従来ツリー構造として表現される対象情報は、表現形式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 memory of the information processing apparatus according to the first embodiment. As shown in the figure, in the information processing apparatus according to the first embodiment, the target information expressed as a conventional tree structure can be stored in the memory 12 in the expression format 2 or 3. As shown in the figure, the tree structure as a part of the directed graph can be handled. In expression form 2, a is, for example, an animal, b is a mammal, c is a fish, d is a human, e is a whale, f is a tuna, g is a salmon, and the like. In this case, b (mammals) and c (fishes) inherit the attributes of a (animal), such as eating and breathing. The common attribute of b (mammals) and c (fish) is defined as a (animal).

したがって、本情報処理装置は、本実施形態の式表現によって、フレーム等の知識ベー
ス、あるいは、オブジェクト指向データベース等を記述し、メモリに格納できる。情報処理装置は、これらに対応する事物に関する情報の入力を入力部から受け付け、対応する情報を生成し、メモリに格納し、メモリから読み出し、出力部に出力できる。
Therefore, the information processing apparatus can describe a knowledge base such as a frame or an object-oriented database according to the expression of the present embodiment and store it in a memory. The information processing apparatus can accept input of information related to these items from the input unit, generate corresponding information, store it in the memory, read it from the memory, and output it to the output unit.

また、逆ツリー構造で表現される対象情報についても、表現形式3のようにメモリに格納することができる。逆ツリー情報は、基本的な情報からより複雑な情報を構成する場合に適用できる。表現形式3では、例えば、aはCPUであり、bはインターフェースであり、cは外部記憶装置の駆動部であり、dはCPUボードであり、eは外部記憶装置であり、fはパーソナルコンピュータである。   Also, target information expressed in an inverted tree structure can be stored in the memory as in the expression format 3. Inverse tree information can be applied when composing more complex information from basic information. In the expression format 3, for example, a is a CPU, b is an interface, c is a drive unit of an external storage device, d is a CPU board, e is an external storage device, and f is a personal computer. is there.

このように逆ツリー構造は、製品の設計書、事業の工程管理図等、基本情報からより複雑な情報を組み上げて管理することができる。したがって、本実施形態の式表現によって、製品の設計情報、事業の工程等を記述し、メモリに格納できる。情報処理装置は、これらに対応する事物に関する情報の入力を入力部から受け付け、対応する情報を生成し、メモリに格納し、メモリから読み出し、出力部に出力できる。   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. Accordingly, product design information, business processes, and the like can be described and stored in the memory by the expression of the present embodiment. The information processing apparatus can accept input of information related to these items from the input unit, generate corresponding information, store it in the memory, read it from the memory, and output it to the output unit.

図3は、第1実施形態に係る情報処理装置のメモリに格納される第三のデータ構造例を示す。同図に示すように、第1実施形態に係る情報処理装置では、非正規化表構造と属性のない対象情報についても図3の状態でメモリに格納することができる。ここで、非正規化表構造と属性のない対象情報とは、図3に示すように伝票を示す対象情報と、その対象情報に追加される付箋メモに相当する対象情報とが例示できる。接着処理を実行し、接着空間を作成することで、コンピュータ上で伝票に付箋メモの内容を添付することと同等の処理が実現される。   FIG. 3 shows a third data structure example stored in the memory of the information processing apparatus according to the first embodiment. As shown in the figure, in the information processing apparatus according to the first embodiment, non-normalized table structure and target information without attributes can also be stored in the memory in the state of FIG. Here, the non-normalized table structure and the target information without attributes can be exemplified by target information indicating a slip and target information corresponding to a sticky note added to the target information as shown in FIG. By executing the bonding process and creating the bonding space, a process equivalent to attaching the contents of the sticky memo to the slip is realized on the computer.

なお、伝票の種類ごとにテーブルに格納する場合には、リレーショナルモデルによって従来のデータベースで情報を管理できる。しかしながら、伝票の種類数が変動する場合、既存の伝票の構成が変更された場合には、リレーショナルモデルでは、対応できない。   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.

ここで、所定の表現形式、すなわちデータ構造についてより詳細に上記図3の形式に基づいて説明する。IDまたはid(identification)は、格納される対象情報を識別するものである。そしてこの対象情報は、識別子A〜E2,a〜e2と、演算時の結合強さが異なる第一の括弧()および第二の括弧{}と、これらにより表現される因子{C1+C2},{E1+E2}等と、これら因子の積によって表現される項E{E1+E2}等と、前記項の和によって表現される式と、により構成される。なお、本実施形態では、項を要素ともいう。また、すでに述べたように、単位元εは、所定の処理を実行した場合に1として処理される記号である。上記以外の特別な記号として、所定の処理を実行した場合に0として処理される零元Φが存在する。このような状態でメモリに格納された対象情報は、情報処理装置のCPUが所定のプログラムを実行することによって、入力装置から入力された伝票データにしたがって、生成され、メモリに格納され、部分集合に分離され、他の部分集合と接着され、あるいは、検索されることになる。   Here, the predetermined expression format, that is, the data structure will be described in more detail based on the format shown in FIG. ID or id (identification) identifies the target information to be stored. The target information includes identifiers A to E2, a to e2, first parentheses () and second parentheses {} having different coupling strengths at the time of calculation, and factors {C1 + C2}, { E1 + E2}, a term E {E1 + E2} expressed by the product of these factors, and an expression expressed by the sum of the terms. In the present embodiment, the term is also referred to as an element. As already described, the unit element ε is a symbol processed as 1 when a predetermined process is executed. As a special symbol other than the above, there is a zero element Φ that is processed as 0 when a predetermined process is executed. The target information stored in the memory in such a state is generated according to the slip data input from the input device when the CPU of the information processing device executes a predetermined program, and is stored in the memory. Will be separated, glued to other subsets, or retrieved.

図3の例では、インスタンスとして、伝票ID1で示される1枚目の伝票、伝票ID2で示される2枚目の伝票、およびMEMOで示されるメモが例示されている。また、この場合に、1枚目の伝票と2枚目以降の伝票で、項目の構成が異なっても構わない。本情報処理装置は、対象情報を構成する識別子、あるいは項に、個々に属性を付与できるので、異なる属性の並びを有する異なる識別子、あるいは項を自在に記憶し、検索し、変更できる。また、{}内に、+識別子の形式で追加するとともに、属性に対応する値を追加すれば、データベースとして運用中においても、自在に属性と属性値とを追加、変更、削除できる。したがって、本実施形態のデータ構造によれば、情報処理装置が取り扱うデータを柔軟に変更でき、厳密、正確なファイル設計の必要性が軽減される。   In the example of FIG. 3, a first slip indicated by slip ID1, a second slip indicated by slip ID2, and a 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 information processing apparatus can individually assign attributes to identifiers or terms constituting the target information, different identifiers or terms having different attribute sequences can be freely stored, searched, and changed. In addition, by adding a value in the form of + identifier in {} and adding a value corresponding to the attribute, the attribute and the attribute value can be freely added, changed, and deleted even during operation as a database. Therefore, according to the data structure of the present embodiment, the data handled by the information processing apparatus can be flexibly changed, and the necessity of strict and accurate file design is reduced.

(基本演算手順)
図4に、本情報処理装置におけるプログラム構成を示す。本情報処理装置は、例えば、データを格納し、検索し、変更し、表示するデータベースシステム等、様々事物を管理するシステムに適用できる。以下、情報処理装置のハードウェア構成としては、図9を例示できる。その場合、個々の管理対象に応じた機能は、例えばメモリ12上のアプリケーションプログラムAPを実行するCPU13によって提供される。すなわち、情報処理装置のCPU13は、入力部11から入力されたデータをメモリ12あるいは外部記憶装置に格納し、これらに格納されたデータにアクセスし、検索し、出力部14に表示する。
(Basic calculation procedure)
FIG. 4 shows a program configuration in the information processing apparatus. The information processing apparatus can be applied to a system that manages various things such as a database system that stores, retrieves, changes, and displays data. Hereinafter, FIG. 9 can be exemplified as a hardware configuration of the information processing apparatus. In this case, the function corresponding to each management target is provided by the CPU 13 that executes the application program AP on the memory 12, for example. That is, the CPU 13 of the information processing apparatus stores data input from the input unit 11 in the memory 12 or an external storage device, accesses, searches, and displays the data stored in the output unit 14.

一方、アプリケーションプログラムがメモリ12あるいは、外部記憶装置に格納するデータの生成、格納、検索等の機能は、上述の式表現を処理する共通関数ライブライリが提供する。共通関数ライブラリは、アプリケーションインターフェースを備えており、アプリケーションプログラムへのこれらの機能、あるいは、サービスを提供する。以下、本情報処理装置で典型的な共通関数の例を説明する。これらの共通関数は、プリミティブ関数、あるいは、基本演算とも呼ばれる。以下、式表現に対する基本演算、つまり共通関数の典型例として、商演算および部分集合取得処理を例示する。   On the other hand, functions such as generation, storage, and retrieval of data stored in the memory 12 or the external storage device by the application program are provided by the common function library that processes the above-described expression expression. The common function library has an application interface and provides these functions or services to the application program. Hereinafter, an example of a common function typical in the information processing apparatus will be described. These common functions are also called primitive functions or basic operations. Hereinafter, a quotient operation and a subset acquisition process will be exemplified as a typical example of a basic operation for an expression expression, that is, a common function.

(1)商演算処理
以下、商演算処理について説明する。商演算処理は、対象情報を記述する集合から、指定された因子(識別子を含む)を含む式表現(項、あるいは要素)と、そのような因子を含まない式表現とに分離する処理である。商演算処理のアプリケーションインターフェースは、例えば、戻り値=divide(商演算される式表現、商演算する因子、商の式表現、剰
余の式表現);のように定義できる。本実施形態で、商演算は、“商演算する因子”を含
む式表現を取り出す処理となる。そのため、商演算する因子のことを、同値関係を指定する因子ともいう。商演算する因子は、演算用因子に相当する。
(1) quotient calculation process Hereinafter, the quotient calculation process 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 referred to as a factor that specifies the equivalence relation. The factor for the quotient calculation corresponds to the calculation factor.

図5Aは、商演算処理(サブルーチン1)を実行する処理のフローを示す。サブルーチン1を実行するCPU13が商演算部に相当する。なお、図6Aは、商演算のうち、剰余を求める処理(サブルーチン2)である。サブルーチン1は、商演算される式表現である式1、商演算する因子を入力され、商の式表現である式2を出力する。   FIG. 5A shows a flow of processing for executing the quotient calculation processing (subroutine 1). The CPU 13 that executes the subroutine 1 corresponds to a quotient calculation unit. FIG. 6A shows a process (subroutine 2) for obtaining a remainder in the quotient calculation. Subroutine 1 receives expression 1 which is an expression expression to be quotient-calculated and a factor to be quotient-calculated and outputs expression 2 which is an expression expression of the quotient.

まずステップS301では、商演算処理が実行される前の所定の表現形式によって表現される式1(“商演算される式表現”)、および商演算する因子(これを同値関係示す因子ともいう)pが入力される。以下、数2により表現される対象情報が入力された場合について説明する。また、1を商演算する因子(同値関係を示す因子p)と設定する。   First, in step S301, an expression 1 (“expression expression to be quotient-calculated”) expressed in a predetermined expression format before the quotient calculation process is executed, and a factor for performing the quotient calculation (also referred to as a factor indicating an equivalence relation). p is entered. Hereinafter, the case where the target information expressed by Equation 2 is input will be described. Further, 1 is set as a factor for performing a quotient operation (factor p indicating an equivalence relationship).

cell(id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2}))・・・(数2)   cell (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) (Equation 2)

次に、ステップS302では、CPU13は、演算後の商(商項ともいう、ここでは、項2で表す)を初期化する。このとき、項2の値は、Φ(空、または0)である。   Next, in step S302, the CPU 13 initializes a quotient after calculation (also referred to as a quotient, here represented by a term 2). At this time, the value of the term 2 is Φ (empty or 0).

次に、ステップS303では、CPU13は、式1の長さが0であるか否かを判定する。式1の長さが0である場合、CPU13は、サブルーチン1の処理を終了する。   Next, in step S303, the CPU 13 determines whether or not the length of Expression 1 is zero. When the length of Expression 1 is 0, the CPU 13 ends the subroutine 1 processing.

一方、ステップS303の判定において、式1の長さが0でなかった場合、CPU13は、ステップ304に処理を進める。そして、CPU13は、式1から始めの項(以下、項1という)を取得する。ここで、項1は、数2の全体である。さらに、ステップS305において、CPU13は、式1から項1を削除する。   On the other hand, if the length of Expression 1 is not 0 in the determination in step S303, the CPU 13 advances the process to step 304. Then, the CPU 13 acquires the first term (hereinafter referred to as term 1) from Equation 1. Here, the term 1 is the whole of Equation 2. Further, in step S305, the CPU 13 deletes the term 1 from the expression 1.

次に、ステップS306において、CPU13は、項1が因子p(ここでは、“1”)を含んでいるか否かを判定する。ここで、因子pを含んでいるとは、項1の因子としては、あるいは、項1の第1の括弧で括られた因子内の項のいずれかに、因子pを含むことをいう。すなわち、項1の式表現中に因子pが含まれるか否かを判定する。項1が因子pを含んでいない場合、CPU13は、項1を空とし(ステップS307)、処理をステップS303に戻す。   Next, in step S306, the CPU 13 determines whether or not the term 1 includes a factor p (here, “1”). Here, including the factor p means that the factor p is included in any of the terms in the factor 1 enclosed in the first parenthesis of the term 1 as the factor of the term 1. That is, it is determined whether or not the factor p is included in the expression expression of the term 1. When the term 1 does not include the factor p, the CPU 13 empties the term 1 (step S307) and returns the process to step S303.

一方、ステップS306の判定において、項1が因子pを含んでいる場合、CPU13は、処理をステップS308に進める。そして、CPU13は、項3を初期化し、空とする。ここで、項3は、始めの項である項1の商演算結果を格納する変数(メモリ12の領域)である。ここでは、数2の構成から、項1に因子p(=1)が含まれていると判定される。   On the other hand, when the term 1 includes the factor p in the determination in step S306, the CPU 13 advances the process to step S308. Then, the CPU 13 initializes the term 3 and makes it empty. Here, the term 3 is a variable (an area in the memory 12) that stores the quotient calculation result of the first term, which is the first term. Here, from the configuration of Equation 2, it is determined that the term p includes the factor p (= 1).

そして、ステップS309において、CPU13は、項1の長さが0であるか否かを判定する(ステップS309)。項1の長さが0でない場合、ステップS310において、CPU13は、項1から始めの因子(以下、因子1という)を取得する。数2の構成から、因子“cell”が取得される。そして、ステップS311において、CPU13は、項1から因子1を削除する。   In step S309, the CPU 13 determines whether or not the length of item 1 is 0 (step S309). When the length of the term 1 is not 0, in step S310, the CPU 13 acquires a factor starting from the term 1 (hereinafter referred to as factor 1). The factor “cell” is acquired from the configuration of Equation 2. In step S <b> 311, the CPU 13 deletes the factor 1 from the term 1.

次に、ステップS312において、CPU13は、因子1に商演算する因子pが含まれ、かつ、因子1が第1の括弧“(”と“)”とによって形成された因子であるとき、その括弧内の式を式1に設定し、サブルーチン1を再帰呼び出しする。そして、その再帰呼び出しによる処理結果を因子1とする。この処理によって、商演算される式中で、項に“()”による因子を含む場合は、その項は、()内の式が商演算されることになる。数2の構成の場合、“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 CPU 13 includes the factor p to be quotient-calculated in the factor 1, and when the factor 1 is a factor formed by the first parentheses “(” and “)”. The expression inside is set to Expression 1, and subroutine 1 is called recursively. The processing result by the recursive call is set as factor 1. By this processing, when a factor by “()” is included in a term in an expression subjected to quotient calculation, the expression in () is quotient calculated for that term. In the case of the configuration of Equation 2, when “cell” is factor 1, step S312 is not executed. If the cell's next factor (id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2})) is the factor 1, a recall call is executed in step S312. As a result, a factor including the factor p (1 in this example) is extracted in the expression.

さらに、ステップS313によって、CPU13は、項3に対し因子1を積演算し、結果を項3とする。この処理によって、因子1に商演算される因子pが含まれる場合、そのまま項3に積演算されることになる。また、因子1が()の形式の因子の場合に、()内から因子pを含む項が取り出されることになる。そして、CPU13は、処理をステップS309に戻す。   Further, in step S 313, the CPU 13 multiplies the factor 1 by the term 3 and sets the result as the term 3. By this processing, when factor p to be quotient-calculated is included in factor 1, the product operation is directly performed on term 3. When factor 1 is a factor of the form (), a term including factor p is extracted from within (). Then, the CPU 13 returns the process to step S309.

ステップS309の判定で、項1の長さが0となった場合、CPU13は、処理をステップS314に進める。そして、ステップS314において、CPU13は、項2(商項)に対して、得られている項3を和演算する。さらに、ステップS315の処理で、CPU13は、項2を商演算後の式である式2に設定する。その後、CPU13は、処理をステップS303に戻す。   When the length of item 1 becomes 0 in the determination in step S309, the CPU 13 advances the process to step S314. In step S314, the CPU 13 sums the obtained term 3 with respect to the term 2 (quotient). Further, in the process of step S315, the CPU 13 sets the term 2 to the expression 2 which is an expression after the quotient calculation. Thereafter, the CPU 13 returns the process to step S303.

そして、ステップS303の判定で、式1の長さが0になると、CPU13は、サブルーチン1の処理を終了する。このような処理により、式2に、以下の数3の式表現が出力され、アプリケーションプログラムに引き渡される。   If the length of Expression 1 becomes 0 in the determination in step S303, the CPU 13 ends the process of the subroutine 1. As a result of such processing, the following Expression 3 is output to Expression 2 and delivered to the application program.

cell×id{ε+A+B+C}×1{ε+a1+b1+c1}・・・(数3)   cell × id {ε + A + B + C} × 1 {ε + a1 + b1 + c1} (Equation 3)

図5Bおよび図5Cに、数2の式表現に対して、サブルーチン1が実行された場合の式
1、項1、項2、項3、因子1、および式2の変化を示す。図5Bおよび図5Cの第1行目は、各列の要素、すなわち、図5A中の該当する処理を示す番号、式1、項1、項2、項3、因子1、および式2を示している。第2行以下の各行は、一連の処理ステップであり、図5B上から下へ、さらに、図5Cの上から下へ実行される。
FIG. 5B and FIG. 5C show changes in Equation 1, Term 1, Term 2, Term 3, Factor 1, and Equation 2 when subroutine 1 is executed for the expression expression of Equation 2. The first row of FIG. 5B and FIG. 5C shows the elements of each column, ie, numbers indicating the corresponding processing in FIG. 5A, Equation 1, Term 1, Term 2, Term 3, Factor 1, and Equation 2. ing. Each row after the second row is a series of processing steps, and is executed from the top to the bottom of FIG. 5B and further from the top to the bottom of FIG. 5C.

そして、まず、ステップS301で、共通関数へのパラメータを介して、式1である数2が入力され、メモリ12に保持される。   First, in step S 301, the number 2 that is expression 1 is input via the parameter to the common function and stored in the memory 12.

項1、因子1および項3に着目すると、これらのうち、“cell”および、id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が順次サブルーチン1で処理されることが分かる。   Focusing on the term 1, the factor 1 and the term 3, it can be seen that among them, “cell” and id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) are sequentially processed by the subroutine 1.

さらに、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で処理される。   Furthermore, when id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed as factor 1 in step S312, a recall call occurs. Similarly, “id”, {ε + A + B + C}, and (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) are processed by the re-call 1 of the subroutine 1.

さらに、(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が、ステップS312で処理されるときに、再起呼び出し2が発生する。そして、同様に、1{ε+a1+b1+c1}については、商演算する因子“1“が含まれているので、ステップS306で、YESの判定がなされる。そして、ステップS313によって、1と{ε+a1+b1+c1}とが項3に積演算される。   Furthermore, when (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed in step S312, a recall call 2 occurs. Similarly, for 1 {ε + a1 + b1 + c1}, the factor “1” to be quotient-calculated is included, so a YES determination is made in step S306. In step S313, 1 and {ε + a1 + b1 + c1} are multiplied by the product of the term 3.

一方、2{ε+a2+b2+c2}については、商演算する因子“1”が含まれていないので、ステップS306で、NOの判定がなされる。その結果、これらの因子は、ステップS307において、Φに設定され、削除される。その結果、再起呼び出し2で商演算の結果、式2として出力されるのは、1{ε+a1+b1+c1}となる。   On the other hand, for 2 {ε + a2 + b2 + c2}, the factor “1” for quotient calculation is not included, so NO is determined in step S306. As a result, these factors are set to Φ and deleted in step S307. As a result, 1 {ε + a1 + b1 + c1} is output as Expression 2 as a result of the quotient operation in the recall call 2.

さらに、再起呼び出し1では、ステップS313の処理で、項3に積演算されていたid{ε+A+B+C}と再起呼び出し2での商演算の結果である1{ε+a1+b1+c1}とが、積演算され、id{ε+A+B+C}(1{ε+a1+b1+c1})が、式2として出力される。   Further, in the recall call 1, in the process of step S313, id {ε + A + B + C} that has been subjected to product operation in the term 3 and 1 {ε + a1 + b1 + c1} that is the result of the quotient operation in the recall call 2 are subjected to product operation, and id { ε + A + B + C} (1 {ε + a1 + b1 + c1}) is output as Equation 2.

さらに、そして、再起呼び出し1の前に、項3に積演算されていたcellと、再起呼び出し1による商演算の結果が積演算され、数3が式2として、最終的に出力されることになる。   Further, before the recall call 1, the cell that has been subjected to the product operation in the term 3 and the result of the quotient operation by the recall call 1 are subjected to the product operation, and the expression 3 is finally output as Equation 2 Become.

次に、図6Aにより、剰余を求める処理(サブルーチン2)を説明する。サブルーチン2を実行するCPU13が剰余演算部に相当する。サブルーチン2は、商演算される式である式1、商演算する因子pを入力され、剰余の式3を出力する。   Next, referring to FIG. 6A, a process for obtaining a remainder (subroutine 2) will be described. The CPU 13 that executes the subroutine 2 corresponds to a remainder calculation unit. Subroutine 2 receives expression 1, which is an expression to be quotient-calculated, and factor p to be quotient-calculated, and outputs a remainder expression 3.

まずステップS321では、商演算処理が実行される前の所定の表現形式によって表現される式1(“商演算される式”)、および商演算する因子(同値関係示す因子p)が入力される。以下、図5Aの場合と同様、数2により表現される対象情報が入力された場合について説明する。また、1を商演算する因子(同値関係p)と設定する。   First, in step S321, Expression 1 (“Expression to be quotient-calculated”) expressed in a predetermined expression format before the quotient calculation process is executed, and a factor for quotient calculation (factor p indicating equivalence relation) are input. . Hereinafter, as in the case of FIG. 5A, the case where the target information expressed by Equation 2 is input will be described. Further, 1 is set as a factor for performing a quotient operation (equivalence relation p).

次に、ステップS322では、CPU13は、演算後の式(ここでは、式3と呼ぶ)を初期化する。このとき、式3の値は、Φ(空、または0)になる。   Next, in step S322, the CPU 13 initializes a post-calculation expression (referred to herein as expression 3). At this time, the value of Equation 3 is Φ (empty or 0).

次に、ステップS323では、CPU13は、式1の長さが0であるか否かを判定する
。式1の長さが0である場合、CPU13は、サブルーチン2の処理を終了する。
Next, in step S323, the CPU 13 determines whether or not the length of Expression 1 is zero. When the length of Expression 1 is 0, the CPU 13 ends the subroutine 2 processing.

一方、ステップS323の判定において、式1の長さが0でなかった場合、CPU13は、ステップS324に処理を進める。そして、CPU13は、ステップS324において、式1から始めの項(以下、項1という)を取得する。さらに、ステップS325において、CPU13は、式1から項1を削除する。   On the other hand, if the length of Expression 1 is not 0 in the determination in step S323, the CPU 13 advances the process to step S324. In step S324, the CPU 13 acquires the first term (hereinafter referred to as term 1) from Equation 1. Further, in step S325, the CPU 13 deletes the term 1 from the expression 1.

次に、ステップS326において、CPU13は、演算後の項(以下、項4と呼ぶ)を初期化する。このとき、項4の値は、Φ(空、または0)になる。   Next, in step S326, the CPU 13 initializes a post-calculation term (hereinafter referred to as term 4). At this time, the value of the term 4 becomes Φ (empty or 0).

次に、ステップS327において、CPU13は、項1の長さが0であるか否かを判定する。そして、項1の長さが0でない場合、CPU13は、ステップS328に処理を進める。そして、ステップS328において、CPU1は、項1から始めの因子(因子1)を取得する。さらに、ステップS329において、CPU13は、項1から因子1を削除する。   Next, in step S327, the CPU 13 determines whether or not the length of the term 1 is zero. If the length of term 1 is not 0, the CPU 13 advances the process to step S328. In step S328, the CPU 1 acquires a factor (factor 1) starting from item 1. Further, in step S329, the CPU 13 deletes the factor 1 from the term 1.

次に、ステップS330において、CPU13は、因子1が因子pと等しいか否かを判定する。そして因子1が因子pと等しい場合、ステップS331において、CPU13は、因子1をΦ(空、または0)にする。   Next, in step S330, the CPU 13 determines whether the factor 1 is equal to the factor p. If the factor 1 is equal to the factor p, the CPU 13 sets the factor 1 to Φ (empty or 0) in step S331.

次に、ステップS332において、CPU13は、因子1が第1の括弧“(”と“)”とによって形成された因子であるとき、その括弧内の式を式1に設定し、サブルーチン2を再帰呼び出しする。そして、その再帰呼び出しによる処理結果を因子1とする。この処理によって、商演算される式中で、“()”による因子を含む場合は、その因子は、()が外され、内の式から剰余(すなわち、因子pを含まない項)が抽出されることになる。   Next, in step S332, when the factor 1 is a factor formed by the first parenthesis “(” and “)”, the CPU 13 sets the expression in the parenthesis to the equation 1 and recursively subroutine 2 Call. The processing result by the recursive call is set as factor 1. By this process, when a factor by “()” is included in an expression subjected to quotient calculation, () is removed from the factor, and a remainder (that is, a term not including the factor p) is extracted from the expression inside. Will be.

さらに、ステップS333によって、CPU13は、項4に対し因子1を積演算し、結果を項4とする。この処理によって、因子1が商演算される因子pと異なる場合に、そのまま項3に積演算されることになる。また、因子1が()の形式の因子の場合に、()内から因子pを含まない項が取り出されることになる。そして、CPU13は、処理をステップS327に戻す。   Further, in step S333, the CPU 13 multiplies the factor 1 by the term 4 and sets the result as the term 4. As a result of this processing, if the factor 1 is different from the factor p to be quotient-calculated, the product operation is performed on the term 3 as it is. When factor 1 is a factor of the form (), a term not including factor p is taken out from (). Then, the CPU 13 returns the process to step S327.

ステップS327の判定で、項1の長さが0となった場合、CPU13は、処理をステップS334に進める。そして、CPU13は、ステップS334において、式3(剰余項)に対して、得られている項4を和演算する。その後、CPU13は、処理をステップS323に戻す。   If it is determined in step S327 that the length of item 1 is 0, the CPU 13 advances the process to step S334. In step S334, the CPU 13 sums the obtained term 4 with respect to Equation 3 (residue term). Thereafter, the CPU 13 returns the process to step S323.

そして、ステップS323の判定で、式1の長さが0になると、CPU13は、サブルーチン2の処理を終了する。このような処理により、式3に、以下の数4の式表現が剰余として出力され、アプリケーションプログラムに引き渡される。   When the length of Expression 1 becomes 0 in the determination in step S323, the CPU 13 ends the process of the subroutine 2. By such processing, the following expression 4 is output as a remainder to Expression 3 and delivered to the application program.

cell(id{ε+A+B+C}(Φ+2{ε+a2+b2+c2}))・・(数4)   cell (id {ε + A + B + C} (Φ + 2 {ε + a2 + b2 + c2})) (Equation 4)

図6Bおよび図6Cに、数2の式表現に対して、サブルーチン2が実行された場合の式1、項1、項4、因子1、および式3の変化を示す。図6Bおよび図6Cの第1行目は、各列の要素、すなわち、図6A中の該当する処理を示す番号、式1、項1、項、項4、因子1、および式3を示している。第2行以下の各行は、一連の処理ステップであり、図6Bの表の上から下へ、さらに、図6Cの表の上から下へ実行される。   6B and 6C show changes in Equation 1, Term 1, Term 4, Factor 1, and Equation 3 when subroutine 2 is executed for the expression expression of Equation 2. FIG. The first row of FIG. 6B and FIG. 6C shows the elements of each column, that is, the numbers indicating the corresponding processing in FIG. 6A, Equation 1, Term 1, Term, Term 4, Factor 1 and Equation 3. Yes. Each row after the second row is a series of processing steps, and is executed from the top to the bottom of the table of FIG. 6B and further from the top to the bottom of the table of FIG. 6C.

そして、まず、ステップS321で、共通関数へのパラメータを介して、式1である数2が入力され、メモリ12に保持される。   First, in step S321, the number 2 of Expression 1 is input via the parameter to the common function and stored in the memory 12.

項1、因子1および項4に着目すると、これらのうち、“cell”および、id{ε+A+B+C}(1{ε+a1+b1+c1}+2{ε+a2+b2+c2})が順次サブルーチン2で処理されることが分かる。   Focusing on the term 1, the factor 1 and the term 4, it is understood that among these, “cell” and id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) are sequentially processed by the subroutine 2.

さらに、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})がサブルーチン2の再起呼び出し1で処理される。   Furthermore, when id {ε + A + B + C} (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) is processed as factor 1 in step S332, a recall call occurs. Similarly, “id”, {ε + A + B + C}, and (1 {ε + a1 + b1 + c1} +2 {ε + a2 + b2 + c2}) are processed in the re-call 1 of subroutine 2.

さらに、(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 step S332, a recall call 2 occurs. For 1 {ε + a1 + b1 + c1}, the factor “1” to be quotient-calculated is included, so a YES determination is made in step S330. In step S331, the factor 1 is set to Φ, and the entire term 1 including the factor 1 becomes Φ and is deleted.

一方、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, so NO is determined for each factor 1 in step S330. As a result, these factors are multiplied by the product of term 4 in step S333. As a result, 2 {Φ + a1 + b1 + c1} is output as Expression 3 as a result of the remainder operation of the recall call 2.

さらに、再起呼び出し1では、ステップS333の処理で、項4に積演算されていたid{ε+A+B+C}と再起呼び出し2での商演算の結果である2{Φ+a1+b1+c1}とが、積演算され、id{ε+A+B+C}(2{Φ+a1+b1+c1})が、式3として出力される。   Further, in the recall call 1, in the process of step S333, id {ε + A + B + C} that has been subjected to the product operation in the term 4 and 2 {Φ + a1 + b1 + c1} that is the result of the quotient operation in the recall call 2 are subjected to a product operation, and id { ε + A + B + C} (2 {Φ + a1 + b1 + c1}) is output as Equation 3.

さらに、そして、再起呼び出し1の前に、項4に積演算されていたcellと、再起呼び出し1による商演算の結果が積演算され、数4が式3として、最終的に出力されることになる。   Further, before the recall call 1, the cell that has been subjected to the product operation in the term 4 and the result of the quotient operation by the recall call 1 are subjected to the product operation, and the number 4 is finally output as Equation 3 Become.

(2)部分集合取得処理
部分集合取得処理は、集合から、指定された因子(以下、指定因子という)を有する項を含む式(部分集合)と、指定因子を有しない項の式(部分集合)に分離する処理である。この処理を実行するCPU13が、部分集合形成部に相当する。ただし、本実施形態では、指定因子(今pとする)を有する項が複数個存在する場合には、{左因子1+左因子2+・・・}p{左因子1が含まれていた項の右因子+左因子2が含まれていた項の右因子+・・・}+因子pを含まない部分集合の和のように、指定された因子pで括り出す。このように、部分集合取得処理の括り出しでは、括り出し前の各項において、指定因子pの左側に結合する因子(左因子と呼ぶ)と、指因子pの右側に結合する因子(右因子と呼ぶ)とをそれぞれ、第2の{}内に和演算する。そして、左因子の和は、第2の{}によって括られ、その順序を維持して、指定された因子の左側に結合される。
(2) Subset acquisition process The subset acquisition process is 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 CPU 13 that executes this process corresponds to a subset forming unit. However, in the present embodiment, when there are a plurality of terms having a designated factor (currently p), {left factor 1 + left factor 2+...} P {the term in which the left factor 1 was included The right factor + left factor 2 is included in the specified factor p, such as the right factor +...} + The sum of subsets not including the factor p. As described above, in the grouping of the subset acquisition process, in each term before the grouping, a factor that binds to the left side of the designated factor p (referred to as a left factor) and a factor that binds to the right side of the finger factor p (right factor) Are summed in the second {}. The sum of the left factors is then bounded by the second {} and joined to the left side of the specified factor, maintaining its order.

また、右因子の和は、第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,
a1 * b * c1 + a1 * b * c2 + a2 * b * c1 + a2 * b * c2 + a3 * b * c3 +
When a subset acquisition operation is performed on the expression a × u × v using the factor b as a designated factor,
{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(部分集合取得前の式表現、指定因子);のように定義できる。対象の式、因子を指定すると、括った後の式(戻り値)となる。   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). When the target formula and factor are specified, the formula (return value) after wrapping is obtained.

次に部分集合取得処理について説明する。図7は、部分集合取得処理を実行する処理のフローを示す。ステップS501では、演算前の所定の表現形式で表現される対象情報と、部分集合を指定するための指定因子pを入力する。以下、対象情報として数5に示すデータを用いて、指定因子“p”で部分集合を取得する場合について説明する。   Next, the subset acquisition process will be described. FIG. 7 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, a case where a subset is acquired with the designated factor “p” using the data shown in Equation 5 as target information will be described.

s×p(p1+p2)+t×p(p3+p4)+id(s×p(p1+p2)+t×p(p3+p4))・・・(数5)   s × p (p1 + p2) + t × p (p3 + p4) + id (s × p (p1 + p2) + t × p (p3 + p4)) (Equation 5)

ステップS502では、部分集合を取得するための因子以外(ここでは、「その他の式」「左因子式」および「右因子式」)をΦと設定する。ステップS503では「処理後の項」をεに設定する。ステップS504では、対象情報を構成する式の長さが0であるかを判断する。すなわち、対象情報が存在するか否かを判断する。式の長さが0であると判断した場合には、ステップS517へ進む。一方、式の長さが0であると判断しなかった場合には、ステップS505へ進む。   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, “term after processing” 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では、数5から第一項を取得し保存する。次にステップS506では、数5から第一項を削除する。次にステップS507では、取得した項に因子pが含まれるか判断する。取得した項に因子pが含まれると判断した場合にはステップS515へ進む。一方、取得した項に因子pが含まれると判断しなかった場合には、ステップS508へ進む。   In step S505, the first term is acquired from Equation 5 and stored. Next, in step S506, the first term is deleted from Equation 5. 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 parenthesis, this subset acquisition process is executed for the expression enclosed in the first or second parenthesis (Step S512). That is, a restart call is executed. On the other hand, if 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)、処理を終了する。以上の処理を実行することにより、数5により表現される対象情報は、数6により表現される対象情報となる。なお、部分集合取得処理を実行中の対象情報の状態の詳細は図8A、図8Bに示す。   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 Equation 5 becomes the target information expressed by Equation 6. Details of the state of the target information during execution of the subset acquisition process are shown in FIGS. 8A and 8B.

id({s+t}p{(p1+p2)+(p3+p4)})+{s+t}p{(p1+p2)+(p3+p4)}・・・(数6)   id ({s + t} p {(p1 + p2) + (p3 + p4)}) + {s + t} p {(p1 + p2) + (p3 + p4)} (Equation 6)

図8Aおよび図8Bに、数5の式表現に対して、部分集合取得処理が実行された場合の「演算前の式」、「部分集合取得のための因子」、「左因子式」、「右因子式」、「左因子」、「右因子」「その他の式」、「取得した項」、「取得した因子」、「処理後の項」、「部分集合項」および「演算後の式」の変化を示す。図8Aの各行と、図8Bの各行は、図7の処理での同一の処理を示している。すなわち、図8Aおよび図8Bを横に接続して、部分集合取得処理の状態変化が表されることになる。   8A and 8B, “formula before operation”, “factor for obtaining subset”, “left factor formula”, “ "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. 8A and each row in FIG. 8B show the same processing in the processing in FIG. That is, FIG. 8A and FIG. 8B are connected horizontally, and the state change of a subset acquisition process is represented.

図8Aおよび図8Bの第1行目は、各列の要素、すなわち、図7中の該当する処理を示す番号、「その他の式」、「取得した項」、「取得した因子」、「処理後の項」、「部分集合項」および「演算後の式」を示している。第2行以下の各行は、一連の処理ステップであり、図8Aおよび図8Bの表の上から下へ実行される。以下、フローチャートの処理(ボックス)を処理(ボックス)に付された符号で、単に、S505のように呼称する。   The first row of FIG. 8A and FIG. 8B shows the elements of each column, that is, the numbers indicating the corresponding processing in FIG. 7, “other formulas”, “acquired terms”, “acquired factors”, “processing” “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. 8A and 8B. Hereinafter, the process (box) of the flowchart is a code attached to the process (box) and is simply referred to as S505.

ここでは、数5の式表現を処理対象とする。部分集合取得処理を実行する共通関数separateに対して、まず、部分集合取得前の式表現である数5が与えられる。この式表現はメモリ12に格納される。また、指定因子はpであるとする。   Here, the expression expression of Equation 5 is a processing target. For the common function separate that executes the subset acquisition processing, first, the number 5 that is the expression expression before the subset acquisition is given. This expression expression is stored in the memory 12. The designated factor is assumed to be p.

まず、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)に対して、部分集合取得処理が再起呼び出しで実行される。図8Aおよび図8Bでは、再起呼び出し中の状態は、省略されているので、本文にて説明する。この場合も、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. 8A and FIG. 8B, 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 CPU 13 creates {s + t} p {(p1 + p2) + (p3 + 4)} as a term of the subset. Then, the CPU 13 ends the recall call with the terms of the subset as an expression after the calculation.

再起呼び出しを終了すると、演算後の式を取得するので、これを取得した因子とする。この場合、取得した因子は、({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 CPU 13 performs a product operation on the acquired factor to the term after processing (“id” is product-calculated) calculated before the recall call. As a result, in S513, the term after processing is id ({s + t} p {(p1 + p2) + (p3 + 4)}). In S514, the CPU 13 sums up the processed terms as other expressions.

そして、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)}が作成されることになる。   If it is determined in S504 that the length of the remaining expression is 0, the CPU 13 determines a subset from the left factor expression s + t and the right factor expression (p1 + p2) + P3 + p4) created before the recall call. {S + t} p {(p1 + p2) + P3 + p4)}. In step S518, the CPU 13 sums the terms of the subset into other expressions. As a result, the calculated expression id ({s + t} p {(p1 + p2) + (p3 + 4)}) + {s + t} p {(p1 + p2) + P3 + p4)} is created.

《第2実施形態》
以下、第2実施形態では、上記第1実施形態の情報処理装置を応用し、式表現を用いて事物に係る情報をメモリ12等の記憶装置に蓄積し、蓄積された式表現を基に、その事物に係る数値を計算する処理を実現する情報処理装置を例示する。
<< Second Embodiment >>
Hereinafter, in the second embodiment, the information processing apparatus of the first embodiment is applied, and information related to things is stored in a storage device such as the memory 12 using formula expressions. Based on the stored formula expressions, An information processing apparatus that realizes processing for calculating a numerical value related to the thing will be exemplified.

(明示的な数値表現)
今、nを数値とし、aを数値以外の記号あるいは記号列とする。例えば、nは、整数を示す記号または記号の列である。また、aは、文字等を示す記号または記号の列である。式表現で、数値nと数値以外の記号aとが、naと記述された場合、naは、整数などの数値を示す記号と数値以外の記号とを組み合わせた識別子ということができる。
(Explicit numerical expression)
Now, let n be a numerical value and a be a symbol or symbol string other than a numerical value. For example, n is a symbol or symbol string indicating an integer. Further, a is a symbol or a string of symbols indicating characters or the like. In the expression, when the numerical value n and the symbol a other than the numerical value are described as na, na can be referred to as an identifier that combines a symbol indicating a numerical value such as an integer and a symbol other than the numerical value.

本実施形態では、情報処理装置は、このような数値を示す記号(列)と数値以外の記号(列)とを含む識別子”na”について、識別子aがn個あるものとして取り扱う。ただし、このような記述に代えて、識別子”an”について、識別子aがn個あるものとして取り扱う、と定義してもよい。なお、nは、負の数値も含む。また、数値を示す記号は、小数等の実数を示すものでもよい。例えば、識別子”an.m”、例えば、a1.005、b12345678.9については、情報処理装置は、aの量が1.005、bの量が12345678.9であるとして取り扱う。   In this embodiment, the information processing apparatus handles an identifier “na” including such a symbol (column) indicating a numerical value and a symbol (column) other than the numerical value as having n identifiers a. However, instead of such description, the identifier “an” may be defined as being handled as having n identifiers a. Note that n includes a negative numerical value. Further, the symbol indicating a numerical value may indicate a real number such as a decimal. For example, for the identifier “an.m”, for example, a1.005 and b12345678.9, the information processing apparatus treats the amount of a as 1.005 and the amount of b as 12345678.9.

さらに、aがn個あることを明示的に示す式表現として、a×'n'と記述することにする。さらにまた、nが負数である場合、例えば、―m(mは正数)の場合は、aב―m’のように例示される。なお、×は積演算子である。ここで、nを挟む''は、数値nを明示的に示す演算子であり、数値演算子と呼ぶ。また、数値演算子によって数値であることが明示された識別子'n'を数値識別子と呼ぶ。積演算子が数値演算子によって数値として明示された識別子に適用された場合、積演算子は乗算を示す。   Further, a × 'n' is described as an expression that explicitly indicates that there are n a's. Furthermore, when n is a negative number, for example, when −m (m is a positive number), it is exemplified as a × ‘−m’. Note that x is a product operator. Here, “with n” is an operator that explicitly indicates the numerical value n, and is called a numerical operator. In addition, an identifier “n” that is specified as a numerical value by a numerical operator is referred to as a numerical identifier. If the product operator is applied to an identifier specified as a number by a numeric operator, the product operator indicates multiplication.

ただし、数値を明示的に示す数値演算子が、''に限定される訳ではない。情報処理装置上で使用可能な記号から、他の演算子等と重複のないものを数値演算子として定義すれば
よい。例えば、数値をn!のように明示してよい。また、数値を$nのように明示してもよい。
However, the numerical operator that explicitly indicates the numerical value is not limited to ''. Any symbol that can be used on the information processing apparatus and that does not overlap with other operators may be defined as a numerical operator. For example, the value n! It may be specified as follows. Also, the numerical value may be specified as $ n.

また、数値を示す記号等を含まない識別子aだけを含む式表現についは、aが1個あることを明示的に示す式表現として、a×'1'と記述することにする。同様に、式表現(a+a+a)は、数値を明示的に示す式表現として、(a×'1'+a×'1'+a×'1')と記
述する。同様に、式表現{a+a+a}は、数値を明示的に示す式表現として、{a×'1'+a×'1'+a×'1'}と記述する。
In addition, an expression including only an identifier a that does not include a symbol or the like indicating a numerical value is described as a × '1' as an expression that explicitly indicates that there is one a. Similarly, the expression (a + a + a) is described as (a × '1' + a × '1' + a × '1') as an expression that explicitly indicates a numerical value. Similarly, the expression {a + a + a} is described as {a × '1' + a × '1' + a × '1'} as an expression that explicitly indicates a numerical value.

さらに、例えば、式表現2a(3b+c(2d+3e+4f+e))は、数値を明示的に示す式表現として、a×'2'×(b×'3'+c×'1'×(d×'2'+e×'3'+f×'
4'+e×'1'))のように記述される。ただし、×'1'は、省略してもよい。つまり、識別子aは、明示的にaが1個あるものとして0取り扱うことができる。
Further, for example, the expression 2a (3b + c (2d + 3e + 4f + e)) is expressed as an expression that explicitly indicates a numerical value as a × '2' × (b × '3' + c × '1' × (d × '2' + e). × '3' + f × '
4 '+ e ×' 1 ')). However, x'1 'may be omitted. In other words, the identifier a can be handled as 0 with an explicit a.

数値を明示的に示す式表現では、数値以外の識別子による因子と、数値識別子による因子の間は、式表現の代数的構造で示した可換律が適用される。例えば、a×'n'='n'×aである。   In an expression expression that explicitly indicates a numerical value, the commutative law indicated by the algebraic structure of the expression expression is applied between a factor based on an identifier other than a numerical value and a factor based on a numerical identifier. For example, a × 'n' = 'n' × a.

(数値計算処理)
数値を明示的に示す式表現において、四則演算、べき乗等の演算は、以下のように処理される。以下、数値を明示的に示す式表現を代数演算式と呼ぶ。
(Numerical calculation processing)
In formula expressions that explicitly indicate numerical values, arithmetic operations such as four arithmetic operations and exponentiation are processed as follows. Hereinafter, an expression that explicitly indicates a numerical value is referred to as an algebraic operation expression.

(1)乗算
積演算子で結合される複数の因子中の2以上の因子が数値演算子によって数値として明示されている式表現を考える。このような式表現については、本情報処理装置は、数値演算子によって数値として明示されている因子間の乗算を実行する。例えば、a×'1'×b×'m'=a×b×'1×m'となる。ここで、'1×m'は、数1と数mを乗算した積である。具体的には、a×'2'×b×'4'=a×b×'8'である。また、例えば、a×'0'=φである。
(1) Multiplication Consider an expression expression in which two or more factors among a plurality of factors connected by a product operator are explicitly expressed as numerical values by a numerical operator. For such an expression, the information processing apparatus performs multiplication between factors that are specified as numerical values by numerical operators. For example, a × '1' × b × 'm' = a × b × '1 × m'. Here, “1 × m” is a product obtained by multiplying the number 1 and the number m. Specifically, a × '2' × b × '4' = a × b × '8'. For example, a × '0' = φ.

(2)べき乗と除算
以下にべき乗と除算を例示する。べき乗は、同一の数を複数回掛ける演算、あるいは、その演算結果をいう。本情報処理装置では、べき乗は、”底を示す識別子M×^指数を示す識別子n”という形式で記述する。例えば、a×a×a=a×^'3'である。識別子aのn乗は、a×^'n'で表す。つまり、この場合には、”×^”がべき乗を示す予約語となる。ただし、べき乗が、このような記述形式に限定されるわけではない。この例では、”×^”が指数演算子に相当する。なお、べき乗の底(上記識別子M)および指数部分(上記識別子n)の一方または両方が、小数等の実数であってもよい。
(2) Power and division Examples of power and division are given below. The power is an operation of multiplying the same number a plurality of times, or an operation result thereof. In the information processing apparatus, the power is described in the format of “an identifier M indicating the base × an identifier n indicating the exponent”. For example, a * a * a = a * ^ '3'. The nth power of the identifier a is represented by a × ^ 'n'. That is, in this case, “× ^” is a reserved word indicating a power. However, the power is not limited to such a description format. In this example, “× ^” corresponds to the exponent operator. One or both of the power base (the identifier M) and the exponent part (the identifier n) may be real numbers such as decimal numbers.

例えば、識別子aのn乗をa**'n'のように表してもよい。この場合には、”**”がべき乗を示す予約語となる。また、識別子aのn乗をa×E'n'のように表してもよい。この場合には、”×E”がべき乗を示す予約語となる。以下、べき乗の記述例、およびべき乗を含む除算を例示する。
a×^'0'='1'
(a×b)×^'0'='1'
/(a×a×a)=a×^'−3'
同様に、aのマイナスn乗は、a×^'−n'で表す。一方、/'0'はエラーである。さらに、除算記号で、分母分子として関係付けられる2つの式表現中で、互いに共通の因子(識別子)は削除可能である。この場合の共通の因子(識別子)については、いわゆる約分が実行される。識別子の削除は、例えば、a×c/a=cのように示される。
For example, the nth power of the identifier a may be expressed as a ** 'n'. In this case, “**” is a reserved word indicating a power. In addition, the nth power of the identifier a may be expressed as a × E′n ′. In this case, “× E” is a reserved word indicating a power. Hereinafter, a description example of a power and a division including a power will be exemplified.
a × ^ '0' = '1'
(A × b) × ^ '0' = '1'
/ (A * a * a) = a * ^ '-3'
Similarly, a to the power of minus n is represented by a × ^ ′ − n ′. On the other hand, / '0' is an error. Furthermore, a factor (identifier) common to each other can be deleted in two expression expressions related as a denominator by a division symbol. For the common factor (identifier) in this case, so-called reduction is performed. The deletion of the identifier is indicated as a × c / a = c, for example.

(3)加算
和演算子で構成される項の組み合わせ中に、数値演算子で数値として明示されている因子以外の因子が共通する複数の項については、本情報処理装置は、数値演算子で数値として明示されている因子を加算する。以下に、演算結果を例示する。
(a×'1'+a×'m')=a×'(1+m)'
(a×'2'+a×'4')=a×'6'
(a×'1'+b×'m')は、これ以上加算できない。
(a+a+c)=(a×'1'+a×'1'+c×'1')=(a×'2'+c×'1')
なお、第2の括弧”{}”内の複数の式表現同士は、加算できない。例えば、{a+a+c}の{}内のaとaの加算はできない。ただし、第2の括弧”{}”を和演算子で組み合わせた式表現において、{}内の位置が同一位置の式表現同士の加算は可能である。例えば、{a+a+c}+{a+b+c}={(a+a)+(a+b)+(c+c)}={(a×'1'+a×'1')+(a×'1'+b×'1')+(c×'1'+c×'1')}={a×'2'+(a×'1'+b×'1')+c×'2'}
さらに、減算は、数値に負数を用いることで、加算を用いて、実現できる。以下に負の数値の加算を例示する。
(a×'1'+a×'−m')=a×'(1−m)'
(a×'2'+a×'−4')=a×'−2'
(a+a×−1+c)=(a×'1'+a×'−1'+c×'1')=c×'1'
(3) Addition For a plurality of terms that share factors other than factors explicitly specified as numerical values by numerical operators in a combination of terms composed of sum operators, this information processing apparatus uses numerical operators. Add the factors specified as numbers. In the following, calculation results are exemplified.
(A × '1' + a × 'm') = a × '(1 + m)'
(A × '2' + a × '4') = a × '6'
(A × '1' + b × 'm') cannot be added any further.
(A + a + c) = (a × '1' + a × '1' + c × '1') = (a × '2' + c × '1')
A plurality of expression expressions within the second parenthesis “{}” cannot be added. For example, a and a in {} of {a + a + c} cannot be added. However, in the expression expression in which the second parentheses “{}” are combined with the sum operator, the expression expressions having the same position in {} can be added. For example, {a + a + c} + {a + b + c} = {(a + a) + (a + b) + (c + c)} = {(a × '1' + a × '1') + (a × '1' + b × '1') + (C × '1' + c × '1')} = {a × '2' + (a × '1' + b × '1') + c × '2'}
Furthermore, subtraction can be realized using addition by using a negative number for the numerical value. The following is an example of adding a negative numerical value.
(A × '1' + a × '-m') = a × '(1-m)'
(A × '2' + a × '-4') = a × '-2'
(A + a * -1 + c) = (a * '1' + a * '-1' + c * '1') = c * '1'

(ハードウェア構成)
次に、本実施形態に係る情報処理装置200の構成例について説明する。
(Hardware configuration)
Next, a configuration example of the information processing apparatus 200 according to the present embodiment will be described.

図9は、情報処理装置200のハードウェア構成を例示する図である。情報処理装置200は、コンピュータプログラムを実行し、情報処理装置200の機能を提供するCPU13と、CPU13で実行されるプログラム、あるいは、CPU13が処理するデータを格納するメモリ12と、インターフェース15を介してCPU13に接続される入力部11と、インターフェース16を介してCPU13に接続される出力部14とを有する。さらに、情報処理装置200は、インターフェース31を介してCPU13に接続される通信部32と、インターフェース33を介してCPU13に接続される外部記憶装置34と、インターフェース35を介してCPU13に接続される着脱可能な記憶媒体アクセス装置36とを有する。   FIG. 9 is a diagram illustrating a hardware configuration of the information processing apparatus 200. The information processing apparatus 200 executes a computer program and provides the functions of the information processing apparatus 200, a program executed by the CPU 13, a memory 12 that stores data processed by the CPU 13, and an interface 15. An input unit 11 connected to the CPU 13 and an output unit 14 connected to the CPU 13 via the interface 16 are included. Further, the information processing apparatus 200 includes a communication unit 32 connected to the CPU 13 via the interface 31, an external storage device 34 connected to the CPU 13 via the interface 33, and a detachment connected to the CPU 13 via the interface 35. And a possible storage medium access device 36.

CPU13と、メモリ12および各インターフェース15、16、31、33、および35は、通常、CPU13の内部バスに接続される。インターフェース15は、一般的には、USB等のシリアルインターフェースである。入力部11は、キーボード、あるいは、マウス等のポインティングデバイスである。ポインティングデバイスは、機械的手段、光学的手段、または、静電容量でユーザの操作を検知するものでもよい。また、ポインティングデバイスとして、タッチパネルを用いてもよい。さらに、入力装置11としてスキャナを用いてもよい。   The CPU 13, the memory 12, and the interfaces 15, 16, 31, 33, and 35 are usually connected to the internal bus of the CPU 13. The interface 15 is generally a serial interface such as a USB. The input unit 11 is a pointing device such as a keyboard or a mouse. The pointing device may be mechanical means, optical means, or a device that detects a user's operation with capacitance. A touch panel may be used as a pointing device. Further, a scanner may be used as the input device 11.

インターフェース16は、例えば、アナログのRGB(赤緑青)の指定を含むインターフェースである。ただし、インターフェース16は、シリアルまたはパラレルのデジタル信号インターフェースでもよい。例えば、IEEE1349、USB、DVI(Digital Visual Interface) 、HDM(High Definition Multimedia Interface) 等でもよい。出力部14は、例えば、液晶ディスプレイ、プリンタ等である。   The interface 16 is an interface including designation of analog RGB (red green blue), for example. However, the interface 16 may be a serial or parallel digital signal interface. For example, IEEE 1349, USB, DVI (Digital Visual Interface), HDM (High Definition Multimedia Interface), etc. may be used. The output unit 14 is, for example, a liquid crystal display or a printer.

インターフェース31、33、および35は、USB等のシリアルインターフェース、SCSI(Small Computer System Interface)、IDE(Integrated Drive Electronic
s)等のパラレルインターフェースである。通信部32は、Ethernet(登録商標)等のL
AN基板である。
Interfaces 31, 33, and 35 are serial interfaces such as USB, SCSI (Small Computer System Interface), IDE (Integrated Drive Electronic)
s). The communication unit 32 is an Ethernet (registered trademark) or other L
AN substrate.

このような情報処理装置の具体的な例としては、パーソナルコンピュータを例示できる。また、このような情報処理装置は、クライアント装置とサーバ装置を用いても構成できる。そして、サーバ装置としては、JSP1.4(登録商標)、ウェブサーバにはTomcat(登録商標)5.0を含むコンピュータを例示できる。クライアント装置とサーバ装置は同一種類
のパーソナルコンピュータで実現してもよい。情報処理装置200の機能は、CPU13がプログラムを実行することで実現される。このプログラムは、メモリ13あるいは外部記憶装置34にインストールされる。プログラムは、通信部32を通じてネットワークから、あるいは、着脱可能な記憶媒体からインストールされる。したがって、このプログラムは、ネットワークあるいは着脱可能な記憶媒体等を通じて流通される。
A specific example of such an information processing apparatus is a personal computer. Such an information processing apparatus can also be configured using a client apparatus and a server apparatus. Examples of the server device include JSP1.4 (registered trademark), and the web server includes a computer including Tomcat (registered trademark) 5.0. The client device and the server device may be realized by the same type of personal computer. The functions of the information processing apparatus 200 are realized by the CPU 13 executing a program. This program is installed in the memory 13 or the external storage device 34. The program is installed from the network through the communication unit 32 or from a removable storage medium. Therefore, this program is distributed through a network or a removable storage medium.

図10は、第2実施形態に係る情報処理装置200の機能ブロックを例示する図である。情報処理装置200のCPU13は、例えば、メモリ12に実行可能に記憶された命令列を含むコンピュータプログラムを実行し、各機能ブロックの処理を実現する。   FIG. 10 is a diagram illustrating functional blocks of the information processing apparatus 200 according to the second embodiment. For example, the CPU 13 of the information processing apparatus 200 executes a computer program including an instruction sequence stored in the memory 12 so as to be executable, thereby realizing processing of each functional block.

図10は、情報処理装置200の機能が、例えば、入力部11と、出力部14と、処理部40と、通信部32と、外部記憶装置34等によって実現できることを示している。処理部40は、図10に示した、CPU13、メモリ12を含む。また、外部記憶装置34は、処理部40で処理されるデータ、あるいは、処理部40で実行されるコンピュータプログラムAP1等を格納する。なお、情報処理装置200は、図10の構成のうち、少なくとも処理部40に相当するCPU13およびメモリ12を有していればよく、他の構成は適宜設ければよい。   FIG. 10 shows that the functions of the information processing apparatus 200 can be realized by, for example, the input unit 11, the output unit 14, the processing unit 40, the communication unit 32, the external storage device 34, and the like. The processing unit 40 includes the CPU 13 and the memory 12 shown in FIG. The external storage device 34 also stores data processed by the processing unit 40 or a computer program AP1 executed by the processing unit 40. Note that the information processing apparatus 200 only needs to include at least the CPU 13 and the memory 12 corresponding to the processing unit 40 in the configuration of FIG. 10, and other configurations may be provided as appropriate.

処理部40は、アプリケーションプログラムAP1、共通関数ライブラリ46、データ部45を含む。なお、ここでは、図9のメモリ12がデータ部45の例である。   The processing unit 40 includes an application program AP1, a common function library 46, and a data unit 45. Here, the memory 12 in FIG. 9 is an example of the data unit 45.

情報処理装置200のCPU13は、アプリケーションプログラムAP1を実行し、情報処理装置200の機能を提供する。例えば、情報処理装置200は、入力部11、通信部32等からデータの入力を受け付け、加工し、データ部45に格納する。そして、情報処理装置200は、出力部14、あるいは通信部32に接続されるネットワーク上の他の装置にデータを出力する処理を実行する。以下、情報処理装置200のCPU13がアプリケーションプログラムAP1を実行し、処理を行う場合に、単に、アプリケーションプログラムAP1が処理を行うものとして説明する。   The CPU 13 of the information processing apparatus 200 executes the application program AP1 and provides the functions of the information processing apparatus 200. For example, the information processing apparatus 200 receives data from the input unit 11, the communication unit 32, and the like, processes the data, and stores the data in the data unit 45. Then, the information processing device 200 executes a process of outputting data to the output unit 14 or another device on the network connected to the communication unit 32. In the following description, it is assumed that the application program AP1 simply performs processing when the CPU 13 of the information processing apparatus 200 executes the application program AP1 and performs processing.

例えば、アプリケーションプログラムAP1は、出力部14に、ユーザインターフェース画面を表示する。そして、アプリケーションプログラムAP1は、入力部11からのユーザ操作を検出し、情報処理装置200にそのユーザ操作に対応した指令を処理部40のプログラムあるいはハードウェア等に送る。ここで、検出されるユーザ操作は、例えば、各種入力欄へのユーザ入力データの検出、各種ボタンの押下、メニューの選択、コマンドの入力等である。   For example, the application program AP1 displays a user interface screen on the output unit 14. Then, the application program AP1 detects a user operation from the input unit 11, and sends a command corresponding to the user operation to the information processing apparatus 200 to a program or hardware of the processing unit 40. Here, the detected user operation includes, for example, detection of user input data in various input fields, pressing of various buttons, selection of a menu, input of a command, and the like.

さらに、アプリケーションプログラムAP1は、出力部14に表示されたユーザインターフェース画面を通じて、ユーザからの式表現の定義、代数演算式の定義等を受け取り、データ部45に格納する。ただし、式表現の定義、代数演算式の定義等は、テキストエディタ等から入力されることもある。また、例えば、情報処理装置200は、入力部11として、スキャナを接続し、紙面上の式表現の定義、代数演算式等を入力してもよい。また、情報処理装置200は、通信部32を通じて、ネットワーク上の他のコンピュータ等から、式表現の定義、代数演算式等を入力してもよい。また、情報処理装置200は、通信
部32を通じて、ネットワーク上の他のコンピュータ等に、ユーザインターフェース画面を表示してもよい。以上のように、情報処理装置200は、入力部11、出力部14を設けることなく、通信部32を入力部11、出力部14の代わりとして用いてもよい。
Further, the application program AP1 receives the definition of the expression expression from the user, the definition of the algebraic arithmetic expression, and the like through the user interface screen displayed on the output unit 14, and stores them in the data unit 45. However, the definition of the expression expression, the definition of the algebraic arithmetic expression, etc. may be input from a text editor or the like. Further, for example, the information processing apparatus 200 may connect a scanner as the input unit 11 and input a definition of expression expression on paper, an algebraic calculation expression, and the like. In addition, the information processing apparatus 200 may input a definition of an expression expression, an algebraic arithmetic expression, and the like from another computer on the network through the communication unit 32. Further, the information processing apparatus 200 may display a user interface screen on another computer on the network through the communication unit 32. As described above, the information processing apparatus 200 may use the communication unit 32 in place of the input unit 11 and the output unit 14 without providing the input unit 11 and the output unit 14.

さらにまた、アプリケーションプログラムAP1は、出力部14に表示されたユーザインターフェース画面を通じて、ユーザから特定の識別子(例えば、集合ID、トポロジーID等)の指定を受け取る。そして、アプリケーションプログラムAP1は、は、その識別子によって、ユーザが指定した式表現中から、その指定された識別子を含む式表現を抽出する。この処理は、例えば、基本システムで説明した商演算、あるいは、部分集合取得処理により実行される。そして、アプリケーションプログラムAP1は、その指定された識別子を含む式表現に対して種々の演算、例えば、数値計算処理を実行する。数値計算処理は、例えば、通常の四則演算、べき乗の処理等である。   Furthermore, the application program AP1 receives a designation of a specific identifier (for example, set ID, topology ID, etc.) from the user through the user interface screen displayed on the output unit 14. Then, the application program AP1 extracts an expression expression including the specified identifier from the expression expression specified by the user by using the identifier. This process is executed by, for example, the quotient calculation described in the basic system or the subset acquisition process. Then, the application program AP1 executes various operations, for example, numerical calculation processing, on the expression including the designated identifier. The numerical calculation processing is, for example, normal four arithmetic operations, power processing, and the like.

以上のように、本実施形態では、情報処理装置200の主要な機能はCPU13で実行されるコンピュータプログラム、あるいはCPU11と連携する専用ハードウェア回路として実現される。ただし、入力部11、出力部14、処理部40、アプリケーションプログラムAP1その他、図10に示した構成要素は、例えば、それぞれユニット(Unit)という用語で記述してもよい。ここでユニットとは、モジュールあるいはテーブル等を含み、以下のソフトウェアの構成要素(Component)、または、ハードウェアの構成要素(Component)によって実現される。ただし、ユニットが、以下の例に限定されるわけではない。   As described above, in the present embodiment, the main functions of the information processing apparatus 200 are realized as a computer program executed by the CPU 13 or a dedicated hardware circuit that cooperates with the CPU 11. However, the input unit 11, the output unit 14, the processing unit 40, the application program AP1, and other components shown in FIG. 10 may be described in terms of a unit (Unit), for example. Here, the unit includes a module, a table, and the like, and is realized by the following software component (Component) or hardware component (Component). However, the unit is not limited to the following example.

すなわち、ユニットは、例えば、フィールド・プログラマブル・ゲートウェイ(FPGA)、特定用途向け集積回路(ASIC)、ゲートアレイ、論理ゲートの組み合わせ、信号処理回路、アナログ回路、その他の回路網等であって、上記それぞれの構成要素の機能を実現するものを含む。   That is, the unit is, for example, a field programmable gateway (FPGA), an application specific integrated circuit (ASIC), a gate array, a combination of logic gates, a signal processing circuit, an analog circuit, other circuit networks, etc. Includes those that implement the function of each component.

ソフトウェアのユニット、例えば、ソフトウェアモジュールは、例えば、ソフトウェア部品、手続き型言語による部品、オブジェクト指向ソフトウェア部品、クラス部品、タスクとして管理される部品、プロセスとして管理される部品、関数、属性、手続き(プロシジャともいう)、サブルーチン(ソフトウェアルーチンともいう)、プログラムコードの断片・部分、ドライバ、ファームウェア、マイクロコード、データ、データベース、データ構造、テーブル、配列、変数、パラメータ等の構成要素を含む。さらに、これらの構成要素は、1または複数のCPU(Central Processing Unit)、あるいはDSP(Digital Signal Processor)等の処理装置上で実現される。   A software unit, for example, a software module is, for example, a software component, a component in a procedural language, an object-oriented software component, a class component, a component managed as a task, a component managed as a process, a function, an attribute, or a procedure (procedure). Also, it includes components such as subroutines (also referred to as software routines), program code fragments and portions, drivers, firmware, microcode, data, databases, data structures, tables, arrays, variables, parameters, and the like. Further, these components are realized on a processing device such as one or a plurality of CPUs (Central Processing Units) or DSPs (Digital Signal Processors).

ソフトウェアのユニットは、C言語、C++、Java(登録商標)、Visual
Basic(登録商標)または他の多くの言語で記述できる。これらのソフトウェアのユニットは、1または複数の機械(あるいはコンピュータ)読み取り可能な記憶装置、例えば、ダイナミック・ランダム・アクセス・メモリ(DRAM)、スタティック・ランダム・アクセス・メモリ(SRAM)、消去およびプログラム可能なリード・オンリー・メモリ(EEPROMs)、フラッシュメモリ、およびこれらいずれかのメモリを含むメモリカード、磁気ディスク、例えば、ハードディスク、フレキシブルディスク(フロッピー(登録商標)等)、および他の着脱可能なディスク媒体、他の磁気媒体、例えば、テープ、光媒体、例えば、コンパクトディスク(CD)、DVD(Digital Vide Disk,Digital Versatile Disk)、ブルーレイディスク等に格納できる。ただし、ソフトウェアのユニットに含まれる命令は、有線ネットワークカードと有線ネットワーク、あるいは無線カードと無線ネットワークを通じて情報処理装置200で例示される機械、あるいは装置に転送あるいはローディングし、実行できる。そのような転送処理、あるいは、ローディング処理において、データ信号は例えば搬送波に組み込ま
れ(embodied as carrier waves)、有線あるいは無線ネットワークを転送される。ただ
し、データ信号が搬送波によらず、いわゆるベースバンド信号のまま転送される場合もある。
Software units are C, C ++, Java (registered trademark), Visual
Can be written in Basic® or many other languages. These software units are one or more machine (or computer) readable storage devices such as dynamic random access memory (DRAM), static random access memory (SRAM), erasable and programmable Read-only memory (EEPROMs), flash memory, and memory cards, magnetic disks such as hard disks, flexible disks (floppy, etc.), and other removable disk media including any of these memories And can be stored on other magnetic media such as tape, optical media such as compact disc (CD), DVD (Digital Video Disk, Digital Versatile Disc), Blu-ray disc, etc. . However, the instructions included in the software unit can be transferred or loaded to a machine or apparatus exemplified by the information processing apparatus 200 through a wired network card and a wired network, or a wireless card and a wireless network, and executed. In such a transfer process or loading process, the data signal is embedded, for example, in a carrier wave and transferred over a wired or wireless network. However, the data signal may be transferred as a so-called baseband signal regardless of the carrier wave.

以上のような機能を実現するプログラム、命令コード、コードセグメントは、本技術分野の通常のプログラマであれば構成できる。また、上記機能を実現する電気回路網は、本技術分野の通常の回路技術者であれば構成できる。   The program, instruction code, and code segment for realizing the functions as described above can be configured by ordinary programmers in this technical field. An electric circuit network for realizing the above functions can be configured by a normal circuit engineer in this technical field.

(数値処理フロー)
以下、本情報処理装置200が実行する数値処理フローを例示する。図11は、数値因子を明示的に表示しない式表現から数値因子を明示的に表示した式表現である代数演算式に変換する数値因子化処理を例示する図である。以下、例示するフローチャートは、例えば、情報処理装置200のCPU13が、メモリ12に格納されたコンピュータプログラムにより実行する。ただし、以下に述べる処理の少なくとも一部は、情報処理装置200のCPU13がコンピュータプログラムを実行する代わりに、FPGA等を用いた専用のハードウェア回路が実行してもよい。
(Numerical processing flow)
Hereinafter, a numerical processing flow executed by the information processing apparatus 200 will be exemplified. FIG. 11 is a diagram illustrating a numerical factorization process for converting from an expression expression that does not explicitly display numerical factors to an algebraic expression that is an expression expression that explicitly displays numerical factors. Hereinafter, the illustrated flowchart is executed by, for example, the computer program stored in the memory 12 by the CPU 13 of the information processing apparatus 200. However, at least a part of the processing described below may be executed by a dedicated hardware circuit using an FPGA or the like instead of the CPU 13 of the information processing apparatus 200 executing the computer program.

この処理では、情報処理装置200は、数値因子を明示的に表示しない式表現(以下、対象の入力式e1)の入力を受け、数値因子を明示的に表示した式表現(以下、戻り式r)を出力する。ここで、情報処理装置200は、対象の入力式e1と、戻り式rを、例えば、コンピュータプログラムの引数として入出力してもよい。また、情報処理装置200は、図9、図10に示した入力部11および出力部14等を通じて、対象の入力式e1と、戻り式rを入出力してもよい。また、情報処理装置200は、通信部32を介してネットワーク上の他の装置との間で、対象の入力式e1と、戻り式rを入出力してもよい。さらにまた、情報処置装置200は、例えば、外部記憶装置34に格納された入力式e1を読み出し、戻り式rを外部記憶装置34に格納するようにしてもよい。   In this process, the information processing apparatus 200 receives an expression expression that does not explicitly display a numerical factor (hereinafter, the target input expression e1) and receives an expression expression that explicitly displays the numerical factor (hereinafter, a return expression r). ) Is output. Here, the information processing apparatus 200 may input / output the target input expression e1 and the return expression r as arguments of a computer program, for example. Further, the information processing apparatus 200 may input / output the target input expression e1 and the return expression r through the input unit 11 and the output unit 14 illustrated in FIGS. Further, the information processing apparatus 200 may input / output the target input expression e1 and the return expression r to / from other apparatuses on the network via the communication unit 32. Furthermore, for example, the information processing apparatus 200 may read the input formula e1 stored in the external storage device 34 and store the return formula r in the external storage device 34.

また、図12は、情報処理装置200が、入力式e1=3a(b+c)+d{4e+f}を処理するときの情報処理装置200の内部状態を例示する遷移テーブルである。以下の説明で例示される入力式e1、戻り式r等に含まれる式表現は例示である。例えば、図12では、識別子a、b、c、d、e、およびfを含む式表現が例示されるが、情報処理装置200の処理がこのような式表現に限定される訳ではない。   FIG. 12 is a transition table illustrating the internal state of the information processing apparatus 200 when the information processing apparatus 200 processes the input expression e1 = 3a (b + c) + d {4e + f}. Expression expressions included in the input expression e1, the return expression r, and the like exemplified in the following description are examples. For example, FIG. 12 illustrates an expression including identifiers a, b, c, d, e, and f, but the processing of the information processing apparatus 200 is not limited to such an expression.

図11の処理では、情報処理装置200は、まず、対象の入力式e1を入力し、さらに、戻り式rを宣言する(F1)。情報処理装置200は、入力式e1を、例えば、入力コンピュータプログラムの引数として情報処理装置200が取得する。一方、戻り式rを宣言するとは、例えば、情報処理装置200が、メモリ12上に、戻り式rの格納先を確保することをいう。   In the process of FIG. 11, the information processing apparatus 200 first inputs a target input expression e1, and further declares a return expression r (F1). The information processing apparatus 200 acquires the input expression e1 as an argument of the input computer program, for example. On the other hand, declaring the return expression r means, for example, that the information processing apparatus 200 secures the storage destination of the return expression r on the memory 12.

次に、情報処理装置200は、入力式e1がφか否かを判定する(F2)。入力式e1がφでない場合、情報処理装置200は、入力式e1中の始めの項t1を取得し、入力式e1から始めの項t1を削除する。さらに、情報処理装置200は、戻り項t2を宣言する(F3)。   Next, the information processing apparatus 200 determines whether or not the input expression e1 is φ (F2). If the input expression e1 is not φ, the information processing apparatus 200 acquires the first term t1 in the input expression e1 and deletes the first term t1 from the input expression e1. Furthermore, the information processing apparatus 200 declares a return term t2 (F3).

ここで、F1−F3の処理を図12の例によって説明する。ここでは、式の構成を示すため、等号(=)を用いて説明する。ただし、等号は、本実施形態における説明のために用いる記号である。したがって、情報処理装置200の処理は、等号を用いずに実行できる。例えば、以下の加算等の演算は、演算実行前の式を情報処理装置200の第1の引数に対応するメモリ12上の領域に設定し、演算の実行結果を第2の引数に対応するメモリ12上の領域に格納するようにすればよい。なお、宣言された戻り項t2の初期値は、1
(あるいは単位元ε)である。
Here, the processing of F1-F3 will be described with reference to the example of FIG. Here, an equal sign (=) is used to describe the structure of the equation. However, the equal sign is a symbol used for explanation in the present embodiment. Therefore, the processing of the information processing apparatus 200 can be executed without using an equal sign. For example, in the following calculation such as addition, an expression before the calculation is set in an area on the memory 12 corresponding to the first argument of the information processing apparatus 200, and the execution result of the calculation is stored in the memory corresponding to the second argument. 12 may be stored in the area above the area 12. The initial value of the declared return term t2 is 1
(Or unit element ε).

入力式e1=3a(b+3c)+d{4e+f}
始めの項t1=3a(b+3c)
したがって、図12で、始めの項t1を削除した入力式e1は、次の通りである。
Input expression e1 = 3a (b + 3c) + d {4e + f}
First term t1 = 3a (b + 3c)
Therefore, in FIG. 12, the input equation e1 from which the first term t1 is deleted is as follows.

入力式e1=d{4e+f}
次に、図11に戻って説明を継続する。情報処理装置200は、始めの項t1の長さが0か否かを判定する(F4)。なお、始めの項t1の長さが0ということは、始め項t1がφであることと同義である。
Input expression e1 = d {4e + f}
Next, returning to FIG. 11, the description will be continued. The information processing apparatus 200 determines whether the length of the first term t1 is 0 (F4). Note that the length of the first term t1 being 0 is synonymous with the initial term t1 being φ.

そして、始めの項t1の長さが0でない場合、情報処理装置200は、始めの項t1から始めの因子f1を取得し、始めの因子f1を始めの項t1から削除する(F5)。図12の例では、例えば、以下のようになる。   If the length of the first term t1 is not 0, the information processing apparatus 200 acquires the first factor f1 from the first term t1, and deletes the first factor f1 from the first term t1 (F5). In the example of FIG. 12, for example, it is as follows.

始めの因子f1=3a
また、始めの因子f1削除後の始めの項t1は、以下の通りである。
First factor f1 = 3a
Further, the first term t1 after the deletion of the first factor f1 is as follows.

始めの因子t1=(b+3c)
次に情報処理装置200は、始めの因子f1が括弧型か否かを判定する(F6)。因子が括弧型とは、因子である式表現が第1の括弧”()”または第2の括弧”{}”で括られた形式であることをいう。始めの因子が括弧型のとき、情報処理装置200は、括弧内の式表現を再帰処理し、再帰処理した結果を始めの因子f1とする(F8)。ここで、再帰処理とは、コンピュータプログラムの処理では、再帰呼び出しともいい、括弧(”()”または”{}”)内の式表現を入力式e1として、図11の処理を再度実行することをいう。
Initial factor t1 = (b + 3c)
Next, the information processing apparatus 200 determines whether or not the first factor f1 is a bracket type (F6). The factor is a parenthesis type means that an expression expression that is a factor is in a form enclosed by a first parenthesis “()” or a second parenthesis “{}”. When the first factor is a parenthesis type, the information processing apparatus 200 recursively processes the expression in the parenthesis, and sets the result of the recursion as the first factor f1 (F8). Here, the recursive processing is also called recursive calling in the processing of the computer program, and the processing of FIG. 11 is executed again with the expression expression in parentheses ("()" or "{}") as the input expression e1. Say.

F6の判定で、始めの因子f1が括弧型でない場合、情報処理装置200は、因子f1が数字を含むか識別子か否かを判定する(F7)。始めの因子f1が数字を含む識別子でない場合、情報処理装置200は、処理をF10に進める。一方、始めの因子f1が数字を含む識別子である場合、情報処理装置200は、始めの因子f1を数値化し、その結果を始めの因子f1とする(F9)。ここで、因子を数値化するとは、因子である識別子中の数字を数値化することをいう。例えば、始めの因子f1が3aの場合に、数値すると、a×'3'と表される。また、例えば、始めの因子f1が500円の場合には、円×’500
’に変換される。すなわち、数字の部分が数値演算子によって数値であることを明示され、数値識別子に変換される。一方、数字部分以外の部分は、通常の識別子(非数値識別子ともいう)となる。さらにまた、始めの因子f1が1以上の数字の場合には、’0’、’1’、’0123456789’のように変換される。また、始めの因子f1が複数の数字部分を複数含む場合、例えば、012ab345cdf89の場合には、各数字部分をそれぞれ数値識別子に変換
し、非数字識別子と積演算子で結合すればよい。例えば、012ab345cdf89は、ab×’012’×cdf×’345’×’89’のように変換すればよい。また、始めの因子f1が3.1234567890aの場合に、は、a×’3.1234567890’のように数値化すればよい。すなわち、数字部分が整数以外の場合、例えば、小数等の実数の場合には、小数等の実数として数値演算子により数値化すればよい。なお、数字部分と非数字部分を含む識別子の数字部分を数値識別子に変換した場合に、変換された数値識別子と、非数字部分による非数値識別子の順序は、情報処理装置200内の規則、あるいは、処理部40の規則として、例えば、メモリ12、外部記憶装置34に格納しておけばよい。したがって、例えば、f1が3aの場合に、'3'×aのように数値化してもよい。なお、因子が数字を含まない識別子である場合には、数値化したものは、数値化前のものと同一の式表現である。
If it is determined in F6 that the first factor f1 is not a bracket type, the information processing apparatus 200 determines whether the factor f1 includes a number or an identifier (F7). When the first factor f1 is not an identifier including a number, the information processing apparatus 200 advances the process to F10. On the other hand, when the first factor f1 is an identifier including a number, the information processing apparatus 200 digitizes the first factor f1 and sets the result as the first factor f1 (F9). Here, digitizing a factor means digitizing a number in an identifier that is a factor. For example, when the first factor f1 is 3a, a numerical value is represented as a × '3'. Also, for example, when the first factor f1 is 500 yen, the circle x '500
Converted to '. That is, the numerical part is specified as a numerical value by a numerical operator and is converted into a numerical identifier. On the other hand, the part other than the numeric part is a normal identifier (also called a non-numeric identifier). Furthermore, when the first factor f1 is a number greater than or equal to 1, it is converted to '0', '1', '0123456789'. Further, when the first factor f1 includes a plurality of numerical parts, for example, 012ab345cdf89, each numerical part may be converted into a numerical identifier and combined with a non-numeric identifier by a product operator. For example, 012ab345cdf89 may be converted to ab × '012' × cdf × '345' × '89 '. Further, when the first factor f1 is 3.1234567890a, the numerical value may be expressed as a × '3.1234567890'. That is, when the numerical part is other than an integer, for example, when it is a real number such as a decimal, it may be converted into a numerical value by a numerical operator as a real number such as a decimal. When the numeric part of the identifier including the numeric part and the non-numeric part is converted into a numeric identifier, the order of the converted numeric identifier and the non-numeric identifier by the non-numeric part is the rule in the information processing apparatus 200 or For example, the rules of the processing unit 40 may be stored in the memory 12 or the external storage device 34. Therefore, for example, when f1 is 3a, the numerical value may be expressed as '3' × a. When the factor is an identifier that does not include a number, the numerical expression is the same expression as that before the numerical conversion.

次に、情報処理装置200は、数値化した始めの因子f1と戻り項t2との積を取得し、その結果を戻り項t2とする(F10)。そして、情報処理装置10は、制御をF4に戻す。   Next, the information processing apparatus 200 acquires the product of the first factor f1 that has been digitized and the return term t2, and sets the result as the return term t2 (F10). Then, the information processing apparatus 10 returns the control to F4.

例えば、図12の例では、2回目のF4、F5の処理において、始めの項f1=(b+3c)となる。その結果、F7の処理において、再帰処理が実行される。そして、()が数値化され、f1=b+c×'3'が得られる。   For example, in the example of FIG. 12, in the second processing of F4 and F5, the first term f1 = (b + 3c). As a result, recursion processing is executed in the processing of F7. Then, () is digitized to obtain f1 = b + c × '3'.

同様に、入力式e1の第2項の第2因子{4e+f}の処理において、再帰処理が実行され、e×'4'+fが得られる。   Similarly, in the processing of the second factor {4e + f} of the second term of the input expression e1, recursive processing is executed to obtain e × ′ 4 ′ + f.

F4の判定で、始めの項t1の長さが0である場合、始めの項t1についての処理が完了したので、情報処理装置200は、制御をF11に進める。そして、情報処理装置200は、戻り式rと、現在までに処理された戻り項t2との和を取得し、その結果を戻り式rとする(F11)。そして、情報処理装置200は、制御をF2に戻す。   If it is determined in F4 that the length of the first term t1 is 0, the processing for the first term t1 is completed, and the information processing apparatus 200 advances the control to F11. Then, the information processing apparatus 200 acquires the sum of the return expression r and the return term t2 processed so far, and sets the result as the return expression r (F11). Then, the information processing apparatus 200 returns control to F2.

F2の判定で、入力式eがφの場合には、処理対象の入力式が存在しないので、情報処理装置200は、制御をF12に進める。そして、情報処理装置200は、戻り式rを出力し(F12)、処理を終了する。以上の結果、以下の戻り式rが得られる。   If the input expression e is φ in the determination of F2, the information processing apparatus 200 advances the control to F12 because there is no input expression to be processed. Then, the information processing apparatus 200 outputs a return formula r (F12) and ends the process. As a result, the following return equation r is obtained.

r=a×'3'(b+c×'3')+d{e×'4'+f}
図13、図14は、数値計算処理を例示する図である。この処理では、情報処理装置200は、数値計算処理前の入力式e1の入力を受け、数値計算処理後の戻り式rを出力する。
r = a × '3' (b + c × '3') + d {e × '4' + f}
13 and 14 are diagrams illustrating the numerical calculation process. In this process, the information processing apparatus 200 receives an input of the input expression e1 before the numerical calculation process, and outputs a return expression r after the numerical calculation process.

また、図15A、図15Bは、情報処理装置200が、入力式e1=(a×b×'20
0'×/×c×c'3'+a×b×'300'×/×c×c×'4')/×e×e×'3'+(a
×b×'180'×/×c×c×'4')/×d×d×'2'を処理するときの情報処理装置200の内部状態を例示する遷移テーブルである。
15A and 15B show that the information processing apparatus 200 uses the input expression e1 = (a × b × ′20
0 ′ × / × c × c′3 ′ + a × b × ′ 300 ′ × / × c × c × ′ 4 ′) / × e × e × ′ 3 ′ + (a
It is a transition table which illustrates the internal state of the information processing apparatus 200 when processing * b * '180' * / * c * c * '4') / * d * d * '2'.

図13、図14の処理では、情報処理装置200は、処理対象の入力式e1を入力し、式r1、および戻り式r2を宣言する(F20)。ここで、式r1は、作業用の記憶領域を示すパラメータである。   In the processes of FIGS. 13 and 14, the information processing apparatus 200 receives the input expression e1 to be processed, and declares an expression r1 and a return expression r2 (F20). Here, the expression r1 is a parameter indicating a working storage area.

そして、情報処理装置200は、入力式e1がφか否かを判定する(F21)。入力式e1がφでない場合、情報処理装置200は、始めの項t1を取得し、入力式e1から始めの項t1を削除する。さらに、情報処理装置200は、戻り項t2を宣言する(F22)。なお、戻り項t2は、1(単位元ε)に、初期化する。   Then, the information processing apparatus 200 determines whether or not the input expression e1 is φ (F21). If the input expression e1 is not φ, the information processing apparatus 200 acquires the first term t1 and deletes the first term t1 from the input expression e1. Further, the information processing apparatus 200 declares a return term t2 (F22). The return term t2 is initialized to 1 (unit element ε).

そして、情報処理装置200は、始めの項t1の積演算を実行し、積演算の結果をt1とする(F23)。ここで、始めの項t1の積演算とは、始めの項t1に含まれる因子間において、数値が明示されている因子間で乗算を実行することをいう。ただし、F23の処理では、始めの項t1に括弧が含まれている場合には、括弧を1つの因子として取り扱う。また、因子中に、除算を示す記号"/"が含まれる場合には、記号"/"の前後の数値('N')については除算を実行する。記号"/"は、除算演算子の一例である。   Then, the information processing apparatus 200 executes the product operation of the first term t1, and sets the result of the product operation to t1 (F23). Here, the product operation of the first term t1 means that multiplication is performed between the factors included in the first term t1 between the factors whose numerical values are clearly specified. However, in the process of F23, when a parenthesis is included in the first term t1, the parenthesis is handled as one factor. If the factor includes a symbol “/” indicating division, division is performed for numerical values (“N”) before and after the symbol “/”. The symbol “/” is an example of a division operator.

また、記号"/"の前後に、数値以外の共通の識別子がある場合には、記号"/"の前後の共通の識別子を削除する。つまり、情報処理装置200は、いわゆる約分を実行する。   If there is a common identifier other than a numerical value before and after the symbol “/”, the common identifier before and after the symbol “/” is deleted. That is, the information processing apparatus 200 executes so-called reduction.

また、始めの項t1に含まれる2つの因子に共通する識別子がべき乗で記述されている
場合には、情報処理装置200は、指数部分の加算を実行する。また、記号"/"の前後の2つの因子に共通する識別子がべき乗で記述されている場合には、情報処理装置200は、指数部分の減算を実行する。
When an identifier common to the two factors included in the first term t1 is described by a power, the information processing apparatus 200 performs addition of the exponent part. When an identifier common to the two factors before and after the symbol “/” is described by a power, the information processing apparatus 200 performs subtraction of the exponent part.

例えば、図15Aの例では、以下の通りである。
始めの項t1=(a×b×'200'×/×c×c'3'+a×b×'300'×/×c×c×'4')/×e×e×'3'
始めの項t1の因子は、()、/×e×e、×'3'に区分される。このうち、/×eと×eとが約分される。その結果は、以下の通りである。
For example, in the example of FIG.
First term t1 = (a * b * '200' * / * c * c'3 '+ a * b *' 300 '* / * c * c *' 4 ') / * e * e *' 3 '
The factor of the first term t1 is divided into (), / × e × e, and x′3 ′. Of these, / xe and xe are reduced. The results are as follows.

始めの項t1=(a×b×'200'×/×c×c'3'+a×b×'300'×/×c×c×'4')×'3'
次に、情報処理装置200は、始めの項t1に括弧因子があり、かつ、始めの項t1の長さが0でない、という条件が満たされるか否かを判定する(F24)。F24の条件が満たされる場合、情報処理装置200は、始めの項t1から始めの因子f1を取得する。そして、情報処理装置200は、始めの項t1から、始めの因子f1を削除する(F25)。F25−F28の処理は、始めの項t1中の括弧を処理する処理である。
First term t1 = (a × b × '200' × / × c × c'3 '+ a × b ×' 300 '× / × c × c ×' 4 ') ×' 3 '
Next, the information processing apparatus 200 determines whether the condition that the first term t1 has a parenthesis factor and the length of the first term t1 is not 0 is satisfied (F24). When the condition of F24 is satisfied, the information processing apparatus 200 acquires the first factor f1 from the first term t1. Then, the information processing apparatus 200 deletes the first factor f1 from the first term t1 (F25). The processing from F25 to F28 is processing for processing the parentheses in the first term t1.

図15Aの例では、以下の通りである。
f1=(a×b×'200'×/×c×c'3'+a×b×'300'×/×c×c×'4')
t1='3'
そして、情報処理装置200は、始めの因子f1が括弧型か否かを判定する(F26)。始めの因子f1が括弧型の場合、情報処理装置200は、括弧内の式表現に再帰処理を実行し、その結果をf1とする(F27)。図15A、図15Bの例では、f1=a×b×'600'+a×b×'1200'=a×b×'1800'が得られる(図15BのL1参照)。
In the example of FIG. 15A, it is as follows.
f1 = (a × b × '200' × / × c × c'3 '+ a × b ×' 300 '× / × c × c ×' 4 ')
t1 = '3'
Then, the information processing apparatus 200 determines whether or not the first factor f1 is a bracket type (F26). When the first factor f1 is a parenthesis type, the information processing apparatus 200 performs a recursive process on the expression in the parentheses, and sets the result as f1 (F27). In the example of FIGS. 15A and 15B, f1 = a × b × ′ 600 ′ + a × b × ′ 1200 ′ = a × b × ′ 1800 ′ is obtained (see L1 in FIG. 15B).

一方、F26の判定で、始めの因子f1が括弧型でない場合、情報処理装置200は、制御をF28に進める。そして、情報処理装置200は、式t2と始めの因子f1との積演算を実行し、その結果を式t2とする(F28)。そして、情報処理装置200は、制御をF24に戻す。   On the other hand, if it is determined in F26 that the first factor f1 is not a bracket type, the information processing apparatus 200 advances the control to F28. Then, the information processing apparatus 200 performs a product operation of the expression t2 and the first factor f1, and sets the result as an expression t2 (F28). Then, the information processing apparatus 200 returns control to F24.

積演算は、F23の場合と同様、数値と数値の乗算である。F28の処理でも、F23の処理と同様、乗算される戻りの項t2に対して、始めの因子f1の先頭に除算を示す記号/が指定されている場合には、数値間の除算が実行される。また、F28の処理で、乗算される戻りの項t2および始めの因子f1の少なくとも一方にべき乗の表現が含まれている場合には、べき乗の底が共通である指数間で指数部分の数値の加算が実行される。   As in the case of F23, the product operation is a multiplication of a numerical value and a numerical value. In the process of F28, similarly to the process of F23, when a symbol / indicating division is specified at the head of the first factor f1 for the return term t2 to be multiplied, division between numerical values is executed. The In addition, in the process of F28, when a power expression is included in at least one of the return term t2 and the first factor f1 to be multiplied, the numerical value of the exponent part between the exponents having a common power base Addition is performed.

「乗算される戻りの項t2および始めの因子f1の少なくとも一方」としたのは、べき乗表現ではない因子f1については、底がf1であり指数が1であるべき乗とみなすことで、必ずしも戻りの項t2および始めの因子f1の両方がべき乗でなくても、べき乗の演算が実行できるからである。   “At least one of the return term t2 to be multiplied and the first factor f1” is considered as a factor f1 that is not a power expression. This is because even if both the term t2 and the first factor f1 are not powers, a power operation can be performed.

また、F28の処理で、乗算される戻りの項t2および始めの因子f1の少なくとも一方にべき乗の表現が含まれ、始めの因子f1の先頭に除算を示す記号/が指定されている場合には、べき乗の底が共通である指数間で指数部分の数値の減算が実行される。   Further, in the process of F28, when at least one of the return term t2 to be multiplied and the first factor f1 includes a power expression, and the symbol / indicating the division is specified at the beginning of the first factor f1. The numerical value of the exponent part is subtracted between the exponents having the same power base.

さらにまた、F28の処理で、始めの因子f1の先頭に除算を示す記号/が指定され乗算され、戻りの項t2および始めの因子f1の双方に共通する識別子が含まれている場合には、共通の識別子が削除される。すなわち、いわゆる約分が実行される。情報処理装置
200のCPU13は、代数演算部の一例として、FF23−28の処理を実行する。
Furthermore, in the process of F28, when the symbol / indicating the division is designated and multiplied at the head of the first factor f1, and the identifier common to both the return term t2 and the first factor f1 is included, The common identifier is deleted. That is, so-called reduction is executed. The CPU 13 of the information processing device 200 executes the processing of FF 23-28 as an example of an algebra calculation unit.

一方、F24の判定で、始めの項t1に括弧因子がない場合、あるいは、始めの項t1の長さが0である場合には、情報処理装置200は、制御をF29に進める。そして、情報処理装置200は、式r1と戻り項t2の和を取得し、その結果を式r1とする(F29)。   On the other hand, if it is determined in F24 that there is no parenthesis factor in the first term t1, or if the length of the first term t1 is 0, the information processing apparatus 200 advances the control to F29. The information processing apparatus 200 acquires the sum of the expression r1 and the return term t2, and sets the result as the expression r1 (F29).

図15A、図15Bの処理例では、以上のF22−F29の処理を再帰的に事項した結果、戻りの項t2=a×b×’1800’、始めの項f1=’3’となり、戻りの項t2=a
×b×’5400’、r1=a×b×’5400’となる(図15BのL2参照)。
15A and 15B, as a result of recursively performing the processes of F22 to F29, the return term t2 = a × b × '1800' and the first term f1 = '3' are obtained. The term t2 = a
× b × '5400', r1 = a × b × '5400' (see L2 in FIG. 15B).

また、F21の判定で、入力式e1の長さが0である場合に、情報処理装置200は、制御を図14のF30に進める。そして、情報処理装置200は、式r1がφであるか否かを判定する(F30)。   If the length of the input expression e1 is 0 in the determination of F21, the information processing apparatus 200 advances the control to F30 in FIG. Then, the information processing apparatus 200 determines whether the expression r1 is φ (F30).

そして、式r1がφでない場合、式r1から始めの項t1を取得し、項t1を式r1から削除する(F31)。次に、情報処理装置200は、式r1中に、数値部分以外の部分について、始めの項t1と等しい他の項があるか否かを判定する(F32)。   If the expression r1 is not φ, the first term t1 is acquired from the expression r1, and the term t1 is deleted from the expression r1 (F31). Next, the information processing apparatus 200 determines whether there is another term equal to the first term t1 in the part other than the numerical value part in the expression r1 (F32).

例えば、図15Bの例では、2回の再帰処理が終了した後の式の状態(図15BのL3)においては、式r1は以下の通りである。   For example, in the example of FIG. 15B, the expression r1 is as follows in the state of the expression (L3 in FIG. 15B) after the two recursive processes are completed.

r1=a×b×'5400'+a×b×'1440'
そして、式r1中に、数値部分以外の部分について、始めの項t1と等しい他の項がある場合、情報処理装置200は、数値以外の部分が始めの項t1と等しい他の項を式r1から削除する。さらに、数値以外の部分が始めの項t1と等しい他の項と、始めの項t1との間で、数値部分の和演算(加算)を実行する。そして、和演算の結果をt1とする(F33)。そして、情報処理装置200は、戻り式r2と始めの項t1との和を取得し、その結果を戻り式r2とする(F34)。そして、情報処理装置200は、制御をF30に戻す。このとき、戻りの式r2は、以下の通りである(図15BのL4参照)。
r1 = a × b × '5400' + a × b × '1440'
If there is another term in the expression r1 that is equal to the first term t1 for the part other than the numerical value part, the information processing apparatus 200 sets the other term that is equal to the first term t1 in the part other than the numerical value to the expression r1. Delete from. Furthermore, the sum operation (addition) of the numerical value part is executed between the other term in which the part other than the numerical value is equal to the first term t1 and the first term t1. The result of the sum operation is set to t1 (F33). The information processing apparatus 200 acquires the sum of the return expression r2 and the first term t1, and sets the result as the return expression r2 (F34). Then, the information processing apparatus 200 returns the control to F30. At this time, the return equation r2 is as follows (see L4 in FIG. 15B).

r2=a×b×'6840'
F30の判定で、式r1がφになると、情報処理装置200は、制御をF35に進める。そして、情報処理装置200は、戻り式r2を出力する(F35)。
r2 = a × b × '6840'
If the expression r1 becomes φ in the determination of F30, the information processing apparatus 200 advances the control to F35. Then, the information processing apparatus 200 outputs a return formula r2 (F35).

図16は、識別子の置換処理を例示する図である。この処理では、情報処理装置200は、数値計算処理前の入力式e1と、置換情報e2の入力を受け、識別子置換後の戻り式rを出力する。また、図17は、情報処理装置200が、入力式e1=A×/(B×C)を処理するときの情報処理装置200の内部状態を例示する遷移テーブルである。   FIG. 16 is a diagram illustrating an identifier replacement process. In this process, the information processing apparatus 200 receives the input expression e1 before the numerical calculation process and the replacement information e2 and outputs the return expression r after the identifier replacement. FIG. 17 is a transition table illustrating the internal state of the information processing apparatus 200 when the information processing apparatus 200 processes the input expression e1 = A × / (B × C).

置換情報は、置換前の式表現と置換後の式表現の組みを定義する。例えば、A=aという置換情報は、式表現Aを式表現aに置換することを指定する。置換情報として複数の置換の指定を定義してよい。例えば、図17に示す置換情報e2として、A=a+B=b+C=cのように、3つの置換の指定がなされている。この指定では、Aはaに置換され、Bはbに置換され、Cはcに置換される。   The replacement information defines a combination of the expression expression before replacement and the expression expression after replacement. For example, the replacement information A = a specifies that the expression A is replaced with the expression a. A plurality of replacement specifications may be defined as replacement information. For example, as the replacement information e2 shown in FIG. 17, three replacements are designated as A = a + B = b + C = c. In this designation, A is replaced with a, B is replaced with b, and C is replaced with c.

置換処理の用途は、例えば、式表現で数量を表現する場合の単位の変換を例示できる。例えば、ミリメートルで記述された式表現をセンチメートル、メートルのように長さを換算する場合である。その他、面積、体積、重量、角度、時間、速度、力、エネルギー、熱量等の様々な物理量、あるいは情報量等の単位の置換が可能である。   As an application of the replacement process, for example, conversion of units when a quantity is expressed by an expression expression can be exemplified. For example, this is a case where the expression expressed in millimeters is converted into lengths such as centimeters and meters. In addition, various physical quantities such as area, volume, weight, angle, time, speed, force, energy, and quantity of heat, or units such as information quantity can be replaced.

図16の処理では、情報処理装置200は、入力式e1、置換情報e2を入力する(F40)。そして、情報処理装置200は、入力式e1が0であるか、否かを判定する(F41)。   In the process of FIG. 16, the information processing apparatus 200 inputs the input expression e1 and the replacement information e2 (F40). Then, the information processing apparatus 200 determines whether or not the input expression e1 is 0 (F41).

入力式e1が0でない場合、情報処理装置200は、始めの項t1を取得し、入力式e1から始めの項t1を削除する。さらに、情報処理装置200は、戻り項t2を宣言する(F42)。戻り項t2の初期値は1(単位元ε)とする。   When the input formula e1 is not 0, the information processing apparatus 200 acquires the first term t1 and deletes the first term t1 from the input formula e1. Furthermore, the information processing apparatus 200 declares a return term t2 (F42). The initial value of the return term t2 is 1 (unit element ε).

次に、情報処理装置200は、始めの項t1の長さが0であるか否かを判定する(F43)。始めの項t1の長さが0でない場合、情報処理装置200は、始めの項t1から始めの因子f1を取得し、始めの項t1から始めの因子f1を削除する(F44)。   Next, the information processing apparatus 200 determines whether or not the length of the first term t1 is 0 (F43). If the length of the first term t1 is not 0, the information processing apparatus 200 acquires the first factor f1 from the first term t1, and deletes the first factor f1 from the first term t1 (F44).

次に、情報処理装置200は、始めの因子f1が括弧であるか否かを判定する(F45)。始めの因子f1が括弧型である場合に、情報処理装置200は、括弧内の式表現について、置換処理を再帰処理として実行し、再帰処理の結果を括弧内に入れて始めの項f1とする(F47)。そして、情報処理装置200は、制御をF48に進める。   Next, the information processing apparatus 200 determines whether or not the first factor f1 is a parenthesis (F45). When the first factor f1 is a parenthesis type, the information processing apparatus 200 executes the replacement process as a recursive process for the expression expression in the parentheses, and puts the result of the recursive process in the parentheses as the first term f1. (F47). Then, the information processing apparatus 200 advances the control to F48.

一方、F45の判定で、因子が括弧型でない場合、情報処理装置200は、始めの因子f1が識別子であって、置換情報で指定されている識別子か否かを判定する(F46)。始めの因子f1が識別子であって、置換情報で指定されている識別子である場合、情報処理装置200は、置換情報に基づき、置換前の識別子を置換後の識別子に置換する。そして、情報処理装置200は、戻りの項t2と置換した結果との積を取得し、取得した積を戻りの項t2とする(F48)。そして、情報処理装置200は、制御をF43に戻す。なお、F46の判定で、始めの因子f1が置換情報で指定された識別子でない場合も、情報処理装置200は、制御をF43に戻す。   On the other hand, if the factor is not a parenthesis type in F45, the information processing apparatus 200 determines whether or not the first factor f1 is an identifier and is an identifier specified by the replacement information (F46). When the first factor f1 is an identifier and is an identifier specified by the replacement information, the information processing apparatus 200 replaces the identifier before replacement with the identifier after replacement based on the replacement information. The information processing apparatus 200 acquires the product of the return term t2 and the replacement result, and sets the acquired product as the return term t2 (F48). Then, the information processing apparatus 200 returns the control to F43. Note that, in the determination of F46, also when the first factor f1 is not the identifier specified by the replacement information, the information processing apparatus 200 returns the control to F43.

また、F43の判定で、始めの項t1の長さが0である場合、情報処理装置200は、制御をF49に進める。そして、情報処理装置200は、戻り式rと戻りの項t2との積を取得し、取得した積を戻り式rとする(F49)。そして、情報処理装置200は、制御をF41に戻す。   If the length of the first term t1 is 0 in the determination of F43, the information processing apparatus 200 advances the control to F49. Then, the information processing apparatus 200 acquires the product of the return expression r and the return term t2, and sets the acquired product as the return expression r (F49). Then, the information processing apparatus 200 returns control to F41.

さらに、F41の判定で、入力式e1がφである場合に、情報処理装置200は、制御をF50に進める。そして、情報処理装置200は、戻り式rを出力する(F50)。   Furthermore, when the input expression e1 is φ in the determination of F41, the information processing apparatus 200 advances the control to F50. Then, the information processing apparatus 200 outputs a return formula r (F50).

例えば、図17の例では、e1=A×/(B×C)について、置換情報A=a+B=b+C=cが指定されている。この場合、入力式e1には、項が1つだけ含まれている。したがって、始めの項t1=A×/(B×C)を取得すると、入力式は、e1=φとなる。   For example, in the example of FIG. 17, replacement information A = a + B = b + C = c is designated for e1 = A × / (B × C). In this case, the input expression e1 includes only one term. Therefore, when the first term t1 = A × / (B × C) is acquired, the input equation is e1 = φ.

さらに、始めの項t1中で、始めの因子f1=Aを所得すると、t1=/(B×C)となる。そして、始めの因子f1は、置換情報A=aによって、f1=aに置換される。さらに、戻りの項t2=aとなる。   Further, when the first factor f1 = A is obtained in the first term t1, t1 = / (B × C). Then, the first factor f1 is replaced with f1 = a by the replacement information A = a. Further, the return term t2 = a.

次に、/が始めの因子として取得され、置換されることなく戻りの項t2と積演算され、t2=a×/となる。   Next, / is obtained as the first factor and is multiplied with the return term t2 without being replaced, so that t2 = a × /.

同様に、順次、始めの項f1として、(B×C)が取得される。(B×C)のうち、括弧内の式表現に置換処理が再帰処理として実行される。その結果、B、およびCがそれぞれ取得され、順次置換されて戻りの項t2と積演算される。その結果、t2=a×/(b×c)となる。   Similarly, (B × C) is sequentially acquired as the first term f1. Of (B × C), the replacement processing is executed as recursion processing for the expression in parentheses. As a result, B and C are acquired, sequentially replaced, and multiplied by the return term t2. As a result, t2 = a * / (b * c).

図18は、フィルタ処理を例示する図である。この処理では、情報処理装置200は、数値計算処理前の入力式e1と、フィルタ識別子e2の入力を受け、識別子置換後の戻り式rを出力する。また、図19A、図19Bは、情報処理装置200が、入力式e1をフィルタ指定b+c+d+/+'[0...9]'で処理するときの情報処理装置200の内部状態を例示する遷移テーブルである。ここで、入力式e1=a×(b×c×'200'×/×d×d×'3')/×e×e×'3'+f×(b×c×'180'×/×d×d×'4')/×g×g×'2'である。   FIG. 18 is a diagram illustrating filter processing. In this process, the information processing apparatus 200 receives the input expression e1 before the numerical calculation process and the filter identifier e2 and outputs the return expression r after the identifier replacement. 19A and 19B, the information processing apparatus 200 converts the input expression e1 into the filter designation b + c + d + / + '[0. . . 9] ′ is a transition table illustrating the internal state of the information processing apparatus 200 when processing is performed. Here, the input formula e1 = a * (b * c * '200' * / * d * d * '3') / * e * e * '3' + f * (b * c * '180' * / * d * d * '4') / * g * g * '2'.

ここで、フィルタ識別子e2には、入力式から削除されない識別子が指定される。複数種類の識別子を削除する場合には、削除する複数の識別子を和演算で組み合わせて指定する。また、[0...9]は、数字0から9までを要素する集合を説明するため便宜的に導入した形式である。したがって、数字の指定は、[0...9]に限られず、フィルタ指定する数字を個々に列挙してもよい。また、集合の指定が[]に限定される訳でもない。   Here, an identifier that is not deleted from the input expression is designated as the filter identifier e2. When deleting a plurality of types of identifiers, a plurality of identifiers to be deleted are specified in combination by a sum operation. [0. . . 9] is a format introduced for the sake of convenience in order to describe a set having elements 0 to 9. Therefore, the designation of numbers is [0. . . The number to be specified for the filter may be individually listed. Moreover, the designation of the set is not limited to [].

フィルタ処理の用途は、式表現中で複数の項がそれぞれ異なる因子を含む場合に、例えば、項と項との間の因子の違い無視して式表現を処理したいときに、因子の除去に用いられる。項と項との間の因子の違い無視して式表現を処理したいときとは、例えば、式表現が商品ごとの売り上げの加算値を表す場合に、商品の違いを無視して、売り上げの総計を算出したいときである。この場合に、例えば、商品の種類を示す識別子×商品ごとの売り上げという形式で項が記述され、各商品を加算して形式で式表現が作成される。この場合に、商品の種類を示す識別子を除外して、フィルタ処理で削除することで総計を求めることができる。   The purpose of filtering is to remove factors when multiple expressions contain different factors in the expression, for example, when you want to process the expression while ignoring the differences between the terms. It is done. When you want to process an expression expression ignoring the difference in terms between terms, for example, if the expression expression represents the added value of sales for each product, ignore the difference between the products and calculate the total sales. Is when it is desired to calculate In this case, for example, a term is described in the format of identifier indicating the type of product × sales for each product, and each product is added to create a formula expression in the format. In this case, it is possible to obtain the total by excluding the identifier indicating the type of product and deleting it by filtering.

図18の処理では、情報処理装置200は、入力式e1とフィルタ識別子e2を入力する(F60)。そして、情報処理装置200は、入力式e1が0であるか、否かを判定する(F61)。   In the process of FIG. 18, the information processing apparatus 200 inputs the input expression e1 and the filter identifier e2 (F60). Then, the information processing apparatus 200 determines whether or not the input expression e1 is 0 (F61).

入力式e1が0でない場合、情報処理装置200は、始めの項t1を取得し、入力式e1から始めの項t1を削除する。さらに、情報処理装置200は、戻り項t2を宣言する(F62)。戻り項t2の初期値は1(単位元ε)とする。   When the input formula e1 is not 0, the information processing apparatus 200 acquires the first term t1 and deletes the first term t1 from the input formula e1. Further, the information processing apparatus 200 declares a return term t2 (F62). The initial value of the return term t2 is 1 (unit element ε).

次に、情報処理装置200は、始めの項t1の長さが0であるか否かを判定する(F63)。始めの項t1の長さが0でない場合、情報処理装置200は、始めの項t1から始めの因子f1を取得し、始めの項t1から始めの因子f1を削除する(F64)。   Next, the information processing apparatus 200 determines whether or not the length of the first term t1 is 0 (F63). If the length of the first term t1 is not 0, the information processing apparatus 200 acquires the first factor f1 from the first term t1, and deletes the first factor f1 from the first term t1 (F64).

次に、情報処理装置200は、始めの因子f1が括弧であるか否かを判定する(F65)。始めの因子f1が括弧型である場合に、情報処理装置200は、括弧内の式表現について、置換処理を再帰処理として実行し、再帰処理の結果を括弧内に入れて始めの項f1とする(F67)。そして、情報処理装置200は、制御をF68に進める。   Next, the information processing apparatus 200 determines whether or not the first factor f1 is a parenthesis (F65). When the first factor f1 is a parenthesis type, the information processing apparatus 200 executes the replacement process as a recursive process for the expression expression in the parentheses, and puts the result of the recursive process in the parentheses as the first term f1. (F67). Then, the information processing apparatus 200 advances the control to F68.

一方、F65の判定で、因子が括弧型でない場合、情報処理装置200は、始めの因子f1が識別子であって、フィルタ識別子e2で指定されている識別子か否かを判定する(F66)。始めの因子f1が識別子であって、フィルタ識別子e2で指定されている識別子である場合、情報処理装置200は、始めの項t1と始めの因子f1との積を取得し、取得した積を戻りの項t2とする(F68)。そして、情報処理装置200は、制御をF63に戻す。   On the other hand, if the factor is not a bracket type in the determination of F65, the information processing apparatus 200 determines whether or not the first factor f1 is an identifier and is an identifier specified by the filter identifier e2 (F66). When the first factor f1 is an identifier and is an identifier specified by the filter identifier e2, the information processing apparatus 200 acquires the product of the first term t1 and the first factor f1, and returns the acquired product. Term t2 (F68). Then, the information processing apparatus 200 returns the control to F63.

また、F66の判定で、始めの因子f1が置換情報で指定された識別子でないには、情報処理装置200は、そのまま制御をF63に戻す。その結果、戻り項2に始めの因子f
1の積を追加されないことになる。
If it is determined in F66 that the first factor f1 is not the identifier specified by the replacement information, the information processing apparatus 200 returns the control to F63 as it is. As a result, the return factor 2 has the first factor f
The product of 1 will not be added.

また、F63の判定で、始めの項t1の長さが0である場合、情報処理装置200は、制御をF69に進める。そして、情報処理装置200は、戻り式rと戻りの項t2との積を取得し、取得した積を戻り式rとする(F69)。そして、情報処理装置200は、制御をF61に戻す。   If the length of the first term t1 is 0 in the determination of F63, the information processing apparatus 200 advances the control to F69. The information processing apparatus 200 acquires the product of the return expression r and the return term t2, and sets the acquired product as the return expression r (F69). Then, the information processing apparatus 200 returns the control to F61.

さらに、F61の判定で、入力式e1がφである場合に、情報処理装置200は、制御をF70に進める。そして、情報処理装置200は、戻り式rを出力する(F70)。   Further, in the determination of F61, when the input expression e1 is φ, the information processing apparatus 200 advances the control to F70. Then, the information processing apparatus 200 outputs a return formula r (F70).

例えば、図19A、図19Bでは、以下のように処理されている。
入力式e1=a×(b×c×'200'×/×d×d×'3')/×e×e×'3'+f×(b×c×'180'×/×d×d×'4')/×g×g×'2'に対して、
t1=a×(b×c×'200'×/×d×d×'3')/×e×e×'3'
f1=aとなる。
For example, in FIG. 19A and FIG. 19B, the following processing is performed.
Input formula e1 = a * (b * c * '200' * / * d * d * '3') / * e * e * '3' + f * (b * c * '180' * / * d * d × '4') / × g × g × '2'
t1 = a * (b * c * '200' * / * d * d * '3') / * e * e * '3'
f1 = a.

しかし、識別子aは、フィルタ識別子に指定されていないので、戻り項t2に和演算されない。   However, since the identifier a is not designated as the filter identifier, it is not summed with the return term t2.

次に、t1=(b×c×'200'×/×d×d'×3')/×e×e×'3'
f1=(b×c×'200'×/×d×d×'3')となる。f1は、再帰処理される。そして、括弧内の識別子のうち、識別子eは、フィルタ識別子で指定されていない。その結果、e以外の因子が維持される。したがって、戻りの項t2=b×c×'200'×/×d×d×'3'となる。始めの項t1が
t1=f×(b×c×'180'×/×d×d×'4')/×g×g×'2'についても同様である。この場合には、識別子f、g以外の識別子が維持される。以上の結果、戻りの式r2は、以下の通りとなる。
Next, t1 = (b × c × ′ 200 ′ × / × d × d ′ × 3 ′) / × e × e × ′ 3 ′
f1 = (b * c * '200' * / * d * d * '3'). f1 is recursively processed. Of the identifiers in parentheses, the identifier e is not specified by the filter identifier. As a result, factors other than e are maintained. Therefore, the return term t2 = b × c × '200' × / × d × d × '3'. The same applies to the first term t1, where t1 = f × (b × c × '180' × / × d × d × '4') / × g × g × '2'. In this case, identifiers other than the identifiers f and g are maintained. As a result, the return formula r2 is as follows.

r2=b×c×'200'×/×d×d×'3'+b×c×'180'×/×d×d×'4'×'2'   r2 = b × c × '200' × / × d × d × '3' + b × c × '180' × / × d × d × '4' × '2'

以上述べたように、本実施形態の情報処理装置200によれば、式表現中の数値の記号を明示的な数値に変換する。そして、式表現中で、数値と数値以外の部分を区別して、加算、積、乗算、べき乗等の演算を実行できる。その結果、例えば、事物の識別子と、その事物に関連するする量を積演算し、複数種類の事物に関連する数量を事物の種類ごとに数式で加算できるようになる。また、減算は、負数の加算で実現できる。例えば、商品の売り上げ、商品サービスの見積もり額、作業の工数等、様々な事物と事物に関連する量を管理できる。例えば、売り上げ=商品1×売り上げ額+商品2×売り上げ額+・・・のように、記述し、同一商品ごとに、売り上げをまとめることができる。   As described above, according to the information processing apparatus 200 of the present embodiment, numerical symbols in the expression are converted into explicit numerical values. Then, in the expression expression, operations such as addition, product, multiplication, and exponentiation can be executed by distinguishing numerical values and portions other than numerical values. As a result, for example, the product identifier is multiplied by the quantity related to the thing, and the quantity related to a plurality of kinds of things can be added mathematically for each kind of thing. Subtraction can be realized by adding a negative number. For example, it is possible to manage various things and quantities related to things, such as sales of goods, estimated price of goods service, and man-hours for work. For example, sales = product 1 × sales amount + product 2 × sales amount +..., And sales can be collected for each same product.

また、例えば、除算を表す識別子"/"を導入することにより、除算を表す識別子"/"の前後で、共通の識別子を削除し、いわゆる約分を実行できる。例えば、売り上げ=商品1×'50'×YEN/個×個×'10'+・・・のように、単価と個数で示される売り上げは、売り上げ=商品1×'50'×YEN×'10'+・・・=商品1×'500'×YEN+・・・のよう
に、簡略化した売り上げの式表現に変更できる。
Also, for example, by introducing an identifier “/” representing division, a common identifier can be deleted before and after the identifier “/” representing division, and so-called reduction can be executed. For example, sales = product 1 × '50' × YEN / piece × piece × '10' +... Sales indicated by unit price and quantity are sales = product 1 × '50' × YEN × '10 It can be changed to a simplified expression expression of sales like “+... = Product 1 ד 500 ”× YEN +.

また、例えば、べき乗を示す式表現を導入することで、共通の識別子をそれぞれ底とするべき乗同士の乗算または除算を指数同士の加算、減算として処理できる。   In addition, for example, by introducing an expression representing a power, multiplication or division of powers each having a common identifier as a base can be processed as addition or subtraction of exponents.

さらに、本情報処理装置200は、図16のような置換関数の処理によって、式表現中
の項、因子等を置換し、例えば、物理量等の単位換算を実行できる。さらに、本情報処理装置200は、図18のようなフィルタ関数の処理によって、事物の数量を記述した式表現中で、不要な因子を削除することで、複数種類の事物の相違を無視した合計値の算出を実行できる。
Furthermore, the information processing apparatus 200 can replace terms, factors, and the like in the expression expression by the processing of the replacement function as shown in FIG. 16, and can execute unit conversion of physical quantities, for example. Furthermore, the information processing apparatus 200 eliminates unnecessary factors in the expression expressing the quantity of things by the filter function processing as shown in FIG. Value calculation can be performed.

情報処理装置200は、以上のような処理を従来のようなデータ構造が固定されたデータベースによることなく、柔軟な式表現の記述の対して実行できる。その結果、情報処理装置200は、例えば、管理対象の事物に関する情報を極めて柔軟な形式でメモリ12、外部記憶装置34等に保持する一方、管理対象に要求される様々な情報処理機能を実現できる。   The information processing apparatus 200 can execute the above-described processing on flexible expression expression descriptions without using a conventional database having a fixed data structure. As a result, for example, the information processing apparatus 200 can hold various information processing functions required for the management target while holding information related to the management target in the memory 12, the external storage device 34, etc. in a very flexible format. .

上記第2実施形態では、減算は、負数の加算として実現した。しかし、このような処理に代えて、減算を示す演算子を用いてもよい。例えば、an−am=a×’n’−a×’
m’=aבn−m’のように演算を実現してもよい。ただし、式表現自体は、和演算子と積演算子で記述されるため、別途減算を示す演算子を導入することにより、減算を示す演算子を実行する処理が必要となる。したがって、式表現との整合性を考慮する場合には、上記第2実施形態のように負数の加算によって減算を実現することが望ましい。
In the second embodiment, the subtraction is realized as a negative addition. However, instead of such processing, an operator indicating subtraction may be used. For example, an-am = a × 'n'-a ×'
You may implement | achieve a calculation like m '= ax'nm. However, since the expression expression itself is described by a sum operator and a product operator, a process for executing an operator indicating subtraction is required by separately introducing an operator indicating subtraction. Therefore, when considering consistency with the expression, it is desirable to realize subtraction by adding a negative number as in the second embodiment.

《第3実施形態》
図20、図21を参照して、第3実施形態に係る情報処理装置200について説明する。上記第1実施形態、および第2実施形態では、情報処理装置200が有するハードウェア構成および数値因子化処理、数値計算処理、置換処理、および、フィルタ処理について説明した。本実施形態では、第1実施形態、および第2実施形態で説明した情報処理装置200を適用した応用装置の例を説明する。したがって、基本的には、第1実施形態、および第2実施形態の構成要素は、そのまま第3実施形態でも用いられる。
<< Third Embodiment >>
An information processing apparatus 200 according to the third embodiment will be described with reference to FIGS. In the first embodiment and the second embodiment, the hardware configuration and numerical factorization processing, numerical calculation processing, replacement processing, and filter processing included in the information processing apparatus 200 have been described. In this embodiment, an example of an application apparatus to which the information processing apparatus 200 described in the first embodiment and the second embodiment is applied will be described. Therefore, basically, the constituent elements of the first embodiment and the second embodiment are used as they are in the third embodiment.

図20は、第3実施形態に係る情報処理装置200の処理を例示するフローチャートである。図20の処理では、情報処理装置200は、種々の事物に関する情報の入力を例えば入力部11から受け、式表現の形式でメモリ12、または外部記憶装置34に格納する。この場合の事物は、例えば、集合と、集合に含まれる事物を特定する識別子と、その事物の属性値と、その事物の数量と、集合の数量を含む。   FIG. 20 is a flowchart illustrating the processing of the information processing apparatus 200 according to the third embodiment. In the processing of FIG. 20, the information processing apparatus 200 receives information related to various things from the input unit 11, for example, and stores it in the memory 12 or the external storage device 34 in the form of an expression. The thing in this case includes, for example, a set, an identifier for identifying the thing included in the set, an attribute value of the thing, a quantity of the thing, and a quantity of the set.

説明のための簡単な例として、商店で販売されている商品について考える。この商店では、野菜かごと、野菜セットが販売されている。野菜かごの内容は、人参が2本と、リンゴ(A種)が3個であるとする。また、人参は1本100円であり、リンゴは1個200円であるとする。   As a simple example for explanation, consider a product sold in a store. In this store, vegetable baskets and vegetable sets are sold. The contents of the vegetable basket are two carrots and three apples (type A). In addition, it is assumed that one carrot is 100 yen and one apple is 200 yen.

また、野菜セットの内容は、卵が60個、ハム3パック、リンゴ(B種)4個である。また、卵は、12個300円であり、ハムは1パック300円であり、リンゴ(B種)は、1個180円である。   Moreover, the content of the vegetable set is 60 eggs, 3 packs of ham, and 4 apples (type B). Also, 12 eggs are 300 yen, ham is 300 yen per pack, and apple (B type) is 180 yen.

今、野菜かごを3かごと、野菜セットを2セット購入する場合の費用を考える。式表現では、以上の状況は、以下の式AP1で表すことができる。   Consider the cost of purchasing three baskets of vegetables and two sets of vegetables. In the expression expression, the above situation can be expressed by the following expression AP1.

野菜かご×(人参×100円×/×本×2本+リンゴ×200円×/×1個×3個)/×かご×3かご+
野菜セット×(たまご×300円×/×12個×60個+ハム×300円×/×1パック×3パック+リンゴ×180円×/×1個×4個)/×セット×2セット・・・(数AP1)
Vegetable basket x (carrot x 100 yen x / x book x 2 + apple x 200 yen x / x 1 x 3) / x basket x 3 basket +
Vegetable set x (egg x 300 yen x / x 12 pieces x 60 pieces + ham x 300 yen x / x 1 pack x 3 packs + apple x 180 yen x / x 1 piece x 4 pieces) / x set x 2 sets .. (number AP1)

ここで、野菜かご、野菜セット等は、集合を識別する情報ということができる。また、”野菜かご×”に続く第1の括弧内の情報は、集合”野菜かご”の構成要素ということができる。したがって、人参、リンゴ等の物品名は集合”野菜かご”の構成要素を識別する情報ということができる。また、“人参×100円×/×本”で指定される“100円”は、構成要素の属性値ということができる。   Here, it can be said that the vegetable basket, the vegetable set, and the like are information for identifying the assembly. The information in the first parenthesis following “vegetable basket ×” can be said to be a constituent element of the collective “vegetable basket”. Therefore, it can be said that the names of articles such as carrots and apples are information for identifying the components of the set “vegetable basket”. Further, “100 yen” designated by “carrot × 100 yen × / × book” can be said to be an attribute value of a component.

図20のように、情報処理装置200は、まず、数AP1のような式表現の入力を受け付ける(F101)。このような式表現は、例えば、テキストエディタで情報処理装置200に入力してもよい。また、出力部14、例えば、表示装置上のグラフィカルユーザインターフェースを用いて、専用の入力画面を作成し、入力部11を通じて式表現を情報処理装置200に入力できるようにしてもよい。また、例えば、紙面に記述された情報をスキャナから読み取り、OCR(Optical Character Reader)による文字列に変換して情報処理装置200に入力するようにしてもよい。また、情報処理装置200は、通信部32を介して、ネットワーク上の他の情報処理装置から入力を受け付けるようにしてもよい。   As illustrated in FIG. 20, the information processing apparatus 200 first receives an input of an expression such as the number AP1 (F101). Such an expression may be input to the information processing apparatus 200 with a text editor, for example. Alternatively, a dedicated input screen may be created using the output unit 14, for example, a graphical user interface on the display device, and the expression expression may be input to the information processing apparatus 200 through the input unit 11. Further, for example, information described on a paper surface may be read from a scanner, converted into a character string using an OCR (Optical Character Reader), and input to the information processing apparatus 200. Further, the information processing apparatus 200 may receive an input from another information processing apparatus on the network via the communication unit 32.

図20の処理では、情報処理装置200は、このような式表現から、ユーザが着目する事物、あるいは、集合に関する情報を切り出し、数値因子化し、その事物に関する属性値を処理する。例えば、購入する複数の商品中の特定の商品の属性値(例えば、商品の単価)に基づく特徴量(合計の購入額等)を算出する。そこで、情報処理装置200は、次に、注目する事物あるいは物品の指定を受け付ける(F102)。注目する事物あるいは物品の指定は、入力部11、例えば、キーボード等から入力を受け付けるようにすればよい。ただし、通信部32を介して、ネットワーク上の他の情報処理装置から入力を受け付けるようにしてもよい。情報処理装置200のCPU13は、指定対象情報の入力を受け付ける手段の一例として、F102の処理を実行する。   In the processing of FIG. 20, the information processing apparatus 200 cuts out information related to the user or information related to the set from such an expression, converts it into a numerical factor, and processes an attribute value related to the thing. For example, a feature amount (total purchase amount or the like) based on an attribute value (for example, a unit price of a product) of a specific product among a plurality of products to be purchased is calculated. The information processing apparatus 200 then accepts designation of an object or article of interest (F102). In order to specify an object or article of interest, an input may be received from the input unit 11, for example, a keyboard. However, an input may be received from another information processing apparatus on the network via the communication unit 32. The CPU 13 of the information processing device 200 executes the processing of F102 as an example of a unit that receives input of designation target information.

例えば、情報処理装置200は、上記数AP1の例では、”リンゴ”の指定を受け付ける。すなわち、リンゴのような商品の指定が事物の指定の一例である。なお、事物の指定としては、例えば、提供されるサービスの種類等も例示できる。   For example, the information processing apparatus 200 accepts designation of “apple” in the example of the number AP1. That is, designation of a product such as an apple is an example of designation of an object. In addition, as the designation of a thing, for example, the type of service to be provided can be exemplified.

次に、情報処理装置200は、注目する事物に関する式表現を切り出す(F103)。例えば、F102の処理で、”リンゴ”の指定を受け付けた場合、数AP1からリンゴに関する式表現を取得する。このように、数AP1のような式表現から特定の識別子(例えば、”リンゴ”)に関連する式表現を取得する演算を分割写像という。分割写像として、図5A、図5Bに示した商演算処理を例示できる。ここでは、数AP1を商演算される式表現、例えば、"リンゴ"を商演算する因子として、図5Aに示した商演算を実行する。すると、情報処理装置200は、分割写像の結果として、リンゴに関連する以下の数AP2を得る。   Next, the information processing apparatus 200 cuts out a formula expression related to the object of interest (F103). For example, when designation of “apple” is received in the process of F102, an expression expression related to the apple is acquired from the number AP1. In this manner, an operation for obtaining an expression related to a specific identifier (for example, “apple”) from an expression such as the number AP1 is referred to as a division mapping. An example of the division mapping is the quotient calculation processing shown in FIGS. 5A and 5B. Here, the quotient calculation shown in FIG. 5A is executed by using the number AP1 as an expression for quotient calculation, for example, “apple” as a factor for quotient calculation. Then, the information processing apparatus 200 obtains the following number AP2 related to the apple as a result of the division mapping.

野菜かご×(リンゴ×200円×/×1個×3個)/×かご×3かご+野菜セット×(リンゴ×180
円×/×1個×4個)/×セット×2セット・・・(数AP2)
Vegetable basket x (apple x 200 yen x / x 1 piece x 3) / x basket x 3 basket + vegetable set x (apple x 180
Yen x / x 1 x 4) / x set x 2 sets ... (several AP2)

次に、情報処理装置200は、F103の処理で求めた式表現を数値因子化する(F104)。数値因子化処理に関しては、第2実施形態の図11と同様である。すると、情報処理装置200は、式表現数AP3を得る。情報処理装置200のCPU13は、属性値に変換する手段の一例として、F102の処理を実行する。   Next, the information processing apparatus 200 converts the expression obtained in the process of F103 into a numerical factor (F104). The numerical factorization process is the same as in FIG. 11 of the second embodiment. Then, the information processing apparatus 200 obtains the expression expression number AP3. The CPU 13 of the information processing device 200 executes the process of F102 as an example of a means for converting into attribute values.

野菜かご×(リンゴ×円×'200'×/×個×個×'3')/×かご×かご×'3'+野菜セット×(
リンゴ×円×'180'×/×個×個×'4')/×セット×セット×'2'・・・(数AP3)
Vegetable basket x (apple x circle x '200' x / x pieces x pieces x '3') / x basket x basket x '3' + vegetable set x (
Apple x Yen x '180' x / x pieces x pieces x '4') / x set x set x '2' ... (several AP3)

次に、情報処理装置200は、集合の区別をなくし、集合によらず、注目する事物の情報を取得する。例えば、数AP3の例では、野菜かご、および野菜セットの区別をなくす。そのため、数AP3を入力式とし、リンゴ+/+円+個+かご+セット+'[0...9]'をフィルタ識別子として、フィルタ処理を実行する(F105)。   Next, the information processing apparatus 200 eliminates the distinction between sets, and acquires information on things of interest regardless of the set. For example, in the example of several AP3, the distinction between the vegetable basket and the vegetable set is eliminated. Therefore, the filter process is executed with the number AP3 as an input formula and the apple + / + circle + piece + basket + set + '[0 ... 9]' as a filter identifier (F105).

次に、情報処理装置200は、数値因子化した式表現を基に数値計算を実行する(F106)。数値計算処理に関しては、第2実施形態の図13、図14と同様である。情報処理装置200のCPU13は、特徴量を算出する手段の一例として、F106の処理を実行する。   Next, the information processing apparatus 200 performs numerical calculation based on the expression expressed as a numerical factor (F106). The numerical calculation process is the same as in FIGS. 13 and 14 of the second embodiment. The CPU 13 of the information processing device 200 executes the process of F106 as an example of means for calculating the feature amount.

そして、情報処理装置200は、得られた数値計算結果を出力部14に出力する(F107)。ただし、出力先は、図20の処理を実行する関数の戻り値として定義されるメモリ12上の領域でもよい。また、出力先は、例えば、外部記憶装置34上のファイルであってもよい。また、出力先は、例えば、通信部32を介して接続されるネットワーク上の他の情報処理装置でもよい。   Then, the information processing apparatus 200 outputs the obtained numerical calculation result to the output unit 14 (F107). However, the output destination may be an area on the memory 12 defined as a return value of a function that executes the processing of FIG. The output destination may be a file on the external storage device 34, for example. Further, the output destination may be another information processing apparatus on the network connected via the communication unit 32, for example.

以上の処理の結果、例えば、以下の数AP3のような結果が得られる。その結果、上記の数AP1で定義される式表現中でリンゴの購入分は、3240円であることが分かる。   As a result of the above processing, for example, a result such as the following number AP3 is obtained. As a result, it can be seen that the purchase amount of apples in the formula expression defined by the number AP1 is 3240 yen.

なお、以上の説明では、数AP3の式表現によって、リンゴに関する価格を算出する例を示したが、情報処理装置200の処理が数AP1に限定される訳ではない。例えば、商品の見積もり、サービスの見積もり、請負作業の見積もり、原材料の見積もり等、式表現を用いて記述される様々な事物あるいは物品、事物の集合、あるいは物品の集合、事物の属性値、あるいは物品の属性値等、様々な対象に関して、図20のような処理を実行できる。   In the above description, an example is shown in which the price related to the apple is calculated by the expression of the number AP3. However, the processing of the information processing apparatus 200 is not limited to the number AP1. For example, various items or articles described using formula expressions, such as product estimates, service estimates, contract work estimates, raw material estimates, etc. The process shown in FIG. 20 can be executed with respect to various objects such as attribute values.

したがって、ユーザは、入力部11、通信部32その他、様々な装置を介して入力される事物、例えば物品等に関する情報を式表現で記述し、メモリ12、外部記憶装置34に格納し、管理することができる。例えば、管理している複数の集合に含まれる特定の事物に関する属性値の合計を算出できる。   Accordingly, the user describes information related to things input through various devices such as the input unit 11, the communication unit 32, and the like, for example, items in a formula expression, and stores and manages the information in the memory 12 and the external storage device 34. be able to. For example, it is possible to calculate the sum of attribute values related to specific things included in a plurality of managed sets.

図21に、式表現で記述される集合に属する事物の属性値の合計値を求める処理を例示する。図21で、F112A、F113A、F113B以外の処理は、図20と同様である。そこで、図20と同一の処理については、説明を省略する。   FIG. 21 illustrates a process for obtaining the total value of attribute values of things belonging to the set described by the expression expression. In FIG. 21, processes other than F112A, F113A, and F113B are the same as those in FIG. Therefore, the description of the same processing as in FIG. 20 is omitted.

図21では、情報処理装置200は、例えば、注目する集合の指定を受け付ける(F112A)。そして、そして、情報処理装置200は注目する集合に関する式表現を切り出す(F113A)。さらに、情報処理装置200は、F113Aで得られた式表現(集合)中で、事物の区別を削除するため、フィルタ処理を実行する(F113B)。   In FIG. 21, the information processing apparatus 200 receives, for example, designation of a set of interest (F112A). Then, the information processing apparatus 200 cuts out expression expressions related to the set of interest (F113A). Further, the information processing apparatus 200 executes a filter process in order to delete the distinction between things in the expression (set) obtained in F113A (F113B).

例えば、数AP1の例では、情報処理装置200は、F112Aにおいて、集合として、野菜かごの指定を受ける。そして、情報処理装置200は、F113Aにおいて、例えば、数AP1を商演算される式表現、"野菜かご"を商演算する因子として、図5Aに示した商演算を実行する。すると、情報処理装置200は、以下の数AP4を得る。   For example, in the example of the number AP1, the information processing apparatus 200 receives a designation of a vegetable basket as a set in F112A. Then, in F113A, the information processing apparatus 200 executes the quotient calculation shown in FIG. 5A, for example, using the number AP1 as an expression for quotient calculation and a factor for performing a quotient calculation for “vegetable basket”. Then, the information processing apparatus 200 obtains the following number AP4.

野菜かご×(人参×100円×/×本×2本+リンゴ×200円×/×1個×3個)/×かご×3かご・・・(数AP4)   Vegetable basket x (carrot x 100 yen x / x book x 2 + apple x 200 yen x / x 1 piece x 3 pieces) / x basket x 3 baskets ... (several AP4)

さらに、情報処理装置200は、数AP4に対して、フィルタ後に残す識別子として、'野菜かご+/+円+個+かご+かご+[0...9]'を指定して、フィルタ処理を実行する。その結果、数AP4の事物の区別、例えば、にんじん、リンゴが削除される。さらに、情報処理装置200は、数値因子化処理、数値計算処理、および出力を実行し、以下の処理結果を得る。すなわち、野菜かごの合計が2400円であることが分かる。   Furthermore, the information processing apparatus 200 designates “vegetable basket + / + yen + pieces + cage + cage + [0 ... 9]” as an identifier to be left after filtering for the number AP4, and performs filtering processing. Run. As a result, the distinction of the thing of several AP4, for example, a carrot and an apple are deleted. Furthermore, the information processing apparatus 200 performs numerical factorization processing, numerical calculation processing, and output, and obtains the following processing results. That is, it can be seen that the total vegetable basket is 2400 yen.

野菜かご×円×'2400'・・・(数AP5)   Vegetable basket x yen x '2400' ... (several AP5)

以上述べたように、図21によれば、注目する集合に含まれる事物の属性値の合計値を算出できる。図21では、数AP1で示される式表現中の"野菜かご"の合計を求めたが、情報処理装置200の処理が、数AP1に限定される訳ではない。   As described above, according to FIG. 21, the total value of attribute values of things included in the set of interest can be calculated. In FIG. 21, the total of “vegetable baskets” in the expression expressed by the number AP1 is obtained, but the processing of the information processing apparatus 200 is not limited to the number AP1.

すなわち、情報処理装置200は、式表現のように、項の和、あるいは項の集合と、項に含まれる因子とによって、従来のデータベースシステムのようにデータ構造したデータとデータへの情報処理を行う代わりに、柔軟な構造で様々な事物、例えば物品に関する情報のコンピュータ上の処理を可能とする。第3実施形態では、さらに、そのような情報のうち、数値因子の部分を明示的な記述とすることで、様々な事物あるいは物品に関連する数値上の処理を可能とする。例えば、情報処理装置200は、物品の個数、価格、あるいはそれらの集計値に関する取り扱いを可能とする。したがって、情報処理装置200によれば、従来、人がメモを取り、あるいはコンピュータ上の固定のデータ構造を用いて行っていた管理処理が、式表現による柔軟な形態で実行可能となる。   That is, the information processing apparatus 200 performs data processing on data and data having a data structure as in a conventional database system by using a sum of terms or a set of terms and factors included in the terms as in an expression expression. Instead of doing so, the flexible structure allows the processing of various things, such as information about articles, on a computer. Further, in the third embodiment, numerical processing relating to various things or articles is made possible by explicitly describing the numerical factor portion of such information. For example, the information processing apparatus 200 can handle the number of articles, the price, or the total value thereof. Therefore, according to the information processing apparatus 200, management processing that has been conventionally performed by a person taking notes or using a fixed data structure on a computer can be executed in a flexible form by expression expression.

したがって、情報処理装置200が提供する情報処理機能は、従来のデータ構造が固定されたデータベースを用いる場合と比較して、飛躍的な設計自由度と、情報処理の改造容易化を実現する。例えば、数AP1のような式表現で記述された情報から、簡易に管理対象の特徴量、例えば、特定商品の合計金額、特定の商品集合の合計金額等を算出できる。   Therefore, the information processing function provided by the information processing apparatus 200 realizes a drastic design freedom and facilitating remodeling of information processing as compared with the case of using a conventional database having a fixed data structure. For example, it is possible to easily calculate the feature quantity to be managed, for example, the total price of a specific product, the total price of a specific product set, etc., from information described by an expression such as a number AP1.

《第4実施形態》
図22を参照して、第4実施形態に係る情報処理装置200について説明する。上記第3実施形態では、第1実施形態の情報処理装置、および第2実施形態で説明した情報処理装置200を適用した応用装置の例として、式表現で表現される事物の特徴量の1つとして、特定商品の価格、特定の商品集合の価格を算出する処理を例示した。第4実施形態では、式表現を事物の設計データに適用した情報処理装置200を例示する。したがって、基本的には、第1実施形態から第3実施形態の構成要素は、そのまま第4実施形態でも用いられる。
<< 4th Embodiment >>
With reference to FIG. 22, an information processing apparatus 200 according to the fourth embodiment will be described. In the third embodiment, as an example of an application device to which the information processing device of the first embodiment and the information processing device 200 described in the second embodiment are applied, one of the feature quantities of things expressed by expression As an example, the process of calculating the price of a specific product and the price of a specific product set is illustrated. In the fourth embodiment, an information processing apparatus 200 in which an expression expression is applied to design data of a thing is illustrated. Therefore, basically, the constituent elements of the first to third embodiments are used as they are in the fourth embodiment.

図22は、第4実施形態に係る情報処理装置200の処理、例えば、設計対象の特徴量の算出処理を例示する図である。図22の処理では、情報処理装置200は、種々の設計対象に関する情報の入力を例えば入力部11から受け、式表現の形式でメモリ12、または外部記憶装置34に格納する。この場合の設計対象は、例えば、建築物、機械、機器、容器等の構造物、電気回路、電子回路、半導体の構造、化学物質の構造、薬品の構造、分子の構造、コンピュータ上でシミュレーションされるシミュレーション対象のモデル構造等、特に限定はない。ただし、実施例1、2と同様、設計対象である事物、物品等は、例えば、集合と、集合に含まれる事物を特定する識別子と、その事物の属性値と、その事物の数量と、集合の数量を含む。実施例3では、構造物の特徴量の算出を例示する。すなわち、以下では、一例として、設計対象の3次元オブジェクトを処理する処理例を説明する。ここで、3次元オブジェクトは、体積1200立方ミリメートル、直方体の側面が縦5センチメートル、横12ミリメートルであると想定する。以下、このような直方体について、側面からの奥行きを求める。また、以下では、設計対象の特徴量を特性ともいう。特性は、例えば、事物の属性値、物品の属性値等を含み、例えば、設計上の主要な管理項目となる情報等として例示できる。   FIG. 22 is a diagram illustrating a process of the information processing apparatus 200 according to the fourth embodiment, for example, a process for calculating a feature quantity of a design target. In the process of FIG. 22, the information processing apparatus 200 receives information related to various design objects from, for example, the input unit 11 and stores the information in the memory 12 or the external storage device 34 in the form of an expression. The design object in this case is, for example, a structure such as a building, a machine, a device, a container, an electric circuit, an electronic circuit, a semiconductor structure, a chemical substance structure, a chemical structure, a molecular structure, or a computer simulation. There is no particular limitation on the model structure to be simulated. However, as in the first and second embodiments, things, articles, and the like to be designed include, for example, a set, an identifier that identifies the thing included in the set, an attribute value of the thing, a quantity of the thing, and a set Including quantity. In the third embodiment, the calculation of the feature amount of the structure is exemplified. That is, in the following, a processing example for processing a design target three-dimensional object will be described as an example. Here, it is assumed that the three-dimensional object has a volume of 1200 cubic millimeters, a rectangular parallelepiped having a side face of 5 centimeters and a width of 12 millimeters. Hereinafter, the depth from the side of the rectangular parallelepiped is obtained. In the following, the feature quantity to be designed is also referred to as a characteristic. The characteristic includes, for example, an attribute value of a thing, an attribute value of an article, and the like, and can be exemplified as, for example, information serving as a main management item in design.

図22のように、情報処理装置200は、設計対象の構造、設計対象に含まれる要素の識別子、要素の属性値、要素と構造との関係、設計対象の特性等、特徴量示す式表現を入力し、式表現をメモリに格納する(F121)。   As shown in FIG. 22, the information processing apparatus 200 displays expression expressions indicating feature quantities such as the structure of the design target, the identifiers of the elements included in the design target, the attribute values of the elements, the relationship between the elements and the structure, the characteristics of the design target, and the like. The inputted expression is stored in the memory (F121).

さらに、奥行きを記述する式表現中の項および因子の式を設定する。ここでは、例えば、設計対象を示す3次元オブジェクトについて、設計対象に含まれる要素の識別子、要素の属性値を例示すると以下式数AP6の通りである。   Furthermore, an expression of terms and factors in the expression expressing the depth is set. Here, for example, for the three-dimensional object indicating the design target, the identifier of the element and the attribute value of the element included in the design target are illustrated as the following expression number AP6.

体積=100mm^3+縦=5cm+横=12mm+cm=10mm(数AP6)   Volume = 100mm ^ 3 + length = 5cm + width = 12mm + cm = 10mm (several AP6)

ここで、例えば、体積=1200mm^3+縦=5cm+横=12mm等は要素の属性値ということができる。さらに、cm=10mmは、単位の換算の定義を示す式表現である。このような設計対象に含まれる要素の識別子、要素の属性値等については、特徴量を求める処理実行時に、情報処理装置200が入力部11から入力を受け付けるようにしてもよい。また、情報処理装置200は、事前に設計対象を記述した式表現をデータベース(例えば、図10のデータ部45、外部記憶装置34等)に格納しておき、特徴量を求める処理実行時に、データベースから設計対象に含まれる要素の識別子、要素の属性値、要素と構造との関係等を読み出すようにしてもよい。なお、データベースには、式表現で設計対象を記述して置けばよい。   Here, for example, volume = 1200 mm ^ 3 + vertical = 5 cm + horizontal = 12 mm can be referred to as an element attribute value. Furthermore, cm = 10 mm is a formula expression showing the definition of unit conversion. Regarding the identifier of the element, the attribute value of the element, and the like included in such a design target, the information processing apparatus 200 may receive an input from the input unit 11 when executing a process for obtaining a feature amount. In addition, the information processing apparatus 200 stores a formula expression describing the design object in advance in a database (for example, the data unit 45, the external storage device 34, etc. in FIG. 10), The identifier of the element included in the design object, the attribute value of the element, the relationship between the element and the structure, etc. may be read out. In the database, the design object may be described by expression expression.

次に、情報処理装置200は、特徴量を求める式表現の入力を受け付ける(F122)。例えば、体積、側面の縦と横の寸法が既知の直方体について、奥行きは、以下の式数AP7で記述できる。この奥行きの式表現は、要素と構造との関係と呼ぶこともできる。情報処理装置200のCPU13は、指定対象情報の入力を受け付ける手段として、F122の処理を実行する。   Next, the information processing apparatus 200 receives an input of an expression for obtaining a feature amount (F122). For example, for a rectangular parallelepiped whose volume and vertical and horizontal dimensions are known, the depth can be described by the following formula number AP7. This expression expression of depth can also be called a relationship between elements and structures. The CPU 13 of the information processing apparatus 200 executes the process of F122 as a means for receiving input of designation target information.

体積×/(縦×横)・・・(数AP7)   Volume x / (length x width) ... (several AP7)

次に、情報処理装置200は、注目する式表現中の項、因子の式表現を取得し、置換処理で特徴量の式表現に設定する(F123)。式数AP7の例では、項が1つの式表現であるので、式数AP7に含まれるそれぞれの因子に対して、具体的な式表現を設定することになる。数AP7の各因子に設定すべき式表現は、式数AP6で与えられている。そこで、式数AP6で与えられる各要素の式表現で、式数AP7の各因子を置換すればよい。置換としては、情報処理装置200は、第2実施形態で説明した置換処理(図16)を実行すればよい。情報処理装置200は、置換処理によって、式数AP8を得る。   Next, the information processing apparatus 200 acquires the expression of the term and factor in the expression of interest, and sets it as the expression of the feature amount by the replacement process (F123). In the example of the expression number AP7, since the term is one expression expression, a specific expression expression is set for each factor included in the expression number AP7. The expression expression to be set for each factor of the number AP7 is given by the expression number AP6. Therefore, each factor of the formula number AP7 may be replaced with the formula expression of each element given by the formula number AP6. As the replacement, the information processing apparatus 200 may perform the replacement process (FIG. 16) described in the second embodiment. The information processing apparatus 200 obtains the formula number AP8 by the replacement process.

1200mm^3/(5cm×12mm)・・・(数AP8)   1200mm ^ 3 / (5cm x 12mm) ... (several AP8)

次に、情報処理装置200は、式表現中の単位を換算するための置換処理を実行する(F124)。置換処理のパラメータは、式数AP6中のcm=10mmで指定される。単位換算の結果、情報処理装置200は、式数AP9を得る。   Next, the information processing apparatus 200 executes a replacement process for converting the units in the expression (F124). The parameter of the replacement process is specified by cm = 10 mm in the formula number AP6. As a result of unit conversion, the information processing apparatus 200 obtains the formula number AP9.

1200mm^3/(50mm×12mm)・・・(数AP9)   1200mm ^ 3 / (50mm x 12mm) ... (several AP9)

さらに、情報処理装置200は、式表現に対して、数値因子化処理を実行する(F125)。数値因子化処理は、第2実施形態で説明した数値因子化処理(図11)を実行すればよい。数値因子化処理の結果、情報処理装置200は、式数AP10を得る。情報処理装置200のCPU13は、構成要素の属性値に変換する手段の一例として、F122およびF124の処理を実行する。   Further, the information processing apparatus 200 performs numerical factorization processing on the expression (F125). The numerical factorization process may be performed by the numerical factorization process (FIG. 11) described in the second embodiment. As a result of the numerical factorization process, the information processing apparatus 200 obtains an expression number AP10. The CPU 13 of the information processing apparatus 200 executes the processes of F122 and F124 as an example of a means for converting into attribute values of the constituent elements.

mm×^3×'1200'×/(mm×'50'×mm×'12')・・・(数AP10)   mm × ^ 3 × '1200' × / (mm × '50' × mm × '12 ') ... (several AP10)

さらに、情報処理装置200は、数値因子化された式表現に対して、数値計算処理を実
行する(F126)。情報処理装置200のCPU13は、特徴量を算出する手段の一例として、F122およびF126の処理を実行する。
Furthermore, the information processing apparatus 200 performs numerical calculation processing on the expression expressed as a numerical factor (F126). The CPU 13 of the information processing device 200 executes the processes of F122 and F126 as an example of a means for calculating the feature amount.

そして、情報処理装置200は、求めた特徴量を出力する(F117)。すなわち、式数AP10の演算結果として、奥行き2mmが出力される。なお、このとき因子mm×^3と因子/(mm×'50'×mm×'12')との間で識別子であるmmの約分が実行される。   Then, the information processing apparatus 200 outputs the obtained feature amount (F117). That is, a depth of 2 mm is output as the calculation result of the expression number AP10. At this time, a deduction of mm as an identifier is executed between the factor mm × ^ 3 and the factor / (mm × '50' × mm × '12 ').

以上述べたように、第4実施形態に係る情報処理装置200は設計対象の構造、設計対象に含まれる要素の識別子、要素の属性値、要素と構造との関係、設計対象の特性を示す式表現の入力を受け付ける。また、情報処理装置200は、図10のデータ部45等で例示されるデータベースに、設計対象の設計対象の構造、設計対象に含まれる要素の識別子、要素の属性値、要素と構造との関係、設計対象の特性、属性値等示す式表現を格納しておく。また、要素は識別子で特定される。ただし、情報処理装置200は、ネットワーク上の他の情報処理装置から、設計対象の設計対象の構造、設計対象に含まれる要素の識別子、要素の属性値、要素と構造との関係、設計対象の特性、属性値等示す式表現を取得してもよい。   As described above, the information processing apparatus 200 according to the fourth embodiment includes a design target structure, an identifier of an element included in the design target, an attribute value of the element, a relationship between the element and the structure, and a formula indicating the characteristics of the design target. Accept input of expressions. In addition, the information processing apparatus 200 stores the structure of the design target of the design target, the identifier of the element included in the design target, the attribute value of the element, and the relationship between the element and the structure in the database exemplified by the data unit 45 in FIG. In addition, expression expressions indicating the characteristics, attribute values, etc. of the design object are stored. An element is specified by an identifier. However, the information processing apparatus 200 receives the structure of the design target of the design target, the identifier of the element included in the design target, the attribute value of the element, the relationship between the element and the structure, and the design target from other information processing apparatuses on the network. Expression expressions indicating characteristics, attribute values, etc. may be acquired.

そして、情報処理装置200は、構造物の特徴量を記述した式表現を受け付ける。この場合に受け付ける式表現は、項、因子等の要素に自然言語等を含む識別子を用いて記述してよい。そして、情報処理装置200は、自然言語等を項、因子等の要素に含む構造物の特徴量の式表現を、構造物の要素の属性値を用いた式表現に置換する。さらに、情報処理装置200は、単位換算、数値因子化処理、および数値計算処理を実行することにより、構造物の特徴量を算出することができる。   Then, the information processing apparatus 200 accepts an expression that describes the feature amount of the structure. The expression expression accepted in this case may be described using an identifier including a natural language or the like in elements such as terms and factors. Then, the information processing apparatus 200 replaces the expression expression of the feature amount of the structure including the natural language or the like in the element such as the term and the factor with the expression expression using the attribute value of the element of the structure. Furthermore, the information processing apparatus 200 can calculate the feature amount of the structure by executing unit conversion, numerical factorization processing, and numerical calculation processing.

すなわち、第4実施形態の情報処理装置200は、自然言語等によって記述される設計対象の構造、設計対象に含まれる要素の識別子、要素の属性値、要素と構造との関係、設計対象の特性等示す式表現をメモリ12、外部記憶装置34等に格納しておき、データベースを構築することができる。そして、構築された設計対象を記述するデータベースから構造物の式表現に含まれる要素の属性値を取得し、構造物の特徴量を出力できる。   That is, the information processing apparatus 200 according to the fourth embodiment includes a design target structure described in a natural language or the like, an element identifier included in the design target, an element attribute value, a relationship between the element and the structure, and a design target characteristic. Equivalent expression expressions are stored in the memory 12, the external storage device 34, etc., and a database can be constructed. And the attribute value of the element contained in the formula expression of a structure can be acquired from the database which describes the design object constructed | assembled, and the feature-value of a structure can be output.

以上のような処理は、構造物に限定される訳ではなく、電気回路、電子回路、半導体の構造、化学物質の構造、薬品の構造、分子の構造、コンピュータ上でシミュレーションされるシミュレーション対象のモデル構造等、様々な対象に適用できる。   The above processing is not limited to a structure, but an electric circuit, an electronic circuit, a semiconductor structure, a chemical substance structure, a chemical structure, a molecular structure, and a simulation target model to be simulated on a computer. It can be applied to various objects such as structures.

《第5実施形態》
図23を参照して、第5実施形態に係る情報処理装置200について説明する。図23のように、第5実施形態に係る情報処理装置200は、処理部40とデータ部45を有する。ただし、基本的には、第1実施形態から第4実施形態で説明した構成要素は、そのまま第5実施形態でも用いることができる。
<< 5th Embodiment >>
With reference to FIG. 23, an information processing apparatus 200 according to the fifth embodiment will be described. As illustrated in FIG. 23, the information processing apparatus 200 according to the fifth embodiment includes a processing unit 40 and a data unit 45. However, basically, the components described in the first to fourth embodiments can be used as they are in the fifth embodiment.

また、図23では省略しているが、第2実施形態の図9と同様に、情報処理装置200は、入力部11、出力部14、通信32、外部記憶装置34、着脱可能記憶媒体アクセス装置36等を接続してもよい。ただし、入力部11、出力部14、通信32、外部記憶装置34、着脱可能記憶媒体アクセス装置36等は、必須の構成ではなく、情報処理装置200に要求される仕様にしたがって、適宜設ければよい。   Although omitted in FIG. 23, the information processing apparatus 200 includes an input unit 11, an output unit 14, a communication 32, an external storage device 34, and a removable storage medium access device, as in FIG. 9 of the second embodiment. 36 or the like may be connected. However, the input unit 11, the output unit 14, the communication 32, the external storage device 34, the removable storage medium access device 36, and the like are not essential configurations, and may be appropriately provided according to specifications required for the information processing device 200. Good.

処理部40の構成は、第1実施形態から第4実施形態と同様である。処理部40の機能は、例えば、CPU13がメモリ12上のコンピュータプログラムを実行することで実現される。処理部40は、データ部45内の式表現に対して、第1実施形態から第4実施形態で説明した処理と同様の処理を実行する。   The configuration of the processing unit 40 is the same as that in the first to fourth embodiments. The function of the processing unit 40 is realized, for example, when the CPU 13 executes a computer program on the memory 12. The processing unit 40 performs the same processing as the processing described in the first to fourth embodiments on the expression in the data unit 45.

また、例えば、処理部40は、代数演算部40Aを有する。代数演算部40Aは、因子の列として積演算子で結合される数値識別子間で乗算を実行し、前記項の組み合わせに対して数値識別子間で加算を実行する。代数演算部40Aの処理は、例えば、第2実施形態の図13、図14で例示される。   For example, the processing unit 40 includes an algebra calculation unit 40A. The algebraic operation unit 40A performs multiplication between numerical identifiers combined by a product operator as a sequence of factors, and performs addition between the numerical identifiers for the combination of terms. The processing of the algebra calculation unit 40A is exemplified in FIGS. 13 and 14 of the second embodiment, for example.

データ部45は、記憶部の一例であり、式表現で記述される対象情報を格納する。データ部45の構成は、第1実施形態から第4実施形態と同様である。   The data unit 45 is an example of a storage unit, and stores target information described by an expression. The configuration of the data unit 45 is the same as that of the first to fourth embodiments.

例えば、データ部45は、メモリ12、外部記憶装置34等に構築される。ただし、データ部45としては、外部記憶装置45を用いなくてもよい。また、外部記憶装置45に代えて、通信部32を介して接続されるネットワーク上の他の情報処理装置の外部記憶装置を用いてもよい。   For example, the data unit 45 is constructed in the memory 12, the external storage device 34, and the like. However, the external storage device 45 may not be used as the data unit 45. Instead of the external storage device 45, an external storage device of another information processing apparatus on the network connected via the communication unit 32 may be used.

ここで、例えば、データ部45に格納される対象情報は、識別子と、因子の列として複数の識別子を結合する積演算子と、識別子および因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述される。また、識別子は、数値を表す数値識別子を含む。   Here, for example, the target information stored in the data unit 45 is either an identifier, a product operator that combines a plurality of identifiers as a factor column, and a plurality of identifiers combined as a column of identifiers and factors, or And a sum operator that constitutes a combination of terms from both. The identifier includes a numerical identifier that represents a numerical value.

以上述べたように、情報処理装置200は、処理部40とデータ部45とによって、第1実施形態から第3実施形態と同様の処理を実行する。   As described above, the information processing apparatus 200 uses the processing unit 40 and the data unit 45 to execute the same processing as in the first to third embodiments.

情報処理装置200が、他の情報処理装置と式表現等の情報を授受するには、例えば、情報処理装置200に、通信部32を接続し、通信部32を介して、他の情報処理装置と通信すればよい。情報処理装置200は、通信部32から受信した式表現等の情報をデータ部45に格納すればよい。また、情報処理装置200は、代数演算等の加工を実行した式表現等の情報を通信部32を介して、他の情報処理装置と出力すればよい。   In order for the information processing apparatus 200 to exchange information such as expression expressions with other information processing apparatuses, for example, the communication unit 32 is connected to the information processing apparatus 200, and the other information processing apparatus is connected via the communication unit 32. You can communicate with. The information processing apparatus 200 may store information such as an expression received from the communication unit 32 in the data unit 45. Further, the information processing apparatus 200 may output information such as an expression expression obtained by executing processing such as an algebraic calculation to another information processing apparatus via the communication unit 32.

情報処理装置200に、着脱可能記憶媒体アクセス装置36が接続されている場合には、着脱媒体との間で式表現等の情報を授受すればよい。また、情報処理装置200に、入力部11、出力部14が接続されている場合には、情報処理装置200は、入力部11から式表現等の情報を入力し、出力部14に加工した式表現等の情報を出力すればよい。   When the removable storage medium access device 36 is connected to the information processing apparatus 200, information such as an expression may be exchanged with the removable medium. Further, when the input unit 11 and the output unit 14 are connected to the information processing apparatus 200, the information processing apparatus 200 inputs information such as a formula expression from the input unit 11 and processes the expression into the output unit 14. Information such as expressions may be output.

したがって、少なくとも、代数演算部40Aを含む処理部40と、データ部45とよって、情報処理装置200は機能し、第1実施形態から第4実施形態で説明したものと同様、式表現に対する代数演算処理を実行する。したがって、本実施形態の情報処理装置200は、従来のようにデータモデルを固定することなく、様々な事物を式表現で記述し、データ部45に格納し、代数演算部40Aの処理の含む、式表現に対する処理を実行することができる。   Therefore, the information processing apparatus 200 functions by at least the processing unit 40 including the algebraic operation unit 40A and the data unit 45, and the algebraic operation on the expression is the same as that described in the first to fourth embodiments. Execute the process. Therefore, the information processing apparatus 200 according to the present embodiment describes various things in an expression expression without fixing the data model as in the prior art, stores them in the data unit 45, and includes the processing of the algebraic operation unit 40A. Processing on the expression can be executed.

以下、情報処理装置200が式表現を代数演算式に変換して実行する処理を例示する。ここでは、単価・数量を基に、処理対象(以下、オブジェクトともいう)を再帰的構造によって記述する。ここで、再帰的構造とは、例えば、式表現の第1の括弧“()”による項の集合を階層的に記述した構造、第2の括弧“{}”による項の並びを複数階層に渡って記述した構造をいう。なお、第1の括弧“()”による項の集合中の項の順序の入れ替えは可能であるが、第2の括弧“{}”による項の並びにおいて、項の順序の入れ替えはできない。再帰的構造は、階層的構造ということもできる。   Hereinafter, a process in which the information processing apparatus 200 converts an expression expression into an algebraic arithmetic expression and executes it will be exemplified. Here, a processing target (hereinafter also referred to as an object) is described by a recursive structure based on the unit price and quantity. Here, the recursive structure is, for example, a structure in which a set of terms by the first parentheses “()” in the expression expression is hierarchically described, and a list of terms by the second parentheses “{}” is arranged in a plurality of layers. This refers to the structure described across. The order of the terms in the set of terms can be changed by the first parenthesis “()”, but the order of the terms cannot be changed in the order of the terms by the second parenthesis “{}”. The recursive structure can also be called a hierarchical structure.

以下の処理では、情報処理装置200は、再帰的構造によって記述されたオブジェクトを、階層別、オブジェクト別等で計算する。ここでは、以下のような商品、すなわち、買
い物セット1と買い物セット2を販売、あるいは購入する場合と想定する。
In the following processing, the information processing apparatus 200 calculates objects described by a recursive structure for each hierarchy, for each object, and the like. Here, it is assumed that the following products, that is, shopping set 1 and shopping set 2 are sold or purchased.

買い物セット1は2セットある。買い物セット1には、たまごと、ハムと、リンゴが含まれている。買い物セット1のたまご(300円/12個)は、60個ある。買い物セット1のハムは、ロースハム(300円/1パック)が3パックと、生ハム(500円/1パック)が1パックある。買い物セット1のリンゴは、青森産(180円/個)が1個、
宮城産(150円/個)が1個である。
There are two shopping sets 1. The shopping set 1 includes eggs, ham, and apples. There are 60 eggs in the shopping set 1 (¥ 300/12). The ham of shopping set 1 includes three packs of roast ham (300 yen / pack) and one pack of raw ham (500 yen / pack). The apple of shopping set 1 is one from Aomori (180 yen / piece),
One from Miyagi (150 yen / piece).

一方、買い物セット2は、3セットある。買い物セット2には、梨とリンゴが含まれる。買い物セット2のなしは、山梨産(120円/個)が2個、山形産(100円/個)が3個である。買い物セット2のリンゴは、青森産(180円/個)が4個、福島産(200円/個)が5個である。
以上の商品を式表現で記述すると、以下の数FML1で表すことができる。
On the other hand, there are three shopping sets 2. Shopping set 2 includes pears and apples. Without the shopping set 2, there are 2 Yamanashi products (120 yen / piece) and 3 Yamagata products (100 yen / piece). The number of apples in shopping set 2 is 4 from Aomori (180 yen / piece) and 5 from Fukushima (200 yen / piece).
If the above-mentioned goods are described by a formula expression, they can be expressed by the following number FML1.

買い物セット1×(たまご×300円×/×12個×60個+ハム×(ロース×300円×/×1本×2
本+生×500円×/×1パック×1パック)+リンゴ×(青森産×180円×/×個×1個+宮城産
×150円×/×個×1個))/×セット×2セット+買い物セット2×(梨×(山梨産×120円×/×1個×2個+山形産×100円×/×1個×3個)+リンゴ×(青森産×180円×/×個×4個+福島産×200円×/×個×5個))/×セット×3セット・・・(数FML1)
Shopping set 1 x (egg x 300 yen x / x 12 x 60 pieces + ham x (loose x 300 yen x / x 1 x 2)
Book + raw × 500 yen × / × 1 pack × 1 pack) + apple × (Aomori × 180 yen × / × pieces × 1 + Miyagi × 150 yen × / × pieces × 1)) / × set × 2 sets + shopping set 2 x (pear x (Yamanashi x 120 yen x / x 1 x 2 pieces + Yamagata x 100 yen x / x 1 x 3 pieces) + apple x (Aomori x 180 yen x / X pieces x 4 pieces + Fukushima x 200 yen x / x pieces x 5 pieces)) / x set x 3 sets ... (several FML1)

このような商品を記述する式は、例えば、入力部11を含むユーザインターフェースから、ユーザが入力するようにしてもよい。ここでは、情報処理装置200が処理する情報は、数FML1のように式表現で記述され、メモリ12等に格納されているとする。   The formula describing such a product may be input by the user from a user interface including the input unit 11, for example. Here, it is assumed that information processed by the information processing apparatus 200 is described by an expression such as the number FML1 and stored in the memory 12 or the like.

(A)リンゴの合計金額を求める処理
ここで、情報処理装置200が、メモリ12に格納された数AP21の式表現からリンゴの合計金額を求める処理は、以下の通りである。
(A1)情報処理装置200は、分割写像により、数FML1から”リンゴ”で式表現を切り出す。分割写像は、第3実施形態と同様に、商演算を用いて実現される。切り出された式表現は、数FML2のようになる。
(A) Processing for Obtaining Total Apple Amount Here, the information processing apparatus 200 obtains the total apple amount from the expression of the number AP21 stored in the memory 12 is as follows.
(A1) The information processing apparatus 200 cuts out the expression by “apple” from the number FML1 by division mapping. The division mapping is realized using a quotient operation, as in the third embodiment. The extracted expression expression is like the number FML2.

買い物セット1×(リンゴ×(青森産×180円×/×個×1個+宮城産×150円×/×個×1個))/×セット×2セット+買い物セット2×(リンゴ×(青森産×180円×/×個×4個+
福島産×200円×/×個×5個))/×セット×3セット・・・(数FML2)
Shopping set 1 x (Apple x (Aomori x 180 yen x / x pieces x 1 + Miyagi x 150 yen x / x pieces x 1)) / x set x 2 sets + shopping set 2 x (apple x ( Aomori x 180 yen x / x x 4 x
Fukushima x200 yen x / x pieces x 5 pieces)) / x set x 3 sets ... (several FML2)

(A2)情報処理装置200は、数値化処理を実行する。数値化処理は、図11に例示したものと同様である。数値化された式表現(代数演算式)は以下の通りである。   (A2) The information processing apparatus 200 executes a digitization process. The digitization process is the same as that illustrated in FIG. A numerical expression (algebraic expression) is as follows.

買い物セット1×(リンゴ(青森産×'180'×円×/×個×'1'×個+宮城産×'180'×円×/×個×'1'×個))/×セット×'2'×セット+買い物セット2×(リンゴ(青森産×'180'×円
×/×個×'4'×個+福島産×'200'×円×/×個×'5'×個))/×セット×'3'×セット・・・(数FML3)
Shopping set 1 x (Apple (Aomori x '180' x Yen x / x x 1 x x Miyagi x x '180' x Yen x / x x 1 x x)) / x set x '2' x set + shopping set 2 x (apple (Aomori product x '180' x yen x x x x 4 x x Fukushima x 200 x x x x x 5 x x 5) )) / × set × '3' × set ... (several FML3)

(A3)情報処理装置200は、フィルタ処理により、リンゴの金額の判定に用いない識別子を除去する。すなわち、情報処理装置200は、フィルタ後に残す識別子として、'リンゴ+/+円+個+かご+セット+[0...9]'を指定して、数FML3の代数演算式にフィルタ処理を実行する。なお、フィルタ処理で指定さされる、フィルタ後に残す識別子は、ユーザが指定するようにしてもよい。また、例えば、「リンゴの合計金額を求める処理」を実行する場合に、リンゴの識別子を自動選択するとともに、セットのように集合を示す識別子、円、個のように単位を示す識別子、および数字を示す識別子[0...9]を初期値として
情報処理装置200がメモリ12等に保持するようにしてもよい。フィルタ処理は、図18に示したものと同様である。フィルタ処理の結果は、以下の通りである。
(A3) The information processing apparatus 200 removes identifiers that are not used for determination of the amount of apples by filtering. That is, the information processing apparatus 200 specifies “apple + / + yen + pieces + cage + set + [0 ... 9]” as an identifier to be left after filtering, and performs filtering on the algebraic expression of the number FML3. Run. Note that the identifier that is specified in the filtering process and remains after filtering may be specified by the user. In addition, for example, when executing “a process for obtaining the total amount of apples”, an identifier for apples is automatically selected, an identifier indicating a set like a set, an identifier indicating a unit such as a circle, an individual, and a number The information processing apparatus 200 may store the identifier [0 ... 9] indicating the initial value in the memory 12 or the like. The filtering process is the same as that shown in FIG. The result of the filtering process is as follows.

(リンゴ×('180'×円×/×個×'1'×個+'150'×円×/×個×'1'×個))/×セット×'2'
×セット+(リンゴ×('180'×円×/×個×'4'×個+'200'×円×/×個×'5'×個))/×セッ
ト×'3'×セット・・・(数FML4)
(Apple x ('180' x circle x / x pieces x '1' x pieces + '150' x circle x / x pieces x '1' x pieces)) / x set x '2'
× set + (apple × ('180' × circle × / × piece × '4' × piece + '200' × circle × / × piece × '5' × piece)) / × set × '3' × set .. (Number FML4)

(A4)情報処理装置200は、数FML4に対して、数値計算処理を行う。数値計算処理は、図13、図14に示したものと同様である。数値計算書の結果は、(リンゴ×円
×'330')×'2'+(リンゴ×円×'1720')×'3'=リンゴ×円×'5490'となる。すなわち、数FML1で記述される式表現中のリンゴの合計額は5490円となる。
(A4) The information processing apparatus 200 performs numerical calculation processing on the number FML4. The numerical calculation process is the same as that shown in FIGS. The result of the numerical calculation is (apple x circle x '330') x '2' + (apple x circle x '1720') x '3' = apple x circle x '5490'. That is, the total amount of apples in the expression expressed by the number FML1 is 5490 yen.

(B)リンゴの産地別の合計金額を求める処理
福島産、青森産、宮城産のリンゴのそれぞれのトータル金額を求める処理は以下の通りである。
(B) Processing for determining the total amount of apples by production area Processing for determining the total amount of apples from Fukushima, Aomori, and Miyagi is as follows.

(B1)情報処理装置200は、分割写像により”リンゴ×福島産”(リンゴかつ福島産を含んだ部分集合を取得の意味)で、数FML1から式表現を切り出す。分割写像によって切り出された式表現は、以下の通りである。   (B1) The information processing apparatus 200 cuts out an expression from the number FML1 with “apple × Fukushima production” (meaning acquisition of a subset including an apple and Fukushima production) by division mapping. The expression expression cut out by the division map is as follows.

買い物セット2×リンゴ×(福島産×200円×/×個×5個)/×セット×3セット・・・(
FML12)
Shopping set 2 x apple x (Fukushima x 200 yen x / x pieces x 5 pieces) / x set x 3 sets ... (
FML12)

(B2)情報処理装置200は、数値化処理を実行する。数値化された式表現(代数演算式)は以下の通りである。   (B2) The information processing apparatus 200 executes a digitization process. A numerical expression (algebraic expression) is as follows.

買い物セット2×リンゴ×(福島産×'200'×円×/×個×'5'×個)/×セット×'3'×セ
ット・・・(FML13)
Shopping set 2 x apple x (Fukushima x '200' x yen x x x x 5 x x) / x set x '3' x set ... (FML13)

(B3)情報処理装置200は、フィルタ処理により、福島産のリンゴの金額の判定に用いない識別子を除去する。すなわち、情報処理装置200は、フィルタ後に残す識別子として、'リンゴ+福島産+/+円+個+セット+[0...9]'を指定して、数FML13の代数演算式にフィルタ処理を実行する。フィルタ処理の結果は、以下の通りである。   (B3) The information processing apparatus 200 removes identifiers that are not used for determination of the amount of apples produced in Fukushima by filtering. That is, the information processing apparatus 200 specifies “apple + Fukushima + / + yen + piece + set + [0... 9]” as an identifier to be left after filtering, and filters the algebraic expression of the number FML13. Execute. The result of the filtering process is as follows.

リンゴ×(福島産×'200'×円×/×個×'5'×個)/×セット×'3'×セット・・・(FM
L14)
Apple x (Fukushima x '200' x circle x / x pieces x '5' x pieces) / x set x '3' x set ... (FM
L14)

(B4)情報処理装置200は、数FML14に対して、数値計算処理を行う。数値計算書の結果は、リンゴ×福島産×'3000'×円となる。すなわち、福島産のリンゴの合計額は3000円となる。   (B4) The information processing apparatus 200 performs numerical calculation processing on the number FML14. The result of the numerical calculation is apple x Fukushima x 3000 x yen. In other words, the total amount of apples from Fukushima is 3000 yen.

(C)同様に、青森産のリンゴについて、情報処理装置200は、リンゴ×青森産×'2340'×円を求めることができる。   (C) Similarly, for an apple from Aomori, the information processing apparatus 200 can calculate apple x Aomori x '2340' x yen.

(D)同様に、宮城産のリンゴについて、情報処理装置200は、リンゴ×宮城産×'150'×円を求めることができる。   (D) Similarly, for the apples from Miyagi, the information processing apparatus 200 can obtain apple x Miyagi x '150' x yen.

(E)さらに、(B4)、(C)、(D)の処理が終わった後に、リンゴの合計金額、あるいは、福島産、青森産、宮城産のリンゴの合計金額は、次のように、求めることができる。   (E) Furthermore, after the processing of (B4), (C), (D) is finished, the total amount of apples, or the total amount of apples from Fukushima, Aomori, and Miyagi is as follows: Can be sought.

(E1)情報処理装置200は、(B4)、(C)、(D)で得られた式表現(代数演
算式)を和演算子で結合する。
(E1) The information processing apparatus 200 combines the expression expressions (algebraic arithmetic expressions) obtained in (B4), (C), and (D) with a sum operator.

リンゴ×福島産×'3000'×円+リンゴ×青森産×'2340'×円+リンゴ×宮城産×'150'×
円・・・(数FML15)
Apple x Fukushima x '3000' x Yen + Apple x Aomori x x 2340 x Yen + Apple x Miyagi x 150 x
Yen ... (several FML15)

(E2)情報処理装置200は、数FML15に対して、数値計算処理を行う。その結果、リンゴ×'5490'×円が得られ、リンゴの合計金額は、5490円と計算される。   (E2) The information processing apparatus 200 performs numerical calculation processing on the number FML15. As a result, apple × '5490' × yen is obtained, and the total amount of apples is calculated as 5490 yen.

以上述べたように、本実施形態の情報処理装置200によれば、数FML1のような事物、例えば、複数の買い物セットに含まれる商品構成、単価、および個数を階層的に記述した式表現に対して、(A)のように、リンゴを特定して合計金額を求めることができる。一方、(B4)(C)(D)のように、一旦、福島産、青森産、宮城産のように種別が分類されて商品の金額を示す式表現(代数演算式)が得られている場合に、これらの式表現を和演算子で結合することで、種類別の合計を商品の複数種別の小計、全体の合計等の演算に流用できる。すなわち、このような小計、あるいは合計は、式表現で集合を取り扱う演算子である和演算子をそのまま使用すればよい。すなわち、情報処理装置200によれば、数値nを明示的に示す演算子であり、数値演算子(例えば、コーテーションマーク’’)により、数値を示す数値識別子(’n’)を明示的に記述するので、数値以外の識別子と数値識別子とを含む式表現において、和演算子を用いて、式表現を作成することにより、数値演算を実行できる。   As described above, according to the information processing apparatus 200 of the present embodiment, things such as the number FML1, for example, a product expression, unit price, and number included in a plurality of shopping sets are expressed in a hierarchical expression. On the other hand, as shown in (A), the apple can be specified and the total amount can be obtained. On the other hand, as in (B4), (C), and (D), once the types are classified, such as those from Fukushima, Aomori, and Miyagi, formula expressions (algebraic expressions) that indicate the amount of the product are obtained. In this case, by combining these expression expressions with a sum operator, the total for each type can be used for operations such as subtotals for a plurality of types of products, totals for the whole, and the like. That is, for such subtotals or sums, a sum operator that is an operator that handles sets in an expression expression may be used as it is. That is, according to the information processing apparatus 200, an operator that explicitly indicates a numerical value n, and a numerical identifier ('n') that indicates a numerical value is explicitly described by a numerical operator (for example, a quotation mark ″). Therefore, in an expression expression including an identifier other than a numerical value and a numerical identifier, a numerical expression can be executed by creating an expression expression using a sum operator.

また、情報処理装置200によれば、数値以外の識別子と数値識別子とを含む式表現が得られている場合、例えば、1個200円のリンゴの単価がデータベースに記述され、リンゴ10個の購入が決まった場合に、情報処理装置200は、以下の式表現を作成できる。すなわち、情報処理装置200は、データベースから読み出したリンゴ×'200'×円×/×個と、購入個数を示す’10’個について、積演算子で結合し、リンゴ×'200'×円×/×個×’10’個から、リンゴ×'2000'×円を計算することができる。   Further, according to the information processing apparatus 200, when a formula expression including an identifier other than a numerical value and a numerical identifier is obtained, for example, the unit price of one apple of 200 yen is described in the database, and 10 apples are purchased. Is determined, the information processing apparatus 200 can create the following expression. That is, the information processing apparatus 200 combines the apples read out from the database × '200' × yen × / × pieces and the “10” pieces indicating the number of purchases with a product operator, and apples × '200' × yen × From / x pieces x '10' pieces, apple x '2000' x circle can be calculated.

すなわち、情報処理装置200によれば、事物を記述する識別子と、事物の数量を示す識別子を混在させて、集合を示す和演算子と積演算子の組み合わせによって、集合の概念と数値の加算(負の数による減算を含む)の概念とを区別なく記述し、数値の演算を実行できる。また、情報処理装置200によれば、積演算子が構成する因子について、事物の修飾の概念、例えば、リンゴ、リンゴ×青森、ハム、ハム×ロース等と、数量の概念、例えば、リンゴについての'200'×円、’10’個等とを混在させて取り扱うことができる。   That is, according to the information processing apparatus 200, an identifier describing an object and an identifier indicating the quantity of the object are mixed, and a combination of a sum operator and a product operator indicating the set adds a concept of the set and a numerical value ( (Including subtraction by negative numbers) can be described without distinction, and numerical operations can be performed. Further, according to the information processing apparatus 200, with respect to the factors formed by the product operator, the concept of modification of things, for example, apple, apple x Aomori, ham, ham x loin, and the concept of quantity, for example, apple '200' x circle, '10' etc. can be mixed and handled.

《第6実施形態》
図24および図25を参照して、第6実施形態に係る情報処理装置200について説明する。上記第2実施形態から第5実施形態では、式表現を用いて事物に係る情報をメモリ12等の記憶装置に蓄積し、蓄積された式表現を基に、その事物に係る数値を計算する処理を実現する情報処理装置200を例示した。これらの実施形態では、図11の数値処理フローに例示したように、情報処理装置200は、まず、数値識別子を明示的に表示しない式表現から数値識別子を明示的に表示した式表現である代数演算式に変換した。そして、図13、図14のように、数値計算処理を実行した。
<< 6th Embodiment >>
With reference to FIGS. 24 and 25, an information processing apparatus 200 according to the sixth embodiment will be described. In the second to fifth embodiments, information related to an object is stored in a storage device such as the memory 12 using an expression, and a numerical value related to the object is calculated based on the stored expression. The information processing apparatus 200 that realizes the above is illustrated. In these embodiments, as illustrated in the numerical processing flow of FIG. 11, the information processing apparatus 200 first has an algebra that is an expression that explicitly displays a numerical identifier from an expression that does not explicitly display the numerical identifier. Converted to arithmetic expression. And the numerical calculation process was performed like FIG. 13, FIG.

第6実施形態では、代数演算式への変換処理として、例えば、図11で例示される数値処理フローとは異なる処理が例示される。例えば、図11の処理では、変換対象の入力式に含まれる識別子が数字を含むか否かが判定され、識別子中の数字部分、あるいは数字で定義された識別子自体が数値化された。また、識別子が複数の数値部分を含む場合、すべての数値部分が数値化された。すなわち、図11の数値化処理で処理される式表現中の数字は、区別なく、そのまま数値された。   In the sixth embodiment, for example, a process different from the numerical processing flow illustrated in FIG. 11 is exemplified as the conversion process to the algebraic arithmetic expression. For example, in the process of FIG. 11, it is determined whether or not the identifier included in the input expression to be converted includes a numeral, and the numeric part in the identifier or the identifier itself defined by the numeral is digitized. Further, when the identifier includes a plurality of numerical parts, all the numerical parts are digitized. That is, the numbers in the expression expressed by the numerical processing in FIG.

第6実施形態では、式表現中の識別子が数字を含み、予め定義された識別子(以下、単位指定識別子と呼ぶ)と関連付けされているときに、式表現中の識別子が数値化される。ここで、単位指定識別子とは、数値が示す量あるいは数の単位を示す識別子である。したがって、第6実施形態の処理では、単位指定識別子と関連付けされていない識別子は、数字を含んでいても数値化されない。ここで、識別子が関連づけされている例としては、以下を例示できる。   In the sixth embodiment, when the identifier in the expression includes a number and is associated with a predefined identifier (hereinafter referred to as a unit designation identifier), the identifier in the expression is digitized. Here, the unit designation identifier is an identifier indicating a unit of quantity or number indicated by a numerical value. Therefore, in the process of the sixth embodiment, an identifier that is not associated with a unit designation identifier is not digitized even if it includes a number. Here, the following can be illustrated as an example with which the identifier is linked | related.

(1)識別子が単位識別子と積演算子で結合されている場合である。
(2)識別子中に、単位指定識別子として定義された記号列と、数字部分とが混在する場合である。
(1) This is a case where an identifier is combined with a unit identifier by a product operator.
(2) This is a case where a symbol string defined as a unit designation identifier and a numeric part are mixed in the identifier.

第6実施形態における数値処理以外の構成は、第1実施形態から第5実施形態と同様である。そこで、第6実施形態の情報処理装置200は、数値処理以外の構成については、第1実施形態から第5実施形態の構成をそのまま有するものとする。   Configurations other than the numerical processing in the sixth embodiment are the same as those in the first to fifth embodiments. Therefore, the information processing apparatus 200 of the sixth embodiment has the configurations of the first to fifth embodiments as they are except for the numerical processing.

図24に第6実施形態に係る情報処理装置200の構成を例示する。図24のように、第6実施形態に係る情報処理装置200は、処理部40とデータ部45と単位識別子記憶部45Bを有する。処理部40のうち、代数演算部40Aについては、第5実施形態の図23と同様であるので、その説明を省略する。   FIG. 24 illustrates the configuration of the information processing apparatus 200 according to the sixth embodiment. As illustrated in FIG. 24, the information processing apparatus 200 according to the sixth embodiment includes a processing unit 40, a data unit 45, and a unit identifier storage unit 45B. Among the processing units 40, the algebraic operation unit 40A is the same as that of FIG. 23 of the fifth embodiment, and thus the description thereof is omitted.

なお、図24では省略しているが、第2実施形態の図9と同様に、情報処理装置200は、入力部11、出力部14、通信32、外部記憶装置34、着脱可能記憶媒体アクセス装置36等を接続してもよい。ただし、入力部11、出力部14、通信32、外部記憶装置34、着脱可能記憶媒体アクセス装置36等は、必須の構成ではなく、情報処理装置200に要求される仕様にしたがって、適宜設ければよい。   Although omitted in FIG. 24, as in FIG. 9 of the second embodiment, the information processing apparatus 200 includes an input unit 11, an output unit 14, a communication 32, an external storage device 34, and a removable storage medium access device. 36 or the like may be connected. However, the input unit 11, the output unit 14, the communication 32, the external storage device 34, the removable storage medium access device 36, and the like are not essential configurations, and may be appropriately provided according to specifications required for the information processing device 200. Good.

処理部40のうち、変換部40Bは、単位指定識別子記憶部45Bを参照し、単位指定識別子を取得する。そして、変換部40Bは、単位指定識別子記憶部45Bに登録されている単位指定識別子と関連づけられた識別子、あるいは識別子中の数字部分を数値化する。   Of the processing unit 40, the conversion unit 40B refers to the unit designation identifier storage unit 45B and acquires the unit designation identifier. Then, the conversion unit 40B digitizes the identifier associated with the unit designation identifier registered in the unit designation identifier storage unit 45B or the numeric part in the identifier.

単位指定識別子記憶部45Bは、例えば、メモリ12、外部記憶装置34等に構築される。また、情報処理装置200は、外部記憶装置34に代えて、通信部32を介して接続されるネットワーク上の他の情報処理装置の外部記憶装置を用いてもよい。単位指定識別子記憶部45Bには、例えば、入力部11、通信32等を介して、情報処理装置200から、単位指定識別子を登録できるようにすればよい。単位指定識別子としては、例えば、そのまま単位を示す記号列を登録すればよい。   The unit designation identifier storage unit 45B is constructed in the memory 12, the external storage device 34, etc., for example. The information processing device 200 may use an external storage device of another information processing device on the network connected via the communication unit 32 instead of the external storage device 34. In the unit designation identifier storage unit 45B, for example, the unit designation identifier may be registered from the information processing apparatus 200 via the input unit 11, the communication 32, or the like. As the unit designation identifier, for example, a symbol string indicating the unit may be registered as it is.

例えば、通貨の単位として、円、¥(円の通貨記号)、doller(ドル)、$(ドルの通貨記号)、EUR(ユーロ)、ユーロの通貨記号等を例示できる。また、重さを示すグラム、g(グラムの記号)、キログラム、kg(キログラムの記号)を例示できる。長さの単
位として、メートル、meter(メートル)、m(メートルの記号)等を例示できる。単位
指定識別子は、任意にユーザが単位指定識別子記憶部45Bに定義できるようにしてもよい。例えば、ユーザは、特定の業界で用いられる所望の単位を単位指定識別子記憶部45Bに定義すればよい。また、ユーザは、単位を示す記号列として、任意に定義すればよい。例えば、ユーザは、円の代わりに、yen,あるいはYEN等を定義してもよい。
For example, yen, yen (yen currency symbol), dollar (dollar), $ (dollar currency symbol), EUR (euro), euro currency symbol, and the like can be exemplified as a unit of currency. Further, gram, g (gram symbol), kilogram, kg (kilogram symbol) indicating the weight can be exemplified. Examples of the unit of length include meter, meter (meter), m (meter symbol), and the like. The unit designation identifier may be arbitrarily defined by the user in the unit designation identifier storage unit 45B. For example, the user may define a desired unit used in a specific industry in the unit designation identifier storage unit 45B. The user may arbitrarily define the symbol string indicating the unit. For example, the user may define yen or YEN instead of a circle.

なお、図24では、式表現を格納するデータ部45とは別に、単位指定識別子記憶部45Bが設けられている。しかし、式表現を格納するデータ部45と単位指定識別子記憶部45Bが一体のものでもよい。例えば、情報処理装置200は、データ部45に、式表現とともに、単位指定識別子を登録しておいてもよい。   In FIG. 24, a unit designation identifier storage unit 45B is provided separately from the data unit 45 that stores the expression. However, the data part 45 for storing the expression and the unit designation identifier storage part 45B may be integrated. For example, the information processing apparatus 200 may register a unit designation identifier in the data unit 45 together with the expression expression.

図25に、第6実施形態に係る数値化処理フローを例示する。図25の数値化処理は、単位指定数値化処理と呼ばれる。この処理では、情報処理装置200は、まず、式表現を入力する(F201)。式表現の入力とは、例えば、図9に例示した入力部11等のユーザインターフェースからの入力、通信部32からの入力、外部記憶装置34からの入力等である。ただし、例えば、図25に示した処理がコンピュータプログラムのモジュールとして記述される場合には、式表現の入力は、モジュールの引数、共有メモリ等を通じた入力であってもよい。   FIG. 25 illustrates a numerical processing flow according to the sixth embodiment. The numerical processing in FIG. 25 is called unit designation numerical processing. In this process, the information processing apparatus 200 first inputs an expression expression (F201). The expression expression input includes, for example, an input from a user interface such as the input unit 11 illustrated in FIG. 9, an input from the communication unit 32, and an input from the external storage device 34. However, for example, when the processing shown in FIG. 25 is described as a module of a computer program, the expression expression may be input through a module argument, a shared memory, or the like.

次に、情報処理装置200は、入力された式表現から次の識別子を取得する(F202)。「次の」と記述されるのは、F202の処理が繰り返し実行されるからである。そして、情報処理装置200は、取得した識別子が単位指定識別子か否かを判定する(F203)。F203の判定では、情報処理装置200は、F202で取得した識別子と、単位指定識別子記憶部45Bで定義された単位指定識別子を照合する。そして、F202で取得した識別子が、単位指定識別子記憶部45Bに定義されている場合には、情報処理装置200は、その識別子が単位指定識別子であると判定すればよい。   Next, the information processing apparatus 200 acquires the next identifier from the input expression (F202). The reason that “next” is described is that the process of F202 is repeatedly executed. Then, the information processing apparatus 200 determines whether or not the acquired identifier is a unit designation identifier (F203). In the determination of F203, the information processing apparatus 200 collates the identifier acquired in F202 with the unit designation identifier defined in the unit designation identifier storage unit 45B. When the identifier acquired in F202 is defined in the unit designation identifier storage unit 45B, the information processing apparatus 200 may determine that the identifier is a unit designation identifier.

そして、F202で取得した識別子が単位指定識別子である場合、情報処理装置200は、単位指摘識別子と積演算子で結合された識別子を取得する。そして、情報処理装置200は、単位指摘識別子と積演算子で結合された識別子が数字を含むか否かを判定する(F204)。そして、単位指摘識別子と積演算子で結合された識別子が数字を含む場合に、情報処理装置200は、単位指摘識別子と積演算子で結合された識別子の数値を数値化する(F205)。数値化の手順、表記法は、図11の場合と同様である。   When the identifier acquired in F202 is a unit designation identifier, the information processing apparatus 200 acquires an identifier that is combined with a unit indication identifier by a product operator. Then, the information processing apparatus 200 determines whether or not the identifier combined with the unit indication identifier and the product operator includes a number (F204). Then, when the identifier combined with the unit indication identifier and the product operator includes a number, the information processing apparatus 200 digitizes the numerical value of the identifier combined with the unit indication identifier and the product operator (F205). The procedure and notation for digitization are the same as in FIG.

なお、F203の判定において、単位指定識別子と積演算子で結合する識別子が、単位指定識別子の右側に結合するか、左側に結合するかは、情報処理装置20内の規則、あるいは、変換部40Bの規則として、メモリ12、あるいは、外部記憶装置43等に格納しておけばよい。例えば、F203の処理を実行する変換部40Bの設計時に規則を確定し、変換部の処理に組み込めばよい。   In the determination of F203, whether the identifier combined with the unit designation identifier with the product operator is coupled with the right side or the left side of the unit designation identifier is determined according to the rule in the information processing apparatus 20 or the conversion unit 40B. As a rule, it may be stored in the memory 12, the external storage device 43, or the like. For example, a rule may be determined at the time of designing the conversion unit 40B that executes the process of F203 and incorporated into the process of the conversion unit.

F203、F204で、判定が偽(NO)の場合には、情報処理装置200は、処理をF206に進める。そして、情報処理装置は、次の識別子がF201で入力した識別子中に残っているか否かを判定する。次の識別子が残っている場合には、情報処理装置200は、処理をF202に戻す。一方、次の識別子が残っていない場合には、情報処理装置200は、変換後の式表現を出力する(F207)。ここで、出力先は、F201で式表現の入力先と同一とすればよい。ただし、図25に示した処理がコンピュータプログラムのモジュールとして記述される場合には、式表現の出力先は、モジュールの引数、関数の戻り値、共有メモリ等を通じた出力であってもよい。   In F203 and F204, if the determination is false (NO), the information processing apparatus 200 advances the process to F206. Then, the information processing apparatus determines whether or not the next identifier remains in the identifier input in F201. If the next identifier remains, the information processing apparatus 200 returns the process to F202. On the other hand, when the next identifier does not remain, the information processing apparatus 200 outputs the converted expression (F207). Here, the output destination may be the same as the input destination of the expression expression in F201. However, when the processing shown in FIG. 25 is described as a module of a computer program, the output destination of the expression expression may be an output through a module argument, a function return value, a shared memory, or the like.

以下、F203−F205の処理による変換結果を例示する。今、単位指定識別子記憶部45Bには、例えば、YEN、グラム、個が定義されていると仮定する。この場合に、式
表現として、豚肉×200×YEN×/×100×グラム×300×グラムは、豚肉ד200” ×YEN×/×’100’×グラム×’300’×グラムのように数値化される。そして、図13、図14の数値計算処理を実行すると、豚肉×”600”×YENが算出される。すなわち、100グラムあたり200円の豚肉を300グラム購入すると、600円となることが算出される。
Hereinafter, the conversion result by the process of F203-F205 is illustrated. Now, it is assumed that, for example, YEN, grams, and pieces are defined in the unit designation identifier storage unit 45B. In this case, as a formula expression, pork x 200 x YEN x / x 100 x g x 300 x g is a numerical value such as pork x "200" x YEN x / x '100' x g x '300' x g It becomes. Then, when the numerical calculation processes of FIGS. 13 and 14 are executed, pork × “600” × YEN is calculated. That is, when 300 grams of pork with 200 yen per 100 grams is purchased, it is calculated to be 600 yen.

図25の処理は、単位指定識別子と積演算子で結合する識別子中の一部の記号が数字で
あればよいので、次のような記述も可能である。例えば、式表現として、豚肉200×YEN
×/×100×グラム×300×グラム+リンゴ100×YEN×/×1×個×4×個は、F20
3−205の処理によって、豚肉ד200” ×YEN×/×グラム×’100’×グラム×’300’+リンゴ×’100’×YEN×/×’1’×個×’4’×個のように数値化される。
In the processing of FIG. 25, since some symbols in the identifier combined with the unit designation identifier by the product operator may be numbers, the following description is also possible. For example, as a formula expression, pork 200 × YEN
× / × 100 × gram × 300 × gram + apple 100 × YEN × / × 1 × piece × 4 × piece is F20
By processing 3-205, pork x “200” x YEN x / x gram x '100' x g x '300' + apple x '100' x YEN x / x '1' x piece x '4' x piece It is digitized as follows.

さらに、数値計算処理を実行すると、豚肉×”600”×YEN+リンゴ×’400’×YENのように、豚肉の購入費用が600円、リンゴの購入費用が400円であることが算出される。   Further, when the numerical calculation process is executed, it is calculated that the purchase cost of pork is 600 yen and the purchase cost of apple is 400 yen, such as pork x "600" x YEN + apple x '400' x YEN.

また、例えば、部品×パーツ番号×1010×500×YEN/1×個×10×個は、部
品×パーツ番号×1010×’500’×YEN/’1’×個×’10’×個のように、数値化さ
れる。この場合、部品×パーツ番号×1010については、単位指定識別子と積演算子で結合していないので、数値化されない。そして、数値計算処理を実行すると、部品×パーツ番号×1010×’5000’×YENが得られる。すなわち、パーツ番号1010の部品の
購入費用が5000円であることが算出される。
Also, for example, a part x a part number x 1010 x 500 x YEN / 1 x piece x 10 x pieces would be a part x part number x 1010 x '500' x YEN / '1' x piece x '10' x pieces. It is digitized. In this case, part × part number × 1010 is not quantified because it is not combined with the unit designation identifier by the product operator. When the numerical calculation process is executed, part × part number × 1010 × '5000' × YEN is obtained. That is, it is calculated that the purchase cost of the part with the part number 1010 is 5000 yen.

なお、以上の例示では、数字を含む識別子と、単位指定識別子の関係が、積演算子に対して左側に数字を含む識別子、右側に単位指定識別子が記述される例を説明した。しかし、逆に、積演算子に対して右側に数字を含む識別子、左側に単位指定識別子が記述されるようにしてもよい。要するに、情報処理装置200の変換部40Bにおいて、順序を決めておけばよい。また、単位指定識別子に積演算子で結合される数字を数値識別子に変換する場合に、変換後の数値識別子と単位指定識別子との順序も、情報処理装置200の変換部40Bにおいて決めておけばよい。したがって、情報処理装置200は、例えば、500×YENがYEN×’500’に変換するようにしてもよい。   In the above example, the relationship between an identifier including a number and a unit designation identifier has been described as an example in which an identifier including a number on the left side and a unit designation identifier on the right side are described with respect to the product operator. However, on the contrary, an identifier including a number on the right side and a unit designation identifier on the left side may be described for the product operator. In short, the order may be determined in the conversion unit 40B of the information processing apparatus 200. In addition, when a number combined with a unit designation identifier by a product operator is converted into a numeric identifier, the conversion unit 40B of the information processing apparatus 200 also determines the order of the converted numeric identifier and the unit designation identifier. Good. Therefore, for example, the information processing apparatus 200 may convert 500 × YEN into YEN × ′ 500 ′.

図26に、数値化処理の他の処理例を例示する。図25では、単位指定識別子と積演算子で結合される識別子中の数字を数値化した。図26では、識別子中の記号列として、単位指定識別子と数字部分を含む識別子を数値化する処理例を説明する。図26の処理を識別子の分割処理と呼ぶ。   FIG. 26 illustrates another processing example of the digitization processing. In FIG. 25, the number in the identifier combined with the unit designation identifier and the product operator is digitized. FIG. 26 illustrates an example of processing for digitizing an identifier including a unit designation identifier and a numeric part as a symbol string in the identifier. The process of FIG. 26 is referred to as an identifier dividing process.

単位指定識別子と数字部分を含む識別子とは、例えば、500円、500YEN、YEN500、$1000等である。この場合も、単位指定識別子と数字部分の記述順は、情報処理装置200の数値化処理および数値計算処理において、順序を決めておけばよい。   Examples of the unit designation identifier and the identifier including a numeric part are 500 yen, 500 YEN, YEN 500, and $ 1000. In this case as well, the description order of the unit designation identifier and the numerical part may be determined in the numerical processing and numerical calculation processing of the information processing apparatus 200.

図26の処理で、F211およびF212の処理は、図25のF201、F202と同様である。そして、情報処理装置200は、F212で取得した識別子が、数字部分と数字以外の記号部分を含み、数字以外の記号部分が単位指定識別子であるか、否かを判定する。すなわち、情報処理装置200は、F212で取得した識別子が数字を含む場合に、数字以外の記号部分を取得する。そして、数字以外の記号部分と、単位指定識別子記憶部45bとを照合し、数字以外の記号部分が、単位指定識別子記憶部45bに登録されているか否かを判定する(F213)。   In the processing of FIG. 26, the processing of F211 and F212 is the same as F201 and F202 of FIG. Then, the information processing apparatus 200 determines whether or not the identifier acquired in F212 includes a numeric part and a symbol part other than a numeral, and the symbol part other than the numeral is a unit designation identifier. That is, the information processing apparatus 200 acquires a symbol portion other than a number when the identifier acquired in F212 includes a number. Then, the non-numeric symbol part is compared with the unit designation identifier storage unit 45b to determine whether or not the non-numeric symbol part is registered in the unit designation identifier storage unit 45b (F213).

F213の判定が真(YES)の場合、情報処理装置200は、識別子の数字部分を数値化し、数字以外の記号部分と積演算子で結合する(F214)。F215、F216の処理は、図25のF206、F207の処理と同様であるので、その説明を省略する。   If the determination in F213 is true (YES), the information processing apparatus 200 digitizes the numeric part of the identifier and combines it with a symbol part other than a numeral by a product operator (F214). The processing of F215 and F216 is the same as the processing of F206 and F207 in FIG.

以下、F213、F214の処理による変換結果を例示する。今、単位指定識別子記憶部45Bには、例えば、YEN、グラム、個が定義されていると仮定する。この場合に、式
表現として、部品×パーツ番号1010×500YEN/1個×10個は、部品×パーツ番
号1010×’500’×YEN/’1’×個×’10’個のように、数値化される。そして、数
値計算処理によって、部品×パーツ番号1010×’5000’×YENが算出される。すなわ
ち、バーツ番号1010の部品の購入額が5000円であることが算出される。
Hereinafter, conversion results by the processes of F213 and F214 will be exemplified. Now, it is assumed that, for example, YEN, grams, and pieces are defined in the unit designation identifier storage unit 45B. In this case, as a formula expression, the part x part number 1010 x 500 YEN / 1 piece x 10 is a numerical value such as part x part number 1010 x '500' x YEN / '1' x piece x '10'. It becomes. Then, part × part number 1010 × '5000' × YEN is calculated by numerical calculation processing. That is, it is calculated that the purchase price of the part with the baht number 1010 is 5000 yen.

この場合にも、F213の判定において、数字部分と非数字部分の識別子内の並びの順序関係は、情報処理装置200において規定し、メモリ12あるいは外部記憶装置34等に格納しておけばよい。あるいは、F213の判定において、数字部分と記号部分の識別子内の並びの順序関係は、変換部40Bの設計段階で規定し、変換部40Bの処理に反映しておけばよい。例えば、識別子中で、数字部分と非数字部分とが、左右に隣接する場合に、F213の判定を真(YES)としてもよい。また、逆に、例えば、識別子中で、非数字部分と数字部分とが、左右に隣接する場合に、F213の判定を真(YES)としてもよい。   Also in this case, in the determination of F213, the order relationship of the arrangement in the identifiers of the numeric part and the non-numeric part may be defined by the information processing apparatus 200 and stored in the memory 12, the external storage device 34, or the like. Alternatively, in the determination of F213, the order relationship between the numbers in the identifiers of the numeric part and the symbol part may be defined at the design stage of the conversion unit 40B and reflected in the processing of the conversion unit 40B. For example, if the numeric part and the non-numeric part are adjacent to each other in the identifier, the determination of F213 may be true (YES). Conversely, for example, when the non-numeric part and the numeric part are adjacent to each other in the identifier, the determination of F213 may be true (YES).

同様に、F214において、数字部分が数値化されたときに、数値化された数値識別子と、非数字の記号を含む非数値識別子を積演算子で結合する順序も、情報処理装置200において規定し、メモリ12あるいは外部記憶装置34等に格納しておけばよい。また、数値化された数値識別子と、非数字の記号を含む非数値識別子を積演算子で結合する順序は、変換部40Bの設計段階で規定し、変換部40Bの処理に反映しておけばよい。したがって、500YENを数値化する場合に、’500’×YENとしてもよいし、YEN×’500’としてもよい。   Similarly, in F214, when the numeric part is digitized, the information processing apparatus 200 also defines the order in which the digitized numeric identifier and the non-numeric identifier including a non-numeric symbol are combined by a product operator. It may be stored in the memory 12 or the external storage device 34 or the like. In addition, the order in which the digitized numeric identifier and the non-numeric identifier including a non-numeric symbol are combined by the product operator is defined at the design stage of the conversion unit 40B and reflected in the processing of the conversion unit 40B. Good. Therefore, when 500YEN is digitized, it may be '500' × YEN or YEN × '500'.

以上述べたように、第6実施形態の情報処理装置200によれば、単位指定識別子記憶部45bに登録された単位指定識別子と積演算子で結合される識別子中の数字部分が数値化され、図13、図14で述べた数値演算処理によって、数値演算される。また、1つの識別子中に、数字部分と数字以外の記号部分が含まれる場合で、数字以外の記号部分が単位指定識別子記憶部45bに登録された単位指定識別子である場合も、数字部分が数値化される。   As described above, according to the information processing apparatus 200 of the sixth embodiment, the numeric part in the identifier combined with the unit designation identifier registered in the unit designation identifier storage unit 45b by the product operator is digitized, Numerical calculation is performed by the numerical calculation processing described with reference to FIGS. Also, when a single identifier includes a numeric part and a non-numeric symbol part, and the non-numeric symbol part is a unit designation identifier registered in the unit designation identifier storage unit 45b, the numeric part is a numeric value. It becomes.

一方、単位指定識別子と関連づけられていない数字は、数値化されない。例えば、数字の識別子nnnが、単位指定識別子と積演算子で結合されていない場合には、変換部40Bによって数値化されない。また、1つの識別子中に、数字部分と非数字部分を含む識別子で、非数字部分が単位指定識別子でない識別子も、数値化されない。したがって、部品×パーツ番号×1010のような式表現、あるいは、部品×パーツ番号1010のような式表現を維持した上で、500×YEN/1×個×10×個あるいは500YEN/1個×10個のような数字の部分だけを数値化し、数値計算することができる。すなわち、第6実施形態の情報処理装置200によれば、数値計算の対象としたい数字には、単位指定識別子を関連づけておけばよい。そして、パーツ番号のように、数値計算対象としたくない識別を維持した上で、量を示す識別子の数字部分を数値計算の対象とすることができる。   On the other hand, numbers that are not associated with unit designation identifiers are not digitized. For example, when the numeric identifier nnn is not combined with the unit designation identifier by the product operator, it is not digitized by the conversion unit 40B. Also, an identifier that includes a numeric part and a non-numeric part in one identifier and whose non-numeric part is not a unit designation identifier is not digitized. Accordingly, while maintaining an expression such as part × part number × 1010 or an expression such as part × part number 1010, 500 × YEN / 1 × piece × 10 × piece or 500YEN / 1 piece × 10 Only numerical parts like numbers can be digitized and numerically calculated. That is, according to the information processing apparatus 200 of the sixth embodiment, a unit designation identifier may be associated with a number to be numerically calculated. Then, while maintaining the identification that is not to be numerically calculated, such as the part number, the numerical portion of the identifier indicating the quantity can be the target of numerical calculation.

以上の情報処理装置200の処理によれば、事物の識別情報としての数字と、事物の量を示す識別情報としての数字を混在して、式表現中に記述できる。そして、事物の量を示す識別情報としての数字に、単位指定識別子を付与し、その単位指定識別子を単位指定識別子記憶部45Bに登録しておくことで、事物の量を示す識別子、つまり数字の数値計算処理を実行できる。このような処理は、例えば、商品の販売額、人事部門での社員の給与、調達部門の調達額、設計部門での設計上の見積もり、研究部門での研究記録、実験記録等を式表現で記述し、記憶し、集計処理等を実行する上で、極めて有用である。すなわち、情報処理装置200では、式表現によって、種々の事物を示すデータを柔軟に記述し、データ部45に登録しておくことができる。そして、単位指定識別子記憶部45Bに登録された単位指定識別子を基に、式表現中の数字を数値化し、様々なデータの集計、商演算よる検索、部分集合の取得等を実行し、事物の記録と代数演算処理を実行できる。   According to the processing of the information processing apparatus 200 described above, numbers as identification information of things and numbers as identification information indicating the amount of things can be mixed and described in the expression. Then, by assigning a unit designation identifier to a number as identification information indicating the amount of the thing and registering the unit designation identifier in the unit designation identifier storage unit 45B, an identifier indicating the amount of the thing, that is, a number Numerical calculation processing can be executed. Such processing can be expressed in a formula expression, for example, product sales, employee salary in the personnel department, procurement amount in the procurement department, design estimate in the design department, research record in the research department, experiment record, etc. It is extremely useful in describing, memorizing, and executing aggregation processing. In other words, the information processing apparatus 200 can flexibly describe data indicating various things and register the data in the data unit 45 by expression. Then, based on the unit designation identifier registered in the unit designation identifier storage unit 45B, the number in the expression is digitized, and various data are aggregated, search by quotient calculation, acquisition of a subset, etc. Can perform recording and algebraic processing.

なお、上記では、数値が整数の場合を例示したが、数値が整数以外の実数であっても上記と同様である。情報処理装置200は、例えば、豚肉200×YEN×/×100×グラム×300.28×グラムを豚肉’200’×YEN×/×’100’×グラム×’300.28’の数値化する。また、情報処理装置200は、例えば、式表現である部品×パーツ番号1010×5.12kg/1個×10個を、部品×パーツ番号1010×’5.12’×kg/’1’×個×’10’×個のように数値化する。   In addition, although the case where the numerical value was an integer was illustrated above, even if the numerical value is a real number other than an integer, it is the same as above. For example, the information processing apparatus 200 digitizes pork 200 × YEN × / × 100 × gram × 300.28 × gram into pork “200” × YEN × / × “100” × gram × ’300.28 ′. In addition, the information processing apparatus 200, for example, uses a part expression × part number 1010 × 5.12 kg / 1 piece × 10 parts, a part × part number 1010 × '5.12' × kg / '1' × pieces. X'10 'x is converted into a numerical value.

《第7実施形態》
第2実施形態では、情報処理装置200は、式表現中の数字を数値化し、数値計算を実行した。また、第6実施形態では、情報処理装置200は、単位指定識別子と関連づけされた数値を含む識別子を数値化し、数値計算を実行した。第7実施形態では、数値計算処理に数値を表す文字変数を導入する。例えば、第2実施形態から第6実施形態では、数値(n)を示す数値識別子(’n’)は、数値演算子(’’)によって、明示的に記述され
た。本実施形態では、数値演算子(’’)によって、数値を示す変数識別子(例えば、’X’,’Y’,’Z’等)を記述し、変数識別子の値を求める処理を例示する。ここで、変数識別子(’X’等)の値を求めるための条件として、第1の式表現と、第1の式表現に対して等価な第2の式表現とを関係づけるための等価演算子を導入する。変数識別子と等価演算子よる等価因子が導入される点以外の情報処理装置200の構成および処理は、第1実施形態から第6実施形態と同様である。すなわち、第7実施形態における情報処理装置200の構成および処理は、第1実施形態から第6実施形態の構成および処理と組み合わせて実行される。
<< 7th Embodiment >>
In the second embodiment, the information processing apparatus 200 digitizes the number in the expression and executes the numerical calculation. In the sixth embodiment, the information processing apparatus 200 digitizes an identifier including a numerical value associated with a unit designation identifier and executes numerical calculation. In the seventh embodiment, a character variable representing a numerical value is introduced into the numerical calculation process. For example, in the second to sixth embodiments, the numerical identifier ('n') indicating the numerical value (n) is explicitly described by the numerical operator (''). In the present embodiment, a variable identifier indicating a numerical value (for example, “X”, “Y”, “Z”, etc.) is described by a numerical operator (″), and a process for obtaining the value of the variable identifier is exemplified. Here, as a condition for obtaining the value of the variable identifier (such as 'X'), an equivalent operation for associating the first expression and the second expression equivalent to the first expression Introduce a child. The configuration and processing of the information processing apparatus 200 are the same as those in the first to sixth embodiments except that an equivalent factor using a variable identifier and an equivalent operator is introduced. That is, the configuration and processing of the information processing apparatus 200 in the seventh embodiment are executed in combination with the configuration and processing of the first to sixth embodiments.

本実施形態では、等価演算子は、例えば、等号(=)で示される。ただし、等価演算子として、他の記号を用いてもよい。また、等価演算子によって、関係づけられた第1の式表現と第2の式表現とを等価因子と呼ぶ。   In the present embodiment, the equivalence operator is indicated by, for example, an equal sign (=). However, other symbols may be used as the equivalent operator. Further, the first expression expression and the second expression expression related by the equivalent operator are called equivalent factors.

ここでは、等価因子に対して、以下の等価因子処理hを定義する。等価因子となる第1の式表現と第2の式表現は、以下のように表される。   Here, the following equivalent factor processing h is defined for the equivalent factor. The first expression and the second expression that are equivalent factors are expressed as follows.

第1の式表現=第2の式表現
等価因子処理hは、等価因子となっている式表現に、以下の3つの処理を実行する。
First Expression Expression = Second Expression Expression The equivalent factor process h performs the following three processes on the expression expression that is an equivalent factor.

(1)等価因子間で共通の因子を削除する処理
h:a×b×=×a×c =>b×=×c・・・(数AP21)
すなわち、等価因子処理hは、等価識別子で関係付けられた2つの等価因子間(a×b×と×a×cとの間)の関係に対して、共通の因子を削除し、共通でない因子を含む第1の式表現b×と、第2の式表現との関係に変換する。
(1) Processing to delete factors common among equivalent factors h: a × b × = × a × c => b × = × c (Equation AP21)
That is, the equivalent factor process h deletes a common factor for a relationship between two equivalent factors (between a × b × and × a × c) related by an equivalent identifier, and a non-common factor Is converted into a relationship between the first expression expression b × including the second expression expression.

(2)等価因子間の数値識別子の乗算および除算処理
h:'p'×a×=×'q'×c => a×=×'q/p'×c・・・(数AP22)
すなわち、等価因子処理hは、等価識別子で関係付けられた2つの等価因子間('p'×a×と×'q'×cとの間)の関係に対して、同一の数値識別子(’p’)の乗算または除算を実行する。ただし、除算処理は、べき乗の指数として、(―1)を用いることによって、乗算として記述できる。
(2) Multiplication and division processing of numerical identifiers between equivalent factors h: 'p' × a × = × 'q' × c => a × = × 'q / p' × c (Equation AP22)
That is, the equivalent factor process h is the same numerical identifier (') for the relationship between two equivalent factors (' p '× a × and ×' q '× c) related by the equivalent identifier. p ') multiplication or division. However, the division process can be described as multiplication by using (−1) as the exponent of the power.

(3)等価因子間の数値識別子の加算(および減算)処理
h:'p'+a×=×'q'+c => 'a×=×'(q-p)'+c・・・(数AP23)
すなわち、等価因子処理hは、等価識別子で関係付けられた2つの等価因子間('p'+a
×と×'q'+cとの間)の関係に対して、同一の数値識別子(’p’)の加算または減算を実行する。ただし、減算処理は、負の数を用いることによって、加算として記述できる。
(3) Addition (and subtraction) of numeric identifiers between equivalent factors h: 'p' + a × = × 'q' + c =>'a × = ×' (qp) '+ c (number) AP23)
In other words, the equivalent factor process h is performed between two equivalent factors ('p' + a
Addition or subtraction of the same numerical identifier ('p') is performed on the relationship between x and x'q '+ c). However, the subtraction process can be described as addition by using a negative number.

以下に処理例を示す。ここでは、青森県産のリンゴ(1個180円)、宮城県産のリンゴ(1個150円)、福島県産のリンゴ(1個200)とする。さらに、次のような買い物セット1と買い物セット2を設定する。例えば、買い物セット1は、青森県産のリンゴ1個と、宮城県産のリンゴを1個含む。また、買い物セット1は、青森県産のリンゴ4個と、福島県産のリンゴ5個を含む。ここでは、買い物セット1を2セット、買い物セット2を3セット購入する場合を検討する。この場合の購入した商品と金額を示す式表現は以下の通りである。   A processing example is shown below. Here, apples from Aomori prefecture (180 yen each), apples from Miyagi prefecture (150 yen each), and apples from Fukushima prefecture (200 yen each) are assumed. Further, the following shopping set 1 and shopping set 2 are set. For example, the shopping set 1 includes one apple from Aomori Prefecture and one apple from Miyagi Prefecture. The shopping set 1 includes 4 apples from Aomori Prefecture and 5 apples from Fukushima Prefecture. Here, consider a case where two sets of shopping set 1 and three sets of shopping set 2 are purchased. In this case, the formula expression indicating the purchased product and the amount is as follows.

買い物セット1×(リンゴ×(青森産×180円×/×個×1個+宮城産×150円×/×個×1個))/×セット×2セット+買い物セット2×(リンゴ×(青森産×180円×/×個×4個+
福島産×200円×/×個×5個))/×セット×3セット・・・(数AP24)
Shopping set 1 x (Apple x (Aomori x 180 yen x / x pieces x 1 + Miyagi x 150 yen x / x pieces x 1)) / x set x 2 sets + shopping set 2 x (apple x ( Aomori x 180 yen x / x x 4 x
Fukushima x200 yen x / x pieces x 5 pieces)) / x set x 3 sets ... (several AP24)

この式表現に対して、第2実施形態の数値化処理を実行すると、以下の代数演算式が得られる。   When the numerical processing of the second embodiment is performed on this expression, the following algebraic arithmetic expression is obtained.

買い物セット1×(リンゴ×(青森産×'180'×円×/×個×'1'×個+宮城産×'180'×円
×/×個×'1'×個))/×セット×'2'×セット+買い物セット2×(リンゴ×(青森産×'180'×円×/×個×'4'×個+福島産×'200'×円×/×個×'x'×個))/×セット×'3'×セット=リンゴ×'5000'×円・・・(数AP25)
Shopping set 1 x (Apple x (Aomori x '180' x Yen x / x pieces x '1' x pieces + Miyagi x x 180 'x Yen x / x pieces x' 1 'x pieces)) / x set × '2' × set + shopping set 2 × (apple × (Aomori product × '180' × circle × / × piece × '4' × piece + Fukushima × × 200 '× circle × / × piece ×' x ' X pieces)) / x set x '3' x set = apple x '5000' x yen ... (several AP25)

さらに、情報処理装置は、リンゴ+/+円+個+セット+=+[0...9]によってフィルタ処理を
実行する。すなわち、ここでは、情報処理装置は、代数演算式の識別子として、リンゴ、/、円、個、セット、=および数字の0から9以外の因子を除去する処理を実行する。フィルタ処理の結果、得られる代数演算式は、以下の通りである。
Further, the information processing apparatus executes the filtering process by apple + / + circle + piece + set + = + [0 ... 9]. That is, here, the information processing apparatus executes processing for removing factors other than 0 to 9 of apple, /, circle, piece, set, and number as identifiers of algebraic expressions. The algebraic arithmetic expression obtained as a result of the filtering process is as follows.

(リンゴ×('180'×円×/×個×'1'×個+'150'×円×/×個×'1'×個))/×セット×'2'
×セット+(リンゴ×('180'×円×/×個×'4'×個+'200'×円×/×個×'5'×個))/×セッ
ト×'3'×セット・・・(数AP26)
(Apple x ('180' x circle x / x pieces x '1' x pieces + '150' x circle x / x pieces x '1' x pieces)) / x set x '2'
× set + (apple × ('180' × circle × / × piece × '4' × piece + '200' × circle × / × piece × '5' × piece)) / × set × '3' × set .. (Number AP26)

この代数演算式に対して、図13、図14に示した数値計算処理を実行すると、(リン
ゴ×円×'330')×'2'+(リンゴ×円×'1720')×'3'となり、さらに、リンゴ×円×'5490'
が得られる。
When the numerical calculation processing shown in FIGS. 13 and 14 is performed on this algebraic expression, (apple × circle × '330') × '2' + (apple × circle × '1720') × '3' Then, apple x yen x '5490'
Is obtained.

ここで、数AP24で定義される商品と金額の買い物おいて、合計金額が5000円以下になるように、例えば、福島県産のリンゴの数を調整する場合を考える。つまり、ここでは、買い物セット2における福島県産のリンゴの数を調整し、購入額の合計が例えば、予算5000円に収まるように、買い物セットの構成を変更する。そこで、数AP24の式表現において、買い物セット2の福島県産のリンゴの数をx個に置き換えて、等価因子として、リンゴ×5000円を設定する。   Here, a case is considered in which, for example, the number of apples produced in Fukushima Prefecture is adjusted so that the total price is 5000 yen or less in the shopping for the product and the price defined by the number AP24. That is, here, the number of apples produced in Fukushima Prefecture in the shopping set 2 is adjusted, and the configuration of the shopping set is changed so that the total purchase amount falls within, for example, a budget of 5000 yen. Therefore, in the expression of the number AP24, the number of apples produced in Fukushima Prefecture in the shopping set 2 is replaced with x, and an apple × 5000 yen is set as an equivalent factor.

買い物セット1×(リンゴ×(青森産×180円×/×個×1個+宮城産×150円×/×個×1個))/×セット×2セット+買い物セット2×(リンゴ×(青森産×180円×/×個×4個+
福島産×200円×/×個×x個))/×セット×3セット=リンゴ×5000円・・・(数AP27)
Shopping set 1 x (Apple x (Aomori x 180 yen x / x pieces x 1 + Miyagi x 150 yen x / x pieces x 1)) / x set x 2 sets + shopping set 2 x (apple x ( Aomori x 180 yen x / x x 4 x
Fukushima x 200 yen x / x pieces x x pieces)) / x set x 3 sets = apple x 5000 yen ... (several AP27)

数AP27を数値化すると以下の通りである。   The numerical value of the number AP27 is as follows.

買い物セット1×(リンゴ×(青森産×'180'×円×/×個×'1'×個+宮城産×'180'×円
×/×個×'1'×個))/×セット×'2'×セット+買い物セット2×(リンゴ×(青森産×'180'
×円×/×個×'4'×個+福島産×'200'×円×/×個×'x'×個))/×セット×'3'×セット=
リンゴ×'5000'×円・・・(数AP28)
Shopping set 1 x (Apple x (Aomori x '180' x Yen x / x pieces x '1' x pieces + Miyagi x x 180 'x Yen x / x pieces x' 1 'x pieces)) / x set × '2' × set + shopping set 2 × (apple × (Aomori product × '180'
× yen × / × pieces × '4' × pieces + Fukushima × '200' × circle × / × pieces × 'x' × pieces)) / × set × '3' × set =
Apple x '5000' x yen ... (several AP28)

さらに、リンゴ+/+円+個+セット+=+[0...9]でフィルタ処理を実行すると、以下の通り
である。
Furthermore, when the filtering process is executed with apple + / + circle + piece + set + = + [0 ... 9], it is as follows.

(リンゴ×('180'×円×/×個×'1'×個+'150'×円×/×個×'1'×個))/×セット×'2'
×セット+(リンゴ×('180'×円×/×個×'4'×個+'200'×円×/×個×'x'×個))/×セッ
ト×'3'×セット=リンゴ×'5000'×円・・・(数AP29)
(Apple x ('180' x circle x / x pieces x '1' x pieces + '150' x circle x / x pieces x '1' x pieces)) / x set x '2'
× set + (apple × ('180' × circle × / × piece × '4' × piece + '200' × circle × / × piece × 'x' × piece)) / × set × '3' × set = Apple x '5000' x Yen (number AP29)

さらに、数値計算処理を実行すると、以下の通りである。   Furthermore, when the numerical calculation process is executed, it is as follows.

(リンゴ×円×'330')×'2'+(リンゴ×円×('720'+'200'×'x')×'3'=リンゴ×'5000'×円
リンゴ×円×('2820'+'600'×'x')=リンゴ×'5000'×円・・・(数AP30)
(Apple x circle x '330') x '2' + (apple x circle x ('720' + '200' x 'x') x '3' = apple x '5000' x circle apple x circle x (' 2820 '+' 600 '×' x ') = apple x' 5000 'x yen ... (several AP30)

数AP30において、等価因子間の数値識別子の加算処理および等価因子間の数値識別子の乗算処理を実行すると、('2820'+'600'×'x')='5000'が得られ、'x'='3.63'が得られる。よって、買い物セット1の福島県産のリンゴを3個以下にすれば、数AP24での買い物の合計金額を5000円以下にすることができる。   When the numerical identifier addition processing between the equivalent factors and the numerical identifier multiplication processing between the equivalent factors are executed in the number AP30, ('2820' + '600' × 'x') = '5000' is obtained, and 'x '=' 3.63 'is obtained. Therefore, if the number of apples from Fukushima Prefecture in the shopping set 1 is reduced to 3 or less, the total amount of shopping at several AP24 can be reduced to 5000 yen or less.

図27に、数値変数と、等価因子による数値計算処理を実行する処理フローを例示する。この処理では、情報処理装置200は、数値変数を含む第1の式表現を設定する(F221)。数値変数は、例えば、変数X、Y、Z等を予約語としておいてもよい。あるいは、数値識別子(例えば、‘’)で数値として定義された数字以外の記号の識別子(例えば、’X’,’Y’,’Z’等)を、数値変数を表す識別子として処理してもよい。数値識別子によって数値変数を表す識別子を定義する場合には、予約語は不要となる。第1の式表現の例は、例えば、数AP27の等価識別子(=)の左側の式表現である。   FIG. 27 illustrates a processing flow for executing numerical calculation processing using numerical variables and equivalent factors. In this process, the information processing apparatus 200 sets a first expression expression including a numerical variable (F221). For example, variables X, Y, and Z may be reserved words as numerical variables. Alternatively, an identifier of a symbol other than a number defined as a numerical value by a numerical identifier (for example, '') (for example, 'X', 'Y', 'Z', etc.) may be processed as an identifier representing a numerical variable. Good. When an identifier representing a numerical variable is defined by a numerical identifier, a reserved word is not necessary. An example of the first expression expression is an expression expression on the left side of the equivalent identifier (=) of the number AP27, for example.

次に、情報処理装置200は、第1の式表現と等価な関係にある式表現を等価因子に設定する(F222)。第1の式表現と等価な関係にある式表現の例は、例えば、数AP27の等価識別子(=)の右側の式表現(リンゴ×5000円)である。F221、およびF222の処理は、例えば、式表現を設定するユーザインターフェースへのユーザの入力にしたがった実行すればよい。また、例えば、テキストエディタ等を用いて、ユーザが第1の式表現および等価な式表現(以下、第2の式表現という)を設定してもよい。ただし、例えば、図27に示した処理がコンピュータプログラムのモジュールとして記述される場合には、F221、F222の処理は、モジュールの引数、共有メモリ等を通じた設定であってもよい。   Next, the information processing apparatus 200 sets an expression expression having a relationship equivalent to the first expression expression as an equivalent factor (F222). An example of an expression that is equivalent to the first expression is an expression on the right side of the equivalent identifier (=) of the number AP27 (apple x 5000 yen). The processing of F221 and F222 may be executed according to the user input to the user interface for setting the expression expression, for example. Further, for example, the user may set a first expression and an equivalent expression (hereinafter referred to as a second expression) using a text editor or the like. However, for example, when the processing shown in FIG. 27 is described as a module of a computer program, the processing of F221 and F222 may be set through module arguments, shared memory, and the like.

次に、情報処理装置200は、第1の式表現および等価因子として定義された第2の式表現に数値化処理を実行する(F223)。数値化処理は、等価識別子(=)の左右に設定されたそれぞれの式表現に対して実行すればよい。この場合、数値変数が予約語(X等)の場合には、単に予約語に数値識別子を設定し、数値変数(’X’等)とすればよい。また、数値変数としてすでに、数値識別子が設定されている場合、すなわち、F221の処理で、数値変数として、’X’等の記述されている場合には、そのまま数値変数(’X’等)を代数演算式に設定すればよい。   Next, the information processing apparatus 200 performs numerical processing on the first expression and the second expression defined as the equivalent factor (F223). The digitization process may be executed for each expression expressed on the left and right of the equivalent identifier (=). In this case, if the numerical variable is a reserved word (X or the like), a numerical identifier may be simply set in the reserved word to be a numerical variable ('X' or the like). When a numerical identifier has already been set as a numerical variable, that is, when “X” or the like is described as a numerical variable in the process of F221, a numerical variable (such as “X”) is used as it is. What is necessary is just to set to an algebraic expression.

さらに、情報処理装置200は、数値化された第1の式表現および、数値化された第2の式表現に、フィルタ処理を実行する(F224)。フィルタ処理は、図18の処理と同様である。そして、情報処理装置200は、数値変数を含む項と項の加算、および、数値
変数を含む項以外の項の減算(負の符号を項に付した加算)を実行する(F225)。このような処理によって、等価演算子の一方側に、数値変数(例えば、’X’)を含む項だ
けが残される。
Further, the information processing apparatus 200 performs a filtering process on the first numerical expression expressed and the second numerical expression expressed (F224). The filter process is the same as the process of FIG. Then, the information processing apparatus 200 executes addition of a term including a numerical variable and a term, and subtraction of a term other than the term including the numerical variable (addition with a negative sign added to the term) (F225). By such processing, only a term including a numeric variable (for example, “X”) is left on one side of the equality operator.

次に、情報処理装置200は、数値変数を含む項の数値変数以外の因子を除算(―1のべき乗を付した因子の乗算)を実行する(F226)。その結果、等価演算子の一方側に、数値変数(例えば、’X’)だけが残され、’X’=代数演算式の形式で、数値変数’X’の値が得られる。代数演算式に、数値計算を実行することで数値変数の’X’の値が得られる。そして、情報処理装置は、数値変数’X’の値を出力する(F227)。ここで、出力先は、F221、F22での入力先と同一(ユーザインターフェース等)とすればよい。ただし、図27に示した処理がコンピュータプログラムのモジュールとして記述される場合には、式表現の出力先は、モジュールの引数、関数の戻り値、共有メモリ等を通じた出力であってもよい。   Next, the information processing apparatus 200 performs division (multiplication of a factor with a power of −1) on factors other than the numeric variable of the term including the numeric variable (F226). As a result, only the numerical variable (for example, “X”) is left on one side of the equivalent operator, and the value of the numerical variable “X” is obtained in the form of “X” = algebraic expression. A numerical variable 'X' can be obtained by performing a numerical calculation on the algebraic expression. Then, the information processing apparatus outputs the value of the numerical variable “X” (F227). Here, the output destination may be the same as the input destination in F221 and F22 (such as a user interface). However, when the processing shown in FIG. 27 is described as a module of a computer program, the output destination of the expression expression may be an output through a module argument, a function return value, a shared memory, or the like.

以上述べたように、数値演算子(’’)と変数(X,Y,Z等)とによって、数値であることを明示する数値変数(’X’,’Y’,’Z’等)を定義し、等価因子によって、2つの等価な式表現(あるいは、代数演算式)を結合することで、情報処理装置200のメモリ12、あるいは外部記憶装置34上に、方程式を記述できる。   As described above, numerical variables ('X', 'Y', 'Z', etc.) that clearly indicate a numerical value are expressed by numerical operators ('') and variables (X, Y, Z, etc.). An equation can be described on the memory 12 of the information processing apparatus 200 or the external storage device 34 by defining and combining two equivalent expression expressions (or algebraic arithmetic expressions) by an equivalent factor.

等価因子によって結合される式表現、あるいは、代数演算式は、第1実施形態から第6実施形態で情報処理装置200が処理したものと同様のものである。すなわち、本実施形態の情報処理装置200は、様々な事物を式表現で記述し、ユーザ所望の式表現の部分を商演算等の分割演算で取得し、代数演算式に変換する。その場合に、特定の事物の数量を数値変数(’ ’X’,’Y’,’Z’等)に設定し、等価因子によって、数値変数(’
X’,’Y’,’Z’等)を含む2つの式表現(あるいは代数演算式)を結合することで、方程式を記述できる。そして、等価因子で結合された2つの式表現を代数演算式に変換し、数値演算処理を実行することで、変数(’X’等)の値を求めることができる。
The expression expression or the algebraic arithmetic expression combined by the equivalent factor is the same as that processed by the information processing apparatus 200 in the first to sixth embodiments. In other words, the information processing apparatus 200 according to the present embodiment describes various things in an expression expression, acquires a part of an expression expression desired by a user by a division operation such as a quotient operation, and converts it into an algebraic expression. In that case, the quantity of a specific thing is set to a numeric variable ('' X ',' Y ',' Z ', etc.), and the numeric variable ('
An equation can be described by combining two expression expressions (or algebraic expressions) including X ′, “Y”, “Z” and the like. Then, by converting the two expression expressions combined by the equivalent factor into an algebraic operation expression and executing a numerical operation process, the value of a variable (such as “X”) can be obtained.

上記第7実施形態では、簡単な処理例として、リンゴの個数を求める問題の解析例を示したが、数値変数(’X’等)と等価因子による処理は、このような簡単なものに限定される訳ではない。例えば、情報処理装置200は、物品の単価と、販売量、購入量、消費量等を管理するデータベースを式表現で構築しておき、予算額から、物品の販売量、購入量、消費量等を決定する処理、物品の販売量、購入量、消費量等の増加量を求める処理などを実行できる。また、情報処理装置200は、例えば、材料毎の単位体積当たりの要求数量等を式表現で記述しておき、設計上の寸法から構造物の体積を記述する式表現を作成し、それぞれの材料の必要量を求める処理などを実行してもよい。すなわち、等価因子と数値変数(’x’,’y’,’z’等)を式表現あるいは代数演算式に導入することによっ
て、様々な事物の量を求める方程式をコンピュータ上で記述し、解を求めることができる。
In the seventh embodiment, an analysis example of the problem of obtaining the number of apples has been shown as a simple processing example. However, processing using numerical variables (such as “X”) and equivalent factors is limited to such simple processing. It is not done. For example, the information processing apparatus 200 constructs a database that manages the unit price of goods, sales amount, purchase amount, consumption amount, and the like by formula expression, and from the budget amount, the sales amount, purchase amount, consumption amount, etc. of the item And the like, and the process for obtaining an increase in the amount of goods sold, the amount purchased, the amount consumed, etc. can be executed. In addition, the information processing apparatus 200, for example, describes the required quantity per unit volume for each material in a formula expression, creates a formula expression describing the volume of the structure from the design dimensions, and each material A process for obtaining the required amount may be executed. In other words, by introducing equivalent factors and numerical variables ('x', 'y', 'z', etc.) into formula expressions or algebraic arithmetic expressions, equations that calculate the amount of various things are described on a computer and solved. Can be requested.

100、200 情報処理装置
11 入力部
12 メモリ
13 CPU
14 出力部
15、16、31、33、33 インターフェース
32 通信部
34 外部記憶装置
36 着脱可能記憶媒体アクセス装置
40 処理部
40A 代数演算部
41 ユーザインターフェース画面
42 要素情報編集・格納部
43 要素情報抽出・演算部
44 代数演算部
46 共通関数ライブラリ
100, 200 Information processing apparatus 11 Input unit 12 Memory 13 CPU
14 Output unit 15, 16, 31, 33, 33 Interface 32 Communication unit 34 External storage device 36 Removable storage medium access device 40 Processing unit 40A Algebra operation unit 41 User interface screen 42 Element information editing / storage unit 43 Element information extraction / Calculation unit 44 Algebra calculation unit 46 Common function library

Claims (27)

識別子と、因子の列として複数の識別子を結合する積演算子と、識別子および因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述され、前記識別子として数字を含み数値であることを数値演算子によって明示する数値識別子と前記数値識別子以外の非数値識別子とを含む、対象情報を記憶する記憶部と、
前記対象情報を操作する処理部と、を備え、
前記処理部は、前記因子の列として積演算子で結合される因子のうち、前記非数値識別子を残して数値識別子で表される数値間で乗算を実行し、前記項の組み合わせに対して前記非数値識別子を共通の因子とする複数の項について数値識別子で表される数値間で加算を実行する代数演算部を有する情報処理装置。
Described by an identifier, a product operator that combines multiple identifiers as a sequence of factors, and a sum operator that forms a combination of terms from either or both of the identifiers combined as a sequence of identifiers and factors A storage unit for storing target information, including a numerical identifier that includes a number as the identifier and that is a numerical value by a numerical operator and a non-numeric identifier other than the numerical identifier;
A processing unit for operating the target information,
The processing unit performs multiplication between the numerical values represented by the numerical identifiers leaving the non-numeric identifier among the factors combined by a product operator as the sequence of the factors, and for the combination of the terms An information processing apparatus having an algebraic operation unit that performs addition between numerical values represented by numerical identifiers for a plurality of terms having non-numeric identifiers as common factors.
前記処理部は、1以上の数字を含む識別子を前記数値識別子に変換する変換部をさらに有する請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the processing unit further includes a conversion unit that converts an identifier including one or more numbers into the numerical identifier. 数値の単位を示す単位指定識別子を記憶した単位指定識別子記憶部をさらに備え、
前記変換部は、前記単位指定識別子記憶部に記憶された単位指定識別子に積演算子で結合されている1以上の数字を前記数値識別子に変換する請求項2に記載の情報処理装置。
A unit designation identifier storage unit storing a unit designation identifier indicating a unit of numerical values;
The information processing apparatus according to claim 2, wherein the conversion unit converts one or more numbers combined with a unit designation identifier stored in the unit designation identifier storage unit by a product operator into the numeric identifier.
数値の単位を示す単位指定識別子を記憶した単位指定識別子記憶部をさらに備え、
前記変換部は、前記識別子中の数値部分に隣接する非数字部分が前記単位指定識別子記憶部に記憶された単位指定識別子であるときに、前記数値部分を数値識別子に変換する請求項2に記載の情報処理装置。
A unit designation identifier storage unit storing a unit designation identifier indicating a unit of numerical values;
The said conversion part converts the said numerical part to a numerical identifier, when the non-numeric part adjacent to the numerical part in the said identifier is the unit designation identifier memorize | stored in the said unit designation identifier memory | storage part. Information processing device.
前記対象情報は、さらに因子間の除算を示す除算演算子によって記述され、
前記代数演算部は、前記除算演算子で関係付けられた因子間の数値識別子が示す数値によって除算を実行し、前記除算演算子間で関係付けられた因子間で共通する識別子を削除する請求項1から4のいずれか1項に記載の情報処理装置。
The target information is further described by a division operator indicating division between factors,
The algebraic operation unit performs division by a numerical value indicated by a numerical identifier between factors related by the division operator, and deletes an identifier common among factors related by the division operator. The information processing apparatus according to any one of 1 to 4.
前記対象情報は、さらに第1の因子を底とし、第2の因子を指数とするべき乗を示す指数演算子によって記述され、
前記処理部は、共通の因子を底とするべき乗が積演算子で結合されるときに、指数となっている前記第2の因子間を和演算子によって項の組み合わせに変換する請求項1から5のいずれか1項に記載の情報処理装置。
The target information is further described by an exponent operator that indicates a power that has a first factor as a base and a second factor as an exponent;
The processing unit converts between the second factors that are exponents into a combination of terms by a sum operator when powers based on common factors are combined by a product operator. 6. The information processing apparatus according to any one of 5 above.
前記代数演算部は、前記第2の因子間で、数値識別子が示す数値の加算を実行し、前記共通の因子を底とするべき乗が積演算子と除算演算子とによって結合されるときに、前記第2の因子間で、数値識別子が示す数値の減算を実行する請求項6に記載の情報処理装置。   The algebra operation unit performs addition of numerical values indicated by numerical identifiers between the second factors, and when a power based on the common factor is combined by a product operator and a division operator, The information processing apparatus according to claim 6, wherein a numerical value indicated by a numerical identifier is subtracted between the second factors. 前記代数演算部は、第1の対象情報と第2の対象情報との関係が等価であることを示す等価演算子によって、前記第1の対象情報と前記第2の対象情報とが関連づけされているときに、前記第1の対象情報と第2の対象情報の両方に、共通の非数値識別子を因子とする項間の同一の数値識別子による加算、または同一の数値識別子による乗算を実行する請求項1から7のいずれか1項に記載に情報処理装置。   The algebra operation unit associates the first target information and the second target information by an equivalent operator indicating that the relationship between the first target information and the second target information is equivalent. And adding to the first target information and the second target information by the same numerical identifier between terms using a common non-numeric identifier as a factor, or multiplying by the same numerical identifier. Item 8. The information processing apparatus according to any one of Items 1 to 7. 前記対象情報は、前記対象情報が記述する対象に含まれる構成要素を識別する識別子と構成要素の属性値とを含み、
前記情報処理装置は、前記構成要素を識別する情報によって前記対象の特徴量を指定す
る指定対象情報の入力を受け付ける手段をさらに備え、
前記処理部は、前記指定対象情報に含まれる構成要素の識別子を前記構成要素の属性値に変換する手段と、
前記構成要素の属性値によって前記指定対象情報によって指定される特徴量を算出する手段と、を有する請求項1から8のいずれか1項に記載の情報処理装置。
The target information includes an identifier for identifying a component included in a target described by the target information and an attribute value of the component,
The information processing apparatus further includes means for receiving input of designation target information for designating the target feature amount by information for identifying the component,
The processing unit converts an identifier of a component included in the designation target information into an attribute value of the component;
The information processing apparatus according to claim 1, further comprising: a feature amount that is designated by the designation target information based on an attribute value of the component.
コンピュータが、
識別子と、因子の列として複数の識別子を結合する積演算子と、識別子および因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述され、前記識別子として数字を含み数値であることを数値演算子によって明示する数値識別子と前記数値識別子以外の非数値識別子とを含む、対象情報を記憶部から読み出すステップと、
前記因子の列として積演算子で結合される因子のうち、前記非数値識別子を残して数値識別子で表される数値間で乗算を実行するステップと、
前記項の組み合わせに対して前記非数値識別子を共通の因子とする複数の項について数値識別子で表される数値間で加算を実行するステップと、を実行する情報処理方法。
Computer
Described by an identifier, a product operator that combines multiple identifiers as a sequence of factors, and a sum operator that forms a combination of terms from either or both of the identifiers combined as a sequence of identifiers and factors Reading the target information from the storage unit, including a numerical identifier that includes a number as the identifier and that is a numerical value, and a non-numeric identifier other than the numerical identifier;
Performing multiplication between the numerical values represented by the numerical identifiers, leaving the non-numeric identifier among the factors combined by a product operator as the factor sequence;
And a step of performing addition between the numerical values represented by the numerical identifiers for a plurality of terms having the non-numeric identifier as a common factor for the combination of the terms.
1以上の数字を含む識別子を前記数値識別子に変換する変換ステップをさらに実行する請求項10に記載の情報処理方法。   The information processing method according to claim 10, further comprising a conversion step of converting an identifier including one or more numbers into the numerical identifier. 前記コンピュータは、単位指定識別子記憶部から数値の単位を示す単位指定識別子を読み出すステップをさらに実行し、
前記変換ステップでは、前記単位指定識別子記憶部に記憶された単位指定識別子に積演算子で結合されている1以上の数字を前記数値識別子に変換する請求項11に記載の情報処理方法。
The computer further executes a step of reading a unit designation identifier indicating a numerical unit from the unit designation identifier storage unit,
The information processing method according to claim 11, wherein in the converting step, one or more numbers combined with a unit designation identifier stored in the unit designation identifier storage unit by a product operator are converted into the numerical identifier.
前記コンピュータは、単位指定識別子記憶部から数値の単位を示す単位指定識別子を読み出すステップをさらに実行し、
前記変換ステップでは、前記識別子中の数値部分に隣接する非数字部分が前記単位指定識別子記憶部に記憶された単位指定識別子であるときに、前記数値部分を数値識別子に変換する請求項11に記載の情報処理方法。
The computer further executes a step of reading a unit designation identifier indicating a numerical unit from the unit designation identifier storage unit,
12. The conversion step according to claim 11, wherein, in the converting step, when the non-numeric part adjacent to the numeric part in the identifier is a unit designation identifier stored in the unit designation identifier storage unit, the numeric part is converted into a numeric identifier. Information processing method.
前記対象情報は、さらに因子間の除算を示す除算演算子によって記述され、
前記コンピュータは、前記除算演算子で関係付けられた因子間の数値識別子が示す数値によって除算を実行し、前記除算演算子間で関係付けられた因子間で共通する識別子を削除するステップをさらに実行する請求項10から13のいずれか1項に記載の情報処理方法。
The target information is further described by a division operator indicating division between factors,
The computer further performs a step of performing division by a numerical value indicated by a numerical identifier between factors related by the division operator and deleting an identifier common among the factors related by the division operator. The information processing method according to any one of claims 10 to 13.
前記対象情報は、さらに第1の因子を底とし、第2の因子を指数とするべき乗を示す指数演算子によって記述され、
前記コンピュータは、共通の因子を底とするべき乗が積演算子で結合されるときに、指数となっている前記第2の因子間を和演算子によって項の組み合わせに変換するステップをさらに実行する請求項10から14のいずれか1項に記載の情報処理方法。
The target information is further described by an exponent operator that indicates a power that has a first factor as a base and a second factor as an exponent;
The computer further performs a step of converting between the second factor that is an exponent to a combination of terms by a sum operator when powers based on common factors are combined by a product operator The information processing method according to any one of claims 10 to 14.
前記コンピュータは、前記第2の因子間で、数値識別子が示す数値の加算を実行し、前記共通の因子を底とするべき乗が積演算子と除算演算子とによって結合されるときに、前記第2の因子間で、数値識別子が示す数値の減算を実行する請求項15に記載の情報処理方法。   The computer performs addition of numerical values indicated by numerical identifiers between the second factors, and the powers based on the common factors are combined by a product operator and a division operator. The information processing method according to claim 15, wherein subtraction of a numerical value indicated by a numerical identifier is performed between the two factors. 前記コンピュータは、第1の対象情報と第2の対象情報との関係が等価であることを示
す等価演算子によって、前記第1の対象情報と前記第2の対象情報とが関連づけされているときに、前記第1の対象情報と第2の対象情報の両方に、共通の非数値識別子を因子とする項間の同一の数値識別子による加算、または同一の数値識別子による乗算を実行する請求項10から16のいずれか1項に記載に情報処理方法。
When the computer associates the first target information and the second target information with an equivalence operator indicating that the relationship between the first target information and the second target information is equivalent The addition of the same numerical identifier between the terms having a common non-numeric identifier as a factor or the multiplication by the same numerical identifier is executed on both the first target information and the second target information. 17. The information processing method according to any one of items 16 to 16.
前記対象情報は、前記対象情報が記述する対象に含まれる構成要素を識別する識別子と構成要素の属性値とを含み、
前記コンピュータは、
前記構成要素を識別する情報によって前記対象の特徴量を指定する指定対象情報の入力を受け付けるステップと、
前記指定対象情報に含まれる構成要素の識別子を前記構成要素の属性値に変換するステップと、
前記構成要素の属性値によって前記指定対象情報によって指定される特徴量を算出するステップと、をさらに実行する請求項10から17のいずれか1項に記載の情報処理方法。
The target information includes an identifier for identifying a component included in a target described by the target information and an attribute value of the component,
The computer
Receiving an input of designation target information for designating the target feature amount by information for identifying the component;
Converting an identifier of a component included in the designation target information into an attribute value of the component;
The information processing method according to claim 10, further comprising: calculating a feature amount specified by the specification target information based on an attribute value of the component.
コンピュータに、
識別子と、因子の列として複数の識別子を結合する積演算子と、識別子および因子の列として結合された複数の識別子のいずれかまたは両方から項の組み合わせを構成する和演算子と、によって記述され、前記識別子として数字を含み数値であることを数値演算子によって明示する数値識別子と前記数値識別子以外の非数値識別子とを含む、対象情報を記憶部から読み出すステップと、
前記因子の列として積演算子で結合される因子のうち、前記非数値識別子を残して数値識別子で表される数値間で乗算を実行するステップと、
前記項の組み合わせに対して前記非数値識別子を共通の因子とする複数の項について数値識別子で表される数値間で加算を実行するステップと、を実行させるためのプログラム。
On the computer,
Described by an identifier, a product operator that combines multiple identifiers as a sequence of factors, and a sum operator that forms a combination of terms from either or both of the identifiers combined as a sequence of identifiers and factors Reading the target information from the storage unit, including a numerical identifier that includes a number as the identifier and that is a numerical value, and a non-numeric identifier other than the numerical identifier;
Performing multiplication between the numerical values represented by the numerical identifiers, leaving the non-numeric identifier among the factors combined by a product operator as the factor sequence;
And a step of executing addition between the numerical values represented by the numerical identifiers for a plurality of terms having the non-numeric identifier as a common factor for the combination of the terms.
1以上の数字を含む識別子を前記数値識別子に変換する変換ステップをさらに実行させるための請求項19に記載のプログラム。   The program according to claim 19, further causing a conversion step of converting an identifier including one or more numbers into the numerical identifier. 前記コンピュータに、単位指定識別子記憶部から数値の単位を示す単位指定識別子を読み出すステップをさらに実行させ、
前記変換ステップでは、前記単位指定識別子記憶部に記憶された単位指定識別子に積演算子で結合されている1以上の数字を前記数値識別子に変換させるための請求項20に記載のプログラム。
Causing the computer to further execute a step of reading a unit designation identifier indicating a numerical unit from the unit designation identifier storage unit;
21. The program according to claim 20, wherein in the conversion step, one or more numbers combined with a unit designation identifier stored in the unit designation identifier storage unit by a product operator are converted into the numeric identifier.
前記コンピュータに、単位指定識別子記憶部から数値の単位を示す単位指定識別子を読み出すステップをさらに実行させ、
前記変換ステップでは、前記識別子中の数値部分に隣接する非数字部分が前記単位指定識別子記憶部に記憶された単位指定識別子であるときに、前記数値部分を数値識別子に変換させるための請求項20に記載のプログラム。
Causing the computer to further execute a step of reading a unit designation identifier indicating a numerical unit from the unit designation identifier storage unit;
21. In the converting step, when the non-numeric part adjacent to the numeric part in the identifier is a unit designation identifier stored in the unit designation identifier storage unit, the numeric part is converted into a numeric identifier. The program described in.
前記対象情報は、さらに因子間の除算を示す除算演算子によって記述され、
前記コンピュータは、前記除算演算子で関係付けられた因子間の数値識別子が示す数値によって除算を実行し、前記除算演算子間で関係付けられた因子間で共通する識別子を削除するステップをさらに実行させるための請求項19から22のいずれか1項に記載のプログラム。
The target information is further described by a division operator indicating division between factors,
The computer further performs a step of performing division by a numerical value indicated by a numerical identifier between factors related by the division operator and deleting an identifier common among the factors related by the division operator. The program according to any one of claims 19 to 22, for causing the program to occur.
前記対象情報は、さらに第1の因子を底とし、第2の因子を指数とするべき乗を示す指
数演算子によって記述され、
前記コンピュータは、共通の因子を底とするべき乗が積演算子で結合されるときに、指数となっている前記第2の因子間を和演算子によって項の組み合わせに変換するステップをさらに実行させるための請求項19から23のいずれか1項に記載のプログラム。
The target information is further described by an exponent operator that indicates a power that has a first factor as a base and a second factor as an exponent;
The computer further executes a step of converting between the second factor that is an exponent into a combination of terms by a sum operator when powers based on common factors are combined by a product operator 24. A program according to any one of claims 19 to 23.
前記コンピュータに、前記第2の因子間で、数値識別子が示す数値の加算を実行させ、前記共通の因子を底とするべき乗が積演算子と除算演算子とによって結合されるときに、前記第2の因子間で、数値識別子が示す数値の減算を実行させるための請求項24に記載のプログラム。   When the computer performs addition of numerical values indicated by numerical identifiers between the second factors, and the powers based on the common factors are combined by a product operator and a division operator, 25. The program according to claim 24, for causing subtraction of a numerical value indicated by a numerical identifier between two factors. 前記コンピュータは、第1の対象情報と第2の対象情報との関係が等価であることを示す等価演算子によって、前記第1の対象情報と前記第2の対象情報とが関連づけされているときに、前記第1の対象情報と第2の対象情報の両方に、共通の非数値識別子を因子とする項間の同一の数値識別子による加算、または同一の数値識別子による乗算を実行させるための請求項19から25のいずれか1項に記載にプログラム。   When the computer associates the first target information and the second target information with an equivalence operator indicating that the relationship between the first target information and the second target information is equivalent And adding both the first target information and the second target information with the same numerical identifier between terms using a common non-numeric identifier as a factor, or multiplying with the same numerical identifier. Item 26. The program according to any one of Items 19 to 25. 前記対象情報は、前記対象情報が記述する対象に含まれる構成要素を識別する識別子と構成要素の属性値とを含み、
前記コンピュータに、
前記構成要素を識別する情報によって前記対象の特徴量を指定する指定対象情報の入力を受け付けるステップと、
前記指定対象情報に含まれる構成要素の識別子を前記構成要素の属性値に変換するステップと、
前記構成要素の属性値によって前記指定対象情報によって指定される特徴量を算出するステップと、をさらに実行させるための請求項19から26のいずれか1項に記載のプログラム。
The target information includes an identifier for identifying a component included in a target described by the target information and an attribute value of the component,
In the computer,
Receiving an input of designation target information for designating the target feature amount by information for identifying the component;
Converting an identifier of a component included in the designation target information into an attribute value of the component;
The program according to any one of claims 19 to 26, further executing a step of calculating a feature amount designated by the designation target information based on an attribute value of the component.
JP2012047407A 2011-09-21 2012-03-02 Information processing apparatus, information processing method, and program Expired - Fee Related JP5357286B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012047407A JP5357286B2 (en) 2011-09-21 2012-03-02 Information processing apparatus, information processing method, and program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012547215 2011-09-21
JP2012547215 2011-09-21
JP2012047407A JP5357286B2 (en) 2011-09-21 2012-03-02 Information processing apparatus, information processing method, and program

Publications (2)

Publication Number Publication Date
JP2013080449A true JP2013080449A (en) 2013-05-02
JP5357286B2 JP5357286B2 (en) 2013-12-04

Family

ID=48526758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012047407A Expired - Fee Related JP5357286B2 (en) 2011-09-21 2012-03-02 Information processing apparatus, information processing method, and program

Country Status (1)

Country Link
JP (1) JP5357286B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017535869A (en) * 2014-11-14 2017-11-30 アビニシオ テクノロジー エルエルシー Processing queries involving union-type operations
US11093223B2 (en) 2019-07-18 2021-08-17 Ab Initio Technology Llc Automatically converting a program written in a procedural programming language into a dataflow graph and related systems and methods
US11308161B2 (en) 2015-02-18 2022-04-19 Ab Initio Technology Llc Querying a data source on a network
US11593369B2 (en) 2010-01-15 2023-02-28 Ab Initio Technology Llc Managing data queries

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6542204B2 (en) 2014-05-09 2019-07-10 前田建設工業株式会社 INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295938A (en) * 1994-04-27 1995-11-10 Casio Comput Co Ltd Electronic computer
JP2005339265A (en) * 2004-05-27 2005-12-08 Casio Comput Co Ltd Electronic computer and computing display processing program
JP2009110440A (en) * 2007-10-31 2009-05-21 Maeda Corp Information processor, information processing method, program and medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295938A (en) * 1994-04-27 1995-11-10 Casio Comput Co Ltd Electronic computer
JP2005339265A (en) * 2004-05-27 2005-12-08 Casio Comput Co Ltd Electronic computer and computing display processing program
JP2009110440A (en) * 2007-10-31 2009-05-21 Maeda Corp Information processor, information processing method, program and medium

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNB200200184001; 榊原 進: はやわかり Mathematica 第2版, 20000810, p. 6, 11, 共立出版株式会社 *
JPN6011054049; T.KODAMA et al.: Development of Unit Calculation Algebra as an Application Function of the Cellular Data System , 20071026 *
JPN6013009758; 榊原 進: はやわかり Mathematica 第2版, 20000810, p. 6, 11, 共立出版株式会社 *
JPN6013009760; 中学・数学要点1年 文字式 , 20071013 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11593369B2 (en) 2010-01-15 2023-02-28 Ab Initio Technology Llc Managing data queries
JP2017535869A (en) * 2014-11-14 2017-11-30 アビニシオ テクノロジー エルエルシー Processing queries involving union-type operations
US11308161B2 (en) 2015-02-18 2022-04-19 Ab Initio Technology Llc Querying a data source on a network
US11093223B2 (en) 2019-07-18 2021-08-17 Ab Initio Technology Llc Automatically converting a program written in a procedural programming language into a dataflow graph and related systems and methods

Also Published As

Publication number Publication date
JP5357286B2 (en) 2013-12-04

Similar Documents

Publication Publication Date Title
Ghazal et al. Bigbench: Towards an industry standard benchmark for big data analytics
JP3049636B2 (en) Data analysis method
JP3443144B2 (en) Information retrieval device and virtual database management system
JP5357286B2 (en) Information processing apparatus, information processing method, and program
US20120159312A1 (en) Representation of an interactive document as a graph of entities
JPH11232330A (en) Marketing system
JP6008693B2 (en) Information processing apparatus, control method therefor, and program
JP2007026127A (en) Apparatus, program and method for supporting design and manufacture
US20070005583A1 (en) Method for building powerful calculations of an entity relationship model
JP6623754B2 (en) Tabular data processing program, method and apparatus
Leonelli Enhancing a decision support tool with sensitivity analysis
Habib et al. Efficient algorithms on distributive lattices
US20170300461A1 (en) Representation of an Interactive Document as a Graph of Entities
Durupt et al. An extended framework for knowledge modelling and reuse in reverse engineering projects
CN107729330A (en) The method and apparatus for obtaining data set
Inmon et al. Data Architecture: A Primer for the Data Scientist: A Primer for the Data Scientist
JP5629821B2 (en) Hypergrid model for optimized ordering of online analytical processing (OLAP) operations on data warehouses
WO2013042230A1 (en) Information processing device
JP6542204B2 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM
JP2024001836A (en) Derivation device, derivation method, and program
JP2017072959A (en) Information processing device, information processing method, and program
Kumar et al. Exploring the application of property graph model in visualizing COBie data
JP6501932B2 (en) Internal transaction judging device, internal transaction judging method and internal transaction judging program
Hansen Practical Oracle SQL: Mastering the Full Power of Oracle Database
JP2009110440A (en) Information processor, information processing method, program and medium

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20130225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130507

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: 20130813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130829

R150 Certificate of patent or registration of utility model

Ref document number: 5357286

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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