JP2002041496A - コンピュータ実施される方法、計算装置およびコンピュータ・プログラム製品 - Google Patents
コンピュータ実施される方法、計算装置およびコンピュータ・プログラム製品Info
- Publication number
- JP2002041496A JP2002041496A JP2001185339A JP2001185339A JP2002041496A JP 2002041496 A JP2002041496 A JP 2002041496A JP 2001185339 A JP2001185339 A JP 2001185339A JP 2001185339 A JP2001185339 A JP 2001185339A JP 2002041496 A JP2002041496 A JP 2002041496A
- Authority
- JP
- Japan
- Prior art keywords
- equations
- simultaneous linear
- unknowns
- sets
- computer
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
- G06F17/12—Simultaneous equations, e.g. systems of linear equations
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Operations Research (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Complex Calculations (AREA)
Abstract
る、コンピュータ実施される方法(200)を提供する
こと。 【解決手段】 前記方程式のそれぞれは、ei1x1+e
i2x2+ei3x3+…+eiixn=biという形であり、こ
こで、xjは未知数、eijは係数、biは量であり、この
係数および量によって組内の未知数の間の関係が定義さ
れる。係数および量は、既知の代数式である。liiおよ
びriが代数式であり、k={1;2}が、その方程式
がそこから導出された組の1つを示すものとして、前記
方程式のそれぞれが、(lii)kxi=(ri)kの形にな
るまで、連立一次代数方程式の組のそれぞれから未知数
を繰り返して消去する(250ないし280)。未知数
のそれぞれについて、積(lii)1*(ri)2および
(lii)2*(ri)1を比較する(300)。すべての
未知数について積が一致する(310)場合に限って、
2組の連立一次代数方程式が同値である(312)。上
の方法(200)を実行する装置(100)も提供す
る。
Description
可能な方法に関し、具体的には、2組の連立一次代数方
程式が同値であるかどうかを判定する方法および装置に
関する。
だけが含まれる連立一次代数方程式(SLAE、Simult
aneous Linear Algebraic Equations)の1つまたは複
数の系を解く必要が生じる。そのような応用分野には、
工学およびシミュレーションのコンピュータ・コードが
含まれる。SLAEの解は、通常は、周知のガウスの消
去法を使用して得られる。したがって、以前の方法で
は、通常は、2つのそのようなSLAE系S1およびS2
が解かれ、その解が比較される。しかし、そのような方
法は、SLAEの一方または両方の条件が不良である
か、計算に使用される数値精度が十分に高くない場合
に、必ずしも機能しない。
行列要素が代数式であるSLAEの組、および、解が一
般に代数形式であるSLAEの組を解くことに適合され
ていない。
の連立一次代数方程式が同値であるかどうかを判定する
方法、装置およびコンピュータ・プログラム製品を提供
することである。
に複数の代数方程式が含まれる、2組の連立一次代数方
程式(SLEA)の同値を判定する、コンピュータ実施
される方法を提供する。この方法には、各SLAEを標
準的な形に約すステップと、同値が存在するかどうかを
判定するためにSLAEを比較するステップとが含まれ
る。
(SLEA)の第1組と第2組の同値を判定する、コン
ピュータ実施される方法であって、各SLAEを2部分
の標準的な形にするために、SLAEの組のそれぞれか
ら未知数を繰り返して消去するステップと、一方の標準
的な形の方程式の一部ともう1つの標準的な形の方程式
の別の部分の一部との積を形成するステップと、標準的
な形の方程式の他の部分ともう1つの標準的な形の方程
式の他の部分との積を形成するステップと、数学的同値
についてめいめいの積を比較するステップとを含む方法
を提供する。
び第2組の同値を判定する、コンピュータ実施される方
法であって、xjが未知数、eijが係数、biが量である
ものとして、方程式のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形である、コンピュータ実施される方法が提供され
る。係数および量は、既知の代数式である。この方法に
は、liiおよびriが代数式であり、k={1;2}
が、その方程式がそこから導出された組の1つを示すも
のとして、方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の組のそれぞれか
ら未知数を繰り返して消去するステップと、未知数のそ
れぞれについて、積(lii)1*(ri)2と(lii)2*
(ri)1とを比較するステップであって、これらの積が
すべての未知数について一致する場合に、連立一次代数
方程式の第1組および第2組が同値である、比較するス
テップとが含まれる。
第1組と第2組との同値を判定する計算装置であって、
xjが未知数、eijが係数、biが量であり、係数および
量が既知の代数方程式であるものとして、方程式のそれ
ぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形である、計算装置を開示する。この装置には、lii
およびriが代数式であり、k={1;2}が、その方
程式がそこから導出された組の1つを示すものとして、
方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の組のそれぞれか
ら未知数を繰り返して消去する手段と、未知数のそれぞ
れについて、積(lii)1*(ri)2と(lii)2*(r
i)1とを比較する手段であって、これらの積がすべての
未知数について一致する場合に、連立一次代数方程式の
第1組および第2組が同値である、比較する手段とが含
まれる。
第1組および第2組の同値を判定する、記憶媒体によっ
て担持されるコンピュータ・プログラム製品であって、
xjが未知数、eijが係数、biが量であり、係数および
量が、既知の代数式であるものとして、方程式のそれぞ
れが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形である、コンピュータ・プログラム製品を開示す
る。このコンピュータ・プログラム製品には、liiおよ
びriが代数式であり、k={1;2}が、その方程式
がそこから導出された組の1つを示すものとして、方程
式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の組のそれぞれか
ら未知数を繰り返して消去するプログラム要素と、未知
数のそれぞれについて、積(lii)1*(ri)2と(l
ii)2*(ri)1とを比較するプログラム要素であっ
て、これらの積がすべての未知数について一致する場合
に、連立一次代数方程式の第1組および第2組が同値で
ある、比較するプログラム要素とが含まれる。
内で順次配置された1つまたは複数のトークン対の形に
再計算するステップであって、トークン対のそれぞれ
に、演算子とそれに続くオペランドが含まれる、再計算
するステップと、既約式を得るために、所定の簡約化規
則の組に従って文字列を約するステップとが含まれるこ
とが好ましい。連立一次代数方程式の組のそれぞれから
の未知数の消去は、所定の動作の組に従って約された文
字列に対して実行される。
グループに配置するステップと、配置されたサブグルー
プのオペランド・トークンを順番に配置するステップ
と、約されたサブグループを形成するために、1つまた
は複数の定数を整理し、反対の効果の変数を消去するこ
とによって、順序付けられたオペランドを約するステッ
プと、約された文字列を作るために、類似するサブグル
ープの1つまたは複数の倍数インスタンスを整理するス
テップとを含めることができる。
することができる汎用のコンピュータ・システム100
を、図1に示す。まずコンピュータ・システム100を
説明し、その後、より具体的に、2組の連立一次代数方
程式が同値であるかどうかを判定する方法を説明する。
0内で実行されるアプリケーション・プログラムなどの
ソフトウェアとして実施することができる。具体的に言
うと、2組の連立一次代数方程式が同値であるかどうか
を判定する方法のステップは、コンピュータ・システム
100によって実行されるソフトウェア内の命令によっ
て実施される。このソフトウェアは、たとえば下で説明
する記憶装置を含む、コンピュータ可読媒体に保管する
ことができる。ソフトウェアは、コンピュータ可読媒体
からコンピュータ・システム100にロードされ、その
後、コンピュータ・システム100によって実行され
る。そのようなソフトウェアまたはコンピュータ・プロ
グラムをその上に記録されたコンピュータ可読媒体が、
コンピュータ・プログラム製品である。コンピュータで
のコンピュータ・プログラム製品の使用によって、本発
明の実施形態による2組の連立一次代数方程式が同値で
あるかどうかを判定する有利な装置がもたらされること
が好ましい。
ピュータ・モジュール101と、キーボード102およ
びマウス103などの入力装置と、プリンタ115およ
びディスプレイ装置114を含む出力装置が含まれる。
コンピュータ・モジュール101には、通常は、少なく
とも1つのプロセッサ105と、たとえば半導体のラン
ダム・アクセス・メモリ(RAM)および読取専用メモ
リ(ROM)から形成されるメモリ106と、ビデオ・
インターフェース107、プリンタ115用の入出力イ
ンターフェース、およびキーボード102およびマウス
103用の入出力インターフェース113を含む入出力
(I/O)インターフェースとが含まれる。記憶装置1
09が設けられ、これには、通常は、ハード・ディスク
110およびフロッピ・ディスク・ドライブ111が含
まれる。CD−ROMドライブ(図示せず)を、データ
の不揮発性の供給源として設けることができる。コンピ
ュータ・モジュール101のプロセッサ105、メモリ
106、ビデオ・インターフェース107、記憶装置1
09、ハード・ディスク110、フロッピ・ディスク・
ドライブ111、および入出力インターフェース113
は、通常は、相互接続されたバス104を介して、当業
者に既知のコンピュータ・システム100の動作の従来
のモードをもたらす形で通信する。
ン・プログラムは、ハード・ディスク110に常駐し、
プロセッサ105によって読み取られ、その実行の際に
制御される。プログラムの中間記憶を、おそらくはハー
ド・ディスク110と共同して、半導体メモリ106を
使用して達成することができる。いくつかの場合に、ア
プリケーション・プログラムを、CD−ROMまたはフ
ロッピ・ディスクにエンコードしてユーザに供給し、C
D−ROMドライブ(図示せず)またはフロッピ・ディ
スク・ドライブ111を介して読み取ることができ、そ
の代わりに、モデム装置(図示せず)を介してネットワ
ーク(図示せず)からユーザが読み取ることができる。
さらに、ソフトウェアは、磁気テープ、ROMまたは集
積回路、光磁気ディスク、コンピュータ・モジュール1
01と別の装置の間の無線伝送チャネルまたは赤外線伝
送チャネル、PCMCIAカードなどのコンピュータ可
読カード、電子メール送信およびウェブサイトなどに記
録された情報を含むインターネットおよびイントラネッ
トを含む他のコンピュータ可読媒体からコンピュータ・
システム100にロードすることもできる。前述は、関
連するコンピュータ可読媒体の例示にすぎない。他のコ
ンピュータ可読媒体を、本発明の範囲および趣旨から逸
脱せずに実践することができる。
で、2組の連立一次代数方程式が同値であるかどうかを
判定する方法を説明する。
LAE)の系を表すものとする。 e11x1+e12x2+e13x3+…+e1nxn=b1 e21x1+e22x2+e23x3+…+e2nxn=b2 … … … … en1x1+en2x2+en3x3+…+ennxn=bn ここで、n個の未知数{x1、x2、x3、…、xn}が、
n個の方程式によって関連し、係数eij(i=1、2、
…、nおよびj=1、2、…、n)が、既知の代数式で
あり、右辺の量bi、i=1、2、…、nも代数式であ
る。
なわち、めいめいの解が互いに同一であるかどうかを判
定する方法は、おおまかに次の2つの部分を有する。 (1)下記の型の標準的な形へのSLAEの各系Sの既
約化。 l11x1=r1 l22x2=r2 l33x3=r3 … … lnnxn=rn ここで、liiおよびriは代数式である。 (2)2組のSLAEの標準的な形での比較。
量biが、除算演算子を有しないと仮定する。望ましく
ない除算演算子は、影響される量に適当な係数を掛ける
ことによって、SLAE S1およびS2から消去するこ
とができる。これは、交換可能な演算子でない除算演算
子に関連するオペランドの処理の複雑さを減らすために
行われる。
び量の項には定数および変数を含めることができる。好
ましい実施形態では、2つの式の間の比較を容易にする
ために、下で説明するように、式の既約形という概念を
使用した。既約式は、式がそれに変換される標準形であ
る。
含まないことが、先験的に仮定される。好ましい実施形
態では、変数が、その構成において、小文字の英字、下
線文字、および数字に制限され、変数が、数字から始ま
ってはならず、下線で終わってはならない。これらの構
成規則が満たされない場合には、影響を受ける変数を、
構成規則に従う代替であるが別個の変数にマッピングす
る(別名を割り当てる)ことができ、これらの新しい変
数が、その代わりに使用される。
のべきである係数eijおよび量biの変数を、変数の掛
け算として書き出すことである。したがって、たとえば
anは、a*a*…*aになる。ここで、aはこの積に
n回現れる。
を、まず次の形にする。 <単項演算子><オペランド><演算子><オペランド
>…<演算子><オペランド> ここで、単項演算子は、+(プラス)または−(マイナ
ス)のいずれかであり、各演算子は、+(加算)、−
(減算)、または*(乗算)の1つである。式が単項演
算子から始まらない場合には、単項演算子+(プラス)
を式の先頭に挿入する。たとえば a+b*c−dは、+a+b*c−dになる。
弧が式中に存在する場合には、2つの括弧で囲まれた係
数を掛ける、余分な括弧を無視するなど、括弧を除去す
るのに必要な演算を実行することによって括弧を除去し
て、所与の式を上の形にしなければならない。
列+1*によって置換され、その結果、+が+1*にな
る。同様に、すべての−(減算)演算子は、文字列−1
*によって置換され、その結果、−が−1*になる。し
たがって、たとえば+aは、+1*aになり−a*b
は、−1*a*bになる。
1を含む)であるオペランドは、次のe形式に変換され
る。 ”.[符号なし数]e[e符号][符号なし指数]” ここで、[符号なし数]は、数字だけを含むn桁の数で
あり、nは、0より大きいプレフィックスト整数であ
る。[e符号]は、指数の符号であり、プラスの場合は
>、マイナスの場合は<になる。[符号なし指数]は、
数字だけを含むm桁の数であり、mは、0より大きいプ
レフィックスト整数である。
102は、.250000e>02になり、0.025
=0.25*10-1は、.250000e<01にな
る。ここでは、n=6、m=2であると仮定する。すべ
ての定数が、e形式では一定の長さm+n+3文字の文
字列によって表されることに留意されたい。ここで、e
[e符号][符号なし指数]は、10の[e符号][符
号なし指数]乗を表し、実際の定数を得るためには.
[符号なし数]によって表される数をかけなければなら
ない。
ランドが含まれることになる。各式は、1つまたは複数
の項を有し、各項は、次の形を有する。 <単項演算子><オペランド><*><オペランド>…
<*><オペランド> ここで、単項演算子は、+(プラス)または−(マイナ
ス)であり、2つの連続するオペランドの間に、乗算演
算子*がある。項を識別した後に、各定数の[e符号]
を、<または>から−または+に復元する。
(情報交換用米国標準コード)値に従って、昇順でソー
ト(再配置)される。乗算演算子が交換可能な演算子で
あり、したがって、オペランドの交換が完全に許容可能
であるから、これは項に影響しない。定数であるオペラ
ンドは、すべてが項の先頭に集められ、その位置で、オ
ペランドを簡単に識別でき、単一の定数によって置換す
ることができる。したがって、たとえば、 +.100000e+01*a*b*.500000e
+00 は、オペランドを昇順で配置した後に、 +.100000e+01*.500000e+00*
a*b になり、定数を整理した後に、 +.500000e+00*a*b になる。
<オペランド> ここで、各オペランドは、変数であり、そのASCII
値は、後続のオペランドがある場合に、それより小さく
ない。これが、項の既約形である。既約形では、項の非
定数部分を変数グループと呼ぶ。たとえば、既約形の項
が「+.250000e+01*a*a*b」である場
合には、その変数グループは「*a*a*b」である。
項が、項の1つの定数を変更し、同一の変数グループを
有する他のすべての項を消去することによって組み合わ
される。
数グループのASCII値に従って、昇順で再配置す
る。この最終形では、式が、その既約形であるという。
特に、既約式のどの2つの項も、同一の変数グループを
有しないことに留意されたい。
同値であるかどうかを判定する方法200が示されてい
る。ステップ240から開始して、すべての係数eijお
よび量biを、そのめいめいの既約形(上で説明した)
に変換する。
消去法および後退代入法(除算をなくすように適合され
た)を使用して、SLAE S1およびS2を標準的な形
にする。
ットする。次のステップ252では、変数xkを、第j
方程式(j=(k+1)、…、n)から消去して、第k
導出系を得る。具体的に言うと、カウンタkが1に等し
い状態で、変数x1を、第j方程式(j=2、3、…、
n)から消去して、次のように定義される第1導出系を
得る。 e11x1+e12x2+e13x3+…+e1nxn=b1 1 e22x2+1e23x3+…+1e2nxn=1b2 … … … … …1 en2x2+1en3x3+…+1ennxn=1bn ここで、第1導出系の新しい係数1ejkは、次式によっ
て与えられる。1ejk=ejke11e1kej1 および1bj
=bje11−b1ej1 ただし、(j、k)=2、…、n
式を、係数e1mが非ゼロの系Sの他の方程式mと交換す
る。そのような方程式mが見つからない場合には、SL
AEが特異であり、方法200、具体的にはステップ2
52が、その下のステップ270への線262に従うこ
とよって割り込まれ、ステップ270で、方法200
が、適当なエラー・メッセージと共に終了する。
と等しいかどうかを判定する。ここで、nは未知数の数
である。そうではない場合には、ステップ255で、第
k導出系から副系を定義する。たとえば、カウンタkが
1に等しい場合に、第1導出系から導出される副系は、
次の通りである。1 e22x2+1e23x3+…+1e2nxn=1b2 … … … … …1 en2x2+1en3x3+…+1ennxn=1bn
であり、(n−1)個の未知数{x 2、x3、…、xn}
を有する。ステップ258でカウンタkを増分した後
に、系Sが次のように第(n−1)導出系に約されるま
で、既約化のステップ252ないし260を副系に対し
て繰り返す。 e11x1+e12x2+e13x3+…+e1nxn=b1 1 e22x2+1e23x3+…+1e2nxn=1b2 … … … … …n-1 ennxn=n-1bn ここで、対角係数j-1ejj (j=1、…、n)は、す
べてが非ゼロであり、1 ejk=l-1ejk l-1ell−l-1elk l-1ejl 1 bj=l-1bj l-1ell l-1bl l-1ejl ただしl=1、
…、n−1; (j、k)=l+1、…、n および0 ejk=ejk である。
する。この処理全体に除算がないことに留意されたい。
カウンタkは、現在、n−1に等しく、したがって、こ
の方法は、ステップ280に継続し、そこで、やはり除
算なしで後退代入を実行する。したがって、未知数xi
を計算するのではなく、積liixiを計算する。ここ
で、n個の未知数xiのそれぞれが、riが分子、liiが
分母である比x1=ri/l iiの形で表される。i=nの
場合に、次式が得られる。n-1 ennxn=n-1bn その結果、 lnn=n-1enn および rn=n-1bn になる。
に分母lnnを掛けて、 lnn n-2en-1,n-1xn-1+lnn n-2en-1,nxn=n-2bn-1
lnn または lnn n-2en-1,n-1xn-1=n-2bn-1lnn−n-2en-1,nrn を得る。その結果、 ln-1,n-1=lnn n-2en-1,n-1 および rn-1=n-2b
n-1lnn−n-2en-1,nr n になる。
に分母ln-1,n-1を掛け、 ln-1,n-1 n-3en-2xn-2+ln-1,n-1 n-3en-2,n-1xn-1
+ln-1,n-1 n-3en-2, nxn=n-3bn-2ln-1,n-1 または ln-1,n-1 n-3en-2,n-2xn-2=n-3bn-2ln-1,n-1−n-2
en-1,n-1 n-3en-2,nrn−n-3en-2,n-1rn-1 を得る。その結果、 ln-2,n-2=ln-1,n-1 n-3en-2,n-2 および rn-2=
n-3bn-2ln-1,n-1−n- 2en-1,n-1 n-3en-2,nrn−n-3
en-2,n-1rn-1 になる。
て、結果が lii=li+1,i+1 i-1eii および ri=i-1bil
i+1,1+1−Rinrn−Ri,n-1rn-1−…−Ri,i+1ri+1 になり、 lnn=n-1enn および rn=n-1bn であることを示すことができる。ここで Rij=(li+1,i+1/ljj)i-1eij ただし、j=
n、…、(i+1)、i=1、2、…、n−1 である。
除算と無関係になることに留意されたい。しかし、後退
代入のステップ280に、liiとriに共通する因数を
消去するステップがないことに留意されたい。
についてステップ240ないし280を完了した後に、
系S1の文字列配列(lii)1および(ri)1と系S2の
(li i)2および(ri)2が作られている。原則とし
て、2つの系S1およびS2が同値であることを示すため
には、それらのめいめいの文字列配列liiおよびriが
一致することが示されるならば十分である。しかし、一
般に、現在既知の方法によってそれらに共通する因数を
完全に消去することが不可能なので、これは必ずしも可
能ではない。したがって、消去されない共通の因数が存
在する可能性があることを前提にしなければならない。
しかし、数学的に、 (lii/ri)1=(lii/ri)2 または、これと同等であるが、 (lii)1*(ri)2=(lii)2*(ri)1 であることが明らかであり、この形で比較を実行するこ
とができる。したがって、ステップ290で、i=1、
…、nのそれぞれについて、式(lii)1*(ri)2お
よび(lii)2*(ri)1を計算する。すべての式(l
ii)1*(ri)2および(lii)2*(ri)1が、一貫性
のある形でその既約形に約された場合には、ステップ3
00で、(lii)1*(ri)2と(lii)2*(ri)1の
単純な文字列比較を実行する。判断ステップ310で、
すべてのi=1、…、nについて一致が見つかったかど
うかを判定する。回答が肯定の場合には、系S1および
S2の同値を、ステップ312で報告する。そうでない
場合には、ステップ315で非同値を報告する。
るかどうかを判定する例を、これから説明する。Cおよ
びC++プログラミング言語の表記を使用する。この表
記では、係数および量を、それぞれe[i−1][j−
1]およびb[i−1]と表記する。
コード片の参照が役に立つであろう。変数e[][]お
よびb[]は、なかんずくそのような式に対する演算子
+(加算)、−(減算)、および*(乗算)演算子を実
施する代数式データ型(datatype algebraic expressio
n)を有する。クラスexpressionは、代数式を既約形に
変換できるメソッドも有する。 // ガウス消去 // e[][]およびb[]はExpression型である。 for (i = 0; i < n-1; i++) { // 導出系のインデックス。 // --- コメント1 --- // e[i][i] = 0ならば、この行を、それより下にある、 // e[i][k] != 0である別の行(たとえばk > iのk行目) // と交換する。そのようなkが見つからない場合には、 // 行列eが特異であるというメッセージで終了する。 // これを行うコードはここでは示さない。 for (j = i+1; j < n; j++) { for (k = i+1; k < n; k++) { // i行目にe[j][i]を掛ける。 // j行目にe[i][i]を掛ける。 // i行目をj行目から引く。 e[j][k] = e[j][k]*e[i][i] - e[i][k]*e[j][i]; } b[j] = b[j]*e[i][i] - b[i]*e[j][i]; } // 下三角係数を0にする。 for (k = 0; k < i; k++) e[i][k] = 0; } // 後退代入。 i = n; // 下のwhileループの最後に、e[i-1][i-1]にliiが // 含まれ、b[i-1]にriが含まれる。解は、 // xi = lii/riになる。 while (i--) { j = n; while (j--) b[j] = b[j]*e[i][i] - b[i]*e[j][i]; for(k = 0; k < n; k++) { for (j = k; j < n; j++) { e[k][j] *= e[i][i]; } } }
ものとする。 ax1+x2+x3=a+2 x1+x2+x3=3 x1+x2−x3=1 また、系S2が、次の方程式の組であるものとする。 ax1+2x2=a+2 2x1+2x2=4 x2−x3=0 すなわち、各組が3つの方程式からなる。
次のように記述することができる。 e[0][0]=a e[0][1]=1 e[0][2]=1 b[0]=a+2 e[1][0]=1 e[1][1]=1 e[1][2]=1 b[1]=3 e[2][0]=1 e[2][1]=1 e[2][2]=−1 b[2]=1
よって、下記のように、係数および量のすべての項が、
方法200を実行するコンピュータ・プログラムによっ
て既約形に変換される。計算の異なる段階で擬似コード
変数によって参照されるテキスト変数を、右側に示す。 既約形 変数 e[0][0]=+.10000e+01*a 0e11=e11 e[0][1]=+.10000e+01 0e12=e12 e[0][2]=+.10000e+01 0e13=e13 b[0]=+.10000e+01*a+.20000e+01 0b1=b1 e[1][0]=+.10000e+01 0e21=e21 e[1][1]=+.10000e+01 0e22=e22 e[1][2]=+.10000e+01 0e23=e23 b[1]=+.30000e+01 0b2=b2 e[2][0]=+.10000e+01 0e31=e31 e[2][1]=+.10000e+01 0e32=e32 e[2][2]=−.10000e+01 0e33=e33 b[2]=+.10000e+01 0b3=b3
し、ステップ252を実行することによって第1導出系
を見つけ、これによって、式2および3から変数x1を
消去する。第1導出系の係数1eijおよび量1biは、次
のようになる。 既約形 変数 e[0][0]=+.10000e+01*a 0e11 e[0][1]=+.10000e+01 0e12 e[0][2]=+.10000e+01 0e13 b[0]=+.10000e+01*a+.20000e+01 0b1 e[1][0]=+.00000e+00 1e2l e[1][1]=-.10000e+01+.10000e+01*a 1e22 e[1][2]=-.10000e+01+.10000e+01*a 1e23 b[1]=-.20000e+01+.20000e+01*a 1b2 e[2][0]=+.00000e+00 1e31 e[2][1]=-.10000e+01+.10000e+01*a 1e32 e[2][2]=-.10000e+01-.10000e+01*a 1e33 b[2]=-.20000e+01 1b3
で記述した時に、次のようになる。 ax1+x2+x3=a+2 (a−1)x2+(a−1)x3=2(a−1) (a−1)x2−(a+1)x3=−2
とによって、方法200によって、次のように系S1の
第2導出系が計算される。 既約形 変数 e[0][0]=+.10000e+01*a 0e11 e[0][1]=+.10000e+01 0e12 e[0][2]=+.10000e+01 0e13 b[0]=+.10000e+01*a+.20000e+01 0b1 e[1][0]=+.00000e+00 1e2l e[1][1]=-.10000e+01+.10000e+01*a 1e22 e[1][2]=-.10000e+01+.10000e+01*a 1e23 b[1]=-.20000e+01+.20000e+01*a 1b2 e[2][0]=+.00000e+00 2e3l e[2][1]=+.00000e+00 2e32 e[2][2]=+.20000e+01*a-.20000e+01*a*a 2e33=l33 b[2]=+2.0000e+00*a-2.0000e+00*a*a 2b3=r3 または、 ax1+x2+x3=a+2 (a−1)x2+(a−1)x3=2(a−1) −2a(a−1)x3=−2a(a−1)
によって、分子riおよび分母liiを見つけることがで
きる。具体的に言うと、第2導出系の最後の方程式か
ら、分子r3および分母l33が、 l33=−2a(a−1) および r3=−2a(a−
1) になる。
入することによって、下記が得られる。 既約形 変数 e[1][1]=-.20000e+01*a+.40000e+01*a*a-.20000e+01*a*a*a l22 b[1]=-.20000e+01*a+.40000e+01*a*a-.20000e+01*a*a*a r2 または l22=−2a(1−2a+a2) および r2=−2a
(1−2a+a2)
=−4a3(1−3a+3a2−a3) が得られる。
ように記述することができる。 既約形 変数 e[0][0]=+.10000e+01*a 0e11 e[0][1]=+.20000e+01 0e12 e[0][2]=+.00000e+00 0e13 b[0]=+.10000e+01*a+.20000e+01 0b1 e[1][0]=+.00000e+00 1e2l e[1][1]=-.40000e+01+.20000e+01*a 1e22 e[1][2]=+.00000e+00 1e23 b[1]=-.40000e+01+.20000e+01*a 1b2 e[2][0]=+.00000e+00 1e31 e[2][1]=+.10000e+01*a 1e32 e[2][2]=-.10000e+01*a 1e33 b[2]=+.00000e+00 1b3 または ax1+2x2=a+2 2(a−2)x2=2(a−2) ax2−ax3=0
280を実行することによって、分子riおよび分母l
iiを見つけることができる。分子r3および分母l33は
次の通りである。 l33=2a(2−a) および r3=2a(2−a)
入することによって、下記が得られる。 既約形 変数 e[1][1]=-.16000e+02*a+.16000e+02*a*a-.40000e+01*a*a*a l22 b[1]=-.16000e+02*a+.16000e+02*a*a-.40000e+01*a*a*a r2 または l22=−4a(4−4a+a2) および r2=−4a
(4−4a+a2)
よび r1=−8a3(8−12a+6a2−a3)
式(lii)1*(ri)2および(li i)2*(ri)1が、
計算され、その既約形に約される。たとえば、(l22)
1*(r2)2を計算することによって、下記が得られ
る。 (l22)1*(r2)2 =(-.20000e+01*a+.40000e+01*a*a-.20000e+01*a*a*a)* (-.16000e+02*a+.16000e+02*a*a-.40000e+01*a*a*a) =+.32000e+02*a*a-.32000e+02*a*a*a+.80000e+01*a*a*a*a -.64000e+02*a*a*a+.64000e+02*a*a*a*a-.16000e+02*a*a*a*a*a +.32000e+02*a*a*a*a-.32000e+02*a*a*a*a*a+.80000e+01*a*a*a*a*a*a =+.32000e+02*a*a-.96000e+02*a*a*a+.10400e+03*a*a*a*a -.48000e+02*a*a*a*a*a+.80000e+01*a*a*a*a*a*a
ことによって、下記が得られる。 (l22)2*(r2)1 =(-.16000e+02*a+.16000e+02*a*a-.40000e+01*a*a*a)* (-.20000e+01*a+.40000e+01*a*a-.20000e+01*a*a*a) =+.32000e+02*a*a-.64000e+02*a*a*a+.32000e+02*a*a*a*a -.32000e+02*a*a*a+.64000e+02*a*a*a*a-.32000e+02*a*a*a*a*a +.80000e+01*a*a*a*a-.16000e+02*a*a*a*a*a+.80000e+01*a*a*a*a*a*a =+.32000e+02*a*a-.96000e+02*a*a*a+.10400e+03*a*a*a*a -.48000e+02*a*a*a*a*a+.80000e+01*a*a*a*a*a*a
i=3について式(lii)1*(ri)2および(lii)2
*(ri)1を計算する。ステップ300で実行される、
(l 22)1*(r2)2と(l22)2*(r2)1の単純な文
字列比較によって、これらの式が一致することが示され
る。i=1およびi=3について(lii)1*(ri) 2
と(lii)2*(ri)1の比較を繰り返し、i=1、
2、および3のそれぞれについて式が一致することを見
つけることによって、系S1が系S2と同値であることを
示すことができる。
内で実施することができる。周知の通り、コンパイラ
は、C++などの言語で記述された高水準ソース・コー
ドから計算機実行可能オブジェクト・コードを生成す
る。
明したものであり、本発明の範囲および趣旨から逸脱せ
ずに修正または変更を加えることができ、上記の実施形
態は、例示的であって制限的ではない。たとえば、3組
以上の連立一次代数方程式の同値を、同値に関する組の
対ごとの比較によって判定することができる。
の事項を開示する。
第2組の同値を判定する、コンピュータ実施される方法
であって、xjが未知数、eijが係数、biが量であり、
前記係数および量が既知の数式であるものとして、前記
方程式のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形であり、liiおよびriが代数式であり、k=
{1;2}が、前記方程式がそこから導出された前記組
の1つを示すものとして、前記方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の前記組のそれぞ
れから前記未知数を繰り返して消去するステップと、前
記未知数のそれぞれについて、積(lii)1*(ri)2
と(lii)2*(ri)1とを比較するステップであっ
て、前記積がすべての前記未知数について一致する場合
に、連立一次代数方程式の前記第1組および前記第2組
が同値である、比較するステップとを含む、コンピュー
タ実施される方法。 (2)前記方法がさらに、前記代数式を、文字列内で順
次配置された1つまたは複数のトークン対の形に再計算
する初期ステップであって、各前記トークン対が、オペ
ランドが続く演算子を含む、再計算する初期ステップ
と、既約式を得るために、所定の簡約化規則の組に従っ
て前記文字列を約する初期ステップとを含み、前記消去
するステップが、所定の動作の組に従って、前記約され
た文字列に対して実行される上記(1)に記載のコンピ
ュータ実施される方法。 (3)前記簡約化規則が、トークン対をサブグループに
配置するステップと、配置されたサブグループのオペラ
ンド・トークンを順番に配置するステップと、約された
サブグループを形成するために、1つまたは複数の定数
を整理し、反対の効果の変数を消去することによって、
順序付けられたオペランドを約するステップと、約され
た文字列を作るために、類似するサブグループの1つま
たは複数の倍数インスタンスを整理するステップとを実
行することを含む、上記(2)に記載のコンピュータ実
施される方法。 (4)連立一次代数方程式の第1組および第2組の同値
を判定する計算装置であって、xjが未知数、eijが係
数、biが量であり、前記係数および量が既知の数式で
あるものとして、前記方程式のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形であり、liiおよびriが代数式であり、k=
{1;2}が、前記方程式がそこから導出された前記組
の1つを示すものとして、前記方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の前記組のそれぞ
れから前記未知数を繰り返して消去する手段と、前記未
知数のそれぞれについて、積(lii)1*(ri)2と
(lii)2*(ri)1とを比較する手段であって、前記
積がすべての前記未知数について一致する場合に、連立
一次代数方程式の前記第1組および前記第2組が同値で
ある、比較する手段とを含む、計算装置。 (5)前記計算装置がさらに、前記代数式を、文字列内
で順次配置された1つまたは複数のトークン対の形に再
計算する手段であって、各前記トークン対が、オペラン
ドが続く演算子を含む、再計算する手段と、既約式を得
るために、所定の簡約化規則の組に従って前記文字列を
約する手段とを含み、前記消去する手段が、所定の動作
の組に従って、前記約された文字列に対して動作する上
記(4)に記載の計算装置。 (6)前記消去する手段が、トークン対をサブグループ
に配置する所定の動作と、配置されたサブグループのオ
ペランド・トークンを順番に配置する所定の動作と、約
されたサブグループを形成するために、1つまたは複数
の定数を整理し、反対の効果の変数を消去することによ
って、順序付けられたオペランドを約する所定の動作
と、約された文字列を作るために、類似するサブグルー
プの1つまたは複数の倍数インスタンスを整理する所定
の動作とを実行する、上記(5)に記載の計算装置。 (7)連立一次代数方程式の第1組および第2組の同値
を判定する、記憶媒体によって担持されるコンピュータ
・プログラム製品であって、xjが未知数、eijが係
数、biが量であり、前記係数および量が既知の数式で
あるものとして、前記方程式のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形であり、liiおよびriが代数式であり、k=
{1;2}が、前記方程式がそこから導出された前記組
の1つを示すものとして、前記方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の前記組のそれぞ
れから前記未知数を繰り返して消去するプログラム要素
と、前記未知数のそれぞれについて、積(lii)1*
(ri)2と(lii)2*(ri)1とを比較するプログラ
ム要素であって、前記積がすべての前記未知数について
一致する場合に、連立一次代数方程式の前記第1組およ
び前記第2組が同値である、比較するプログラム要素と
を含む、コンピュータ・プログラム製品。 (8)前記代数式を、文字列内で順次配置された1つま
たは複数のトークン対の形に再計算するプログラム要素
であって、各前記トークン対が、オペランドが続く演算
子を含む、再計算するプログラム要素と、既約式を得る
ために、所定の簡約化規則の組に従って前記文字列を約
するプログラム要素とをさらに含み、前記消去するプロ
グラム要素が、所定の動作の組に従って、前記約された
文字列に対して動作する上記(7)に記載のコンピュー
タ・プログラム製品。 (9)前記消去するプログラム要素が、トークン対をサ
ブグループに配置する所定の動作と、配置されたサブグ
ループのオペランド・トークンを順番に配置する所定の
動作と、約されたサブグループを形成するために、1つ
または複数の定数を整理し、反対の効果の変数を消去す
ることによって、順序付けられたオペランドを約する所
定の動作と、約された文字列を作るために、類似するサ
ブグループの1つまたは複数の倍数インスタンスを整理
する所定の動作とを実行する、上記(8)に記載のコン
ピュータ・プログラム製品。 (10)連立一次代数方程式(SLEA)の組の同値を
判定する、コンピュータ実施される方法であって、各前
記組が、複数の代数方程式を含み、各SLAEを標準的
な形に約すステップと、同値が存在するかどうかを判定
するためにSLAEを比較するステップとを含む方法。 (11)前記約するステップが、各SLAEを既約形に
変換するステップと、消去処理を実行するステップと、
各SLAEの2部文字列配列形を生成する後退代入処理
を実行するステップとを含む、上記(10)に記載の方
法。 (12)前記比較するステップが、文字列配列の一部と
もう1つの前記文字列配列の一部との積を形成するステ
ップと、文字列配列の他の部分と前記もう1つの文字列
配列の他の部分との積を形成するステップと、数学的同
値について前記めいめいの積を比較するステップとを含
む、上記(10)に記載の方法。 (13)3組以上の場合に、前記比較ステップが、組の
総数の対の組合せについて繰り返される、上記(12)
に記載の方法。 (14)連立一次代数方程式(SLAE)の第1組およ
び第2組の同値を判定する、コンピュータ実施される方
法であって、各SLAEを2部分の標準的な形にするた
めに、SLAEの前記組のそれぞれから未知数を繰り返
して消去するステップと、一方の前記標準的な形の方程
式の一部ともう1つの前記標準的な形の方程式のもう1
つの部分の一部との積を形成するステップと、前記標準
的な形の方程式の他の部分と前記もう1つの標準的な形
の方程式の他の部分との積を形成するステップと、数学
的同値について前記めいめいの積を比較するステップと
を含む方法。
来の汎用コンピュータ・システムの概略ブロック図であ
る。
かを判定する方法の流れ図である。
するステップ 250 k=1をセットするステップ 252 第k導出系を得るステップ 255 副系を定義するステップ 258 kを増分するステップ 260 k=n−1かどうかを判定するステップ 262 線 270 エラー・メッセージのステップ 280 後退代入のステップ 290 式(lii)1*(ri)2および(lii)2*(r
i)1を計算するステップ 300 文字列比較のステップ 310 すべてのiについて一致するかどうかを判定す
るステップ 312 同値を報告するステップ 315 非同値を報告するステップ
Claims (14)
- 【請求項1】連立一次代数方程式の第1組および第2組
の同値を判定する、コンピュータ実施される方法であっ
て、xjが未知数、eijが係数、biが量であり、前記係
数および量が既知の数式であるものとして、前記方程式
のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形であり、 liiおよびriが代数式であり、k={1;2}が、前
記方程式がそこから導出された前記組の1つを示すもの
として、前記方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の前記組のそれぞ
れから前記未知数を繰り返して消去するステップと、 前記未知数のそれぞれについて、積(lii)1*(ri)
2と(lii)2*(ri)1とを比較するステップであっ
て、前記積がすべての前記未知数について一致する場合
に、連立一次代数方程式の前記第1組および前記第2組
が同値である、比較するステップとを含む、コンピュー
タ実施される方法。 - 【請求項2】前記方法がさらに、 前記代数式を、文字列内で順次配置された1つまたは複
数のトークン対の形に再計算する初期ステップであっ
て、各前記トークン対が、オペランドが続く演算子を含
む、再計算する初期ステップと、 既約式を得るために、所定の簡約化規則の組に従って前
記文字列を約する初期ステップと を含み、 前記消去するステップが、所定の動作の組に従って、前
記約された文字列に対して実行される請求項1に記載の
コンピュータ実施される方法。 - 【請求項3】前記簡約化規則が、 トークン対をサブグループに配置するステップと、 配置されたサブグループのオペランド・トークンを順番
に配置するステップと、 約されたサブグループを形成するために、1つまたは複
数の定数を整理し、反対の効果の変数を消去することに
よって、順序付けられたオペランドを約するステップ
と、 約された文字列を作るために、類似するサブグループの
1つまたは複数の倍数インスタンスを整理するステップ
とを実行することを含む、請求項2に記載のコンピュー
タ実施される方法。 - 【請求項4】連立一次代数方程式の第1組および第2組
の同値を判定する計算装置であって、xjが未知数、e
ijが係数、biが量であり、前記係数および量が既知の
数式であるものとして、前記方程式のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形であり、 liiおよびriが代数式であり、k={1;2}が、前
記方程式がそこから導出された前記組の1つを示すもの
として、前記方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の前記組のそれぞ
れから前記未知数を繰り返して消去する手段と、 前記未知数のそれぞれについて、積(lii)1*(ri)
2と(lii)2*(ri)1とを比較する手段であって、前
記積がすべての前記未知数について一致する場合に、連
立一次代数方程式の前記第1組および前記第2組が同値
である、比較する手段とを含む、計算装置。 - 【請求項5】前記計算装置がさらに、 前記代数式を、文字列内で順次配置された1つまたは複
数のトークン対の形に再計算する手段であって、各前記
トークン対が、オペランドが続く演算子を含む、再計算
する手段と、 既約式を得るために、所定の簡約化規則の組に従って前
記文字列を約する手段とを含み、 前記消去する手段が、所定の動作の組に従って、前記約
された文字列に対して動作する請求項4に記載の計算装
置。 - 【請求項6】前記消去する手段が、 トークン対をサブグループに配置する所定の動作と、 配置されたサブグループのオペランド・トークンを順番
に配置する所定の動作と、 約されたサブグループを形成するために、1つまたは複
数の定数を整理し、反対の効果の変数を消去することに
よって、順序付けられたオペランドを約する所定の動作
と、 約された文字列を作るために、類似するサブグループの
1つまたは複数の倍数インスタンスを整理する所定の動
作とを実行する、請求項5に記載の計算装置。 - 【請求項7】連立一次代数方程式の第1組および第2組
の同値を判定する、記憶媒体によって担持されるコンピ
ュータ・プログラム製品であって、xjが未知数、eij
が係数、biが量であり、前記係数および量が既知の数
式であるものとして、前記方程式のそれぞれが、 ei1x1+ei2x2+ei3x3+…+einxn=bi の形であり、 liiおよびriが代数式であり、k={1;2}が、前
記方程式がそこから導出された前記組の1つを示すもの
として、前記方程式のそれぞれが、 (lii)kxi=(ri)k の形になるまで、連立一次代数方程式の前記組のそれぞ
れから前記未知数を繰り返して消去するプログラム要素
と、 前記未知数のそれぞれについて、積(lii)1*(ri)
2と(lii)2*(ri)1とを比較するプログラム要素で
あって、前記積がすべての前記未知数について一致する
場合に、連立一次代数方程式の前記第1組および前記第
2組が同値である、比較するプログラム要素とを含む、
コンピュータ・プログラム製品。 - 【請求項8】前記代数式を、文字列内で順次配置された
1つまたは複数のトークン対の形に再計算するプログラ
ム要素であって、各前記トークン対が、オペランドが続
く演算子を含む、再計算するプログラム要素と、 既約式を得るために、所定の簡約化規則の組に従って前
記文字列を約するプログラム要素とをさらに含み、 前記消去するプログラム要素が、所定の動作の組に従っ
て、前記約された文字列に対して動作する請求項7に記
載のコンピュータ・プログラム製品。 - 【請求項9】前記消去するプログラム要素が、 トークン対をサブグループに配置する所定の動作と、 配置されたサブグループのオペランド・トークンを順番
に配置する所定の動作と、 約されたサブグループを形成するために、1つまたは複
数の定数を整理し、反対の効果の変数を消去することに
よって、順序付けられたオペランドを約する所定の動作
と、 約された文字列を作るために、類似するサブグループの
1つまたは複数の倍数インスタンスを整理する所定の動
作とを実行する、請求項8に記載のコンピュータ・プロ
グラム製品。 - 【請求項10】連立一次代数方程式(SLEA)の組の
同値を判定する、コンピュータ実施される方法であっ
て、各前記組が、複数の代数方程式を含み、 各SLAEを標準的な形に約すステップと、 同値が存在するかどうかを判定するためにSLAEを比
較するステップとを含む方法。 - 【請求項11】前記約するステップが、 各SLAEを既約形に変換するステップと、 消去処理を実行するステップと、 各SLAEの2部文字列配列形を生成する後退代入処理
を実行するステップとを含む、請求項10に記載の方
法。 - 【請求項12】前記比較するステップが、 文字列配列の一部ともう1つの前記文字列配列の一部と
の積を形成するステップと、 文字列配列の他の部分と前記もう1つの文字列配列の他
の部分との積を形成するステップと、 数学的同値について前記めいめいの積を比較するステッ
プとを含む、請求項10に記載の方法。 - 【請求項13】3組以上の場合に、前記比較ステップ
が、組の総数の対の組合せについて繰り返される、請求
項12に記載の方法。 - 【請求項14】連立一次代数方程式(SLAE)の第1
組および第2組の同値を判定する、コンピュータ実施さ
れる方法であって、 各SLAEを2部分の標準的な形にするために、SLA
Eの前記組のそれぞれから未知数を繰り返して消去する
ステップと、 一方の前記標準的な形の方程式の一部ともう1つの前記
標準的な形の方程式のもう1つの部分の一部との積を形
成するステップと、 前記標準的な形の方程式の他の部分と前記もう1つの標
準的な形の方程式の他の部分との積を形成するステップ
と、 数学的同値について前記めいめいの積を比較するステッ
プとを含む方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/597478 | 2000-06-20 | ||
US09/597,478 US7043510B1 (en) | 2000-06-20 | 2000-06-20 | Determining the equivalence of two sets of simultaneous linear algebraic equations |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002041496A true JP2002041496A (ja) | 2002-02-08 |
JP3928921B2 JP3928921B2 (ja) | 2007-06-13 |
Family
ID=24391676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001185339A Expired - Fee Related JP3928921B2 (ja) | 2000-06-20 | 2001-06-19 | コンピュータ実施される方法、コンピュータ・システムおよびコンピュータ・プログラム |
Country Status (2)
Country | Link |
---|---|
US (2) | US7043510B1 (ja) |
JP (1) | JP3928921B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7337437B2 (en) * | 1999-12-01 | 2008-02-26 | International Business Machines Corporation | Compiler optimisation of source code by determination and utilization of the equivalence of algebraic expressions in the source code |
US8176108B2 (en) * | 2000-06-20 | 2012-05-08 | International Business Machines Corporation | Method, apparatus and computer program product for network design and analysis |
US7386582B2 (en) * | 2003-09-29 | 2008-06-10 | International Business Machines Corporation | Method and structure for producing high performance linear algebra routines using a hybrid full-packed storage format |
US7171544B2 (en) * | 2003-12-15 | 2007-01-30 | International Business Machines Corporation | Run-time parallelization of loops in computer programs by access patterns |
US20070255778A1 (en) * | 2006-04-27 | 2007-11-01 | Jean-Paul Theis | Software method for solving systems of linear equations having integer variables |
US20080120357A1 (en) * | 2006-11-22 | 2008-05-22 | Jean-Paul Theis | Software method for solving systems of linear equations having integer variables |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3621209A (en) * | 1969-12-15 | 1971-11-16 | Bell Telephone Labor Inc | Machine-implemented process for insuring the numerical stability of gaussian elimination |
US5343554A (en) * | 1988-05-20 | 1994-08-30 | John R. Koza | Non-linear genetic process for data encoding and for solving problems using automatically defined functions |
JPH0444165A (ja) * | 1990-06-12 | 1992-02-13 | Nec Corp | 対称連立一次方程式の求解方式 |
CA2076293A1 (en) * | 1991-10-11 | 1993-04-12 | Prathima Agrawal | Multiprocessor computer for solving sets of equations |
US5442569A (en) * | 1993-06-23 | 1995-08-15 | Oceanautes Inc. | Method and apparatus for system characterization and analysis using finite element methods |
JP2959525B2 (ja) * | 1997-06-02 | 1999-10-06 | 日本電気株式会社 | データ処理装置および方法、情報記憶媒体 |
JP3234552B2 (ja) | 1997-09-30 | 2001-12-04 | 松下電器産業株式会社 | 最適化装置及びコンピュータ読取可能な記録媒体 |
US6601080B1 (en) * | 2000-02-23 | 2003-07-29 | Sun Microsystems, Inc. | Hybrid representation scheme for factor L in sparse direct matrix factorization |
US6829626B2 (en) * | 2000-07-11 | 2004-12-07 | Texas Instruments Incorporated | Computer algebra system and method |
-
2000
- 2000-06-20 US US09/597,478 patent/US7043510B1/en not_active Expired - Fee Related
-
2001
- 2001-06-19 JP JP2001185339A patent/JP3928921B2/ja not_active Expired - Fee Related
-
2005
- 2005-09-20 US US11/231,091 patent/US7836112B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3928921B2 (ja) | 2007-06-13 |
US7836112B2 (en) | 2010-11-16 |
US7043510B1 (en) | 2006-05-09 |
US20060015550A1 (en) | 2006-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hidding | DiffExp, a Mathematica package for computing Feynman integrals in terms of one-dimensional series expansions | |
Bostan et al. | The complete generating function for Gessel walks is algebraic | |
Jonsson et al. | Recursive blocked algorithms for solving triangular systems—Part II: Two-sided and generalized Sylvester and Lyapunov matrix equations | |
US10713022B2 (en) | Systems and methods for stencil amplification | |
WO2023130918A1 (zh) | 用于管理量子系统的状态的方法、设备、装置和介质 | |
CN111914378B (zh) | 一种单振幅量子计算模拟方法及装置 | |
US8423979B2 (en) | Code generation for complex arithmetic reduction for architectures lacking cross data-path support | |
Abed et al. | High‐performance low‐power approximate Wallace tree multiplier | |
CN115759269B (zh) | 特征信息的确定方法、装置、设备以及存储介质 | |
US7836112B2 (en) | Determining the equivalence of two sets of simultaneous linear algebraic equations | |
Fortin et al. | High‐performance SIMD modular arithmetic for polynomial evaluation | |
US8176108B2 (en) | Method, apparatus and computer program product for network design and analysis | |
Armaos et al. | Efficient parabolic optimisation algorithm for adaptive VQE implementations | |
JPS6314378B2 (ja) | ||
US6922830B1 (en) | Skip list data storage during compilation | |
JP7020555B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
Gawrychowski et al. | Universal reconstruction of a string | |
Winkler et al. | Certificates for probabilistic pushdown automata via optimistic value iteration | |
KR101359764B1 (ko) | Dna 서열 분석을 위한 거리합 기반 문자열의 근사주기 계산 방법 | |
US6578196B1 (en) | Checking of units and dimensional homogeneity of expressions in computer programs | |
US7136891B2 (en) | Arithmetic and relational operations | |
Berkling | Computer architecture for correct programming | |
Dasgupta et al. | Alpha Elimination: Using Deep Reinforcement Learning to Reduce Fill-In During Sparse Matrix Decomposition | |
US20220308837A1 (en) | Optimization method, information processing apparatus, and system using the same | |
Arai et al. | Option pricing for Barndorff-Nielsen and Shephard model by supervised deep learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050405 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050623 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050628 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051004 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060616 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20060616 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060616 |
|
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: 20070227 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20070228 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070302 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |