|
3.3.2 多項式の部分抽出

多項式の展開構造の判定と部分抽出
変数を2つ持った多項式を例に取る.
In[1]:= t = (1 + x)^3 (1 - y - x)^2
Out[1]= 
展開した形を作っておく.
In[2]:= Expand[t]
Out[2]= 
PolynomialQで,式 tが xの多項式か判定する.そうであることが判明する.
In[3]:= PolynomialQ[t, x]
Out[3]= 
この式は xの多項式にはなっていない.
In[4]:= PolynomialQ[x + Sin[x], x]
Out[4]= 
Variablesを使い,多項式 tの持つ変数をリストアップする.
In[5]:= Variables[t]
Out[5]= 
多項式 tにおいて xにかかる最大指数を調べる.単一変数の多項式なら, Exponentは式の最高次数を返す.
In[6]:= Exponent[t, x]
Out[6]= 
Coefficient[poly, expr]を使い,成分 exprを持つすべての項について係数を抽出する.2つ係数が見付かり,和の形で返される.
In[7]:= Coefficient[t, x^2]
Out[7]= 
これは, Coefficient[t, x^2]に等しい.
In[8]:= Coefficient[t, x, 2]
Out[8]= 
の項から係数を抽出する.
In[9]:= Coefficient[t, x, 0]
Out[9]= 
CoefficientListを使い, の各次数における項の係数を抽出し, の係数から始まるリストを構成する.
In[10]:= CoefficientList[1 + 3x^2 + 4x^4, x]
Out[10]= 
CoefficientListを多変数の多項式に適用すると,各変数について各次数ごとに係数が抽出され,各次数ごとに配列表示される.
In[11]:= CoefficientList[t, {x, y}]
Out[11]= 
本節の関数は,まだ展開していない多項式についても機能する.
また,関数によっては,厳密な意味の多項式でなくても機能する.
a, b, cに具体的な整数値を指定しなければ,この式は厳密な意味の多項式にならない.
In[12]:= x^a + x^b + y^c
Out[12]= 
それでも,Exponent[expr, x]を作用させると, xについて最高次数が得られる.ただし,結果は記号代数的な記述になる.
In[13]:= Exponent[%, x]
Out[13]= 
|