八回アップグレード内容
●アイゼンシュタインの既約判定法
T :文字列形式の多項式
計算例1
代数代入
計算
T1が既約かどうかはわかりません。
計算例2
代数代入
計算
T2は既約であることを示しています。
検討
T1の多項式の既約判定に関しては、eisenstein関数は役に立ちません。しかし、
今回例の例題に関しては幸い,以下のように、多項式を平行移動した時はT2の多項式が得
られます。つまりT1も既約であることが分かります。
代数代入
代数計算
●飛び飛びの数、文字列型、漢字等の組み合わせ
ここで利用可能な関数は以下の2つです。
配列型symのn個の組み合わせ
配列型symの組み合わせ記号を限定する。
top番からlast番までの記号に限定。
表示形式は行列になる。
(1)奇数の組み合わせ
代入定義
(2)文字列型のアルファベットの組み合わせ
代入定義
代入定義
代入定義
絶対値記号で文字列記号を非表示にする。
(4)行列表示にしたい時
代入定義
絶対値記号で文字列記号を非表示にする。
代入定義
(4)漢字の組み合わせ
代入定義
代入定義
計算
●代数計算における列ベクトルの要素代入
数値計算においては、以下のような列ベクトル代入定義が可能です。
代入定義
しかし代数計算においては、このような機能はありません。
従って、このような機能を模擬する関数を作りました。
この関数の計算は、代数計算ではなく、計算です。
Sは文字列型で表現した、列ベクトルを利用した代入構文です。
代入定義
winはウインドウハンドルで、以下のように前もって定義しておく必要があります。
代入定義
代入文の右辺式の構文は、行列式で構成された式で、計算結果が列ベクトルになるものです。
計算結果
計算
変数名への代数代入定義が正常に終了した時は、計算結果が1になります。
結果の検証
代数計算
代数計算
代数計算
代数計算
代数計算
これらの変数の定義を取り消したい時は以下の関数を利用します。
Vは列ベクトル形式の変数名リストになります。
この関数の実行
計算
変数の定義が取り消しできたことを検証
代数計算
代数計算
代数計算
代数計算
代数計算
●連立線形不定方程式の整数解を求める
ライブラリ関数
を利用して解きます。
Cは方程式の変数の係数を行列形式で与える。
(1)特殊なケースとして、方程式が1つの場合も含みます。
この方程式の整数解は無限にあります。
入力データ
代入定義
1行の行列
代入定義
1行1列の行列
一見するとカッコに見えるので注意
解を求める
解は行列形式で与えられる。
解の行列の意味
kは媒介変数で任意の整数が解になる。
★具体的数値解
の場合
代入定義
代入定義
計算
の場合
代入定義
代入定義
計算
(2)すなおな連立不定方程式の場合。
3x - 4y +9z   = 5
5x - 7y +11z = 13
この方程式の場合のC,Vを求めます。
代入定義
代入定義
解を求める。
媒介変数を利用した解の表現は、symbolic_sol_ILE関数で求めることもできます。
para_listは媒介変数名の配列形式のリストです。
Mは行列表現の解です。
代入定義
代入定義
計算
(2)少し複雑な連立不定方程式の場合。
この方程式の場合のC,Vを求めます。
代入定義
代入定義
解を求める。
計算
代入定義
代入定義
計算
解の検証を行います。
代入定義
6個のそれぞれの変数に解を代数代入します。これらは、以下の式での計算でできます。
計算
実際に、代数代入されていることを、以下の6個の式の代数計算で確認できます。
従って解の検証は、元の3つの方程式の左辺を以下のように代数計算することにより確認できます。
代数計算
代数計算
代数計算
以上で解の正しさが確認できたので、各変数の代数定義を取り消しておきます。
●多項式因数分解関数
いくつかの制約があります。
★1変数
★次数に制約があります。
★係数に制約があります。
★入力多項式は文字列型です。
以上のような制約にかかわらず、いろいろな特徴があります。
★プログラムはカルキングスクリプトで記述されていますが処理速度が速い。
★スクリプトの内容はご覧になれます。
下記の関数名をマウスでダブルクリックすれば、プログラムにジャンプできます。
POLYfactor
★アルゴリズムの根幹は、高次代数方程式の解を利用します。
★高速化のカギは、方程式の解の特徴を見つけるアルゴリズムです。
(1)使用例1
計算プロパティは代数計算系ではなく、数値計算系が使われます。
代入定義
計算
(2)使用例2
計算プロパティは代数計算系ではなく、数値計算系が使われます。
代入定義
計算
(3)使用例3