|
1.5.5 方程式
1.2.2において,xを yに等しくすることを表すx = yのような割当てについて述べた.本節では,等号関係を判定するいわゆる方程式について説明していく. xが yに等しいかどうかを判定する方程式は, x == yと記述する.
これは, 2 + 2が 4に等しいかを判定する.結果はシンボル Trueである.
In[1]:= 2 + 2 == 4
Out[1]= 
ここで x = yと x == yの記述を混乱しないように注意してほしい. x = yは,命令的な表現であり,実際に割当てを実行するためにある.これに対して, x == yは,単に xと yが等しいかどうかを判定するだけのためにあり,それで何かが実行されるというようなことはない.C言語を使ったことのあるユーザなら, Mathematicaで使われる割当て(assignment)と判定(testing)の操作がC言語のものと同じであることに気が付いたであろう.

割当てと判定
xに値 4を割り当てる.
In[2]:= x = 4
Out[2]= 
xを参照すると,割り当てられている値,すなわち, 4が返される.
In[3]:= x
Out[3]= 
xが 4に等しいかを判定する.この場合は等しい.
In[4]:= x == 4
Out[4]= 
xは 4に等しいが, 6には等しくない.
In[5]:= x == 6
Out[5]= 
こうすると, xに割り当てられてある値が消去される.
In[6]:= x =.
これまでの例では,両辺が共に数のときの等号関係の判定を見てきた.必ず Trueまたは Falseの答が得られた.記号で表された数式を判定することもできる.
xに特定の数値が与えられない限り, Mathematicaは,この判定に対して確定した結果を出すことができない.
In[7]:= x == 5
Out[7]= 
xを特定の数値 4におくと,判定結果は Falseになる.
In[8]:= % /. x -> 4
Out[8]= 
記号で表された数式に対する判定でも,ケースによっては,確定した結果を得ることができる.ここで重要なケースとして,2つの同値の式に対して等号関係を判定することがある.これらの両方の式の変数がどんな数値であろうが, Mathematicaは,式が常に等しいものと正確に解釈する.
左右の式は全く同じである.したがって, xがどんな値を取ろうが結果は True になる.
In[9]:= 2 x + x^2 == 2 x + x^2
Out[9]= 
Mathematicaは,これらの式が等しいかどうかは判断しない.この場合は, Expandを使えば,同じ形にすることができる.
In[10]:= 2 x + x^2 == x (2 + x)
Out[10]= 
Mathematicaでは, x == 4のような式は方程式を表す. Mathematicaには方程式の変形や解法のために各種の関数が用意されている.
これは, Mathematicaにおける方程式を表している.方程式の解法のやり方は 1.5.7で説明する.
In[11]:= x^2 + 2 x - 7 == 0
Out[11]= 
方程式に名前を付けることも可能である.
In[12]:= eqn = %
Out[12]= 
eqnを参照すると,もとの方程式を得ることができる.
In[13]:= eqn
Out[13]= 
|