- ベストアンサー
関数の正負
ある多項式関数f(x)があったときにf(x)=0となることがあるかないかを判定するにはどうしたらよいのでしょうか?f(x)は6次以上とします.
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
先ず、f(x)は|x|が「十分大きい」範囲では f(x)は常に正か負です *|x|の値ががどれ位十分大きなxをとれば良いかというと、 f(x) = a*(x^n) { 1 + (b_1) (1/x) + (b_2) (1/x)^2 + … } と変形してみれば、|x|がある値以上ならば後ろの{}の 部分を常に正に出来ます。 で、a, bを * a<0<bで x≦aならf(x)は常に正又は負、b≦xなら f(x)は常に正又は負 となるようにとって置きます。 そこで、いわゆる「Strumの方法」が使えます。 http://www.math.meiji.ac.jp/~mk/labo/text/eigen-values/node50.html http://www.math.meiji.ac.jp/~mk/labo/text/eigen-values/node53.html これは f0(x) = f(x) f1(x) = (d/dx) f(x) f2(x) = 「f0(x) を f1(x)で割った余りに-1を掛けたもの」 …後ずっと f_{n+2}(x) = 「f_n(x)をf_{n+1}(x)で割った余りに-1を掛けたもの」 として、fm(x)が定数になるまで続ける とした時、 *f0(a), f1(a), f2(a), …の値を計算し、それらの値をこの順に 並べた時、途中で正負の符号が入れ替わった回数をV(a)とする *同様にbの時も調べV(b)とする。 この時V(a)-V(b)がf(x)=0の解の数になるというものです。 証明はご自分で確認して下さい。
その他の回答 (3)
- tmpname
- ベストアンサー率67% (195/287)
M= d * max{1, |C1/Cd|, |C2/Cd|, .... , |C_{d-1}/Cd| } +1 で a=-M, b=Mと取れる、です。
- tmpname
- ベストアンサー率67% (195/287)
例えば f(x)=Σ(0≦k≦d) Ck x^k (つまり f(x)の次数はd、 f(x)の最高次数の係数はCd)とした時、 これを f(x) = Cd x^d Σ(0≦k≦d) [ (Ck / Cd) ( 1/(x^{d-k}) ) ] と変形すれば、 M = d * max{1, (C1/Cd), (C2/Cd), .... , (C_{d-1}/Cd) } +1 とした時a=-M, b=Mと取れる事が分かります 証明は少し考えてみて下さい。
お礼
なるほど!どうもありがとうございました.
- ei10
- ベストアンサー率50% (9/18)
f(x)は連続であるならば、中間値の定理を利用します。 xに適当な値を代入して、(例えば、aとb) f(a)>0かつf(b)<0 ならば、f(x)はx軸と交点を持っています。
お礼
すごく助かりました.どうもありがとうございました.
補足
どうもありがとうございます.そのような方法があるのですね. >先ず、f(x)は|x|が「十分大きい」範囲では >f(x)は常に正か負です >*|x|の値ががどれ位十分大きなxをとれば良いかというと、 > f(x) = a*(x^n) { 1 + (b_1) (1/x) + (b_2) (1/x)^2 + … } > と変形してみれば、|x|がある値以上ならば後ろの{}の > 部分を常に正に出来ます。 >で、a, bを >* a<0<bで x≦aならf(x)は常に正又は負、b≦xなら > f(x)は常に正又は負 >となるようにとって置きます。 のa,bの具体的な取り方がわからないのですがどうやって計算すればよいのでしょうか?